ROM Hack Metroid Dread - config.ini research

  • Thread starter Thread starter cucholix
  • Start date Start date
  • Views Views 16,560
  • Replies Replies 35
  • Likes Likes 7

cucholix

00000780 00000438
Member
Joined
Jan 17, 2017
Messages
3,336
Solutions
1
Reaction score
2,348
Trophies
2
Age
46
XP
6,895
Country
Chile
There's a config file within romfs folder, it mainly set parameters for damage done to enemies, EMMI behavior, etc.
It's too big to post it, so I attached the file.
Personally I'm looking to increase the chance of getting free from EMMI death grab, the actual time window is too short.
 

Attachments

oh wow there's some interesting stuff up in here

enemy and boss attributes for every enemy in the game including life, attack timing and so forth

attributes for EMMI that include practically everything EMMI do

attributes for Samus's weapons and abilities (example: change the number of dashes you can chain together, or how long it takes to charge a beam, etc)

audio options including customizable volume for background music

if someone wanted to make an 'easy mode' type mod, or 'super hard', seems that could be done with a few hours of fiddling with these values
 
I played around with the options that let you display enemy life and incoming/outgoing damage numbers (under [AIManager]) for a little while.

It provides a lot of useful information. All enemy life values and damage output values are in this ini, but ingame you can see the raw damage output of each of Samus' weapons while ingame too by using these options.

The hard mode that is included in the game already simply doubles all incoming damage. It doesn't give enemies more health (I haven't tried a boss yet, but all enemy and boss life values are in this config ini and they've matched the life values I've seen in both normal and hard mode), and it doesn't alter Samus' damage output in any way.
 
  • Like
Reactions: hippy dave
I already uploaded an easy mode for the EMMI grabs a few days ago but I never put it on the switch mods page.

All you need to change for the QTE window is rConfig.fGrabQTETime and rConfig.fGrabSecondQTETime, the others are just how long it takes for the EMMI to prepare the hit. You need to edit them for each EMMI, not just the first occurrence.
 
thats great thanks for posting but i hope some will make a Save Editor like we have for Samus Returns
 
I already uploaded an easy mode for the EMMI grabs a few days ago but I never put it on the switch mods page.

All you need to change for the QTE window is rConfig.fGrabQTETime and rConfig.fGrabSecondQTETime, the others are just how long it takes for the EMMI to prepare the hit. You need to edit them for each EMMI, not just the first occurrence.
What values did you used for:
rConfig.fGrabQTETime and rConfig.fGrabSecondQTETime
?
Or better yet can you upload your config.ini?
 
What values did you used for:
rConfig.fGrabQTETime and rConfig.fGrabSecondQTETime
?
Or better yet can you upload your config.ini?
I mainly made it for people playing at higher frame rates, because it becomes really difficult to parry at over 120fps, and it makes it too easy at 60fps, and it also changes the timings for its preparation time to make it less random, though there's still a little randomness. One sets the parry window for both QTEs at 0.5 second, the other at 1.0, though because of the way they work it's not exactly a full second always, it's a little less for the second QTE. And the second file makes parries trivial at 60fps, so it should really only be used if playing at over 120fps.

You can also edit fStaggerTimeGrab to change the time it stays disabled after parrying, by default it's 3 seconds.
 

Attachments

  • Like
Reactions: cucholix
I mainly made it for people playing at higher frame rates, because it becomes really difficult to parry at over 120fps, and it makes it too easy at 60fps, and it also changes the timings for its preparation time to make it less random, though there's still a little randomness. One sets the parry window for both QTEs at 0.5 second, the other at 1.0, though because of the way they work it's not exactly a full second always, it's a little less for the second QTE. And the second file makes parries trivial at 60fps, so it should really only be used if playing at over 120fps.

You can also edit fStaggerTimeGrab to change the time it stays disabled after parrying, by default it's 3 seconds.
The 0.5 sec, works fine, it’s easy to perform on Switch, could give a try to 0.4 sec and see how it goes, but so far 0.5 is fine.
 
not really to do with emmi specifically this makes cloak infinite and stays on while shooting so it makes it harder for them too find you

starts @ line #2429
[AbilityOpticCamouflage]
; ======
;[Optic Camouflage]
; ======
; Selection Mode
iSelectionMode = 0
; Selection Input
iSelectionInput = 0
; Consumed energy when firing a regular beam
fSpecialEnergyConsumptionOnFireBeam = 0.0
; Consumed energy when firing the grapple beam
fSpecialEnergyConsumptionOnFireGrappleBeam = 0.0
; Consumed energy when firing the hyper beam
fSpecialEnergyConsumptionOnFireHyperBeam = 0.0
; Consumed energy when firing a missile
fSpecialEnergyConsumptionOnFireMissile = 0.0
; Consumed energy when placing a bomb
fSpecialEnergyConsumptionOnFireBomb = 0.0
; Consumed energy when placing a line bomb
fSpecialEnergyConsumptionOnFireLineBomb = 0.0
; Consumed energy when placing a power bomb
fSpecialEnergyConsumptionOnFirePowerBomb = 0.0
; Consumed energy when performing a melee attack
fSpecialEnergyConsumptionOnMelee = 0.0
; fDamagePerSecondStill
fDamagePerSecondStill = 0.0
; fDamagePerSecondMoving
fDamagePerSecondMoving = 0.0
; fSpecialEnergyConsumptionPerSecondStill
fSpecialEnergyConsumptionPerSecondStill = 0.0
; fSpecialEnergyConsumptionPerSecondMoving
fSpecialEnergyConsumptionPerSecondMoving = 0.0
; fSpecialEnergyConsumptionOnActivation
fSpecialEnergyConsumptionOnActivation = 0.0
; Samus needs to move for the Aeion to start recovering
bRequireMovementToRegenerateSpecialEnergy = false

and if you change fWalkingJumpHorizontalMultiplier and fWalkingJumpVerticalMultiplier to 3.0 it gives you super jump while cloaked there at line # 2476
 
is there a way to get the metroid suit and hyper beam with this?
I've been very interested in finding this out myself, especially just the Metroid Suit alone. However this config doesn't seem to control suits or unlocks or anything of that nature. Closest I've got is swapping the textures of the Gravity Suit with the Metroid Suit ones but that obviously doesn't look right so still need to somehow swap t he actual models.
 
I've been very interested in finding this out myself, especially just the Metroid Suit alone. However this config doesn't seem to control suits or unlocks or anything of that nature. Closest I've got is swapping the textures of the Gravity Suit with the Metroid Suit ones but that obviously doesn't look right so still need to somehow swap t he actual models.
Metroid Suit

samus.pkg

the modded file would go in romfs\packs\players\samus.pkg

0x01E63A7F

replace "actors/characters/samus/models/samuspower.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl"
replace "actors/characters/samus/models/samusvaria.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl"
replace "actors/characters/samus/models/samusgravity.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl[00][00]" (00 is a null byte, obviously)

0x0A8AA5CC

replace "actors/characters/morphball/models/morphballpower.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl"
replace "actors/characters/morphball/models/morphballvaria.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl"
replace "actors/characters/morphball/models/morphballgravity.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl[00][00]" (00 is a null byte, obviously)

You can change them around however you want, except gravity is two letters more than power/varia/hyper, and I'm not certain how to extend the string length to place gravity over the others.

I've tried adding two characters, and deleting two null bytes at the end of the text block, looking for some sort of string length prefix, or byte count, and various other possibilities but nothing so far has worked. It is possible to steal characters from the name attached to the model path, but the game ignores that suit model, and falls back to the previous model.

There is a workaround for Gravity of sorts. Say you wanted all suits to be gravity, change "samuspower.bcmdl[00]Varia" to "samusgravity.bcmdl[00]ria" (Varia will fallback to Default's model - which is now Gravity). If you only wanted Varia+Gravity to be Gravity, change "samusvaria.bcmdl[00]Gravity" to "samusgravity.bcmdl[00]avity" (Gravity will fallback to Varia's model, which is now Gravity). Don't forget to do the same with the morphball model.

I'd post a link to the modded files with different combinations, but I'm not familiar enough with the rules here, so I'd best not. But you'll find it if you check the video from gamebanana's only mod for the game.

Also, it seems config.ini is missing damage values for most of the bosses, so that could limit what one could do for an easy/hard custom difficulty.
 
Metroid Suit

samus.pkg

the modded file would go in romfs\packs\players\samus.pkg

0x01E63A7F

replace "actors/characters/samus/models/samuspower.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl"
replace "actors/characters/samus/models/samusvaria.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl"
replace "actors/characters/samus/models/samusgravity.bcmdl" with "actors/characters/samus/models/samushyper.bcmdl[00][00]" (00 is a null byte, obviously)

0x0A8AA5CC

replace "actors/characters/morphball/models/morphballpower.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl"
replace "actors/characters/morphball/models/morphballvaria.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl"
replace "actors/characters/morphball/models/morphballgravity.bcmdl" with "actors/characters/morphball/models/morphballhyper.bcmdl[00][00]" (00 is a null byte, obviously)

You can change them around however you want, except gravity is two letters more than power/varia/hyper, and I'm not certain how to extend the string length to place gravity over the others.

I've tried adding two characters, and deleting two null bytes at the end of the text block, looking for some sort of string length prefix, or byte count, and various other possibilities but nothing so far has worked. It is possible to steal characters from the name attached to the model path, but the game ignores that suit model, and falls back to the previous model.

There is a workaround for Gravity of sorts. Say you wanted all suits to be gravity, change "samuspower.bcmdl[00]Varia" to "samusgravity.bcmdl[00]ria" (Varia will fallback to Default's model - which is now Gravity). If you only wanted Varia+Gravity to be Gravity, change "samusvaria.bcmdl[00]Gravity" to "samusgravity.bcmdl[00]avity" (Gravity will fallback to Varia's model, which is now Gravity). Don't forget to do the same with the morphball model.

I'd post a link to the modded files with different combinations, but I'm not familiar enough with the rules here, so I'd best not. But you'll find it if you check the video from gamebanana's only mod for the game.

Also, it seems config.ini is missing damage values for most of the bosses, so that could limit what one could do for an easy/hard custom difficulty.

Awesome, so this was actually working with hyper suit replacing all other suits?

I was playing around with the samus.pkg myself but unpacking it did no good since I wasn't able to repackage the file again.

Only other way I was able to get hyper suit and hyper beam working was to modify the save file which can lead to some issues in gameplay since I wasn't able to use grapple beam (for one) in that suit but was cool that I could get this working outside of the final boss.

I keep referring to Metroid suit as Hyper suit now since that's how it's what it's referred as in the files but you get what I mean.
 
Awesome, so this was actually working with hyper suit replacing all other suits?

I was playing around with the samus.pkg myself but unpacking it did no good since I wasn't able to repackage the file again.

Only other way I was able to get hyper suit and hyper beam working was to modify the save file which can lead to some issues in gameplay since I wasn't able to use grapple beam (for one) in that suit but was cool that I could get this working outside of the final boss.

I keep referring to Metroid suit as Hyper suit now since that's how it's what it's referred as in the files but you get what I mean.
Yes, exactly. Anyone who doesn't want to do it themselves, in dread-suit-sets.rar, copy over samus-metroid-suit-all\romfs as written in the readme.

Thankfully, hex editing the pkg directly seems to work well enough.
 
Unfortunately, it doesn't seem to affect cutscenes.

I've since modified the latest source for switch toolbox to support saving/replacing files in PKG archives.

https://mega.nz/file/JJdAHBxC#lxQYFhfqVAYLjy9AJUAomFNeLI6nh92EbsTaAZ5wWrM

Replacing actors\characters\samus\models and morphball\models can be done directly now.

Export samushyper and morphballhyper and replace the other suit models with them, and save.
 
Very nice find!
This is what I was hoping for people to start finding out soon after the release of the game.

I was somewhat disappointed with the "hard mode" of the game being that it only doubles damage taken. Could someone be able to make a better hard mode through this? Possibly something that doubles enemy health pools? Reduce the window for parrying enemies? Increase the rate/speed of enemy attacks? Possibly disable the checkpoints at EMMI and boss doors?

I've already completed the game but I'm looking forward to experiencing more mods that make the experience that much more rewarding.
 
Sorry for the ultra noob question, but how do we use that config file?
(just which path/folder it needs to be put in would probably be good enough)
Seems like having boss hp bars and damage numbers would be an amazing addition to the game :)
I also finished my first 100% run of the game, but always looking to learning more...
 
Sorry for the ultra noob question, but how do we use that config file?
(just which path/folder it needs to be put in would probably be good enough)
Seems like having boss hp bars and damage numbers would be an amazing addition to the game :)
I also finished my first 100% run of the game, but always looking to learning more...
The rar already has the folder path, just put it on the SD root.
 

Site & Scene News

Popular threads in this forum