Immersive Railroading

Immersive Railroading

3M Downloads

Custom material requirements in stock's CAML/JSON files

DankLondon opened this issue ยท 1 comments

commented

Describe the suggestion
Let the modelers have the ability to put in custom material requirements in a stock's JSON/CAML (as well as possibly custom parts entirely?).

Custom material requirements ONLY for existing parts:

  • Letting modelers control what materials are required to make their rolling stock in survival. Meaning there's an ability to explicitly balance engine/stock creation (think a wagon, where the sides are made of wood. Instead of requiring X amount of steel for something that isn't steel, the modeler can set it to take wood, making stock more accessible in the early game).
  • Creates consistency with track definitions (why can track be set to require certain materials but stock can't?)

Custom part definitions: (Very far fetched)

  • Having custom parts requiring certain materials means that later game locos can be balanced to be harder to make than normal. A very late game locomotive could require gold for example, for a custom component that recreates an electrical component on the real thing.
  • Could be used to help balance stock crafting in the future when it comes time to revamp the machines. Each custom piece could be told to use a "crafting_difficulty" setting (1-5 maybe?), which ties into future machines. A starter locomotive or wagon could use all "crafting_difficulty: 1" components, which means the starter/cheapest machines are used to craft them. This could also be tied into integration with other mods (the first one that comes to mind is Create, which has at least one machine which has parallel functionality with IR. The difficulty setting would correspond to Create's rotational force to create a part)
  • Custom parts with custom material requirements could be tied into the widget system, so a modeler can set it that to use a widgeted component you have to first create that component then "fit it" to the engine. For example, different smokestacks on locomotives, you first have to craft the different smokestack then put it on an individual locomotive to be able to actuate the corresponding widget control.
commented

I believe you can already do wood as stock material by adding "WOOD" to the object name (eg. SHELL_WOOD), but I agree it would be nice if we could define more materials, like wool for seats, glass for windows, maybe even dyes for the default livery