Results 1 to 11 of 11

Thread: Question About Wandering Horde Wrap Around

  1. #1
    Colony Founder JaxTeller718's Avatar
    Join Date
    Aug 2015
    Location
    Ravenhearst
    Posts
    3,711
    Rep Power
    1

    Question About Wandering Horde Wrap Around

    In the gamestages.xml I see Wandering hordes are tagged with a gamestage. The help text states this:

    Code:
    		<!-- These will wrap around at 50. -->
    A typical wandering horde looks like this in my xml

    Code:
    		<gamestage stage="01">
    			<spawn group="ZombiesFirstLineOfDefense" num="15" maxAlive="10" duration="09" />
    			<spawn group="scoutHordeStageGS1" num="15" maxAlive="30" duration="09" />
    		</gamestage>
    I was interested in whether or not we can "gamestage" these to reflect you in game gamestage instead of having them wrap. For example can i do this

    Code:
    		<gamestage stage="01">
    			<spawn group="ZombiesFirstLineOfDefense" num="15" maxAlive="10" duration="09" />
    			<spawn group="scoutHordeStageGS1" num="15" maxAlive="30" duration="09" />
    		</gamestage>
    
    		<gamestage stage="200">
    			<spawn group="ZombiesFirstLineOfDefense" num="15" maxAlive="10" duration="09" />
    			<spawn group="scoutHordeStageGS1" num="15" maxAlive="30" duration="09" />
    		</gamestage>
    
    		<gamestage stage="400">
    			<spawn group="ZombiesFirstLineOfDefense" num="15" maxAlive="10" duration="09" />
    			<spawn group="scoutHordeStageGS1" num="15" maxAlive="30" duration="09" />
    		</gamestage>
    and if i did would it actually reflect that in game, or is it hard coded to just wrap around and changing that gamestage number does not actually impact the wandering hordes you get by the gamestage you have in game. Wanted to create harder wandering hordes as gamestages increase.

    Would be wonderful if i could get Gazz' input on this

  2. #2
    Fun Pimps Staff Gazz's Avatar
    Join Date
    Jun 2014
    Location
    In your brains. Thinking your thoughts.
    Posts
    8,072
    Rep Power
    2
    Sorry, it just wraps around and around and...

    We were THIS close to not having wandering hordes at all (long story) but I came up with this relatively easy hack to get something of the sort going.

  3. #3
    Tracker
    Join Date
    Jul 2017
    Posts
    221
    Rep Power
    1
    Is it hard-coded to wrap specifically at 50, or does it just wrap at any value higher than the highest gamestage?

  4. #4
    Colony Founder JaxTeller718's Avatar
    Join Date
    Aug 2015
    Location
    Ravenhearst
    Posts
    3,711
    Rep Power
    1
    Quote Originally Posted by Gazz View Post
    Sorry, it just wraps around and around and...

    We were THIS close to not having wandering hordes at all (long story) but I came up with this relatively easy hack to get something of the sort going.
    Thanks Gazz. People will just have to accept they may get a feral radiated Biker on day three

    That sounds like a story best served with a pint :O

    Also interested in what dream above asked. Is it hardcoded... and if so any cool tricks to possibly extend it, maybe not by gamestage but maybe to a higher number for more variation?

  5. #5
    Colony Founder StompyNZ's Avatar
    Join Date
    Apr 2015
    Posts
    3,835
    Rep Power
    1
    Code:
    //AIWanderingHordeSpawner
    this.KZ.ResetPartyLevel(50);
    
    ...
    
    // AIDirectorGameStagePartySpawner
    public void ResetPartyLevel(int mod = 0)
    
    ...
    
    if (mod != 0)
    {
      num %= mod;
    }
    - - - Updated - - -

    Try a patchscript to edit that number in the AIWanderingHordeSpawner constructor

    Set it to 0 to disable the wrap

  6. #6
    Fun Pimps Staff Gazz's Avatar
    Join Date
    Jun 2014
    Location
    In your brains. Thinking your thoughts.
    Posts
    8,072
    Rep Power
    2
    We did consider making it scale strictly with GS but when player progression slows down you'd get the exact same horde over and over. Meh.

    We (the coder and I =) did go with the simplest and safest approach. It was too late to open any new cans of worms.

    The next better version would have been to have a larger list, say up to 500,
    it still wraps around but with an offset based on your GS so
    at low GS it wraps 1-50 over and over and at a higher GS it wraps 350-400 and so on.

    The wrapping mechanic itself is useful. You may only have to add an offset.

    That guarantees some variety at every GS but lets you ramp up overall difficulty.
    Or you do something entirely different... I heard that's what modders do.

  7. #7
    Colony Founder n2n1's Avatar
    Join Date
    Oct 2015
    Location
    MotherRussia
    Posts
    1,443
    Rep Power
    1
    Quote Originally Posted by StompyNZ View Post
    Code:
    //AIWanderingHordeSpawner
    this.KZ.ResetPartyLevel(50);
    
    ...
    
    // AIDirectorGameStagePartySpawner
    public void ResetPartyLevel(int mod = 0)
    
    ...
    
    if (mod != 0)
    {
      num %= mod;
    }
    - - - Updated - - -

    Try a patchscript to edit that number in the AIWanderingHordeSpawner constructor

    Set it to 0 to disable the wrap
    He just looked into the code...as if it is .xml...That's cool!

    Thanks !
    Last edited by n2n1; 02-11-2018 at 10:43 AM.

  8. #8
    Reconstructionist sinda's Avatar
    Join Date
    Dec 2015
    Location
    arcadia
    Posts
    581
    Rep Power
    1
    Quote Originally Posted by Gazz View Post
    We did consider making it scale strictly with GS but when player progression slows down you'd get the exact same horde over and over. Meh.
    this is my concern with GS in sleeper variety currently. there comes a point where you just sigh because ferals are now the normal, and you're more surprised when you get a mundane zombie to spawn.

    would prefer to NEVER be sure what i'm getting in a building crawl.

  9. #9
    Tracker
    Join Date
    Jul 2017
    Posts
    221
    Rep Power
    1
    To keep up the variety, you can always add more variety to the mix. Add more late game zombies, with a variety of abilities, to keep things fresh.

    Barring that, you can change the probabilities in the sleeper hordes so that ferals don't eventually overtake normal zombies in probability. At current, the odds of the higher level zombies showing up starts low once they are added to the mix(around 20% of the chance of a normal) and eventually become about twice as likely. This can be fiddled with via the spreadsheet of doom.

  10. #10
    Colony Founder StompyNZ's Avatar
    Join Date
    Apr 2015
    Posts
    3,835
    Rep Power
    1
    I found that for sleepers you can have FAR bigger groups at each level. Not so good for horde nights where you want to minimize the variety for fps. But with sleepers, it really doesnt matter if you have 50 different zombies in one group and use that group for 50-100 gamestage range of spawns, and just adjust the quantity as it goes up.

  11. #11
    Tracker
    Join Date
    Jul 2017
    Posts
    221
    Rep Power
    1
    Good point. It certainly makes a lot of sense to just have a wide selection for sleepers if you are going to try to write out the GS stages by hand when adding new zombies. For to not have endless sadness, headaches and misery. :P But one doesn't really need to once they have worked out the kinks of Gazz's Grand Gamestage Spreadsheet Of Doom. :P

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •