Difference between revisions of "Games/ETS2/Modding guides/1.32"

From SCS Modding Wiki
Jump to navigation Jump to search
(Accessory head lights data)
Line 100: Line 100:
 
==== Accessory head lights data ====
 
==== Accessory head lights data ====
  
Following attributes were made obsolete and are no longer used.
+
The algorithms for sign illuminations have been changed. The sign illumination is calculated based on the color and the range of the regular truck lights. The following attributes were made obsolete and are no longer used:
  
 
* low_beam_sign_color
 
* low_beam_sign_color

Revision as of 11:59, 9 August 2018

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

  • Ensure that ALL map files are updated to version compatible with 1.30 update by resaving them in 1.30 version. Otherwise you will be unable to load the map in 1.31 editor.
  • Load map
  • If the editor shows a warning dialog about items referencing obsolete TERRAIN ONLY road flag, you MUST remove or replace all those items in the map before saving the map. Otherwise the editor might crash when loading the resaved map.
  • Run prefab node corrections (F3 - "Prefab node correction")
  • Save map
  • Do rebuild (F8)
  • Save map
  • Run shoulder check from "Map\Validate road shoulders" This will generate list of all items which could cause issues with random events (mostly models clipping through). You have following options:
    • Adjust the items so they do not cause issues by moving them or removing them
    • Mark the related road as having blocked shoulder ("Shoulder blocked" checkboxes in Road item properties) to prevent generation of events.
    • If you do not care about the issues, you can ignore the item.
  • Save map

Changes

Map format changes

Game data

  • Added blinker_auto_off_trigger attribute defining angle below which blinker auto disable is performed previously.

Economy data

  • Added cargo_damage_cost attribute defining how much money player has to pay to for 1% of the damage.
  • Added cargo_damage_cost_factor attribute defining factor damage penalty is multiplied with every 1% of the damage.
  • Added exp_park_load_bonus attribute defining how big XP bonus player gets for parking trailer during loading of the job.
  • Added revenue_per_km_base attribute defining base revenue per km for the ai drivers.
  • Added revenue_coef_per_km attribute defining salary coefficient per km for the freight market and online jobs.
  • Added cargo_market_revenue_coef_per_km attribute defining salary coefficient per km for the cargo market jobs.
  • Added driver_revenue_coef_per_km attribute defining salary coefficient for ai drivers and players quick jobs.
  • Added driver_cargo_market_revenue_coef_per_km attribute defining salary coefficient for ai drivers cargo market jobs.
  • Removed revenue_per_km.
  • Removed driver_revenue_per_km.
  • Removed brands, game will now collect truck and trailer brands on startup from /def/vehicle/truck_dealer and /def/vehicle/trailer_dealer directories. Each directory inside that can be interpret as token is a new brand.

Country data

Country data has a new attribute called mass_limit_per_axle_count. It defines maximum allowed mass limit in KG of the whole set (truck + trailer + cargo) with the given amount of axles (total truck + trailer) in the following countries.

The first element is describing mass limit for vehicle with 2 axles, second 3 axles etc. If vehicle has more axles than defined mass limits last entry will be used.

country_data: country.data.uk
{
	# [...]

	mass_limit_per_axle_count[]: 18000	# 2-axle vehicle
	mass_limit_per_axle_count[]: 26000      # 3-axle vehicle
	mass_limit_per_axle_count[]: 38000      # 4-axle vehicle
	mass_limit_per_axle_count[]: 40000      # 5-axle vehicle
	mass_limit_per_axle_count[]: 44000      # 6 and more-axle vehicle
}

Cargo generator

The whole cargo generator was dramatically changed since previous versions.

Main changes:

  • More importantly cargo is now being defined by units instead of weight.
  • Another new concept are body types, new trailers are being matched with the compatible cargo by body types. Trailer that has body type flatbed will have only generated jobs that consists of cargo that is compatible with flatbed body.

Cargo data

Trailer def

Structure trailer_def was greatly improved and redesigned as its core of the economy. Old system with list of trailers for given cargo is used for rest of old trailers only (using cargo folder placement with filled trailer link and fake underscored trailer body_types).

New fields support system that matches cargoes to trailer only through trailer body types with additional information. Most important are gross_trailer_weight_limit, body_type and country_validity. Then there are cached/precomputed trailer_mass, body_mass, volume, axles, length and chain_type for fast access without loading all accessories as well as data for trailers that do not have all accessories well defined (eg freight market ones). In adition, there are also cog placement parameters - unlike older mechanics right now its plain cargo cog offset in meters (before was height in halfs due to historical reasons).

Body types

Vehicles data

Chassis accessory data

New cables accessory data

Truck data

Transmission accessory data

Truck dealer data

Accessory head lights data

The algorithms for sign illuminations have been changed. The sign illumination is calculated based on the color and the range of the regular truck lights. The following attributes were made obsolete and are no longer used:

  • low_beam_sign_color
  • low_beam_sign_range
  • hi_beam_sign_color
  • hi_beam_sign_range
  • front_beam_sign_color
  • front_beam_sign_range
  • roof_beam_aspect
  • roof_beam_sign_color
  • roof_beam_sign_range
  • front_roof_beam_sign_color
  • front_roof_beam_sign_range

Trailer data

Accessory trailer data

The new unit describing model of the trailer. Very similar to well known accessory_truck_data.

The attributes of the unit are:

  • [string] info[0] - (optional) brand name, if empty string is passed no brand is displayed.
  • [string array] fallback - (optional) list of fallback accessories following format type|path

Accessory trailer body data

New accessory type defining trailer body.

Required attributes are:

  • [float] volume - The volume of the body in m.
  • [token] body_type - The type of the body.
  • [float] mass - The mass of the empty body.
  • [float3] total_size - The total size of the trailer in meters.
  • [float3] size - The total size of the trailer body in meters.

Optional attributes are:

  • [string] detail_model - The detailed model of the body.
  • [string] model - The default model of the body.
  • [string array] lods - The LOD models.
  • [string] collision - The collision of the body.
  • [token] variant - The variant of the model to use.
  • [token] look - The look of the model to use.

Trailer dealer data