Finalization

From Serious Sam Wiki
Jump to: navigation, search

Most content files (levels, models, etc.) created with Serious Editor contain both the runtime data used by the game, and the so called edit data, which is used to represent it inside the editor. This edit data can be striped from the content files - usually in order to reduce download size, or to prevent others from ripping of the contents easily. (Though they can still rip it, just a tad more complicated.) Once the edit data is stripped, the file can be loaded into the editor and used, but it cannot be changed, or anything copied from it. Note that this doesn't have effect on pure parameter files (like .ep and similar). Usually only bulk data like mesh sources, animation sources, and similar, is stripped.

This stripping is done in the process called Finalization, and is done slightly differently for each platform. It not only strips the edit data, but may also remove other pieces of data that are set to not appear on some platform. E.g. some model or texture LODs may be removed for some consoles that have less memory, etc. Some entities may be removed for some platforms that have problems with rendering speed etc.

Manual Finalization

To manually finalize one file, open that file in Serious Editor and choose from the menu: File>Finalize for>PC. It will output the finalized file into the GenContent/PC/... folder, so your source is not modified.

You can substitute PC with another platform, if you are developing for the consoles.

Batch Finalization

To finalize multiple files at once (possibly in a batch script), you can use the windowless mode of Serious Editor. To do so, you have to prepare two text files with the following contents:

FinalizeList.txt - a list of files to finalize, for example something like this:

Content/SeriousSamHD/Textures/Logos/SeriousEngineStartScreen.tex
Content/SeriousSamHD/Textures/Logos/SeriousEngineBoot.tex
Content/SeriousSamHD/Textures/Logos/CroteamStartScreen.tex
Content/SeriousSamHD/Textures/Logos/CroteamBoot.tex

FinalizeScript.txt - a script that tells Serious Editor what to do:

Command.FinalizeFilesInList PC FinalizeList.txt
Command.ExitApplication 

Then run SeriousEditor with the command line params like this:

SeriousEditor.exe +windowless 1 +exec FinalizeScript.txt