Open main menu

Games/ETS2/Modding guides/1.36

< Games‎ | ETS2/Modding guides
Revision as of 20:28, 14 November 2019 by Max (talk | contribs) (Dashboard computer display elements)


TIP: Be aware that page is not final. Thus do not fully rely on written subjects, until this message is here!

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

(TODO)

Changes & New Features

(TODO)

Editor

The editor now works as separate tool started by executing the game with "-edit" launch option/command line parameter. Its log is stored in editor.log.txt instead of the game.log.txt which is used by the game and preview modes.

Triggers

Due to improvements in game trigger handling, there was some cleanup in /def/world/trigger_action.sii: several trigger commands were renamed and to keep backward compatibility, obsolete trigger actions were moved to /def/world/trigger_action.compatibility.sii.

City data

Attribute city_name_sort has been removed. Sorting by city name is now performed by shown city name in selected localization and/or visualization option.

Traffic data

License plate generation templates format improvement

More data driven license plate system for AI vehicles.

From unit traffic_vehicle the attributes lp_variant_front and lp_variant_rear has been removed.

Unit license_plate_data has new attributes: background_front, background_rear. Both are strings (up to 32 characters), default values are "front" and "rear" respective. Texture with given name is looked for as material/ui/lp/<country>/*.mat file. Proper usage for variants of texture background for AI vehicles is now per license_plate_type in traffic_vehicle class as was text of the plate. If no type is defined the game tries to guess from vehicle speed_class (like car, truck or bus). All other vehicle classes has to be defined explicitly or they get some default (either car or first defined license plate type).

Due to interaction with player-owned vehicles (apportioned trucks and trailer in US) such textures should still be named "truck_front", "truck_rear" or "trailer" respectively (like they were before). Failing to use these names in license plate definitions will end with improper license plate backgrounds for player vehicles.

Vehicles data

Chassis data

There is new attribute nominal_voltage (float, default 24.0V) used for battery voltage simulations ranges and display.

Dashboard computer display elements

```ui_gauge``` element type has new attribute:

New elements added: 1320 - battery voltage 1330 - battery voltage gauge, expected to be ```ui_gauge``` element type 1340 - oil temperature gauge, expected to be ```ui_gauge``` element type 1350 - ```ui::text``` for instant fuel economy bar, the text is cut according to current value 1355 - ```ui::text``` that defines size, orientation and range of instant fuel economy bar (typical data "H~~0~~5", horizontal range 0 to 5 km/l) 1360 - ```ui::text``` for average fuel economy bar, the text is cut according to current value 1365 - ```ui::text``` that defines size, orientation and range of average fuel economy bar (typical data "H~~0~~5", horizontal range 0 to 5 km/l)