Changes

Jump to navigation Jump to search

Games/ETS2/Modding guides/1.32

5,287 bytes added, 08:21, 3 December 2018
Flares data
{{Tip|Be aware that page is not final. Thus do not fully rely on written subjects, until this message is here!}}
 
 
= Introduction =
= How to convert map =
* Ensure that <strong>ALL</strong> map files are updated Set parameter '''instanced''' to true for all signs which have '''dynamic''' set to version compatible with 1true. Models which need this will be reported using "Non instanced dynamic road model is not supported! (sign)" error message.31 update by resaving them * If your mod defs are directly referencing spruce vegetation models (found in 1.31 version. Otherwise '''/model/vegetation/poly_vegetation/'''), you might be unable need to update the definitions to load reference the map in 1.32 editornew versions.
* Load map
* If the editor shows a warning dialog about items referencing obsolete TERRAIN ONLY road flag, you <strong>MUST</strong> 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 Select correct looks for models clipping through). You have following options:** Adjust where 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 selection of events.** If you do not care about the issues, you can ignore the item.* Save maplooks changed
= Changes =
== Map format changes ==
TBASemaphore profiles can be overridden on prefab item level.
== Game data UI texture changes ==
* Added '''blinker_auto_off_trigger''' attribute defining angle below which blinker auto disable is performed previouslyWe changed the blending of UI textures to be gamma correct. As result alpha transitions in UI textures (e.g. accessory icons, custom loading screens) and alpha values specified in UI screen definitions will yield a different result than before. When creating transparent textures, you should configure your graphics editor to use Gamma value of 1.0 to get the composition to behave in the same way as in the game.
== Economy data ==While there is no fully automated way to modify the textures to get exactly the same result as before, the [http://download.eurotrucksimulator2.com/tga_adjust_for_gamma_1.zip attached Perl script] can be used to adjust alpha channel to keep the appearance similar based on assumption that the blend is done over middle-gray background based on expression mentioned bellow. Note that after using the script you might still need to manually adjust the images to get the appearance you want.
* Added '''cargo_damage_cost''' attribute defining how much money player has to pay to for 1% of the damage<pre>S .* Added '''cargo_damage_cost_factor''' attribute defining factor damage penalty is multiplied with every 1% of the damage.source sRGB color in UI texture* Added '''exp_park_load_bonus''' attribute defining how big XP bonus player gets for parking trailer during loading of the joba .* Added '''revenue_per_km_base''' attribute defining base revenue per km for the ai drivers (has to be proportional to regular cargo fees).source alpha in UI texture* Added '''revenue_coef_per_km''' attribute defining salary coefficient per km for the freight market and online jobsD .* Added '''cargo_market_revenue_coef_per_km''' attribute defining salary coefficient per km for the cargo market jobs.background sRGB color, we assume middle gray #808080* Added '''driver_revenue_coef_per_km''' attribute defining salary coefficient for ai drivers and players quick jobsb .* Added '''driver_cargo_market_revenue_coef_per_km''' attribute defining salary coefficient for ai drivers cargo market jobs.recomputed alpha
* Removed '''revenue_per_km'''.* Removed '''driver_revenue_per_km'''.* Removed '''trailer_damage_cost'''.* Removed '''trailer_damage_cost_factor'''.* Removed '''brands''', game will now collect truck and trailer brands on startup from <code>/def/vehicle/truck_dealer</code> and <code>/def/vehicle/trailer_dealer</code> directories. Each directory inside that can be interpreted as token is a new brand.The old blending expression:
OLD == Country data ==S * a + D * (1 - a)
Country data has a The new attribute called '''mass_limit_per_axle_count'''. It defines GVW (gross vehicle weight) - maximum allowed mass limit (in kilograms, kg) of the whole vehicle set (truck + trailer(s) + cargo) with the given amount of axles (total truck + trailer(s)) in the the country. Empty array impose no limit.blending expression:
The first element is describing mass limit for vehicle with 2 axles, second for 3 axles etc. If vehicle has more axles than defined last entry will be used as limit.NEW = sRGB(rgb(S) * b + rgb(D) * (1 - b))
<pre>country_dataAlpha which would result in the same final value after blend: country.data.uk{ # [...]
mass_limit_per_axle_count[]: 18000 # 2b = (rgb(OLD) -axle vehicle mass_limit_per_axle_count[]: 26000 # 3rgb(D)) / (rgb(S) -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}rgb(D))
</pre>
== Cargo generator Economy system changes ==
The whole cargo generator was dramatically changed since previous versions:
=== Cargo data ===
 
Attributes '''price_coef''' (float), '''mass''' (float array, per trailer) and '''cog_height_offset''' (float array, per trailer) has been. Attribute array '''trailers''' remain only for compatibility of some cargoes.
=== 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 remaining old trailers only (using cargo folder placement with filled '''trailer''' link and fake underscored trailer '''body_type'''s). Additionally trailer defs using new owned trailer system are now placed in '''/def/vehicle/trailer_defs''' folder. Old system trailer defs, however, remain in it's original place.
New fields support system that matches cargoes to trailer only through trailer body types with additional information. Most important are:
 
* [float] '''gross_trailer_weight_limit''' - technical or logical limit of trailer(s) + cargo mass, also limited by bridge formula or similar rules.
* [token] '''body_type''' - defines cargo that can be loaded in, should equal to body_type of bodies of all trailers in set
* [float] '''length''' - length of whole trailer set in meters
* [token] '''chain_type''' - type of trailer chain (single, double, b_double, ...)
 
In addition, there are also cog placement parameters - unlike older mechanics right now its plain cargo cog offset in meters (before height was halved due to historical reasons).
==== Body types ====
Body type defines which cargo can be transported with trailer and is binded to economy trough cargo definition with new array attribute '''body_types''' in cargo data.
That said one can still use custom token for body type, but do not forget to define new cargo data for it. In the future updates, however, predefined list will most probably grow with new set of body types.
 
== 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 (has to be proportional to regular cargo fees).
* 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 '''trailer_damage_cost'''.
* Removed '''trailer_damage_cost_factor'''.
* Removed '''brands''', game will now collect truck and trailer brands on startup from <code>/def/vehicle/truck_dealer</code> and <code>/def/vehicle/trailer_dealer</code> directories. Each directory inside that can be interpreted as token is a new brand.
 
== Game data ==
 
* Added '''blinker_auto_off_trigger''' attribute defining angle below which blinker auto disable is performed previously.
 
== Country data ==
 
Country data has a new attribute called '''mass_limit_per_axle_count'''. It defines GVW (gross vehicle weight) - maximum allowed mass limit (in kilograms, kg) of the whole vehicle set (truck + trailer(s) + cargo) with the given amount of axles (total truck + trailer(s)) in the the country. Empty array impose no limit.
 
The first element is describing mass limit for vehicle with 2 axles, second for 3 axles etc. If vehicle has more axles than defined last entry will be used as limit.
 
<pre>
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
}
</pre>
 
== Flares data ==
 
Flare unit (usually found as hookup defined models inside '''/unit/hookup''' directory) got new functionality of manual curve definition for flare scaling, with two new float attributes:
 
* '''scaling_start_distance''' - defines distance at which flare scaling starts.
* '''scaling_end_distance''' - defines distance at which flare scaling ends, flare scale reaches '''scale_factor'''.
 
Note that both of those attributes hold distance in meters and that they won't be used unless '''scale_factor''' is bigger then 1.0.
== Vehicles data ==
 
=== Trailer cable data ===
 
There is now support for straight trailer cables, which can be activated by using new float attribute: '''straight_cable_length''', which, when used and it's bigger than zero, transforms spiral cable into straight one and tells the game what is actual distance of straight cable.
 
Additionally now there is support for so called "back faces" in cable geometry, activated with setting boolean attribute: '''back_faces''' to true. This can be useful when using transparent material on cable, so that inner wall of the cable will also be visible (for example back faces are currently used in the new trailer cables for traffic vehicles).
=== Truck data ===
==== Accessory head lights data ====
The algorithms for sign illuminations have been changed, from now on the illumination of signs 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_rangeThe following attributes were made obsolete and are no longer used:* front_beam_sign_color* front_beam_sign_range* roof_beam_aspect'''low_beam_sign_(color/range)'''* roof_beam_sign_color'''hi_beam_sign_(color/range)'''* roof_beam_sign_range'''front_beam_sign_(color/range)'''* front_roof_beam_sign_color'''roof_beam_sign_(color/range)'''* front_roof_beam_sign_range'''front_roof_beam_sign_(color/range)'''
=== Trailer data ===
 
There has been several additions in trailer data with new folder structures inside '''/def/vehicle''':
# '''trailer_cargo''' - container folder for definition of matching cargo models to trailer bodies.
# '''trailer_chain_types''' - folder for definition of possible trailer chain types among all trailer in game.
# '''trailer_dealer''' - dealer offers for trailer dealer, sorted in <brand.model> sub-folders.
# '''trailer_defs''' - all configurations of possible trailer combinations in the new system (see [[#Cargo generator]]).
# '''trailer_owned''' - ownable trailers data defining configuration, body, paintjob and accessories (similarly as trucks), sorted in <brand.model> sub-folders.
 
Additionally '''trailer''' unit used to define freight market trailers has new pointer attribute '''trailer_definition''', which can link freight market trailer to economy by pointing to new type of '''trailer_def'''.
 
==== Trailer dealer data ====
 
Trailer dealer offer is defined by exactly same way as truck dealer offer.
 
In folder '''/def/vehicle/trailer_dealer/''' are folders for every trailer brand and in them are complete definitions of different pre-configured offers that player can select from in-game.
==== Accessory trailer data ====
The new unit ('''/def/vehicle/trailer_owned/<brand.model>/data.sii''') describing brand and series of the trailer. Very similar to well known '''accessory_truck_data'''.
The attributes of the unit are:
==== Accessory trailer body data ====
New accessory type defining trailer bodyin folder '''/def/vehicle/trailer_owned/<brand.model>/body/'''.
Required attributes are:
* [token] '''look''' - The look of the model to use.
=== Trailer dealer data =Ownable trailer configurations ==== Each ownable trailer needs it's own configurations which player can select from in the trailer configurator (eg. single 3-axles, single 2 axles, double, b-double). All configurations combinations are defined in '''/def/vehicle/trailer_owned/<brand.model>/configurations'''. Each trailer configuration of type '''trailer_configuration''' has following attributes:* [string] '''name''' - Displayable name for this configuration in trailer configurator.* [string] '''icon''' - Displayed icon for this configuration in trailer configurator.* [token] '''chain_type''' - Type of the chain this configuration is using (one of chain types defined in '''/def/vehicle/trailer_chain_types/'''.* [string array] '''chassis''' - All chassis definitions for this configuration, first chassis for first trailer in chain, second chassis for second trailer in chain etc.* [trailer_body_set array] '''body_sets''' - Owner pointer array of compatible '''trailer_body_set'''s with this configuration. Except manually linked body sets in configuration file they are also gathered from sub-folder named same as base configuration file name (name of the file to first dot, so configuration "''single3.sii''" or "''single3.mymod.sii''" should have body sets in folder "''/def/vehicle/trailer_owned/<brand.model>/configurations/single3''").
===== Trailer dealer offer body set ===== Trailer body set defines set of bodies that can be used on individual trailer configuration. Each body set is defined then selectable by exactly same way as truck dealer offerplayer in trailer configurator.
In folder Each trailer body set contains:* [string] '''/def/vehicle/trailer_dealer/name''' are folders - Displayable name for every this configuration in trailer brand and configurator.* [string] '''icon''' - Displayed icon for this configuration in them are complete definitions trailer configurator.* [trailer_def pointer] '''trailer_definition''' - Pointer to trailer definition to be used for this trailer body set, trough which game knows what kind of different precargo can be used with this trailer configuration and body set.* [string array] '''body''' -configured offersAll body definitions for this body set, first body for first trailer in chain, second body for second trailer in chain etc.

Navigation menu