User Tools

Site Tools


mtr:4.0.x:content_developer

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mtr:4.0.x:content_developer [2025/03/31 03:33] – Better wording lx862mtr:4.0.x:content_developer [2025/06/07 07:21] (current) – Add concept for a train in MTR 4 lx862
Line 1: Line 1:
-===== MTR 4 for Custom Content/Trains Creator =====+====== MTR 4 for Custom Content/Trains Creator ======
  
 This page documents some of the migration steps needed when loading MTR 3 custom content in MTR 4. This page documents some of the migration steps needed when loading MTR 3 custom content in MTR 4.
  
-==== Javascript Scripting ====+===== Javascript Scripting =====
  
 JS Scripting from the [[mtr_addon:nte:start|Nemo Transit Expansion]] is **not implemented** at the moment. If you rely on contents that make use of such feature, you are advised to either stay on **MTR 3.x + Nemo Transit Expansion addon**, or explore with the new Resource Pack Creator in MTR 4 and see whether similar effects can be achieved. JS Scripting from the [[mtr_addon:nte:start|Nemo Transit Expansion]] is **not implemented** at the moment. If you rely on contents that make use of such feature, you are advised to either stay on **MTR 3.x + Nemo Transit Expansion addon**, or explore with the new Resource Pack Creator in MTR 4 and see whether similar effects can be achieved.
  
-==== mtr_custom_resources.json Changes ====+===== Train (Concept) ===== 
 + 
 +In MTR 3, a train refers to a single type of train, which can be dynamically fitted with any amount of carriage length depending on the siding length. 
 + 
 +In MTR 4, the concept of a **Train** no longer exists. Instead we now have carriage (Vehicle car), where player can mixes different carriage together to form a **train (consist)**. (Which, to the surprise of some, is actually how a train is made up in real life!) 
 + 
 +  * For MTR 4 loading legacy trains made for MTR 3, the MTR mod will try to detect and split your "Train" into several parts (e.g. Cab Forward, Trailer, Cab Backward) 
 +  * For the new MTR 4 format, you are suppose to define everything per-carriage instead of a single train. 
 +  * While JS scripting is not implemented yet, if and when it is implemented, you are expected to make heavy modification to your script to align with the new per-carriage system. 
 + 
 +To reflect the different transport types supported in the MTR mod, **train** are now referred as **vehicle.** 
 + 
 +===== Custom Resources ===== 
 + 
 +==== mtr_custom_resources.json (MTR 3 format) ====
  
   * Train which uses a ''base_train_type'' but without providing ''texture_id'' no longer has base train's texture applied (Only transparent train with bogie & gangway)   * Train which uses a ''base_train_type'' but without providing ''texture_id'' no longer has base train's texture applied (Only transparent train with bogie & gangway)
   * Train which does not specify a valid ''gangway_connection_id'' (Or does not have it) can no longer walk between gangways like they can in MTR 3   * Train which does not specify a valid ''gangway_connection_id'' (Or does not have it) can no longer walk between gangways like they can in MTR 3
   * When specifying built-in MTR barrier/gangway/vehicle texture, replace ''textures/entity/*'' to ''textures/barrier'', ''textures/gangway'' and ''textures/vehicle'' respectively, as they are now separated.   * When specifying built-in MTR barrier/gangway/vehicle texture, replace ''textures/entity/*'' to ''textures/barrier'', ''textures/gangway'' and ''textures/vehicle'' respectively, as they are now separated.
 +
 +==== Custom Model Changes ====
 +
 +  * **Custom Destination's CJK Ratio has been changed in MTR 4**
 +    * Previously, **-2.0** means English is bigger than Chinese, **0.0** for equal weight, **2.0** means Chinese is bigger than english
 +    * In MTR 4, this is changed to represent the scale CJK characters are rendered at:
 +      * Non-CJK characters always takes up a weight of **1.0**
 +      * For example, assume we have the text ''English1|中文|English2''.
 +        * If CJK Ratio is **2.5**, this would mean ''English''1 has a weight of **100%**, ''中文'' has a weight of **250%**, and ''English2'' has a weight of **100%**
 +        * If CJK Ratio is **0.1**, this would mean ''English1'' has a weight of **100%**, ''中文'' has a weight of **10%**, and ''English2'' has a weight of **100%**
  
  
mtr/4.0.x/content_developer.1743392030.txt.gz · Last modified: 2025/03/31 03:33 by lx862