• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Larsenex

Sergeant
15 Badges
Feb 25, 2018
52
0
  • Pillars of Eternity
  • Stellaris
  • Stellaris - Path to Destruction bundle
  • BATTLETECH
  • Stellaris: Apocalypse
  • BATTLETECH - Backer
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • BATTLETECH: Flashpoint
  • Stellaris: Megacorp
  • Stellaris: Ancient Relics
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
So Mod Tek seems to be the way to use mods for Battletech. I got both BTML and Modtek correctly installed but that is just the beginning.

I have all the json files I want. I am using 'easy start' mods by jameswolf over on nexus. Full credit for all the work is for him.

In esssence I want to do the following but I am not quite sure how to tweak his mods to get them working.

Do I need a 'mod tek' folder for each change to the game?

For example one feature of the mod changes so you skip tutorials and start on the 3yr mark, AND start with custom mechs and tweaks exp and starting cash. Do I need to break up each section or can I take his complete changes to the simconstants json and put them in a folder complete?

There are also json files for custom mechs such as King Crab and Atlas reaper. These two designs are dependent on 'actuators', cockpits, weapons along with files for mech, chasis and movement.

For each change such as 'actuators' or 'store' or changes to 'sim game constants' do I need rewrite each json or put them all in one folder or each separate?

I understand the need of a naming folder. That I understand. Do I put the 'mods' I am changing IN that folder or do they go all in the 'mods' folder as is?

I know this post is sounding confusing but I figure someone can make sense of it. I can go to discord and talk over voice if this helps.
 
I also realize that some of the mods I am using for this need to be updated all over. Id like to start with the sim game constants and skip to the 3 yr mark AND change starting cash and starting exp and starting mechs. <<, Can I do this with ONE folder?
 
If I understand correctly, it sounds like what you need is 1 'parent' folder (Let's call it Lars_Mod), technically, you could then put things in sub-folders however you wanted. BUT, most people organize sub-folders based on the structure of the StreamingData/data/ folders.

For example, for you mod might have the folder:
Lars_Mod/chassis/ - place the modified 'Mech chassisdef_ files here
Lars_Mod/mech/ - place the modified 'Mech mechdef_ files here
Lars_Mod/Upgrades/CockpitMods - place your modified Gear_Cockpit_ files here
etc

Then, in the mod.json file in the Lars_Mod folder, you need to refer each of those folders in the Manifest section.

You only need to add direction for the folders you add - so if you only added the above 3, you would need them in your manifest like so:

"Manifest": [
{ "Type": "ChassisDef", "Path": "chassis\\", "AddToDB": true },
{ "Type": "MechDef", "Path": "mech\\", "AddToDB": true },
{ "Type": "UpgradeDef", "Path": "upgrades\\", "AddToDB": true }
]

That help?
 
However, if you are looking to combine multiple other mods, I'd recomend you place each mod in its own folder, and apply the portions you want to use.

Look at a Mod Pack (like the dz Consolidated Command Console pack) to see how @don Zappo integrated several different mods together.

Or you can look at the JK_Variants mod, and you will see how I used multiple folders to apply different portions of the mod in different ways - but also allows people utilizing the mod to pick and choose what they want to apply to their games - where everything needed is self contained or you have dependencies.
 
Justin, I have your Mod pak! I was doing JUST THAT! I was looking at how you did your mod. You had also included instructions on how to install WITHOUT modtek and for a bit i was kinda stumped. Doe you need a new file called manifest for each or will modtek make that for me? Your mod is amazing.

So if i have multiple different mods i just need a name for each and mod tek will load them as long as they do not conflict?

On one note all I am really doing is skipping to year three, adding more exp at start, more cash and changing out to some custom mechs for a rofl stomp. The mechs both have custom parts which I am wondering if I should make each mech is own mod or if I can combine the two different types (one is a custom atlas the other is custom crab) and both use slightly different gear and weapons. The changes to the start are the same for both mods.
 
So, there are 2 versions of the JK_Variants mod - one is meant for manual install (those that don't want to use ModTek/BTML, and for Mac/Linux users that can't use it). The manual method takes a bit more time to create.

Technically, my mod is several little mods all tossed together, allowing the players to choose how they want to use each part (or not use them). Each one is totally inclusive of itself, so removing any one will not impact the other. You then also have the choice of adding them to the Campaign/Skirmish mode or only Skirmish mode.

ex : The JK_VariantsSkirmish folder has some one off 'Mechs that are in the lore, and I like to have them show up in the Skirmish mode on occasion. But, I don't want to see a lance of them running around in the campaign. So, I have that folder active, but I didn't add any of it into the campaign (see below for more on the options).

You can place everything into 1 mod folder, combining mods - since ModTek combs through the folders and add them to the csv and db.

The important thing is to tell ModTek what you want it to do with the folders.

Here is a small example from the JK_VariantsCampaign mod.json file:
{
"Name": "JK_VariantsCampaign",
"Enabled": true,

"Version": "0.1.1.0-M",
"PackagedOn": "2018-06-21T06:45:00Z",
"Description": "Adds 65 'Mech Variants, 32 Vehicle Variants, 5 Weapons, 1 Ammo Type and 1 Upgrade - usable in both Skirmish and Campaign modes. Also includes shop files to allow 'Mech salvage to be purchased in the campaign.",
"Author": "Justin Kase, with GenTask's Command Console Variants",
"Website": "https://www.nexusmods.com/battletech/mods/18",
"Contact": "message me at Nexus or Paradox sites",

"Manifest": [
{ "Type": "AmmunitionBoxDef", "Path": "ammunitionBox\\", "AddToDB": true },
{ "Type": "ChassisDef", "Path": "chassis\\", "AddToDB": true },
{ "Type": "HardpointDataDef", "Path": "hardpoints\\", "AddToDB": true },
{ "Type": "MechDef", "Path": "mech\\", "AddToDB": true },
{ "Type": "MovementCapabilitiesDef", "Path": "movement\\", "AddToDB": true },
{ "Type": "ShopDef", "Path": "shops\\", "AddToDB": true },
{ "Type": "UpgradeDef", "Path": "upgrades\\", "AddToDB": true },
{ "Type": "VehicleDef", "Path": "vehicle\\", "AddToDB": true },
{ "Type": "VehicleChassisDef", "Path": "vehicleChassis\\", "AddToDB": true },
{ "Type": "WeaponDef", "Path": "weapon\\", "AddToDB": true }
]
}

You can see how each 'Type' in the manifest tells ModTek which folder to look into for each category. Then, at the end of the string is 'AddToDB' - this tells ModTek whether or not something should be added into the MetadataDatabase.db (which adds it to the campaign). While the variable is set the 'true' it will add it to the MDD.db, though some things won't be added (even if true) because those categories aren't part of the MDD.db (example - ShopDef , shops files).

If you add multiple mod folders (say all the various folders that come with JK_Variants mod) it will load any folder that is 'Enabled' as 'true'. Typically it goes in alphabetical order, and if there are duplicate files, it will overload or merge files with the same name (this happens with the new JumpJet lore folder that will be in the 1.1.0a JK_Variants mod)

You can also define dependencies - saying 'don't load this, unless you load this; which can be helpful - I used something like that in my JK_VariantsCampaign_JumpJets, that only applies the mod if the parent JK_VariantCampaign is loaded. The reason for this, is that if you don't load the JK Variants first, the JumpJet mod won't be able to find the new variants to edit (and can cause an error)

{
"Name": "JK_VariantsCampaign_JumpJets",
"Enabled": true,

"DependsOn": [ "JK_VariantsCampaign" ],

"Version": "0.1.1.0-M",
"PackagedOn": "2018-06-21T06:45:00Z",
"Description": "Edits all 'Mechs in the JK Variants Campaign to have lore based Jump Jet limitations",
"Author": "Sondra1408 & Justin Kase & Don Zappo",
"Website": "https://www.nexusmods.com/battletech/mods/18",
"Contact": "message me at Nexus or Paradox sites",

"Manifest": [
{ "Type": "ChassisDef", "Path": "chassis\\", "ShouldMergeJSON": true, "AddToDB": false }
]
}

You may wind up with conflicts when tossing multiple mods together, and sometimes it can be painful to try to figure out what is conflicting - especially with DLL edits. The log files (BTML, ModTek and BATTLETECH) are often helpful here.
 
Justin,

This is exactly the information I needed! YOU SIR WIN TODAY. I was wondering exactly how to use and label the folders.

On a side note notepad++ was not letting me 'make' a new json file. What I will end up doing is using your 'naming' file and folder and changing it a bit. I actually want to use all of your mods changes so i am going to load yours up first and then slowly add my changes.

I did not check but did your 'weapons+ JK variants' bypass the tutorial? I can add that I was just wondering if it did or not.

Again you really really helped me on exactly how folders and mods are loaded with mod tek.. a HUGE THANK YOU and another THANK YOU!
 
Glad to be of assistance - and looking forward to seeing what you come up with ;)

My mod doesn't skip the tutorial, but it also doesn't conflict with mods that do skip it (at least, all the ones I know of).

You may want to download something like the Consolidated Company Commander or No Guts No Galaxy mod packs - they will give you an idea of how multiple mods are integrated with each other. Rogue Tech as well - though that one takes it to a whole other level ;)
 
The mod I was using over on nexus was Jameswolfs 'easy game start' he has several options. I want to use his 'War Machine' krab and Reaper Atlases for a facerolling good time. I completely understand how some folks would say..that is soo boring but if you just want to sit down, pull a 4 or 5 skul mission and 'faceroll it' for the fun this is one way to accomplish that.

My biggest question Justin, .is this.

If each custom mech has its own custom parts such as weapons, actuators and such, would I be better off doing say 3 mods?

One for the Krab call it 'King crab' its own mod and attendent folders in it.

One for Atlas reaper, call it Atlas Reaper and as above

And finally one that skips my tutorial and launches the player with both of those mechs? ( << this mod would be 'dependent' on the two before it)
 
If you have fun, then that is all that matters ;) I recently worked on getting Lore based JumpJet restrictions compatible with the Variants mod (as an optional component) - I am sure 90% of people out there will have little interest in applying the restrictions. But I enjoy the additional flavor :D

In this instance, I would just add the EasyG Face Roll folder from his mod. This would give you the quick start, and access to the uber 'Mechs (may as well leave them all in instead of just the Crab and Atlas). None of his variants look like they will overwrite other variants from the CORE game (or the JK Variants). Then you could add in whatever other mod folders you wish to.

If you want to yank out the 'Mechs you don't want, I'd still say to use the EasyG Face Roll folder, then delete out the 'Mechs and equipment you don't want - BUT you will also need to edit the ShopDef files to remove those same items.
 
Teach a man to fish, and maybe I get some sushi down the line ;)

I look forward to seeing what you come up with!
 
JK I cant seem to get the mods in the folders to work. See some of my screen captures. Hopefully this can help in each of the folders above the 'mod.json' file are the respective json files that change stuff. For example in the pic in the mod folder I have the folder named 'milestones' which should bypass the coronation day and starter missions. This is not loading. Should I make a 'mod' for each folder each with its own manifest direction?

This shows btml is properly loaded.
Battletech.png






This is the actual mod folder. It has the mod.json at bottom and mod folders above.




 
Last edited:
Try changing the name of the folder from "ExtraEasy mod.json" to just "ExtraEasy"

Also, in your mod.json file

Change the path names to match the case format of the folders referenced.

Examples:
{ "Type": "SimGameConstantsDef", "Path": "simGameConstantsDef\\", "AddToDB": true }
{ "Type": "UpgradeDef", "Path": "upgrades\\", "AddToDB": true }

(I also noticed you called it UpgradesDef - I don't think they have the "s" after Upgrade)
 
Last edited:
This morning I was trying and pulled out the milstones folder and tried to make it its own mod. My attempt was to simply see if one thing would work with modtek, in this case trying to bypass the two tutorial missions.
When i get home I will put them back in. I noticed after i left that they files in my milestone mod folder had two jsons. One was for coronation day and the other was for the majesty metals one. I am not sure if it would be better to take the new and exisitng json from the game folder and adjust that.

Over on reddit I was told to do this for bypassing the tutorials. I did this exactly and it still was not loading/working.

This below is part of the reddit thread >> https://www.reddit.com/r/BattleTechMods/comments/8t0s7p/trouble_getting_started/

Create a bunch of folders to have the path "SkipTutorialMissions\StreamingAssets\data\milestones"

copy the file "milestone_003_title_coronation_palace.json" from the game files and delete everything you don't need or create an empty one.

All we want to change is the "NextStoryMilestone" field, but everything for "Results" is in an array, so we have to include everything inside "Results": [ ... ]

{
"Results" : [
{
"Scope" : "Company",
"Requirements" : null,
"AddedTags" : {},
"RemovedTags" : {},
"Stats" : [
{
"typeString" : "System.Int32",
"name" : "NextStoryMilestone",
"value" : 105,
"set" : "true",
"valueConstant" : ""
}
],
"Actions" : [
{
"Type" : "System_ShowTitleCard",
"value" : "true",
"additionalValues" : [
"CORONATION DAY",
"Arano Summer Palace — 08:53 Local Time",
"5.0",
"3.0"
]
}
],
"ForceEvents" : null,
"TemporaryResult" : false,
"ResultDuration" : 0
}
],
}


This was all that was mentioned. I have this exactly as shown for some reason its not loading.
 
The advice is correct. I will add that you have to make sure that the modtek.dll is in the BATTLETECH\mods folder and that you have injected BTML properly. After that, as long as you have that folder with your mods in it nested in BATTLETECH\mods it should work.
 
After running the BTML It says 'succesfully injected' hit any key. Am I suppose to type in /restore or just hit any key and it goes away?

My home screen in Battle tech does have the modtek version showing in the lower left.

So I need a really simply mod to see if modtek is working. Has anyone a mod that bypasses coronation day?
 
If you see the mod tek version, mod tek does work.

For a really easy to do test mod I would suggest taking the DifficultySettings.json and changing the name of one of the settings (like under ContractPaymentDifficulty "Generous" to "Test")

Then just start the game, start a new custom campaign and check wether it says "test" instead of "generous" in the option screen.
 
Depends on the mod. Read the description, if it does state nothing about specific settings needed and is recent, then it probably doesn't need specific options.