Skip to content

Using overmap variables (urbanity esp) to influence om special spawns #81702

Open
@I-am-Erk

Description

@I-am-Erk

Is your feature request related to a problem? Please describe.

#69912 and #70002 added two new overmap parameters, "urbanity" and "forestosity". Urbanity currently increases towards the East and South, putting you towards areas with ever larger cities as you travel. Both of these variables could, and should, be able to be referenced somehow in overmap special definitions to influence special spawning in a few ways, allowing us to restrict specials to just areas where the cities are larger or the forest is thicker.

Solution you would like.

We could really use the following attributes. I recommend we limit them to text inputs rather than demanding contributors figure out the arbitrary numbers these variables wound up coming to.

  • "urbanity": (string)
  • "forestosity": (string)

For these two:

  • the default value 0 means we don't care and ignore this field.
  • "v_low" means we only spawn this special if the variable is less than 25% the maximum defined by "OVERMAP_MAXIMUM_URBANITY" or "OVERMAP_FOREST_LIMIT" in game_balance.json.
  • "low" means we only spawn the special if the associated variable is under 50% the maximum
  • "medium" means the special only spawns between 25% and 75% the defined limit.
  • "high" means the special only spawns at over 50% of the maximum
  • "v_high" means the special only spawns at the 75% or more of the maximum value.

Another option, either complimentary or alternative, is:

  • "urban_bias": (int)
  • "forest_bias": (int)

At 0, default, we ignore these values.

  • determine the current percent of maximum urbanity or forestosity is at in this overmap. For example if max urbanity is 5 and this overmap is 4, we're at 80% maximum
  • Adjust spawn rate for this special by bias/100 * the above percent. So, if bias is 100, this OMS will spawn 80% more often in an area of 100% urbanosity.
  • If the bias is negative this still works, in the above scenario then we reduce spawning by 80% if the bias is -100.

TK: I'd like to add a list of some common specials that should be biased in this way

Describe alternatives you have considered.

I am getting tired and I am sure there are better ways to do this math, so I am posting this for someone to offer feedback and suggestions

Additional context

No, forestosity is not a word. No, I won't stop saying it. You're not my real dad.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions