Difference between revisions of "Documentation/Engine/Game data"
DriveSafely (talk | contribs) m |
(→Cargo definitions) |
||
(112 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | + | All of SCS games are using partially prescribed folder structure. This means that some resources must have proper name and be placed into proper folder otherwise game may malfunction or even crash. That's why this topic is giving insight to game base folder structure, it's crucial resources and their place in folders. | |
− | + | In general topic is showing and describing structure of the folders and files as you get them by using [[Documentation/Tools/Game Archive Extractor|Game Archive Extractor]] for two basic files with .scs extension found in game installation directory: "'''base.scs'''" and "'''def.scs'''". | |
− | |||
− | |||
− | In general | ||
= Root game folder = | = Root game folder = | ||
Line 12: | Line 9: | ||
{{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root game folder|mark_current=1}} | {{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root game folder|mark_current=1}} | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=automat}} ''Material storage with generated material files produced during conversion of 3D model assets with conversion tools.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=automat}} ''Material storage with generated material files produced during conversion of 3D model assets with conversion tools.'' | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=contentbrowser}} ''Folder used by Map Editor content browser.'' | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=contentbrowser}} ''Folder used by Map Editor content browser TODO: wait for confirmation.'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=custom}} ''Legacy folder for storing custom/modded definitions (NOTE: This folder is | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=custom}} ''Legacy folder for storing custom/modded definitions (NOTE: This folder is deprecated and might be removed in the future).'' |
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} ''See: [[#Definitions|Definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} ''See: [[#Definitions|Definitions]].'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=dlc}} ''Shared models used by dlc such like "dead end" sign.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=dlc}} ''Shared models used by dlc such like "dead end" sign.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=effect}} ''Set of compiled shader effects used by game for rendering of any visual element.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=effect}} ''Set of compiled shader effects used by game for rendering of any visual element.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=font|link=#Fonts}} ''See: [[#Fonts|Fonts]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=font|link=#Fonts}} ''See: [[#Fonts|Fonts]].'' | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=map}} ''Storage for maps and | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=map}} ''Storage for maps and it's additional data.'' |
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=material|link=#Predefined materials}} ''See: [[#Predefined materials|Predefined materials]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=material|link=#Predefined materials}} ''See: [[#Predefined materials|Predefined materials]].'' | ||
+ | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=matlib}} TODO: wait for confirmation. | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=model}} ''Storage for 1st generation of map assets.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=model}} ''Storage for 1st generation of map assets.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=model2}} ''Storage for 2nd generation of map assets.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=model2}} ''Storage for 2nd generation of map assets.'' | ||
Line 28: | Line 26: | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=system}} ''Low level engine resources needed for console and fall-back cases of missing resources.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=system}} ''Low level engine resources needed for console and fall-back cases of missing resources.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} ''See: [[#UI definitions|UI definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} ''See: [[#UI definitions|UI definitions]].'' | ||
+ | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=uilab}} TODO: wait for confirmation. | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=unit}} ''Definitions for predefined hookups spawned in game trough locators, for example: light flare, light sources, no weather areas.'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=unit}} ''Definitions for predefined hookups spawned in game trough locators, for example: light flare, light sources, no weather areas.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=vehicle}} ''See: [[#Vehicle model resources|Vehicle model resources]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=vehicle}} ''See: [[#Vehicle model resources|Vehicle model resources]].'' | ||
Line 46: | Line 45: | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=camera|link=#Camera definitions}} ''See: [[#Camera definitions|Camera definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=camera|link=#Camera definitions}} ''See: [[#Camera definitions|Camera definitions]].'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=cargo|link=#Cargo definitions}} ''See: [[#Cargo definitions|Cargo definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=cargo|link=#Cargo definitions}} ''See: [[#Cargo definitions|Cargo definitions]].'' | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=city}} ''Defines cities for game. Each city is defined in | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=city}} ''Defines cities for game. Each city is defined in it's own file.'' |
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=climate|link=#Climate definitions}} ''See: [[#Climate definitions|Climate definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=climate|link=#Climate definitions}} ''See: [[#Climate definitions|Climate definitions]].'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=company|link=#Company definitions}} ''See: [[#Company definitions|Company definitions]].'' | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=company|link=#Company definitions}} ''See: [[#Company definitions|Company definitions]].'' | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=country | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=country}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=desktop}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=desktop}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ferry| | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ferry}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name= | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=initial_save}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=regional_settings}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=jobs}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=sign | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=regional_settings}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=stamp}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=sign}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=vehicle | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=stamp}} |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=world | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=vehicle}} |
+ | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=world}} | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=aux_lamp_colors.sii}} ''Defines players vehicle auxiliary light mask colors.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=aux_lamp_colors.sii}} ''Defines players vehicle auxiliary light mask colors.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=bank_data.sii}} ''Bank loans configuration.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=bank_data.sii}} ''Bank loans configuration.'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=car_colors.sii}} ''Defines colors for AI traffic cars.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=car_colors.sii}} ''Defines colors for AI traffic cars.'' | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=cargo.sii}} ''Storage of cargoes for trailer generation. When defining your own cargoes use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=cargo.sii}} ''Storage of cargoes for trailer generation. When defining your own cargoes use infixed version of this Sii file for example: "cargo.my_mod.sii".'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=city.sii}} ''Storage of cities in game. When defining your own cities use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=city.sii}} ''Storage of cities in game. When defining your own cities use infixed version of this Sii file for example: "city.my_mod.sii".'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=climate.sii}} ''Storage of climate profiles. When defining your own climate use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=climate.sii}} ''Storage of climate profiles. When defining your own climate use infixed version of this Sii file for example: "climate.my_mod.sii".'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=company.sii}} ''Storage of companies that can be used in game. When defining your own companies use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=company.sii}} ''Storage of companies that can be used in game. When defining your own companies use infixed version of this Sii file for example: "company.my_mod.sii".'' |
├... | ├... | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=country.sii}} ''Storage of countries used in game. When defining your own countries use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=country.sii}} ''Storage of countries used in game. When defining your own countries use infixed version of this Sii file for example: "country.my_mod.sii".'' |
├... | ├... | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=economy_data.sii}} ''Game economy definition.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=economy_data.sii}} ''Game economy definition.'' | ||
├... | ├... | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=env_data.sii}} ''Environment global configuration such as day in the year.'' | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=env_data.sii}} ''Environment global configuration such as day in the year.'' << TODO: This is not clean enough for me. |
├... | ├... | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=ferry.sii}} ''Storage of ferry ports. When defining your own cargoes use infixed version of this | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=ferry.sii}} ''Storage of ferry ports. When defining your own cargoes use infixed version of this Sii file for example: "ferry.my_mod.sii".'' |
├... | ├... | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=game_data.sii}} ''Various global game definitions.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=game_data.sii}} ''Various global game definitions.'' | ||
Line 104: | Line 104: | ||
Camera definitions folder ("'''/def/camera'''") is using "'''camera_storage(.infix).sii'''" files as storage files defining cameras that can be used by player while in game (UI interface is not handled by cameras, as UI is drawn directly on screen 2D plane). Note that this defines only storage for available in game cameras, but which camera is used in the game depends on currently user selected view and current used player vehicle. | Camera definitions folder ("'''/def/camera'''") is using "'''camera_storage(.infix).sii'''" files as storage files defining cameras that can be used by player while in game (UI interface is not handled by cameras, as UI is drawn directly on screen 2D plane). Note that this defines only storage for available in game cameras, but which camera is used in the game depends on currently user selected view and current used player vehicle. | ||
− | Beside storage files camera definitions folder also includes "'''cutscene.sii'''" file which defines camera and | + | Beside storage files camera definitions folder also includes "'''cutscene.sii'''" file which defines camera and it's movement in different cut-scenes. |
<div class="folder_structure"> | <div class="folder_structure"> | ||
Line 111: | Line 111: | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=camera|mark_current=1}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=camera|mark_current=1}} | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=...}} '' | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=...}} ''Directories for cut scenes camera definitions.'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} '' | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} ''Directory for storing camera movement definitions related to game desktop (main menu).'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=units}} '' | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=units}} ''Directory for storing players camera included in "camera_storage" Sii files.'' |
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=camera_storage.sii}} ''Defining cameras storage that can be used in game by player. When creating your own cameras use infixed storage file name like: "camera_storage.mymod.sii".'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=camera_storage.sii}} ''Defining cameras storage that can be used in game by player. When creating your own cameras use infixed storage file name like: "camera_storage.mymod.sii".'' | ||
├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=camera_storage.oculus.sii}} ''Same as camera_storage.sii with purpose of defined cameras for Oculus Rift head set.'' | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=camera_storage.oculus.sii}} ''Same as camera_storage.sii with purpose of defined cameras for Oculus Rift head set.'' | ||
Line 122: | Line 122: | ||
=== Cargo definitions === | === Cargo definitions === | ||
− | + | Defines all cargoes that player can transport in the game. Unique cargo is defined by Sii file and folder with one or more Sii files defining trailers which can carry this cargo. So for each cargo you have one Sii file inside "'''/def/cargo/'''" and one or multiple Sii files inside folder "'''/def/cargo/<cargo_name>/'''". Example definition for cargo: "'''<cargo_name>'''" is shown in the tree below. | |
− | |||
− | Unique cargo is defined by | ||
<div class="folder_structure"> | <div class="folder_structure"> | ||
Line 131: | Line 129: | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=cargo|mark_current=1}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=cargo|mark_current=1}} | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=< | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=<cargo_name>}} ''Directory defining trailers that can carry cargo defined in "<cargo_name>.sii" file.'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=trailer.unit.name.sii}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=trailer.unit.name.sii}} ''Defines trailer that can carry this cargo. Sii file is named by trailer SiiUnit name'' |
− | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=...}} | + | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=...}} ''More definitions for different trailers carrying this cargo.'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=...}} ''Rest of cargo trailer definition folders.'' |
− | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=<cargo_name>.sii}} ''Defining one cargo data.'' | |
− | + | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=...}} ''Rest of unique cargo definitions.'' | |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=< | ||
− | |||
− | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=...}} | ||
</div> | </div> | ||
=== Climate definitions === | === Climate definitions === | ||
− | Each climate is defined in | + | Each climate is defined in it's own folder "'''/def/climate/<climate_name>/'''" and usually have at least 2 profile Sii files: one for nice weather "'''nice.sii'''" and second for bad weather "'''bad.sii'''". Climates definitions |
− | + | There should be at least two climates: | |
<div class="folder_structure"> | <div class="folder_structure"> | ||
Line 153: | Line 148: | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=def|link=#Definitions}} | ||
├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=climate|mark_current=1}} | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=climate|mark_current=1}} | ||
− | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=reference}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=reference}} ''Reference climate.'' |
− | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=bad.sii}} | + | ├{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=bad.sii}} |
− | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=nice.sii}} | + | └{{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=nice.sii}} |
− | └{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=...}} | + | └{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=...}} ''Rest of climates.'' |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</div> | </div> | ||
== Fonts == | == Fonts == | ||
− | Folder for storing game fonts | + | Folder for storing game fonts. |
<div class="folder_structure"> | <div class="folder_structure"> | ||
{{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | {{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | ||
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=font}} | |
− | + | ├─{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=license_plate}} ''Fonts used by licence plates.'' | |
− | + | └─{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=sign}} ''Fonts used by road signs.'' | |
</div> | </div> | ||
Line 426: | Line 171: | ||
<div class="folder_structure"> | <div class="folder_structure"> | ||
{{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | {{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | ||
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=material|link=#Predefined materials}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=custom}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=decal}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=deferred}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=editor}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=environment}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=flags}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=logo}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=metal}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=overlay}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=prefab}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=road}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=rocks}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ropes}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=sign}} ''Lorem ipsum..'' | |
+ | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=special}} ''Lorem ipsum..'' | ||
+ | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=terrain}} ''Lorem ipsum..'' | ||
+ | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=tiled}} ''Lorem ipsum..'' | ||
+ | └─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} ''Lorem ipsum..'' | ||
</div> | </div> | ||
Line 449: | Line 198: | ||
<div class="folder_structure"> | <div class="folder_structure"> | ||
{{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | {{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=Root Game Folder|link=#Root game folder}} | ||
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=sound}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ai}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=environment}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=mover}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=music}} ''Lorem ipsum..'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=truck}} ''Lorem ipsum..'' | |
− | + | └─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} ''Lorem ipsum..'' | |
</div> | </div> | ||
Line 464: | Line 213: | ||
<div class="folder_structure"> | <div class="folder_structure"> | ||
{{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=[[#Root game folder|Root Game Folder]]}} | {{FileSystemTreeEntry|icon=FST-IconRoot|type=|name=[[#Root game folder|Root Game Folder]]}} | ||
− | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ui}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=company_manager}} ''Company manager UI layouts.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=dashboard}} ''Truck dashboard UI layouts.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=desc}} ''UI descriptors.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=editor}} ''Editor UI layouts.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=license_plate}} ''Licence plate UI layouts.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=options}} ''Options screens UI layouts.'' | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=template}} ''UI templates (definitions of the controls look).'' | |
− | + | └─ {{FileSystemTreeEntry|icon=FST-IconFileSii|type=|name=...}} ''UI window layouts for all in game windows.'' | |
</div> | </div> | ||
Line 478: | Line 227: | ||
<div class="folder_structure"> | <div class="folder_structure"> | ||
− | + | [[#Root game folder|Root Game Folder]] | |
− | + | ├{{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=vehicle}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=ai}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=driver}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=share}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=trailer*}} | |
− | + | ├─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=truck}} | |
− | + | └─ {{FileSystemTreeEntry|icon=FST-IconFolder|type=|name=wheel}} | |
</div> | </div> | ||
+ | |||
+ | [[Category:TODO]] |
Revision as of 14:57, 7 March 2016
All of SCS games are using partially prescribed folder structure. This means that some resources must have proper name and be placed into proper folder otherwise game may malfunction or even crash. That's why this topic is giving insight to game base folder structure, it's crucial resources and their place in folders.
In general topic is showing and describing structure of the folders and files as you get them by using Game Archive Extractor for two basic files with .scs extension found in game installation directory: "base.scs" and "def.scs".
Contents
Root game folder
Root game folder consists of:
Root game folder ├automat Material storage with generated material files produced during conversion of 3D model assets with conversion tools. ├contentbrowser Folder used by Map Editor content browser TODO: wait for confirmation. ├custom Legacy folder for storing custom/modded definitions (NOTE: This folder is deprecated and might be removed in the future). ├def See: Definitions. ├dlc Shared models used by dlc such like "dead end" sign. ├effect Set of compiled shader effects used by game for rendering of any visual element. ├font See: Fonts. ├map Storage for maps and it's additional data. ├material See: Predefined materials. ├matlib TODO: wait for confirmation. ├model Storage for 1st generation of map assets. ├model2 Storage for 2nd generation of map assets. ├prefab Storage for 1st generation of prefab assets. ├prefab2 Storage for 2nd generation of prefab map assets. ├road_template Road template models for new system of road generation. ├sound See: Sounds. ├system Low level engine resources needed for console and fall-back cases of missing resources. ├ui See: UI definitions. ├uilab TODO: wait for confirmation. ├unit Definitions for predefined hookups spawned in game trough locators, for example: light flare, light sources, no weather areas. ├vehicle See: Vehicle model resources. ├video Video based animated textures for UI. ├autoexec.cfg Configuration file which is automatically executed on game start-up. └version.txt File containing game version string.
Definitions
Definitions for most of configurable game content like: vehicles, economy, map assets etc.
Root game folder ├def ├animated_model Directory with definitions for animated models triggered when distance to player is small enough. ├camera See: Camera definitions. ├cargo See: Cargo definitions. ├city Defines cities for game. Each city is defined in it's own file. ├climate See: Climate definitions. ├company See: Company definitions. ├country ├desktop ├ferry ├initial_save ├jobs ├regional_settings ├sign ├stamp ├vehicle ├world ├aux_lamp_colors.sii Defines players vehicle auxiliary light mask colors. ├bank_data.sii Bank loans configuration. ├car_colors.sii Defines colors for AI traffic cars. ├cargo.sii Storage of cargoes for trailer generation. When defining your own cargoes use infixed version of this Sii file for example: "cargo.my_mod.sii". ├city.sii Storage of cities in game. When defining your own cities use infixed version of this Sii file for example: "city.my_mod.sii". ├climate.sii Storage of climate profiles. When defining your own climate use infixed version of this Sii file for example: "climate.my_mod.sii". ├company.sii Storage of companies that can be used in game. When defining your own companies use infixed version of this Sii file for example: "company.my_mod.sii". ├... ├country.sii Storage of countries used in game. When defining your own countries use infixed version of this Sii file for example: "country.my_mod.sii". ├... ├economy_data.sii Game economy definition. ├... ├env_data.sii Environment global configuration such as day in the year. << TODO: This is not clean enough for me. ├... ├ferry.sii Storage of ferry ports. When defining your own cargoes use infixed version of this Sii file for example: "ferry.my_mod.sii". ├... ├game_data.sii Various global game definitions. ├hdr.sii High dynamic range effect definitions. ├... ├job_trailer_preview.sii Scene setup for generating preview images of trailers in freight market. ├job_truck_preview.sii Scene setup for generating preview images of trucks in quick jobs. ├job_wotr_trailer_preview.sii Scene setup for generating preview images of trailers in WOTR contracts. ├... ├mail_data.sii Defines players mails. ├photo_camera_data.sii Configuration of Photo Mode camera. ├... ├police_data.sii Defines player offences: fine amounts, offence check delay. ├... ├sound_player.sii Defines sounds for UI actions and global game sounds. ├... ├traffic_data.sii Defines different AI traffic data: total AI max count, yield attributes, safety distances etc. ├traffic_light_lamp_colors.sii Defines mask colors for traffic lights. ├trailer_preview_scene.sii Defines scene configuration parameters for Trailer Browser. ├... ├truck_colors.sii Defines colors for AI traffic trucks. ├truck_config_scene.sii Defines scene configuration parameters for Upgrade Shop & Truck Browser. ├truck_dealer_scene.sii Defines scene configuration parameters for Truck Dealers. ├... └vehicle_lamp_colors.sii Defines players vehicle light mask colors.
Camera definitions
Camera definitions folder ("/def/camera") is using "camera_storage(.infix).sii" files as storage files defining cameras that can be used by player while in game (UI interface is not handled by cameras, as UI is drawn directly on screen 2D plane). Note that this defines only storage for available in game cameras, but which camera is used in the game depends on currently user selected view and current used player vehicle.
Beside storage files camera definitions folder also includes "cutscene.sii" file which defines camera and it's movement in different cut-scenes.
Root game folder ├def ├camera ├... Directories for cut scenes camera definitions. ├ui Directory for storing camera movement definitions related to game desktop (main menu). ├units Directory for storing players camera included in "camera_storage" Sii files. ├camera_storage.sii Defining cameras storage that can be used in game by player. When creating your own cameras use infixed storage file name like: "camera_storage.mymod.sii". ├camera_storage.oculus.sii Same as camera_storage.sii with purpose of defined cameras for Oculus Rift head set. └cutscene.sii Defines cut scene data for each type.
Cargo definitions
Defines all cargoes that player can transport in the game. Unique cargo is defined by Sii file and folder with one or more Sii files defining trailers which can carry this cargo. So for each cargo you have one Sii file inside "/def/cargo/" and one or multiple Sii files inside folder "/def/cargo/<cargo_name>/". Example definition for cargo: "<cargo_name>" is shown in the tree below.
Root game folder ├def ├cargo ├<cargo_name> Directory defining trailers that can carry cargo defined in "<cargo_name>.sii" file. ├trailer.unit.name.sii Defines trailer that can carry this cargo. Sii file is named by trailer SiiUnit name └... More definitions for different trailers carrying this cargo. ├... Rest of cargo trailer definition folders. ├<cargo_name>.sii Defining one cargo data. └... Rest of unique cargo definitions.
Climate definitions
Each climate is defined in it's own folder "/def/climate/<climate_name>/" and usually have at least 2 profile Sii files: one for nice weather "nice.sii" and second for bad weather "bad.sii". Climates definitions
There should be at least two climates:
Root game folder ├def ├climate ├reference Reference climate. ├bad.sii └nice.sii └... Rest of climates.
Fonts
Folder for storing game fonts.
Root Game Folder ├─ font ├─license_plate Fonts used by licence plates. └─sign Fonts used by road signs.
Predefined materials
Library of predefined materials and textures.
Root Game Folder ├─ material ├─ custom Lorem ipsum.. ├─ decal Lorem ipsum.. ├─ deferred Lorem ipsum.. ├─ editor Lorem ipsum.. ├─ environment Lorem ipsum.. ├─ flags Lorem ipsum.. ├─ logo Lorem ipsum.. ├─ metal Lorem ipsum.. ├─ overlay Lorem ipsum.. ├─ prefab Lorem ipsum.. ├─ road Lorem ipsum.. ├─ rocks Lorem ipsum.. ├─ ropes Lorem ipsum.. ├─ sign Lorem ipsum.. ├─ special Lorem ipsum.. ├─ terrain Lorem ipsum.. ├─ tiled Lorem ipsum.. └─ ui Lorem ipsum..
Sounds
Library of sounds used by game.
Root Game Folder ├─ sound ├─ ai Lorem ipsum.. ├─ environment Lorem ipsum.. ├─ mover Lorem ipsum.. ├─ music Lorem ipsum.. ├─ truck Lorem ipsum.. └─ ui Lorem ipsum..
UI definitions
Library of all UI layouts and control definitions including vehicle dashboards.
Root Game Folder ├ui ├─ company_manager Company manager UI layouts. ├─ dashboard Truck dashboard UI layouts. ├─ desc UI descriptors. ├─ editor Editor UI layouts. ├─ license_plate Licence plate UI layouts. ├─ options Options screens UI layouts. ├─ template UI templates (definitions of the controls look). └─ ... UI window layouts for all in game windows.
Vehicle model resources
Root Game Folder ├vehicle ├─ ai ├─ driver ├─ share ├─ trailer* ├─ truck └─ wheel