Editing SaveId

Jump to: navigation, search

Warning: You are not logged in.

Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
{{grammar checked|darth}}
+
{{grammar}}
SaveId - entity savegame identificator key. It is a number, unique within a level, assigned with [[RWGTools]] to a "sid" entity field. It is required for gamecode to store information about levels that were already visited. Instead of entity number (assigned by engine when entity is spawned) SaveId cannot be reused when new entity is created. Also SaveId survives level editing and recompilation, allowing to extend existing game levels without [[break savegame | breaking saved games]].
+
SaveId - entity savegame identificator key. It is a number, unique within a level, assigned with [[RWGTools]] to a "sid" entity field. It is required for gamecode to store information about levels that was already visited. Instead of entity number (assigned by engine when entity is spawned) SaveId cannot be reused when new entity is created. Also SaveId survives level editing and recompilation, allowing to extend existing game levels without [[break savegame | breaking saved games]].
  
 
== Operations with SaveId ==
 
== Operations with SaveId ==
 
RWGTools have this options to manipulate SaveId's:
 
RWGTools have this options to manipulate SaveId's:
  
* Mark - mark SaveId's on new entities.
+
* Mark - mark SaveId's on new entities
* Remap - this will re-mark all entities (will break savegames).
+
* Remap - this will re-mark all entities (this is will break savegames)
* Clear - remove all SaveId's and clear world counter (will break savegames).
+
* Clear - remove all SaveId's and clear world counter (this is will break savegames)
* Check - checks map for duplicate SaveId's and other errors.
+
* Check - checks map for duplicate saveid's and other errors
  
 
== How 're-entering' works ==
 
== How 're-entering' works ==
  
SaveID's are courtesy of level re-entering which is core game feature in Blood Omen, but has no core support in Darkplaces engine. Re-entering is a part of Blood Omnicide gamelogic. It follows this rules:
+
SaveID's is a courtesy of level re-entering which is core game feature in Blood Omen, but has no core support in Darkplaces engine. Re-entering is a part of Blood Omnicide gamelogic. It follows this rules:
  
* On level exit, all entities with a SaveId launch their saving function (class-dependent) which forms a savestring for each entity (storing entity properties that was changed comparing to level initial state), then all savestrings get packed into the level save lumps.
+
* On level exit, all entrities with SaveId launch their saving function (class-dependent) which forms a savestring for each entity (storing entity properties that was changed comparing to level initial state), then all savestrings get packed into the level save lumps.
* When level is loaded, gamecode checks if this level has a save lump, and loads it into the reenter array of savestrings.
+
* When level is loaded, gamecode checks if this level has save lump, and loads it into the reenter array of savestrings.
* Each entity when spawned, checks for corresponding record in the reenter table and loads properties from there.
+
* Each entity when spawned, checks for corresponding record in reenter table and loads properties from there.
  
 
[[Category:Glossary]]
 
[[Category:Glossary]]
 
{{finished}}
 
{{finished}}

Please note that all contributions to Blood Wiki are considered to be released under the Creative Commons Attribution Share Alike (see BloodWiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)

Templates used on this page:

This page is a member of 2 hidden categories:

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox