Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Evolution fixes part 2 #76636

Merged
merged 7 commits into from
Sep 29, 2024

Conversation

SirPendrak
Copy link
Contributor

@SirPendrak SirPendrak commented Sep 23, 2024

Summary

Bugfixes "Fix upgrading of zombie animals, ferrous zombies and some monstergroups tweaks"

Purpose of change

A lot of evolved monsters can evolve into different variants back and forth after "copy-from" was introduced for them.
I believe it is an unintended side effect, that for example skeletal zombears transform into acidic ones and vice-versa (or into themselves).

Rust shell and rust plated zombies had regular, standard zed evolution options.

Festering boar, rust zeds and skeletal zeds had their evolutiongroup written in a way that additionally limits their chance to evolve when evolving.

Some evolutiongroups didnt sum up to 1000. And miner group had one non-functional line.

Describe the solution

Give upgrades:false where it felt appropriate. To remove this side-effect of copy-from.

Make rust plated zombie an evolution of rust shell zed. Remove rust plated zed from rust zombie evolutiongroup.

Remove skelly, rust and festering boars from their evolutiongroups. If they are meant to have lower chance of evolving, it should be done with longer half-life. Checked that their evolutiongroups are not used as spawngroups anywhere.

Rot-weiler now evolves into acid dog, not brute-dog.

Made some monstergroups sum up to 1000. Kept the original ratio.

Describe alternatives you've considered

Remove cost modifier from groups that are only evolutiongroups and not spawngroups. I believe it does nothing?

Testing

Spawned some monsters and masters, watched them evolve. No errors. Debugged some time flow.

Additional context

Part 2 of #76180

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Spawn Creatures, items, vehicles, locations appearing on map Monsters Monsters both friendly and unfriendly. <Bugfix> This is a fix for a bug (or closes open issue) astyled astyled PR, label is assigned by github actions json-styled JSON lint passed, label assigned by github actions labels Sep 23, 2024
@Nebnis
Copy link
Contributor

Nebnis commented Sep 24, 2024

I was under the impression this was done to prevent a world where you see nothing but the same type of monster? And give more variance in endgame rather than hulkcdda

@SirPendrak
Copy link
Contributor Author

SirPendrak commented Sep 24, 2024

I understand your concerns, but this does not change monster variety directly. Only in situation when you un-luckily get the same evolutions in one group of monsters, if you wait, they will finally differentiate themselves.

Copy-from was introduced to monsters to pervent situation when one new feature requires editing every monster and to reduce code lenght. Not to make more variety in evolutions. If thats intended as well, it needs to be more consistent.
It was more obviously a bug with tier 4 zed (tentacled zed) devolving into tier 1 (tough zed), and its less obvious with pale charger (t2) changing into sinewy warhorse (also t2).
And speaking of hulk, it has upgrades:false for years ;p

To sum up:
I we want evolved monsters still be able to change (into the same tier or even different tier) this needs to be done with that intent in mind. When copy-from was introduced, it used tier 1 as reference 99% of the time. For monsters that evolve only into t2, is not big of a deal, but it is still an unintended side effect.

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Sep 24, 2024
@Karol1223
Copy link
Contributor

Karol1223 commented Sep 24, 2024

Made some monstergroups sum up to 1000. Kept the original ratio.

Unnecessary. Don't change ratios without a reason. On top of that, you did not keep the ratios in the dog evolution group (though that minor ratio difference for the skeletal dog being there in the first place is weird)

Don't make changes for the sake of changes. If you really have to change them, change them to the lowest denominator that keeps the ratio intact, not some arbitrary choice like a total of 1000.

@SirPendrak
Copy link
Contributor Author

Unnecessary. Don't change ratios without a reason. On top of that, you did not keep the ratios in the dog evolution group (though that minor ratio difference for the skeletal dog being there in the first place is weird)

That dog ratio difference is from times when z-dogs had only 3 evolutions and when sum of 1000 was required. I am 99% sure original autor wanted every dog evolution chance to be equal, but had to split them 340, 330 and 330.

And I did this only because ratios that are in fact ‰ are easier to read. And I was already working on that file where every other group sums up to 1000.

Copy link
Member

@kevingranade kevingranade left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with Karol here, if the intent is to make the weights even, just remove all the weights instead of manually setting them to the same numbers, and if the difference between the status quo and "even" is less than a percent, just leave it.

@Daved27hundred
Copy link
Contributor

The zombie horse mutations suffer this problem too...I never got to fixing it myself.

@SirPendrak
Copy link
Contributor Author

Rewerted every group ratio, with small exception of ferrous, where chance of plated zed is included in chance of shelled zed.
Since sticking to sum of 1000 is no longer desired, removed some other instances of monsters evolving into themselves.
Most importantly, this affects brainless zombie. It had additional 71,5% chance to not evolve.
If anything, these changes are going to increase variety.

@Maleclypse Maleclypse dismissed kevingranade’s stale review September 29, 2024 05:29

Changes made. LGTM now

@Maleclypse Maleclypse merged commit 53d33e6 into CleverRaven:master Sep 29, 2024
24 checks passed
@SirPendrak SirPendrak deleted the SirPendrak-evolution_fix_p2 branch September 29, 2024 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions <Bugfix> This is a fix for a bug (or closes open issue) [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Monsters Monsters both friendly and unfriendly. Spawn Creatures, items, vehicles, locations appearing on map
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants