From c4de9f79e02db90142137b064776fdc01be90a77 Mon Sep 17 00:00:00 2001 From: Hawke Date: Fri, 31 Oct 2025 23:23:47 -0500 Subject: [PATCH] Add Western North Carolina Piggyback (TOFC) Service [Base] https://www.nexusmods.com/railroader/mods/902 --- EMBPiggyBackBase/Definition.json | 15 ++ EMBPiggyBackBase/PBLoadID.json | 13 ++ EMBPiggyBackBase/PiggyBack1.json | 105 ++++++++++ EMBPiggyBackBase/PiggyBack2.json | 105 ++++++++++ EMBPiggyBackBase/PiggyBack3.json | 105 ++++++++++ .../SCAssetPacks/PiggyBackAssets/Bundle | 3 + .../SCAssetPacks/PiggyBackAssets/Catalog.json | 1 + .../PiggyBackAssets/Definitions.json | 186 ++++++++++++++++++ 8 files changed, 533 insertions(+) create mode 100644 EMBPiggyBackBase/Definition.json create mode 100644 EMBPiggyBackBase/PBLoadID.json create mode 100644 EMBPiggyBackBase/PiggyBack1.json create mode 100644 EMBPiggyBackBase/PiggyBack2.json create mode 100644 EMBPiggyBackBase/PiggyBack3.json create mode 100644 EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Bundle create mode 100644 EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Catalog.json create mode 100644 EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Definitions.json diff --git a/EMBPiggyBackBase/Definition.json b/EMBPiggyBackBase/Definition.json new file mode 100644 index 00000000..9d4efa9f --- /dev/null +++ b/EMBPiggyBackBase/Definition.json @@ -0,0 +1,15 @@ +{ + "manifestVersion": 5, + "id": "Embedded.PiggyBackBase", + "name": "Embeddeds Piggyback trailers and LoadID", + "version": "1.5", + "requires": [ + "Zamu.StrangeCustoms" + ], + "mixintos": { + "game-graph": [ + "file(PBLoadID.json)" + ], + "container:fm-flatcar01": ["file(PiggyBack1.json)", "file(PiggyBack2.json)", "file(PiggyBack3.json)"] + } +} diff --git a/EMBPiggyBackBase/PBLoadID.json b/EMBPiggyBackBase/PBLoadID.json new file mode 100644 index 00000000..339f7f3f --- /dev/null +++ b/EMBPiggyBackBase/PBLoadID.json @@ -0,0 +1,13 @@ +{ + "loads": { + "PiggyBack-Trailers": { + "description": "PiggyBack-Trailers", + "units": "Pounds", + "density": 62.4, + "unitWeightInPounds": 30.0, + "importable": true, + "payPerQuantity": 0.00495, + "costPerUnit": 0.0 + } + } +} \ No newline at end of file diff --git a/EMBPiggyBackBase/PiggyBack1.json b/EMBPiggyBackBase/PiggyBack1.json new file mode 100644 index 00000000..d48a2e47 --- /dev/null +++ b/EMBPiggyBackBase/PiggyBack1.json @@ -0,0 +1,105 @@ +{ + "objects": [ + { + "$find": [ + { + "path": "identifier", + "value": "fm-flatcar01" + } + ], + "$clone": true, + "identifier": "PRR-PiggyBack1", + "metadata": { + "name": "PRR 1954 Piggyback Trailer", + "description": "1954 Piggyback Trailer from the PRR" + }, + "definition": { + "carType": "PBF", + "basePrice": 1150, + "weightEmpty": 58000, + "loadSlots": [ + { + "$find": [ + { + "path": "loadUnits", + "value": "Pounds" + } + ], + "maximumCapacity": 100000.0, + "loadUnits": "Pounds", + "requiredLoadIdentifier": "" + + } +], + "components": [ + { + "$find": [ + { + "path": "kind", + "value": "LoadModel", + "comp": "equals" + } + ], + "models": { + "$replace": [ + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBPRR26PB" + }, + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBPRRStands" + } + ] + }, + "instances": { + "$replace": + [ + { + "position": [0.0,1,0.0], + "rotation": [0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + }, + { + "position": [0.0,1,0.0], + "rotation": [0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + ] + }, + "name": "LoadModel 1", + "transform": { + "$replace":{ + "position": [0.0,1.145,0.0], + "rotation": [0.0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + }, + "parent": null, + "enabled": true + + }, + { + "$add": { + "kind": "DetailModel", + "model": { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBPBSupports" + }, + "offset": [0.0, 0.0, 0.0], + "count": 1, + "name": "Piggy Back Car Rails/poles", + "transform": { + "position": [0, 2.231352, 0.0], + "rotation": [0.0, 0.0, 0.0, 1.0], + "scale": [1.0, 1.0, 1.0] + }, + "parent": null, + "enabled": true + } + } + ] + } + } + ] +} \ No newline at end of file diff --git a/EMBPiggyBackBase/PiggyBack2.json b/EMBPiggyBackBase/PiggyBack2.json new file mode 100644 index 00000000..23a77e83 --- /dev/null +++ b/EMBPiggyBackBase/PiggyBack2.json @@ -0,0 +1,105 @@ +{ + "objects": [ + { + "$find": [ + { + "path": "identifier", + "value": "fm-flatcar01" + } + ], + "$clone": true, + "identifier": "SP-PiggyBack1", + "metadata": { + "name": "SP 1950s Piggyback Trailer", + "description": "1954 Piggyback Trailer from the Southern Pacific" + }, + "definition": { + "carType": "PBF", + "basePrice": 1150, + "weightEmpty": 58000, + "loadSlots": [ + { + "$find": [ + { + "path": "loadUnits", + "value": "Pounds" + } + ], + "maximumCapacity": 100000.0, + "loadUnits": "Pounds", + "requiredLoadIdentifier": "" + + } +], + "components": [ + { + "$find": [ + { + "path": "kind", + "value": "LoadModel", + "comp": "equals" + } + ], + "models": { + "$replace": [ + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBSP22PB" + }, + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBSPStands" + } + ] + }, + "instances": { + "$replace": + [ + { + "position": [0.0,1.15,0.0], + "rotation": [0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + }, + { + "position": [0.0,1.15,0.0], + "rotation": [0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + ] + }, + "name": "LoadModel 1", + "transform": { + "$replace":{ + "position": [0.0,0,0.0], + "rotation": [0.0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + }, + "parent": null, + "enabled": true + + }, + { + "$add": { + "kind": "DetailModel", + "model": { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBPBSupports" + }, + "offset": [0.0, 0.0, 0.0], + "count": 1, + "name": "Piggy Back Car Rails/poles", + "transform": { + "position": [0, 2.231352, 0.0], + "rotation": [0.0, 0.0, 0.0, 1.0], + "scale": [1.0, 1.0, 1.0] + }, + "parent": null, + "enabled": true + } + } + ] + } + } + ] +} \ No newline at end of file diff --git a/EMBPiggyBackBase/PiggyBack3.json b/EMBPiggyBackBase/PiggyBack3.json new file mode 100644 index 00000000..7fdb5330 --- /dev/null +++ b/EMBPiggyBackBase/PiggyBack3.json @@ -0,0 +1,105 @@ +{ + "objects": [ + { + "$find": [ + { + "path": "identifier", + "value": "fm-flatcar01" + } + ], + "$clone": true, + "identifier": "SF-PiggyBack1", + "metadata": { + "name": "SF 1950s Piggyback Trailer", + "description": "1956 Piggyback Trailer from the Atchison Topeka & Santa Fe" + }, + "definition": { + "carType": "PBF", + "basePrice": 1150, + "weightEmpty": 58000, + "loadSlots": [ + { + "$find": [ + { + "path": "loadUnits", + "value": "Pounds" + } + ], + "maximumCapacity": 100000.0, + "loadUnits": "Pounds", + "requiredLoadIdentifier": "" + + } +], + "components": [ + { + "$find": [ + { + "path": "kind", + "value": "LoadModel", + "comp": "equals" + } + ], + "models": { + "$replace": [ + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBATSF24PB" + }, + { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBATSFStands" + } + ] + }, + "instances": { + "$replace": + [ + { + "position": [0.0,1.185,0.0], + "rotation": [-0.00654493831,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + }, + { + "position": [0.0,1.17,0.0], + "rotation": [0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + ] + }, + "name": "LoadModel 1", + "transform": { + "$replace":{ + "position": [0.0,0,0.0], + "rotation": [0.0,0.0,0.0,1], + "scale": [1.0,1.0,1.0] + } + }, + "parent": null, + "enabled": true + + }, + { + "$add": { + "kind": "DetailModel", + "model": { + "assetPackIdentifier": "zsc://EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets", + "assetIdentifier": "EMBPBSupports" + }, + "offset": [0.0, 0.0, 0.0], + "count": 1, + "name": "Piggy Back Car Rails/poles", + "transform": { + "position": [0, 2.231352, 0.0], + "rotation": [0.0, 0.0, 0.0, 1.0], + "scale": [1.0, 1.0, 1.0] + }, + "parent": null, + "enabled": true + } + } + ] + } + } + ] +} \ No newline at end of file diff --git a/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Bundle b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Bundle new file mode 100644 index 00000000..cb5aafb5 --- /dev/null +++ b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Bundle @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e92f8883b10820de9fe494309fc52ae18151facf5c8c154eb81d2f848e19ca22 +size 90738517 diff --git a/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Catalog.json b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Catalog.json new file mode 100644 index 00000000..48958f46 --- /dev/null +++ b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Catalog.json @@ -0,0 +1 @@ +{"identifier":"PiggyBackAssets","name":"PiggyBackAssets","shared":false,"assets":{"EMBPBSupports":{"name":"EMBPBSupports","type":"prefab","filename":"EMBPBSupports.prefab"},"EMBSPStands":{"name":"EMBSPStands","type":"prefab","filename":"EMBSPStands.prefab"},"EMBPRRStands":{"name":"EMBPRRStands","type":"prefab","filename":"EMBPRRStands.prefab"},"EMBATSFStands":{"name":"EMBATSFStands","type":"prefab","filename":"EMBATSFStands.prefab"},"EMBSP22PB":{"name":"EMBSP22PB","type":"prefab","filename":"EMBSP22PB.prefab"},"EMBPRR26PB":{"name":"EMBPRR26PB","type":"prefab","filename":"EMBPRR26PB.prefab"},"EMB10MPlatform":{"name":"EMB10MPlatform","type":"prefab","filename":"EMB10MPlatform.prefab"},"EMBEndPlatform":{"name":"EMBEndPlatform","type":"prefab","filename":"EMBEndPlatform.prefab"},"EMBMidPlatform":{"name":"EMBMidPlatform","type":"prefab","filename":"EMBMidPlatform.prefab"},"EMBPBRamp3":{"name":"EMBPBRamp3","type":"prefab","filename":"EMBPBRamp3.prefab"},"EMBPBRamp2":{"name":"EMBPBRamp2","type":"prefab","filename":"EMBPBRamp2.prefab"},"EMBPBRamp1":{"name":"EMBPBRamp1","type":"prefab","filename":"EMBPBRamp1.prefab"},"EMBATSF24PB":{"name":"EMBATSF24PB","type":"prefab","filename":"EMBATSF24PB.prefab"}}} \ No newline at end of file diff --git a/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Definitions.json b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Definitions.json new file mode 100644 index 00000000..6b71e0bb --- /dev/null +++ b/EMBPiggyBackBase/SCAssetPacks/PiggyBackAssets/Definitions.json @@ -0,0 +1,186 @@ +{ + "objects": [ + { + "identifier": "EMBPBSupports", + "metadata": { + "name": "EMBPBSupports", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPBSupports", + "components": [] + } + }, + { + "identifier": "EMBSPStands", + "metadata": { + "name": "EMBSPStands", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBSPStands", + "components": [] + } + }, + { + "identifier": "EMBATSFStands", + "metadata": { + "name": "EMBATSFStands", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBATSFStands", + "components": [] + } + }, + { + "identifier": "EMBPRRStands", + "metadata": { + "name": "EMBPRRStands", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPRRStands", + "components": [] + } + }, + { + "identifier": "EMBSP22PB", + "metadata": { + "name": "EMBSP22PB", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBSP22PB", + "components": [] + } + }, + { + "identifier": "EMBPRR26PB", + "metadata": { + "name": "EMBPRR26PB", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPRR26PB", + "components": [] + } + }, + { + "identifier": "EMBATSF24PB", + "metadata": { + "name": "EMBATSF24PB", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBATSF24PB", + "components": [] + } + }, + { + "identifier": "EMB10MPlatform", + "metadata": { + "name": "EMB10MPlatform", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMB10MPlatform", + "components": [] + } + }, + { + "identifier": "EMBEndPlatform", + "metadata": { + "name": "EMBEndPlatform", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBEndPlatform", + "components": [] + } + }, + { + "identifier": "EMBMidPlatform", + "metadata": { + "name": "EMBMidPlatform", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBMidPlatform", + "components": [] + } + }, + { + "identifier": "EMBPBRamp3", + "metadata": { + "name": "EMBPBRamp3", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPBRamp3", + "components": [] + } + }, + { + "identifier": "EMBPBRamp2", + "metadata": { + "name": "EMBPBRamp2", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPBRamp2", + "components": [] + } + }, + { + "identifier": "EMBPBRamp1", + "metadata": { + "name": "EMBPBRamp1", + "description": "A new item", + "tags": [], + "credits": "" + }, + "definition": { + "kind": "Scenery", + "modelIdentifier": "EMBPBRamp1", + "components": [] + } + } + ] +} \ No newline at end of file