Contents
Introduction
The following page contains modding guidelines for the new update of the game.
To better understand changes in units it is recommended to check Units documentation page.
Recommendations
- When basing your model on the original ones, add to your mod also ALL original /automat/ files used by it. The names of the files are generated as CityHash64 hash of theirs content so whenever we change the parameters of the material in any way, a different file will be used to store them and the original file might cease to exist if there is no other model utilizing the original parameters.
- When modifying original models, always include ALL components of the model (pmg+pmd) instead of just those you changed. Otherwise you risk crash if we change the model.
- As always when adding new objects to files which support multi-file approach (e.g. road_look.sii) it is HIGHLY RECOMMENDED to use suffix or prefix in the name to avoid conflicts with new objects we are adding in patches. Otherwise you might have to use the batch renaming functionality (see Batch renaming) to fix the conflicts when new patch appears.
How to convert map
- Load map
- Do rebuild (F8)
- Save map
Changes & New Features
Game Substances
Game substance unit type (defined in /material/material.db
) got new physics float attributes: bump_granularity
, bump_amplitude
and an integer attribute: bump_perlin_order
. They are used to describe bumpiness of the material substance.
Additionally substance unit also got a new token attribute: sound_class
. It is used to determine the type of the sound that is played when player is driving on the geometry with material using a given substance. There are 6 different sound class types currently:
asphalt
rumble
gravel
dirt
grass
generic
Game Data
City Data
City data unit has new attribute population
. If defined, it is used as additional modifier for apparent city pin and label sizes. Progression is from 75% size on zero population, with 100% size on 40k population, up to 150% pin size on 4M population (area based).
Vehicle Data
Accessory addon electric type
All accessory addon unit types got new electric_type
attribute value: vehicle_interior
.
When used, accessory will be picking up parameter packets for luminance based materials (material use luminosity effects e.g. eut2.dif.lum
) from dashboard_color[]
array of accessory_interior_data
. So any illuminated parts of accessories can use same functionality of backlight coloring as interior model does.
Cabin suspension type
Accessory cabin data unit got new suspension_type
attribute. It is token with default 4air
value. Other accepted value is hinge2air
which gives option to setup two basic types of cabin suspension used in Europe an US.
With US-type suspension rendering of truck parts has been slightly changed due to hood mounted parts. In exterior view everything is rendered as before, using exterior_model
(and baked into chassis and cabin models). In interior view all accessories on interior-mounted locators are rendered as before (in fixed position to camera/interior). Also if show_chassis_rear
is enabled baked chassis model is rendered as before. But additionaly chassis-mounted accessories that have explicitely defined interior_model
are also rendered. This allows specific detail level from interior (like nose mirrors) or show some specific chassis-mounted part instead of force game to draw whole baked chassis (hood, headache rack, etc). Slight caveat is that definition of interior model excludes accessory from baking process, so its exterior rendering might be bit slower.
Dashboard Colors
Handling of the dashboard_color[]
array in accessory_interior_data
was changed. Instead of possible 16 slots, user can now define only up to 8 slots. Remaining 8 slots are now system reserved and are currently used as follows:
- slot9-14[uv(0..3, 2..3)] - unused, reserved for future use, set to MEGENTA(1.0,0.0,1.0) to easily spot misplaced UVs
- slot15[uv(2,-3)] - permanently WHITE(1.0,1.0,1.0), useful for any permanently lit surfaces or material simulating mirror surface
- slot16[uv(3,-3)] - WHITE(1.0,1.0,1.0) when engine electric is ON, otherwise BLACK(0.0,0.0,0.0), useful for any lit surfaces that are depended on the engine electrics (e.g. dashboard computer)
Interior Animations
Vehicle interior accessory unit accessory_interior_data
got new indicator blind spot indicator animation attributes: indicator_blind_spot_[left|right]
to work with new blind spot detection feature. For more information see: Documentation/Engine/Truck_Interior_Animations_and_IDs.
Dashboard Display IDs
There is now support for new group of IDs (IDs from 1620 to 1650), that are displayed when vehicle is using specific camera based mirror accessories. More info at: Documentation/Engine/Truck_Interior_Animations_and_IDs.
Additionally there is now support for blind spot indicator IDs, that are displayed the same way as blind spot indicator animations are engaged. More info at: Documentation/Engine/Truck_Interior_Animations_and_IDs.
Sounds
There are three new sound event types defined for the accessory_interior_data
unit:
system_warning1
- Sound of (generic) system warning, currently used when EBS or BSD is engaged.system_warning2
- Sound of (generic) system warning, currently unused.system_warning3
- Sound of (generic) system warning, currently unused.