XR Script Structure

From Newerth: Savage Wiki

Jump to: navigation, search

[edit] Introduction

The silverback script engine was "Unified" in XR.
The organisation of the content has changed quite significantly, this document describes the new structure.
This folder structure is contained within the archive file savage0.s2z. You can open this file with winzip, winrar, or any other zip utility.

[edit] Tech Tree & Game Script

The folder /script/standard/ contains the entire script required to run the normal version of Savage (RTSS). It contains the Objects, States, ... used in SEP/SFE, TS-SEP, and XR maps.

Description of the contents:

/configs/         Ressources & Races definition; Experience Tables
/objects/         Full Tech Tree (Buildings, Weapons, Items, Units, NPCs) 
/states/          States conferred by Items/Buffs... (ex: adrenaline, snare)
/stringtables/    Misc. lists of Messages, Sounds & Textures
/tupgrades/       Optional Team Upgrades
/voice/           Voice Chat Tables

Different Object Lists (.objlist) can be loaded for the various existing Map Prefix (ex: ts_, xr_ ....)

The file /game/server_maps_lookup.cfg contains a reference table of the Object List associated with each Prefix.

Partial & Full Game Conversions can be added to this reference table, for example "Duel":

(1) The folder /script/duel/ does not need to contain all the files from /script/standard/
(2) Files not found in the conversion folder will be loaded from /script/standard/ instead

[edit] GUI Script

The folder /gui/standard/ contains all GUI widgets required to run the normal version of Savage (RTSS).

The silverback engine calls the files:

 ui_main.cfg -> to build the main menu widgets
 ui_game.cfg -> to build the in-game widgets

When a game conversion is loaded, the engine will try to load these files from the subfolder name specified in "sv_map_objpath" (see: server_maps_lookup.cfg).

 Example: /gui/samurai/ --> if "sv_map_objpath" value is "samurai/"

If the file is not available from this folder, the standard file will be loaded instead.

The same principle applies to all "status" files (executed automatically, for instance when entering lobby)


NOTE: For an example of a Full conversion, look in the folders /script/samurai and /gui/samurai/