Установить Steam
войти
|
язык
简体中文 (упрощенный китайский)
繁體中文 (традиционный китайский)
日本語 (японский)
한국어 (корейский)
ไทย (тайский)
Български (болгарский)
Čeština (чешский)
Dansk (датский)
Deutsch (немецкий)
English (английский)
Español - España (испанский)
Español - Latinoamérica (латиноам. испанский)
Ελληνικά (греческий)
Français (французский)
Italiano (итальянский)
Bahasa Indonesia (индонезийский)
Magyar (венгерский)
Nederlands (нидерландский)
Norsk (норвежский)
Polski (польский)
Português (португальский)
Português-Brasil (бразильский португальский)
Română (румынский)
Suomi (финский)
Svenska (шведский)
Türkçe (турецкий)
Tiếng Việt (вьетнамский)
Українська (украинский)
Сообщить о проблеме с переводом
So then I just make my json edits, and package it into a new mod, then install via modtek/modloader?
https://github.com/BattletechModders/ModTek/wiki
Yup, That's the one I've been using, THANKS!
Yep, you're right, I had both the GITHUB and BATTLETECH MODDING WIKI open when I commented, simple mistake. The one you listed isn't much help, as it contains only the very basic json steps of which I already know, and have successfully used for my own personal little weapons mod.
In following the BATTLETECH MODDING WIKI, my mod loads into the mod manager just fine, (in mods, and repository folders) and into the in game mod list, but showing in red text in the mod list. The error located in modtek.log reads as such-
Error: WarriorKingCrab has a manifest entry that has a type 'chassisdef' that doesn't match an existing type and isn't declared in CustomResourceTypes
Within my mod package, I can delete or rearrange in any order, any of the chassis, mech, or movement folders from the mod, or mod.json listing, and the modtek log will show the same error for whichever is the first listing of the manifest in the mod.json folder upon loading the game.
I'm trying to provide as much info as possible, so thank you for your patience....
My mod.json is as follows:
{
"Name": "WarriorKingCrab",
"Enabled": true,
"Version": "1.0",
"Description": "WARRIOR KING CRAB",
"Author": "BigHorse",
"DependsOn": [],
"ConflictsWith": [],
"Manifest": [
{
"Type": "chassisdef",
"Path": "chassis",
"AddToDB": true
},
{
"Type": "mechdef",
"Path": "mech",
"AddToDB": true
},
{
"Type": "movedef",
"Path": "movement",
"AddToDB": true
},
]
}
This is the set-up, or file paths of my folder:
WarriorKingCrab-
\chassis\chassisdef_kingcrab_WARRIOR.json
\mech\mechdef_kingcrab_WARRIOR.json
\movement\movedef_kingcrab_WARRIOR.json
NOTE: The only things I have edited from the cloned/copied files thus far are the names of the jsons (which match the ID's), and the names within them to link with the others of this attempted mod.
NOTE 2: I'm not trying to add this into any shops yet, just trying to get it in-game via save editor to test it's functionality after I change the hard points.
I know my issue is something simple or overlooked, as it always seems to be in creating a new type of mod for the first time...
Any continued help that you, or anyone else can offer to point me in the right direction is GREATLY appreciated, THANKS for taking the time!
You should never manually edit the VersionManifest, because the modloader/modtek does that for you, but it can be useful to look at it if you're not sure what to type into your mod.json.
There I was - meticulously going thru everything looking for missing commas and quotation marks!
And changing to "MovementCapabilitiesDef" in my mod.json probably helped...
Current mod.json is as follows:
{
"Name": "WarriorKingCrab",
"Enabled": true,
"Version": "1.0",
"Description": "WARRIOR KING CRAB",
"Author": "BigHorse",
"DependsOn": [],
"ConflictsWith": [],
"Manifest": [
{
"Type": "ChassisDef",
"Path": "chassis",
"AddToDB": true
},
{
"Type": "MechDef",
"Path": "mech",
"AddToDB": true
},
{
"Type": "MovementCapabilitiesDef",
"Path": "movement",
"AddToDB": true
},
]
}
And here is the way it's listed in the modtek.log:
{
"Description" : {
"Id" : "movedef_kingcrab_WARRIOR",
"Name" : "MovementCapabilitiesDef for WARRIOR King Crab",
WarriorKingCrab 1.0
Expanding manifest WarriorKingCrab:
ChassisDef:chassis
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\chassis\chassisdef_kingcrab_WARRIOR.json
MechDef:mech
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\mech\mechdef_kingcrab_WARRIOR.json
MovementCapabilitiesDef:movement
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\movement\movedef_kingcrab_WARRIOR.json
:StreamingAssets
3 manifest entries
OK, so now the mod is loading with no errors.....
except for one.
Using Save Editor, I tried to put the new mech variant into my inventory to look it over in the mech bay. The Save Editor lists it after Scan, and enters it into my inventory, but upon firing up the game, it does not appear. I tried saving and reloading, as well as traveling to another star system, and re starting the game, but it still doesn't appear.
I then opened the Save Editor again and tried adding it to mechbay,and got this error message:
"Failed to add mech, check file selection and that space in the mechbay is available"
Plenty of room in the mechbay, so apparently, there's still something wrong with my files.
Here are the only changes I made to the 3 json files I'm using that I cloned/copied from the original King Crab 0000:
CHASSIS
"UIName": "WARRIOR King Crab",
"Id": "chassisdef_kingcrab_WARRIOR",
"Name": "WARRIOR King Crab",
"Details": "One of the most heavily armed and armored 'Mechs ever constructed, the King Crab 0000 is capable of massive burst damage. A pair of heavy, close-range Autocannons form its primary weaponry, backed up by ranged weaponry to fire as it closes distance.",
"Icon": "uixTxrIcon_kingcrab"
},
"MovementCapDefID": "movedef_kingcrab_WARRIOR",
MECH
"ChassisID": "chassisdef_kingcrab_WARRIOR",
"HeraldryID": null,
"Description": {
"Cost": 12720000,
"Rarity": 5,
"Purchasable": true,
"Manufacturer": null,
"Model": null,
"UIName": "WARRIOR King Crab",
"Id": "mechdef_kingcrab_WARRIOR",
"Name": "WARRIOR King Crab",
MOVEMENT
{
"Description" : {
"Id" : "movedef_kingcrab_WARRIOR",
"Name" : "MovementCapabilitiesDef for WARRIOR King Crab",
THANK YOU for your help, and patience with me on this!
Easiest way to test your mechs ;)
That said, I don't see anything offhand that is wrong. Google up an online json validator, and copy/paste the contents of each file in, just to see if there are any format issues. And if that returns okay, then there's a problem somewhere else.
https://jsonlint.com/
I used it to clean up a couple of my other small personal mods, and this one that I'm still having a problem with.
So, I've got the mod jsons all cleaned up nicely, and ModTek.log is happy with no errors:
WarriorKingCrab 1.0
Expanding manifest WarriorKingCrab:
ChassisDef:chassis
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\chassis\chassisdef_kingcrab_WARRIOR.json
MechDef:mech
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\mech\mechdef_kingcrab_WARRIOR.json
MovementCapabilitiesDef:movement
C:\GAME FOLDER\Steam\steamapps\common\BATTLETECH\Mods\WarriorKingCrab\movement\movedef_kingcrab_WARRIOR.json
:StreamingAssets
3 manifest entries
However, the mech still isn't appearing in-game in mech bay storage (via save editor) or Skirmish.
Again, I've tried saving, reloading, restarting, etc., but no luck.
Everything looks good, so I'm wondering if perhaps the problem might be with my mod file path structure, or maybe a missing necessary additional files?
As always, thanks for your advice and patience as I progress in this learning curve.
{
"MechTags": {
"items": [
"unit_mech",
"unit_assault",
"unit_indirectFire",
"unit_lance_tank",
"unit_role_brawler",
"unit_release",
"unit_ready",
"unit_range_short",
"unit_indirectFire",
"unit_speed_low",
"unit_armor_high",
"Davion",
"Kurita",
"Liao",
"Marik",
"Steiner",
"MagistracyOfCanopus",
"TaurianConcordat"
],
Since I'm only testing at the moment to see if I can get it in-game, the only things I've edited are IDs and names in the jsons.
Here is the file path structure:
WarriorKingCrab\ chassis\chassisdef_kingcrab_WARRIOR.json
WarriorKingCrab\ mech\mechdef_kingcrab_WARRIOR.son WarriorKingCrab\movement\movedef_kingcrab_WARRIOR.json
And since there is no way to send the mod itself here, I will now post the jsons for review:
CHASSIS
{
"Description": {
"Cost": 10900000,
"Rarity": 5,
"Purchasable": true,
"Manufacturer": "",
"Model": "",
"UIName": "WARRIOR King Crab",
"Id": "chassisdef_kingcrab_WARRIOR",
"Name": "WARRIOR King Crab",
"Details": "One of the most heavily armed and armored 'Mechs ever constructed, the King Crab 0000 is capable of massive burst damage. A pair of heavy, close-range Autocannons form its primary weaponry, backed up by ranged weaponry to fire as it closes distance.",
"Icon": "uixTxrIcon_kingcrab"
},
"MovementCapDefID": "movedef_kingcrab_WARRIOR",
"PathingCapDefID": "pathingdef_assault",
"HardpointDataDefID": "hardpointdatadef_kingcrab",
"PrefabIdentifier": "chrPrfMech_kingcrabBase-001",
"PrefabBase": "kingcrab",
"Tonnage": 100,
"InitialTonnage": 35,
"weightClass": "ASSAULT",
"BattleValue": 10206000,
"Heatsinks": 0,
"TopSpeed": 105,
"TurnRadius": 90,
"MaxJumpjets": 3,
"Stability": 200,
"StabilityDefenses": [
0,
0,
0,
0,
0,
0
],
"SpotterDistanceMultiplier": 1,
"VisibilityMultiplier": 1,
"SensorRangeMultiplier": 1,
"Signature": 0,
"Radius": 8,
"PunchesWithLeftArm": false,
"MeleeDamage": 125,
"MeleeInstability": 100,
"MeleeToHitModifier": 0,
"DFADamage": 125,
"DFAToHitModifier": 0,
"DFASelfDamage": 125,
"DFAInstability": 125,
"Locations": [
{
"Location": "Head",
"Hardpoints": [],
"Tonnage": 0,
"InventorySlots": 1,
"MaxArmor": 45,
"MaxRearArmor": -1,
"InternalStructure": 16
},
{
"Location": "LeftArm",
"Hardpoints": [
{
"WeaponMount": "Ballistic",
"Omni": false
},
{
"WeaponMount": "AntiPersonnel",
"Omni": false
},
{
"WeaponMount": "AntiPersonnel",
"Omni": false
}
],
"Tonnage": 0,
"InventorySlots": 8,
"MaxArmor": 170,
"MaxRearArmor": -1,
"InternalStructure": 85
},
{
"Location": "LeftTorso",
"Hardpoints": [
{
"WeaponMount": "Missile",
"Omni": false
},
{
"WeaponMount": "Missile",
"Omni": false
},
{
"WeaponMount": "Missile",
"Omni": false
},
{
"WeaponMount": "Missile",
"Omni": false
}
],
"Tonnage": 0,
"InventorySlots": 10,
"MaxArmor": 210,
"MaxRearArmor": 105,
"InternalStructure": 105
},
{
"Location": "CenterTorso",
"Hardpoints": [],
"Tonnage": 0,
"InventorySlots": 4,
"MaxArmor": 310,
"MaxRearArmor": 155,
"InternalStructure": 155
},
{
"Location": "RightTorso",
"Hardpoints": [
{
"WeaponMount": "Energy",
"Omni": false
},
{
"WeaponMount": "Energy",
"Omni": false
},
{
"WeaponMount": "Energy",
"Omni": false
},
{
"WeaponMount": "Energy",
"Omni": false
}
],
"Tonnage": 0,
"InventorySlots": 10,
"MaxArmor": 210,
"MaxRearArmor": 105,
"InternalStructure": 105
},
{
"Location": "RightArm",
"Hardpoints": [
{
"WeaponMount": "Ballistic",
"Omni": false
},
{
"WeaponMount": "AntiPersonnel",
"Omni": false
},
{
"WeaponMount": "AntiPersonnel",
"Omni": false
}
],
"Tonnage": 0,
"InventorySlots": 8,
"MaxArmor": 170,
"MaxRearArmor": -1,
"InternalStructure": 85
},
{
"Location": "LeftLeg",
"Hardpoints": [],
"Tonnage": 0,
"InventorySlots": 4,
"MaxArmor": 210,
"MaxRearArmor": -1,
"InternalStructure": 105
},
{
"Location": "RightLeg",
"Hardpoints": [],
"Tonnage": 0,
"InventorySlots": 4,
"MaxArmor": 210,
"MaxRearArmor": -1,
"InternalStructure": 105
}
],
"LOSSourcePositions": [
{
"x": 0,
"y": 14.5,
"z": 0
},
{
"x": 4,
"y": 15,
"z": -1
},
{
"x": -4,
"y": 15,
"z": -1
}
],
"LOSTargetPositions": [
{
"x": 0,
"y": 14.5,
"z": 0
},
{
"x": 4,
"y": 15,
"z": -1
},
{
"x": -4,
"y": 15,
"z": -1
},
{
"x": 3.5,
"y": 5.5,
"z": -1
},
{
"x": -3.5,
"y": 5.5,
"z": -1
}
],
"VariantName": "WARRIOR",
"ChassisTags": {
"items": [],
"tagSetSourceFile": ""
},
"StockRole": "Juggernaut & Close Assault",
"YangsThoughts": "One of the most heavily armed and armored 'Mechs ever constructed, the King Crab 0000 is capable of massive burst damage. A pair of heavy, close-range Autocannons form its primary weaponry, backed up by ranged weaponry to fire as it closes distance."
}
MECH
{
"MechTags": {
"items": [
"unit_mech",
"unit_assault",
"unit_indirectFire",
"unit_lance_tank",
"unit_role_brawler",
"unit_release",
"unit_ready",
"unit_range_short",
"unit_indirectFire",
"unit_speed_low",
"unit_armor_high",
"Davion",
"Kurita",
"Liao",
"Marik",
"Steiner",
"MagistracyOfCanopus",
"TaurianConcordat"
],
"tagSetSourceFile": ""
},
"ChassisID": "chassisdef_kingcrab_WARRIOR",
"HeraldryID": null,
"Description": {
"Cost": 12720000,
"Rarity": 5,
"Purchasable": true,
"Manufacturer": null,
"Model": null,
"UIName": "WARRIOR King Crab",
"Id": "mechdef_kingcrab_WARRIOR",
"Name": "WARRIOR King Crab",
"Details": "One of the most heavily armed and armored 'Mechs ever constructed, the King Crab 0000 is capable of massive burst damage. A pair of heavy, close-range Autocannons form its primary weaponry, backed up by ranged weaponry to fire as it closes distance.",
"Icon": "uixTxrIcon_kingcrab"
},
"simGameMechPartCost": 1270000,
"Version": 1,
"Locations": [
{
"DamageLevel": "Functional",
"Location": "Head",
"CurrentArmor": 45,
"CurrentRearArmor": -1,
"CurrentInternalStructure": 16,
"AssignedArmor": 45,
"AssignedRearArmor": -1
},
{
"DamageLevel": "Functional",
"Location": "LeftArm",
"CurrentArmor": 165,
"CurrentRearArmor": -1,
"CurrentInternalStructure": 85,
"AssignedArmor": 165,
"AssignedRearArmor": -1
},
{
"DamageLevel": "Functional",
"Location": "LeftTorso",
"CurrentArmor": 145,
"CurrentRearArmor": 50,
"CurrentInternalStructure": 105,
"AssignedArmor": 145,
"AssignedRearArmor": 50
},
{
"DamageLevel": "Functional",
"Location": "CenterTorso",
"CurrentArmor": 195,
"CurrentRearArmor": 60,
"CurrentInternalStructure": 155,
"AssignedArmor": 195,
"AssignedRearArmor": 60
},
{
"DamageLevel": "Functional",
"Location": "RightTorso",
"CurrentArmor": 145,
"CurrentRearArmor": 50,
"CurrentInternalStructure": 105,
"AssignedArmor": 145,
"AssignedRearArmor": 50
},
{
"DamageLevel": "Functional",
"Location": "RightArm",
"CurrentArmor": 165,
"CurrentRearArmor": -1,
"CurrentInternalStructure": 85,
"AssignedArmor": 165,
"AssignedRearArmor": -1
},
{
"DamageLevel": "Functional",
"Location": "LeftLeg",
"CurrentArmor": 170,
"CurrentRearArmor": -1,
"CurrentInternalStructure": 105,
"AssignedArmor": 170,
"AssignedRearArmor": -1
},
{
"DamageLevel": "Functional",
"Location": "RightLeg",
"CurrentArmor": 170,
"CurrentRearArmor": -1,
"CurrentInternalStructure": 105,
"AssignedArmor": 170,
"AssignedRearArmor": -1
}
],
"inventory": [
{
"MountedLocation": "LeftArm",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": 0,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "LeftTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": 0,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "LeftTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "LeftTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "CenterTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "RightTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": 0,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "RightTorso",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "RightArm",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": 0,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "LeftLeg",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "LeftLeg",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "RightLeg",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
},
{
"MountedLocation": "RightLeg",
"ComponentDefID": "",
"SimGameUID": null,
"ComponentDefType": "",
"HardpointSlot": -1,
"GUID": null,
"DamageLevel": "Functional",
"prefabName": null,
"hasPrefabName": false
}
]
}
MOVEMENT
{
"Description" : {
"Id" : "movedef_kingcrab_WARRIOR",
"Name" : "MovementCapabilitiesDef for WARRIOR King Crab",
"Details" : "",
"Icon" : ""
},
"MaxWalkDistance" : 95.0,
"MaxSprintDistance" : 165.0,
"WalkVelocity" : 20.0,
"RunVelocity" : 28.0,
"SprintVelocity" : 32.0,
"LimpVelocity" : 8.0,
"WalkAcceleration" : 12.0,
"SprintAcceleration" : 18.0,
"MaxRadialVelocity" : 60.0,
"MaxRadialAcceleration" : 180.0,
"MaxJumpVel" : 30.0,
"MaxJumpAccel" : 15.0,
"MaxJumpVerticalAccel" : 30.0
}