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

Make mansion ferals scenario specific #72695

Merged
merged 13 commits into from
Mar 31, 2024

Conversation

Procyonae
Copy link
Contributor

@Procyonae Procyonae commented Mar 29, 2024

Summary

None

Purpose of change

Progress towards #70215

Describe the solution

The mansion challenge scenario always takes place in the purpose built armoured mansion special, with the "random mansion basement" start location being moved to the large building scenario instead.

Mansion ferals only spawn in the challenge scenario via a start eoc that removes half the mapgen defined zeds and places a large number of ferals before removing any enemies very close to the player to cut down on bs starts (the start is still very challenging tho).

The number of zeds in both the scenario start and regular mansions are roughly the same.

Adds a new eoc function f_run_monster_eocs with documentation. Works similarly to f_run_npc_eocs.

Before/After Screenshots

Example of zeds in scenario mansion before (note zed inside the supposed "safe room"):
image

Example of zeds in scenario mansion after:
image

Example of zeds in non scenario mansion before:
image

Example of zeds in non scenario mansion after:
image

Describe alternatives you've considered

Using GROUP_VANILLA or GROUP_HOUSE instead of GROUP_ZOMBIE

Reducing zed spawns in regular mansions but I want this to be a small PR so it's easier to backport

Reducing spawns in the challenge start because it seems pretty overkill but I haven't tried the current iteration of the challenge.

Testing

Tested the EOC by changing the "id" to "scenario_mansion_pursuit_queue", removing "eoc_type" then adding this EOC:

  {
    "type": "effect_on_condition",
    "id": "scenario_mansion_pursuit",
    "eoc_type": "SCENARIO_SPECIFIC",
    "effect": [
      { "queue_eocs": "scenario_mansion_pursuit_queue", "time_in_future": "2 minutes" }
    ]
  },

Tested the mtype_ids field of f_run_npc_eocs separately

Additional context

@github-actions github-actions bot added <Documentation> Design documents, internal info, guides and help. NPC / Factions NPCs, AI, Speech, Factions, Ownership [JSON] Changes (can be) made in JSON Map / Mapgen Overmap, Mapgen, Map extras, Map display Spawn Creatures, items, vehicles, locations appearing on map [C++] Changes (can be) made in C++. Previously named `Code` [Markdown] Markdown issues and PRs Scenarios New Scenarios, balancing, bugs with scenarios EOC: Effects On Condition Anything concerning Effects On Condition labels Mar 29, 2024
@Procyonae Procyonae marked this pull request as ready for review March 29, 2024 18:55
Copy link
Contributor Author

@Procyonae Procyonae left a comment

Choose a reason for hiding this comment

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

eoc_type defaults to ACTIVATION courtesy of GuardianDLL

@github-actions github-actions bot added the astyled astyled PR, label is assigned by github actions label Mar 29, 2024
@github-actions github-actions bot added the json-styled JSON lint passed, label assigned by github actions label Mar 29, 2024
@github-actions github-actions bot added Mods Issues related to mods or modding Monsters Monsters both friendly and unfriendly. labels Mar 29, 2024
@github-actions github-actions bot added Mods: Aftershock Anything to do with the Aftershock mod Mods: No Hope Relating to the mod No Hope Mods: Xedra Evolved Anything to do with Xedra Evolved Mods: Mind Over Matter labels Mar 29, 2024
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Auto-requesting reviews from non-collaborators: @Standing-Storm @Night-Pryanik

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Mar 29, 2024
@Maleclypse Maleclypse merged commit 6c11eb1 into CleverRaven:master Mar 31, 2024
26 checks passed
@Termineitor244
Copy link
Contributor

Thanks for this! I have been away from the game and the github for some time (Just checking notifications every 2 days or so in case I was invoked/needed) so I wasn't aware of the changes being made or requested for the mansion ferals, I personally think that the ferals could be used as very rare enemies for normal mansions (As flavor more than anything else) but I understand if they are considered "too silly" for non-scenario mansions, I disagree, but understand.

I will try and start a new game in the scenario, see if there is anything that needs further changing.

Now that they were deemed as scenario mansions only I could maybe tweak the monsters and scenario somewhat to give more ways to survive for someone that knows what they are doing.

Oh, and sad to see ferals with crossbows go away (in the other PR), they had cool sprites and were a reference to the original movie the scenario is based around, I would have preferred for them to be moved to a mod, but oh well...

@@ -343,8 +343,8 @@
{ "item": "television", "x": 12, "y": 17, "chance": 100 }
],
"place_monster": [
{ "group": "GROUP_MANSION_ESCAPE", "x": [ 0, 23 ], "y": [ 12, 23 ], "chance": 35, "repeat": [ 1, 4 ] },
{ "group": "GROUP_PANICROOM", "x": [ 11, 13 ], "y": [ 6, 10 ], "chance": 65, "repeat": [ 1, 2 ] }
Copy link
Contributor

Choose a reason for hiding this comment

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

Was it intentional to remove almost all the flavor from monster spawns in mansions? Panic rooms could just have removed their mansion ferals spawns, but the improved chance of discovering zombie children, dogs and the like were for helping to construct a story of what happened there, to let the imagination of the players fly...

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I didn't appreciate panic rooms had flavour, I suggest leaving a comment in the monster group to make that more obvious when you readd it

Copy link
Contributor

Choose a reason for hiding this comment

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

I will do that then, thanks for the tip.

@@ -1018,7 +1018,7 @@
",": { "item": "softdrugs", "chance": 40 },
"?": { "item": "dresser_servant", "chance": 45 }
},
"place_monster": [ { "group": "GROUP_MANSION_ESCAPE", "x": [ 18, 23 ], "y": [ 8, 23 ], "chance": 65, "repeat": [ 3, 5 ] } ]
"place_monster": [ { "group": "GROUP_ZOMBIE", "x": [ 18, 23 ], "y": [ 8, 23 ], "chance": 65, "repeat": [ 3, 5 ] } ]
Copy link
Contributor

Choose a reason for hiding this comment

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

All instances of "GROUP_ZOMBIE" in this PR are a regression of a previous problem of zombies spawning where they do not make sense to be (firefighters and cops for example), the best group to use here (since the mansion groups are removed in this PR) is the "GROUP_VANILLA" since that only has normal, vanilla civilians that would make sense in a residential building.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I considered GROUP_VANILLA and GROUP_HOUSE but I'd already changed most of them and didn't feel like it was that big of a deal, I changed from the mansion group bc it doesn't really warrant having a unique group without the ferals

Copy link
Contributor

Choose a reason for hiding this comment

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

Removal of the mansion group is understandable, but yeah, there is an old (minor) problem with specialized monsters appearing where they do not make sense, the zombie group even includes soldier zombies, for general areas like the street of a city or gathering locations this doesn't really matter, but in residential buildings is quite notable when you find enemies that do not really belong there.

@Termineitor244
Copy link
Contributor

I want to make a new PR to address the mentioned issues if that is alright with you? I don't know if there was maybe a rationale I don't know behind those 2 changes.

@Procyonae Procyonae added the 0.H Backport PR to backport to the 0.H stable release canddiate label May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.H Backport PR to backport to the 0.H stable release canddiate astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions [C++] Changes (can be) made in C++. Previously named `Code` <Documentation> Design documents, internal info, guides and help. EOC: Effects On Condition Anything concerning Effects On Condition [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Map / Mapgen Overmap, Mapgen, Map extras, Map display [Markdown] Markdown issues and PRs Mods: Aftershock Anything to do with the Aftershock mod Mods: Mind Over Matter Mods: No Hope Relating to the mod No Hope Mods: Xedra Evolved Anything to do with Xedra Evolved Mods Issues related to mods or modding Monsters Monsters both friendly and unfriendly. NPC / Factions NPCs, AI, Speech, Factions, Ownership Scenarios New Scenarios, balancing, bugs with scenarios Spawn Creatures, items, vehicles, locations appearing on map
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants