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 AmberFrostmtr:4.0.x:content_developer [2026/04/14 16:09] (current) – Add remark on scripting AmberFrost
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 ====+===== JS 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 featureyou 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 in the main modhowever there are 3rd party efforts such as [[mtr_addon:jcm:start|Joban Client Mod]] which aims to re-implement the JS scripting feature from NTE.
  
-==== mtr_custom_resources.json Changes ====+You can also explore with the new Resource Pack Creator in MTR 4 and see whether similar effects can be achieved. 
 + 
 +===== 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. 
 + 
 +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.
 +
 +==== Dual-versioned resources (MTR 3 Custom Resource + MTR 4 Custom Resource) ====
 +
 +MTR 4 supports reading **mtr_custom_resources.json** in both MTR 3 and MTR 4 format.
 +
 +However during migration period, you may run into a situation where some content are migrated to MTR 4, while others are not, but you want to fit them in to the same resource pack.
 +
 +To that, MTR 4 supports an alias called **mtr_custom_resources_pending_migration.json**, which works effectively the same as the regular **mtr_custom_resources.json**.
 +
 +This allows you to put MTR 3's custom resources into **mtr_custom_resources_pending_migration.json**, while using **mtr_custom_resources.json** for MTR 4 content.
 +
 +==== 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 AmberFrost