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

Amphibian Additions Phase 2 - Monstrous Frogs & Toads #68197

Merged

Conversation

TheSaddestGoomba
Copy link
Contributor

@TheSaddestGoomba TheSaddestGoomba commented Sep 18, 2023

Summary

Content "Introduce new mutant frog monsters, and weakpoints for frogs"

Purpose of change

Expand the number of amphibian mutants
Second implementation of #67029, follow-up to #67259

Describe the solution

  • Add new monsters (mutant frog species & their tadpoles), eggs and monstergroups for them to reproduce and spawn.
  • Add weakpoint sets for amphibians, and effects for those weakpoints.
  • Add new generic harvest entry.
  • Old monsters have been replaced in monstergroups, and rotspawn/upgrade/reproduction references. For Megafauna mod as well. Old monster entries not yet removed.
  • Updated all amphibian data in Tamable Wildlife.
  • Fix my own poor judgement; change all instances of "toad" in id's to "frog" for consistency.

Describe alternatives you've considered

I'm still hoping to expand on special abilities within this PR. Specifically, I want to:

  • Add an area effect to one line of mutants representing an overpowering odor/toxin. Triggers vomiting in extreme cases. <- Done through tear gas field emission
  • Give giant toads the ability to create pits for resting/wallowing in. <- reserved for later, likely as a nest in mapgen
  • Give the Colossal Croaker a colossal croak. <- Done
  • Overall, needs more tongue. Add more and finetune ranged pulls. <- Done
  • Having split evolution for some species to maintain a mix of forms rather than everything ending up all megas after a year. Best implementation I could think of was to create near-indentical copies of lower level mutants. One version continues evolving and the other stops where they are. This seems like overkill for now, but I may try it out for a future treefrog mutant line with the reasoning of extreme sexual dimorphism.

Testing

Tested through debug in a fresh world:

  • Map spawns
  • Evolutions
  • Special Attacks
  • Match-up fights with NPCs and other monsters. Extra attention was paid to frog/arthropod match-ups. As is, they seem to be pretty evenly matched at the equivalent 'size' or 'stage' of mutation, with the frogs relying on their abilities to pull out a victory.

Additional context

Changes:

Add new monsters (mutant frog species & their tadpoles), eggs and monstergroups for them to reproduce and spawn.

Add weakpoint sets for amphibians, and effects for those weakpoints.

Old monsters have been replaced in monstergroups, and rotspawn/upgrade/reproduction references. For Megafauna mod as well.

Updated all amphibian data in Tamable Wildlife.

Fix my own poor judgement; change all instances of "toad" in id's to "frog" for consistency.
@TheSaddestGoomba TheSaddestGoomba changed the title First Draft Amphibian Additions Phase 2 Sep 18, 2023
@TheSaddestGoomba TheSaddestGoomba changed the title Amphibian Additions Phase 2 Amphibian Additions Phase 2 - Monstrous Frogs & Toads Sep 18, 2023
@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Mods Issues related to mods or modding Spawn Creatures, items, vehicles, locations appearing on map Mods: Tamable Wildlife labels Sep 18, 2023
Copy link
Contributor

@ehughsbaird ehughsbaird left a comment

Choose a reason for hiding this comment

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

Item id changes require migration: https://github.com/CleverRaven/Cataclysm-DDA/blob/master/data/json/obsoletion/migration_items.json
It doesn't look like such a feature exists for monsters, so those shouldn't have their ids changed.

@Karol1223
Copy link
Contributor

Karol1223 commented Sep 18, 2023

Removing IDs from a monster silently turns it into a breather upon load - this is not documented.

Having said that - changing an ID for the sake of just changing it is very bad practice. Don't change IDs unless you specifically need to.

And while I'm here I'll also comment on the naming because this happens every time mutants get brought up. 4/5 of the players, at least, do not read descriptions or it isn't their first instinct. Names should not be flowery, poetic or from a kaiju movie - they should clearly show what the monster you're dealing with is. Keep in mind, too, that these mutants would not be named by scientists but by normal people who come in contact with them. I'm saying that because the first one I saw was "stuntongue", and no disrespect because the name is cool but it is about as non-descriptive as it gets, so it really doesn't get the job done.

@github-actions github-actions bot added the astyled astyled PR, label is assigned by github actions label Sep 18, 2023
@Zireael07
Copy link
Contributor

To add to what Karol said, flowery/poetic names will also be difficult to translate.

@TheSaddestGoomba
Copy link
Contributor Author

Thank you all for the feedback!

Item id changes require migration
Don't change IDs unless you specifically need to.

I did have that in mind this time. I was tripping over myself when prepping the new monsters and referencing back. I kept using "x_x_frog" for the "x_x_toad"s and creating dead references that way. Also why I only used "frog" for the "_big", "_gigan", and "_mega" ids, eliminate the pointlessly alternating terms.
I also foolishly made the mistake of thinking no one else would have built off it before I could made the change, but Standing-Storm went and made a cool-ass spell using them for Magiclysm... which just led me to see that Magiclysm has a monstergroup for the spell using the "toad" ids.
Sorry, that's a lot say it felt like a need at the time I was working on it but it was still a mistake. Would it be best for me to revert the renaming or just update the Magiclysm group from "toad" to "frog"?

Names should not be flowery, poetic or from a kaiju movie
To add to what Karol said, flowery/poetic names will also be difficult to translate.

Hmm, I had previously thought of 'Taser Tongue' or simply "Taser Frog" which feel more direct (it uses its tongue like taser electrodes). 'Staticskin Frog' could also be 'Shockskin Frog.' Are there any others that need more work? The 'Foul' line is pretty literal but are those too flowery?
I had not thought of the translation aspect of it. I assume same best practices? Literal, descriptive, and succinct?

@Karol1223
Copy link
Contributor

Are there any others that need more work? The 'Foul' line is pretty literal but are those too flowery?

I specifically didn't mention those because despite them being flowery I do believe they get the message across. However I have a hard time believing anyone would see a big stinky frog in the post-apocalypse and think hmm yes that's a foul hogtoad. But that's 100% nitpicking - like I said I think they do get the message across, the only possible issue I see may be with translations like Zirael said.

Change "Stuntongue" to "Taser Tongue"
Mostly error fixes.

Add "SMALL_HIDE" flag to frogs, as suggested in #68387

Begin testing special abilities for foul toad line. Currently, tear gas emission for aerosolized bufotoxin; NO_BREATHE flag is an imperfect solution to them gassing themselves into submission.
Revert ID changes
Revert ID changes
Revert ID changes
Revert ID changes
Fix syntax error
Rename 'Foul Hogtoad' to 'Giant Hogtoad.'
Remove old monster IDs
Clean up some descriptions.
Adjust leap values for foul toad line.
Add "NO_BREATHE" flag to foul toad line to prevent gassing by kin.
Add Shriek and Shriek_Stun to Colossal Croaker
Update all amphibian evolution rates to account for default evo factor.

Embiggen the taser tongue so it can pull PCs of higher than skeletal weight.

Clean up giant hogtoad description for brevity and clarity.
Change taser tongue tongue attack message
Remove reproduction line from tadpole abstract
Increase timers for higher tier upgrades back to something reasonable
Tidy up some descriptions and fix more repeated articles in tongue-dodging messages.
TheSaddestGoomba and others added 19 commits November 3, 2023 13:17
Adjust spawn rates and default factions to match changes in #68748
Fix typos in great beaked toad description
* Fixing Itemgroups

Fixing up some itemgroups and spawns

* Update locations.json

* Update clothing.json

* Update clothing.json
* Fixes issue where not all selected books were scanned to ereader.
* The problem before was that:
	* `ebooksave_activity_actor` expected an exact number of calls to `do_turn()` until the current books was scanned.
	* But player speed affects the speed of activities such as this one.
	* In effect, `do_turn()` is called to few times compared to `to_turns<int>( duration )` when player speed > 100.
* This change therefore makes sure that all selected books are fully scanned when the activity is finished, regardless of number of calls to `do_turn()`.
* The number of calls to `do_turn()` does not really matter anyway, it's just used for supporting that some books are fully scanned while the activity is running.
* Update masks.json

* Update data/json/items/armor/masks.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* what the fuck

* Update science_and_tech.json

* rare drugs

* painkillers

* antiseptic powder
* Initial commit

* spell check fixes

* Thank you Ferret

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Update gunmods.json

---------

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>
* Update hunger.json

* Update weight.json

* Update sidebar-mobile.json

* Update hunger.json
#69024)

* Remove penalty from protrusions and carried parts when calculating boat hull coverage

* Fix possible uninitialized value in vehicle.cpp

* Increase(?) water drag coefficients for land vehicles with protrusions

* Remove trailing zeroes in drag test JSON
* Organize the stuff

* Update FREQUENTLY_MADE_SUGGESTIONS.md

* Revert "Update FREQUENTLY_MADE_SUGGESTIONS.md"

This reverts commit 0ca0c05.

* Update FREQUENTLY_MADE_SUGGESTIONS.md

* Organize the lab eocs

* Opps, rename

* try to fix some weirdness with Github
Remove extra space in description string
Fix flag misspelling
Replace 'mon_frog_mega' with new mega frog references for monster regeneration overrides in Mind Over Matter.
No pattern megafrog, no regen
@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Nov 4, 2023
-Tune up and capitalize Electrocution effect.
-Add physiology dissection proficiency family to all frog monsters to match #68760
Touch up description text for pattern frogs
Copy link
Contributor

github-actions bot commented Nov 4, 2023

Spell checker encountered unrecognized words in the in-game text added in this pull request. See below for details.

Click to expand
  • From a distance you could mistake it for a cluster of gigantic caviar. It is only on close inspection that you can make out the faint translucence of these softball-sized frog eggs.
  • The %s electrifies itself! It begins seizing!
  • This large frog is covered in chaotic markings like a fractal river map over a background of tv static. While most lose their gills during metamorphosis, this frog seems to have retained them, or something like them.
  • This massive toad's jaw bones have grown out from its lips into a powerful beak, large enough to snap a bicycle in two. The bony growths extend to its face, ringing its eyes and shielding its parotoid glands, swollen with poison. Though intimidating, it appears more interested in a soothing mud bath than anything violent.
  • foul hogtoad
  • foul hogtoads
  • giant hogtoad
  • giant hogtoads
  • greasy stinktoad
  • greasy stinktoads
  • staticskin frog
  • staticskin frogs
  • stuntongue
  • stuntongues

This alert is automatically generated. You can simply disregard if this is inaccurate, or (optionally) you can also add the new words to tools/spell_checker/dictionary.txt so they will not trigger an alert next time.

@Maleclypse Maleclypse merged commit 695ae22 into CleverRaven:master Nov 7, 2023
23 checks passed
@TheSaddestGoomba TheSaddestGoomba deleted the Amphibian_Additions_Phase_2 branch November 9, 2023 16:05
Maleclypse pushed a commit to Maleclypse/Cataclysm-DDA that referenced this pull request Nov 16, 2023
)

* First Draft

Changes:

Add new monsters (mutant frog species & their tadpoles), eggs and monstergroups for them to reproduce and spawn.

Add weakpoint sets for amphibians, and effects for those weakpoints.

Old monsters have been replaced in monstergroups, and rotspawn/upgrade/reproduction references. For Megafauna mod as well.

Updated all amphibian data in Tamable Wildlife.

Fix my own poor judgement; change all instances of "toad" in id's to "frog" for consistency.

* Update reptile_amphibian.json

Change "Stuntongue" to "Taser Tongue"

* Error fixes, Flag updates, Stink frog stinks

Mostly error fixes.

Add "SMALL_HIDE" flag to frogs, as suggested in CleverRaven#68387

Begin testing special abilities for foul toad line. Currently, tear gas emission for aerosolized bufotoxin; NO_BREATHE flag is an imperfect solution to them gassing themselves into submission.

* Update egg.json

Revert ID changes

* Update amphibian.json

Revert ID changes

* Update eggs.json

Revert ID changes

* Update reptile_amphibian.json

Revert ID changes
Fix syntax error
Rename 'Foul Hogtoad' to 'Giant Hogtoad.'

* Update cooking_components.json

Revert ID changes

* Update wilderness.json

Typo fix

* Update reptile_amphibian.json

Revert ID changes

* Update reptile_amphibian.json

Remove old monster IDs

* Leaps & Flavor Text

Clean up some descriptions.
Adjust leap values for foul toad line.
Add "NO_BREATHE" flag to foul toad line to prevent gassing by kin.

* Give Croaker a Croak

Add Shriek and Shriek_Stun to Colossal Croaker

* Evo Rate, Taser Tongue Size, Hogtoad Flavor

Update all amphibian evolution rates to account for default evo factor.

Embiggen the taser tongue so it can pull PCs of higher than skeletal weight.

Clean up giant hogtoad description for brevity and clarity.

* Taser tongue-ing message, proxy tad no grow

Change taser tongue tongue attack message
Remove reproduction line from tadpole abstract

* Growth Rate Fine Tune

Increase timers for higher tier upgrades back to something reasonable

* Clean Tongue  Messages & Flavor Text

Tidy up some descriptions and fix more repeated articles in tongue-dodging messages.

* Stat tweaks, emissions, upgrade weights

Minor changes to frog stats.
Added new emit for stinktoad, gave weak emit to hogtoad.
Adjusted weights within upgrade groups.

* Update data/json/items/comestibles/egg.json

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Update data/json/monsters/reptile_amphibian.json

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Lower spawn rates

* Incorporate Minor froggy edits CleverRaven#68748

Adjust spawn rates and default factions to match changes in CleverRaven#68748

* Typos

Fix typos in great beaked toad description

* Typos

Fix typos in great beaked toad description

* Syntax fix

Remove extra space in description string

* Add a missing 'R'

Fix flag misspelling

* MOM Monster Overrides

Replace 'mon_frog_mega' with new mega frog references for monster regeneration overrides in Mind Over Matter.

* First Draft

Changes:

Add new monsters (mutant frog species & their tadpoles), eggs and monstergroups for them to reproduce and spawn.

Add weakpoint sets for amphibians, and effects for those weakpoints.

Old monsters have been replaced in monstergroups, and rotspawn/upgrade/reproduction references. For Megafauna mod as well.

Updated all amphibian data in Tamable Wildlife.

Fix my own poor judgement; change all instances of "toad" in id's to "frog" for consistency.

* Update reptile_amphibian.json

Change "Stuntongue" to "Taser Tongue"

* Error fixes, Flag updates, Stink frog stinks

Mostly error fixes.

Add "SMALL_HIDE" flag to frogs, as suggested in CleverRaven#68387

Begin testing special abilities for foul toad line. Currently, tear gas emission for aerosolized bufotoxin; NO_BREATHE flag is an imperfect solution to them gassing themselves into submission.

* Update egg.json

Revert ID changes

* Update amphibian.json

Revert ID changes

* Update eggs.json

Revert ID changes

* Update reptile_amphibian.json

Revert ID changes
Fix syntax error
Rename 'Foul Hogtoad' to 'Giant Hogtoad.'

* Update cooking_components.json

Revert ID changes

* Update wilderness.json

Typo fix

* Update reptile_amphibian.json

Revert ID changes

* Update reptile_amphibian.json

Remove old monster IDs

* Leaps & Flavor Text

Clean up some descriptions.
Adjust leap values for foul toad line.
Add "NO_BREATHE" flag to foul toad line to prevent gassing by kin.

* Give Croaker a Croak

Add Shriek and Shriek_Stun to Colossal Croaker

* Evo Rate, Taser Tongue Size, Hogtoad Flavor

Update all amphibian evolution rates to account for default evo factor.

Embiggen the taser tongue so it can pull PCs of higher than skeletal weight.

Clean up giant hogtoad description for brevity and clarity.

* Taser tongue-ing message, proxy tad no grow

Change taser tongue tongue attack message
Remove reproduction line from tadpole abstract

* Growth Rate Fine Tune

Increase timers for higher tier upgrades back to something reasonable

* Clean Tongue  Messages & Flavor Text

Tidy up some descriptions and fix more repeated articles in tongue-dodging messages.

* Stat tweaks, emissions, upgrade weights

Minor changes to frog stats.
Added new emit for stinktoad, gave weak emit to hogtoad.
Adjusted weights within upgrade groups.

* Update data/json/items/comestibles/egg.json

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Update data/json/monsters/reptile_amphibian.json

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Lower spawn rates

* Incorporate Minor froggy edits CleverRaven#68748

Adjust spawn rates and default factions to match changes in CleverRaven#68748

* Typos

Fix typos in great beaked toad description

* Update electronics.json

* Fixing Itemgroups (CleverRaven#69011)

* Fixing Itemgroups

Fixing up some itemgroups and spawns

* Update locations.json

* Update clothing.json

* Update clothing.json

* fix typos

* Bugfix: Ensure all selected books are scanned to ereader

* Fixes issue where not all selected books were scanned to ereader.
* The problem before was that:
	* `ebooksave_activity_actor` expected an exact number of calls to `do_turn()` until the current books was scanned.
	* But player speed affects the speed of activities such as this one.
	* In effect, `do_turn()` is called to few times compared to `to_turns<int>( duration )` when player speed > 100.
* This change therefore makes sure that all selected books are fully scanned when the activity is finished, regardless of number of calls to `do_turn()`.
* The number of calls to `do_turn()` does not really matter anyway, it's just used for supporting that some books are fully scanned while the activity is running.

* display selected proficiency when opening proficiency UI from character display

* add more (zombie) leather mask variant (CleverRaven#69013)

* Update masks.json

* Update data/json/items/armor/masks.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix pharmacy and doctor's office loot (CleverRaven#68995)

* what the fuck

* Update science_and_tech.json

* rare drugs

* painkillers

* antiseptic powder

* [Xedra Evolved] Misc additions (CleverRaven#68931)

* Initial commit

* spell check fixes

* Thank you Ferret

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Update gunmods.json

---------

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>

* Adjust hungry and overweight coloring in sidebar (CleverRaven#69005)

* Update hunger.json

* Update weight.json

* Update sidebar-mobile.json

* Update hunger.json

* Remove boat hull coverage penalty for protrusions and carried vehicles (CleverRaven#69024)

* Remove penalty from protrusions and carried parts when calculating boat hull coverage

* Fix possible uninitialized value in vehicle.cpp

* Increase(?) water drag coefficients for land vehicles with protrusions

* Remove trailing zeroes in drag test JSON

* Organize the remaining unorganized EOCs (CleverRaven#68940)

* Organize the stuff

* Update FREQUENTLY_MADE_SUGGESTIONS.md

* Revert "Update FREQUENTLY_MADE_SUGGESTIONS.md"

This reverts commit 0ca0c05.

* Update FREQUENTLY_MADE_SUGGESTIONS.md

* Organize the lab eocs

* Opps, rename

* try to fix some weirdness with Github

* Syntax fix

Remove extra space in description string

* Add a missing 'R'

Fix flag misspelling

* MOM Monster Overrides

Replace 'mon_frog_mega' with new mega frog references for monster regeneration overrides in Mind Over Matter.

* MOM Overrides Fix

No pattern megafrog, no regen

* Effect & Family Updates

-Tune up and capitalize Electrocution effect.
-Add physiology dissection proficiency family to all frog monsters to match CleverRaven#68760

* Pattern Frog Flavor

Touch up description text for pattern frogs

---------

Co-authored-by: TheShadowFerret <99621099+TheShadowFerret@users.noreply.github.com>
Co-authored-by: gettingusedto <78019001+gettingusedto@users.noreply.github.com>
Co-authored-by: LordBarkBread <97002254+LordBarkBread@users.noreply.github.com>
Co-authored-by: Tim Nordenfur <tim@gurka.se>
Co-authored-by: inogenous <123803852+inogenous@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: KeremBaba <rasitkeremgulgun@gmail.com>
Co-authored-by: Anton Simakov <67688115+GuardianDll@users.noreply.github.com>
Co-authored-by: Risuga <oosyrag@gmail.com>
Co-authored-by: Evan Balster <evan@interactopia.com>
Co-authored-by: MNG-cataclysm <58958654+MNG-cataclysm@users.noreply.github.com>
@TheSaddestGoomba TheSaddestGoomba mentioned this pull request Dec 18, 2023
82 tasks
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 [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Mods: Mind Over Matter Mods: Tamable Wildlife Mods Issues related to mods or modding Spawn Creatures, items, vehicles, locations appearing on map
Projects
None yet
Development

Successfully merging this pull request may close these issues.