Mods for 100% runs?
8 months ago
Brazil

Hi everyone,

I'd like to ask how you would feel about allowing mods for the 100% run of the game (PC only) where the dispatch missions could have a success rate up to 100%, instead of 90%, and be completed instantly. I dabbled into modding unpatched, that's how I made my 100% save, so I could make a mod for both 1.01 and 1.02 for you all to test and see what you think.

That's all, have a nice day, Boss!

Brazil

I decided to make a guide on how to patch the game to make dispatch missions have a maximum win rate of 100% and finish instantly, so you all can try it yourselves:

First you'll need GzsTool, a tool used to unpack and repack Fox Engine files.

Second you'll need NotePad++, a text editor that will help us save a lot of time.

With GzsTool on hand, unzip it somewhere and drag the "data1.dat" file, located in the "master" folder of your MGSV: TPP installation, on GzsTool's executable - before doing so, I recommend placing it in a different folder as GzsTool will unpack everything on the folder the file is in. A command prompt window should popup displaying the progress of unpacking the file. After GzsTool finishes unpacking the "data1.dat" file it will generate a folder named "data1_dat" and a file named "data1.dat.xml".

Now, go to "data1_dat/Assets/tpp/motherbase/script/" and open the file named "MbmCommonSetting30Deploy.lua" with NotePad++. Once opened, press "ctrl + h" and enable the "regular expression" option. As a heads up, for everything you'll be pasting in, be sure to EXCLUDE the double quotes. On the "find what" text box paste "(,winRateMax=)(\d+)" and on the "replace with" text box, paste "${1}100". Click on the button that says "replace all", and then paste "(,timeMinute=|,timeMinuteRandom=)(\d+)" on the "find what" text box, replacing it with "${1}0.1".

Save the changes and go back to where the "data1_dat" folder is located. Look for a file named "data1.dat.xml" and drag and drop it on GzsTool's executable. A command prompt window should popup and after a couple of second GzsTool should finish packing it as a "data1.dat" file. Before continuing, make sure to backup the original "data.dat" file located in the "master" folder of your MGSV: TPP installation. Copy the new "data1.dat" file GzsTool made, and paste it into your MGSV: TPP's "master" folder and you are done.

Now all dispatch missions will have a maximum win rate of 100% and finish instantly, have fun!

Armenia
thanks_kojima
He/Him, They/Them
8 months ago

Great work, boss! I'll be sure to give this a try if and when i get a Windows PC again.

Initially my thinking was that we should only mod in the 100% win probability and the lowest possible dispatch mission time, still leaving the need to route the game around key dispatches, but this pretty much eliminates dispatch missions as a factor in 100% runs, while getting all of their rewards. Sooner rewards means quicker base building and weapon upgrades. Maybe 100% runs could be done in a somewhat reasonable time now. The possibilities are kinda exciting!

Should this modding be allowed? My vote is Yes.

This will also affect the normal non-key dispatch missions, right? Meaning we could easily raise our resources during the game's downtime e.g. helicopter rides, listening to dialogues mission tasks etc.

What about vehicle and unit strength requirements? Would a dispatch mission still work if it originally requires 10 A rank combat unit staff and a tank, but we only have 10 E rank staff and no tanks?

Most of my first chapter routing was built around dispatch missions and their requirements, and it will become irrelevant now, but i wouldn't want anyone to have to replay Where Do The Bees Sleep multiple times just to get the higher rank puppets. It's been a few years so i don't even remember the specific reason i had to do that.

Are unit levels and development timers next on the chopping block? Wormhole fulton and mist parasite cartridge are the 2 must have high level items for 100% completion... Let's not get ahead of ourselves. Maybe with this mod alone we'd get the necessary levels quicker. more resources = more base platforms built = higher unit levels. Need to do some testing.

WizardHwK likes this
Brazil

The changes in the guide will affect every dispatch mission, but their "requirements" are unchanged. However, it's definitely possible to change their requirements. Here's the code for dispatch missions, it's "unminified" for ease of reading:

TppMotherBaseManagement.RegisterDeployBasicParam { -- Defines the basic parameters for dispatch missions.
missionListRefreshTimeMinute = 12, -- How long it takes for new dispatch missions to show up, in minutes (can be lowered to "0.1").
-- My guess is that the following affects the "draw" chance per "soldier"/"soldier rank"(?)
drawCountPerSr = 10,
drawCountPerR = 4,
-- The following parameters affects how much a given vehicle/walker gear/battle gear increases your win rate.
powerTransitVehicle = 200,
powerBattleVehicle = 800,
powerWalkerGear = 1200,
powerBattleGear = 3500,
-- The following parameters affects much your win rate will be penalized if you don't have the required amount of vehicles to dispatch.
minusWinRateTransitVehicle = 5,
minusWinRateBattleVehicle = 10,
minusWinRateWalkerGear = 15,
minusWinRateBattleGear = 50,
-- The following affects the minimum and maximum win rate, the rate of soldier deaths and the amount of soldiers required.
winRateMin = 5,
winRateMax = 95,
deadRateMin = 3,
deadRateMax = 50,
deadRateUpDownCorrection = 1, -- Idk ¯\_(ツ)_/¯
teamStaffCountMin = 5
}
TppMotherBaseManagement.RegisterDeployBasicParam { -- This creates a dispatch mission.
deployMissionId = TppMotherBaseManagementConst.DEPLOY_MISSION_ID_RANDOM_10007, -- The "ID" of the mission.
category = TppMotherBaseManagementConst.DEPLOY_MISSION_CATEGORY_COMBAT1_PERSON_GUARD, -- The "category" of the mission. e.g.: "Rescue POWs".
rarity = TppMotherBaseManagementConst.DEPLOY_MISSION_RARITY_SR, -- My guess is that this affects the chance of the mission showing up(?)
-- The following affects the Combat Unit requirements.
combatSectionRank = "A",
combatSectionStaffCountMax = 10,
-- The following affects what accompanying unit will be deployed with the Combat Unit and it's requirements.
subSection = "BaseDev",
needSubSectionRank = "G",
needSubSectionStaffCount = 5,
-- The following parameters affects how many 4WDs, trucks, APCs, tanks are required, and how many you can deploy, for the mission.
_4wdCountMin = 0,
_4wdCountMax = 0,
truckCountMin = 1,
truckCountMax = 2,
armoredCountMin = 0,
armoredCountMax = 0,
tankCountMin = 1,
tankCountMax = 1,
walkerGearCountMin = 0,
walkerGearCountMax = 1,
battleGear = false, -- If the mission requires the Battle Gear.
-- The following affects the "base" win rate and the rate of soldier deaths.
baseWinRate = 50,
deadRate = 20,
-- The following affects the amount of time, and an additional random amount of time, a given deployment will take, in minutes (can be changed to "0.1").
timeMinute = 120,
timeMinuteRandom = 60,
-- This is pure flavor, it affects the location on the globe the mission takes place.
latitude = -18.3,
longitude = 15.5
}

There's a lot a customization for the deployment mission. However, I'm not sure if I'm ok with lowering the requirements for them. Lowering the amount of time they take is already a blessing, and being able to have a guaranteed victory too, IMO.

Edited by the author 8 months ago
Netherlands

I disagree with changing the success rate. Losing soldiers is part of the process and bypassing that goes too far.

As for the duration, I'm cool with either making them way shorter or instant.

WizardHwK likes this
Brazil

Understood. Just for clarification, the changes I proposed will only affect the success rate and the time they will take to finish, soldiers will still die and vehicles will still be destroyed at the normal rate.

Czech Republic

I would be very careful into modifying stuff for speerunning purposes.

Categories like Any%/Low%/100% should be always run on the original version without any modification, in my opinion. Tempering with in-game values could possibly bring potentional cheaters, which is something you dont want to deal with.

PerryMGS and WizardHwK like this
Brazil

We could make a separate category from 100% where dispatch missions are not required. I see it as the next best solution for the dreaded dispatch missions.