Where are you supposed to write this? Sorry, I'm very new to Hades Modding.
Edit: Ok, after checking the .lua file from the mod I saw that there is a section of code lines called "override" that are pretty similar to the code you just posted, thing is, I should copy this at the very end of the page or...?
This is excellent. Do you mind if I add this to the script as an optional toggle? I'd give you credit within the script and on the Nexus page, of course.
Hey sorry about the radio silence folks, holidays were pretty hectic; by the time they were over I forgot all about the mod here. Looks like some people are still having gem scaling issues, and unfortunately I'm still pretty stumped on what exactly the cause could be. As some of you suggested, we might all be getting the base gem reward wrong; I'll need to triple-check some of the Hades information out there to confirm, as well as try some vanilla runs myself.
In the meantime, thanks all for your patience; cool to see this little mod has been useful to so many of you.
I just wanted to say that I really love this mod, and that I also *originally* thought Gemstones weren't scaling correctly, but I also forgot that regular chambers only provide 5 Gemstones while they provide 10 Darkness. It's possible people were assuming Gemstones started at 10? That's what I did! Anyway, thank you again for this mod, it's awesome.
Edit: still getting reports of gems scaling improperly. Nonetheless, the explanation below of how the game handles bonuses is still accurate.
As of v1.0.4, everything should finally scale properly. Thanks a ton to Araxyllis and thenextguy for their help in testing and providing valuable data - this would've taken me way too long to figure out without them. If you're interested in me overcomplicating what should be a simple explanation, then read on.
I was having a bit of trouble with inconsistent results while testing this mod, and I couldn't for the life of me figure out why. The missing piece of the puzzle turned out to be how bonuses stack together: due to a quirk in how SGG wrote the bonus multiplier script, Poseidon's Ocean Bounty boon could either stack additively or multiplicatively. This is why people kept reporting inconsistent numbers with this mod, and why it seemingly only worked at random.
For example: If you complete a normal chamber with a Darkness reward of 10 while having Ocean's Bounty (50%) and Darker Thirst (20%), then the calculation will look like this:
10 * 1.2 = 12 12 * 1.5 = 18
The game will calculate the bonuses separately - or in other words, the bonuses stack multiplicatively. In this case, it applies Darker Thirst first, and then Ocean's Bounty.
But! If you complete an elite chamber (the ones with a skull on their laurel) with a Gemstone reward of 15 while having Ocean's Bounty (50%) and Darker Thirst (20%), then the calculation will simply look like this:
15 * 1.7 = 25.5 (rounded up to 26 in-game)
It combines the two bonuses beforehand, and then applies the bonus to the resource - in other words, the bonuses stack additively.
I have no idea if this was intentional by the dev team or just a small oversight - it's so inconsequential in a vanilla game of Hades that it probably didn't matter if Ocean's Bounty stacked in the same manner consistently or not. But using this mod with higher percentages and/or Heat values, numbers can get pretty big pretty quick, which makes the different stacking methods stand out. To keep things simple, Ocean's Bounty now stacks multiplicatively for everything when using this mod, elite chamber or not. All other bonuses (as far as I can tell) stack additively with each other.
TL;DR Ocean's Bounty is weird and stacks differently depending on the situation, and for the sake of simplicity I made it stack the same way no matter what.
Looks like there might still be some trouble... Currently updating my post in the bugs section with more data... There seem to be some inconsistencies already of the heat bonus not applying to gems... :(
Gems still aren't scaling properly (from the boss rewards for certain, maybe rooms as well). I think when I buy them from Charon they do and I know troves do because I just did one but I tend to avoid gem rooms so it's really only boss clears, troves, charon and his well that put them in front of me. (it's also possible I'm severely underestimating how pathetic the gem rewards are)
Lovely mod but having more darkness leading to more healing from Dark Regeneration feels kinda wrong. Not sure if it'd be possible to change that with a config setting but would be awesome.
Your mod is amazing, im running a tweaked prestige mirror mod with yours where you need millions of darkness to max + more max heat together with your mod and it mixes very nicely. Only thing I would suggest to change that boni should scale exponentially with heat and not linear. Darkness and gems would suffice if its to complicated otherwise, would make 20 heat 265% instead of 200%, so its not too crazy, but when you already have a lot of heat every point of heat you put in more makes the game a lot harder then the first few heat points, and the change would better reflect that in terms of reward.
Edit: I just changed metaPointsPercentage = percentage.Darkness * currentHeatlocal to metaPointsPercentage = (math.pow(percentage.Darkness, currentHeat)-1) the three times it comes up, same for gems, Changed darkness from 0.05 to 1.05 and it just works. good job keeping your mod clean and easy to edit
edit 2: nope, somethings wrong, im getting more darkness than i should, but after reversing back to your original mod it seems that room darkness rewards have always been wrong. 12 darkness with 50% heatbonus should be 18, but your mod made it 26, 12 darkness with 100% should be 24, but your mod made it 44
Hey. Just got into the modding aspect of this game. In the editing section. Where it states, "Amount of Heat per extra pick-up; for example, if Keys is set to 8, then you get 1 extra Key every 8 Heat." Keys = 8, Nectar = 8, Blood = 16, Ambrosia = 16, Diamond = 16
If I were to set that as 3 for example. That means that every 3 heat(3, 6, 9 etc) I would get an extra item? Keys = 3 heat (I would get extra key), Nectar = at 6 heat= extra nectar Blood = 9 heat- extra blood Ambrosia = 12 heat=extra ambrosia Diamond = 15 heat= extra diamond? Edit- With the blood, ambrosia and diamond only applying when the boss reward is available correct?
If I were to set that as 3 for example. That means that every 3 heat(3, 6, 9 etc) I would get an extra item?
You're close: you actually set the Heat level separately for each item. So for example, if we set it like this: Keys = 2 Nectar = 3 Blood = 5 Ambrosia = 9 Diamond = 15
At 2 Heat, you'd get 1 extra key, and no other extra items. At 3 Heat, you'd get 1 extra key, 1 extra Nectar, and no extra items. At 4 Heat, you'd get 2 extra keys, 1 extra Nectar, and no other extra items. At 5 Heat, you'd get 2 extra keys, 1 extra Nectar, and no other extra items. At 6 Heat, you'd get 3 extra keys, 2 extra Nectar, one extra Blood, and no other extra items. ...And so on.
If you poke around with my code I think you should be able to get the idea of it; I left some comments in the code that hopefully make things clear.
Edit- With the blood, ambrosia and diamond only applying when the boss reward is available correct?
It'll also apply if the items show up in Charon's Temple of Styx shop at the end of a run, but otherwise yeah, you got it.
Sorry about the late response, hopefully this is still helpful to you.
Ah okay, I though the number of heats would multiply the items, so I just set everything to 1 as a test run. I'll just copy the example you provided and run with it.
Hello! First of all I want to say thank you for the mod, it's amazing. I doubt that I would have decided to use the Pact without him in the near future. And, secondly, can I ask if it is possible to add Charon's Coins along with Darkness and "Colorful Stones"? Or is it too hard to implement / unbalanced?
Hey there, thanks for the kind words! Adding an optional modifier for Charon's coins should definitely be possible. I've been a bit busy this Summer so I haven't really had time to come back to this, but I should be able to cook something up Soon™.
Very good catch. Just did some quick testing, and it seems to scale based on the boosted amount rather than the original amount. I'll look into having it work off of the original Darkness value, because that's quite a bit of extra health at higher heat levels.
18 comments
ModUtil.BaseOverride("OnMetaPointsAdded",
function( name, amount, source, args )
args = args or {}
GameState.AccumulatedMetaPointsCache = GameState.LifetimeResourcesGained.MetaPoints or 0
local healMultiplier = GetTotalHeroTraitValue("MetaPointHealMultiplier") + ( GetTotalMetaUpgradeChangeValue("DarknessHealMetaUpgrade") - 1 )
healMultiplier = healMultiplier * CalculateHealingMultiplier() * GetTotalHeroTraitValue("MaxHealthMultiplier", { IsMultiplier = true })
--For Mod
local heatDivisor = GetTotalSpentShrinePoints() * ResourcesScaleWithHeat.Config.Percentage.Darkness + 1
healMultiplier = healMultiplier / heatDivisor
--End Mod
if healMultiplier > 0 and round( healMultiplier * amount ) > 0 then
thread( DelayedHeal, 0.5, round( healMultiplier * amount ), "MetaPointHeal" )
end
end
)
Edit: Ok, after checking the .lua file from the mod I saw that there is a section of code lines called "override" that are pretty similar to the code you just posted, thing is, I should copy this at the very end of the page or...?
Looks like some people are still having gem scaling issues, and unfortunately I'm still pretty stumped on what exactly the cause could be.
As some of you suggested, we might all be getting the base gem reward wrong; I'll need to triple-check some of the Hades information out there to confirm, as well as try some vanilla runs myself.
In the meantime, thanks all for your patience; cool to see this little mod has been useful to so many of you.
As of v1.0.4, everything should finally scale properly. Thanks a ton to Araxyllis and thenextguy for their help in testing and providing valuable data - this would've taken me way too long to figure out without them. If you're interested in me overcomplicating what should be a simple explanation, then read on.
I was having a bit of trouble with inconsistent results while testing this mod, and I couldn't for the life of me figure out why. The missing piece of the puzzle turned out to be how bonuses stack together: due to a quirk in how SGG wrote the bonus multiplier script, Poseidon's Ocean Bounty boon could either stack additively or multiplicatively. This is why people kept reporting inconsistent numbers with this mod, and why it seemingly only worked at random.
For example: If you complete a normal chamber with a Darkness reward of 10 while having Ocean's Bounty (50%) and Darker Thirst (20%), then the calculation will look like this:
10 * 1.2 = 12
12 * 1.5 = 18
The game will calculate the bonuses separately - or in other words, the bonuses stack multiplicatively. In this case, it applies Darker Thirst first, and then Ocean's Bounty.
But! If you complete an elite chamber (the ones with a skull on their laurel) with a Gemstone reward of 15 while having Ocean's Bounty (50%) and Darker Thirst (20%), then the calculation will simply look like this:
15 * 1.7 = 25.5 (rounded up to 26 in-game)
It combines the two bonuses beforehand, and then applies the bonus to the resource - in other words, the bonuses stack additively.
I have no idea if this was intentional by the dev team or just a small oversight - it's so inconsequential in a vanilla game of Hades that it probably didn't matter if Ocean's Bounty stacked in the same manner consistently or not. But using this mod with higher percentages and/or Heat values, numbers can get pretty big pretty quick, which makes the different stacking methods stand out. To keep things simple, Ocean's Bounty now stacks multiplicatively for everything when using this mod, elite chamber or not. All other bonuses (as far as I can tell) stack additively with each other.
TL;DR Ocean's Bounty is weird and stacks differently depending on the situation, and for the sake of simplicity I made it stack the same way no matter what.
(it's also possible I'm severely underestimating how pathetic the gem rewards are)
Edit: I just changed
metaPointsPercentage = percentage.Darkness * currentHeatlocal
to
metaPointsPercentage = (math.pow(percentage.Darkness, currentHeat)-1)
the three times it comes up, same for gems,
Changed darkness from 0.05 to 1.05 and it just works. good job keeping your mod clean and easy to edit
edit 2: nope, somethings wrong, im getting more darkness than i should, but after reversing back to your original mod it seems that room darkness rewards have always been wrong. 12 darkness with 50% heatbonus should be 18, but your mod made it 26, 12 darkness with 100% should be 24, but your mod made it 44
Keys = 8,
Nectar = 8,
Blood = 16,
Ambrosia = 16,
Diamond = 16
If I were to set that as 3 for example. That means that every 3 heat(3, 6, 9 etc) I would get an extra item?
Keys = 3 heat (I would get extra key),
Nectar = at 6 heat= extra nectar
Blood = 9 heat- extra blood
Ambrosia = 12 heat=extra ambrosia
Diamond = 15 heat= extra diamond?
Edit- With the blood, ambrosia and diamond only applying when the boss reward is available correct?
Keys = 2
Nectar = 3
Blood = 5
Ambrosia = 9
Diamond = 15
At 2 Heat, you'd get 1 extra key, and no other extra items.
At 3 Heat, you'd get 1 extra key, 1 extra Nectar, and no extra items.
At 4 Heat, you'd get 2 extra keys, 1 extra Nectar, and no other extra items.
At 5 Heat, you'd get 2 extra keys, 1 extra Nectar, and no other extra items.
At 6 Heat, you'd get 3 extra keys, 2 extra Nectar, one extra Blood, and no other extra items.
...And so on.
If you poke around with my code I think you should be able to get the idea of it; I left some comments in the code that hopefully make things clear.
Sorry about the late response, hopefully this is still helpful to you.
Thanks for the reply and help!
And, secondly, can I ask if it is possible to add Charon's Coins along with Darkness and "Colorful Stones"?
Or is it too hard to implement / unbalanced?
I'll look into having it work off of the original Darkness value, because that's quite a bit of extra health at higher heat levels.