Glowing Zombie bites Piper at Red Rocket Beta is Underway Zombie Walkers 3.0 is officially in development as of January 2020. Head o...


Glowing Zombie bites Piper at Red Rocket

Beta is Underway

Zombie Walkers 3.0 is officially in development as of January 2020. Head on over to the Nexus site and look for downloads under Optional Files if you are interested. Note that this is not compatible with the 2.6.3 (or older versions) and should be used on a brand new game. Xbox and PS4 releases will come later as 3.0 matures.

Zombie Behavior

One  area I think I went overboard with the 2.x version is in zombie behavior. The script controlling this is pretty long and complex and handles zombies wandering in groups, heading toward distant sounds, and even searching out human corpses to feed on. All of this fits the theme of course but causes a lot of strain on the engine when dozens or even hundreds of zombies are spawned.

The default sandbox behavior isn't actually too bad and has then slowly meander around there spawn area (in a smaller radius than I'd like). Cranking up the "energy" from 50 to 100 causes them to stand still even less and disabling idle animations (like standing spasms) keeps them moving too.

The other thing I am changing regarding scripts is i'm no longer dynamically attaching a script as a magic effect and instead adding the script directly to the actor via the editor. The script extends Actor and importantly does NOT store a reference to the actor it operates on (since it itself is the Actor). This was done to hopefully avoid zombies from being marked persistent and therefore not unloading as players leave the area. In addition to that, as zombies unload they are marked for deletion if killed which cleans them up faster and avoids another separate background script that periodically checked for dead zombies needing to run.

I am looking at possible creative ways to re-introduce some of the previous behavior but only if it can be done in such a way as to not impact performance (eg. replacing static dead actors with a scene where zombies are feasting on a corpse at spawn time).

Radiation Zombies

The new version isn't going to be simply a re-write with no new features. One thing I did was apply the same overhaul for Feral Ghouls to Glowing Ones. In addition, any time a legendary Feral Ghoul would spawn, a new Zombie would spawn with Feral Ghoul clothing and Glowing One skin! This new glowing zombie irradiates nearby players but otherwise acts like normal zombies (eg. slow walking, infection, etc.)

New Bite Attack

The Feral Bite mod by lifebird64 was incorporated into Zombie Walkers with permission. I used the standing normal bite version and then updated it a bit to make it configurable (on/off), only happen when target is not at full health and then only 50% of the time.

This makes it so it isn't the only attack used as in that original mod, and simulates a zombie needing to weaken/stagger an opponent before the bite. The attack will cripple the targets arm (simulating a shoulder injury) and can cause infection (if enabled).

More To Come

I've already ported spawn replacements and have plans to move on to a more efficient and managed extra spawning framework (to re-introduce not only extra spawns if desired but also settlement attacks and possibly sleep interruption).

Eventually I plan to again take on NPC resurrection and may even make two versions of it so I can finally play around with F4SE and creating human-looking zombies instead of reverting to Ghouls.

Stay tuned and please provide feedback if you participate in the beta!

A nuclear winter with zombies and all I have is a switchblade? I'm Back! It has been a long time since I played Fallout 4. I sort...

A nuclear winter with zombies and all I have is a switchblade?

I'm Back!

It has been a long time since I played Fallout 4. I sort of randomly checked my Zombie Walkers mod on nexus mods and saw several posts where people were having trouble. I glanced through many pages of them and saw things mostly related to stability/crashes and bloated save game files.

I take a sense of ownership in what I do and felt bad about this, even though I'd been away for so long. The comments didn't inspire me to take up modding again (yet) but did inspire me to play Fallout 4 again after the long absence.

Winter and Zombies

It is the winter season here in Buffalo, NY and I've always liked snow. I thought it'd be fun to mod my freshly re-installed Fallout 4 with a winter theme to play my mod in. The screenshot above is from that setup and I wanted to call out a few of the mods I used in case anyone else wants to check them out.


Maybe i'll post a full current mod list later as it includes other game changes outside of visuals also.

My Experience

I used replacements for everything 100% except humans. Added extra spawns at 25%. Enabled NPC resurrection and set it at 60 in-game minutes and allowed zombies to infect with basic infection. Settlement attacks and Sleep Interruption were also enabled.

Overall I didn't have many issues after playing a save close to 10 hours so far. The biggest thing seems to be performance related in downtown Boston where I experience a single hard crash and some delays with spawn replacements where I could hear Super Mutants talking and firing weapons before disappearing. Also, sometimes there was delay between a head-shot and the zombie dying in that area.

Some features I didn't feel compelled to turn on (alternate death) and others I never saw executed in game and didn't really miss them (zombies eating corpses). Extra spawns seem to work well, though I had a thought that it'd be nice if this were to increase on it's own over time during play. I experienced both a settlement attack on Red Rocket and sleep interruption a few times while travelling (scary with darker nights too). 

What I Learned

I remember why I enjoyed playing Fallout 4 after being away from it for so long. It really takes you away into your own sandbox world. There are some cool new mods out there that help with this immersion also.

Another thing, is that my wheels are spinning and I'm actually considering ways to improve this mod. Not promising this is going to happen, but I think this mod could benefit greatly to some modularity. Many of the nexus mods I downloaded had installers popup when using Vortex that let you pick and choose what you wanted to install. I think this would help greatly for people who only like certain aspects (eg. running with the feral ghoul overhaul only).

Some parts of my mod have been implemented since I worked on this. Several versions of death alternative mods are out there now, both standalone and as part of popular overhauls (eg. Horizon). Many point out that several spawning mods exist out there also. All of this makes me think that I can strip out some of the feature bloat and those that want those extras will still be able to include them elsewhere.

What Now?

For now I'm in the exploratory and planning phase. I'm scoping out the potential work involved with revisiting this mod and trying to decide if I want to take the plunge. Free time is not easy to come by as a father of two, but I did enjoy working on this and feel a certain responsibility to maintain it.

Fallout 76 beta I am now the lucky recipient of a Fallout 76 pre-order and beta key. The download is literally in progress right now and...

Fallout 76 beta
I am now the lucky recipient of a Fallout 76 pre-order and beta key. The download is literally in progress right now and I'm excited to check it out. Thanks to my loving wife for the nice birthday gift!

Zombie Walkers for Fallout 76?


If Bethesda gets to the point of allowing mods for this game, I will most likely work on a port of Zombie Walkers for sure. So far they are reporting that they are committed to making it happen in an official capacity but it may take some time.

Clearly the "Scorched" are zombies, right?
I can already see the "Scorched" are this Fallout's version of a ghoul/zombie creature. Only this time they are intelligent and able to wield guns? Early signs point to them being re-branded zombies with removal of running and weapon wielding. Hopefully other features from the Fallout 4 Zombie Walkers mod will be possible if things like scripting are allowed.

Doesn't playing Fallout zombie survival with your friends sound fun? I guess we'll have to wait to see how far Bethesda allows modders to go and if they follow through on mod support to find out.

Update: 11/3/2018

It appears Feral Ghouls are still in the game in addition to Scorched. Bigger variety of zombies? I only had a chance to play for 40 mins or so before the beta shutdown at 9pm. Hoping to play more. Should be interesting to see what kind of atmosphere the lack of human NPCs creates.

Zombie Settings using the Mod Configuration Menu Many have asked for it and I've had it on my list for awhile. I'm very happy to...

Zombie Settings using the Mod Configuration Menu
Many have asked for it and I've had it on my list for awhile. I'm very happy to announce Mod Configuration Menu (MCM) support for Zombie Walkers as of version 2.6.

What is is?

For those that may not be aware, the Mod Configuration Menu is a a mod itself that provides a configuration framework for other mods that includes a "MOD CONFIG" option in the main menu of the game. Once that option is selected, a view similar to the screenshot above appears with left navigation options for each installed mod with MCM support. 

Requirements

You must download and install the MCM mod and all of its requirements including the Fallout 4 Script Extender (F4SE). F4SE allows mods access to functions not normally available and exposed by the developers (for whatever reason) and is used by MCM internally.

As a result of the F4SE requirement, MCM is only available on PC.

Mod Integration

Even though MCM is only available on PC, I was able to allow Zombie Walkers to be configured by it without making my mod PC only. This is thanks entirely to how easy and loosely coupled MCM is to integrate with.

Basically, you need to create a JSON file in a specific directory. Inside this file you add configuration pages and fields that essentially set the same Global Variables your mod may already be setting via holotape. There are more advanced options that I didn't use like allowing for mod specific ini files and callback functions to be called as options are changed by MCM.

Here's a snippet of the JSON that shows the "Max Effective Level" settings:

{
"text": "Max Effective Level",
"type": "slider",
"help": "-1 is Unlimited. Doesn't set actual level but caps calculated stats like health, damage, etc.",
"valueOptions": {
"min": -1,
"max": 50,
"step": 1,
"sourceType": "GlobalValue",
"sourceForm": "walkers.esp|9884"
}
}

The bit in bold above is the key in that it implies the IsPluginInstalled and GetFormFromFile functions (or similar) are being used which is how you can access forms from other mods without actually requiring or directly linking to them. In the case of this example, the form type is also specified so that MCM knows to cast to a GlobalValue and set it accordingly.

Manual Installation

The Nexus version of Zombie Walkers already contains the necessary JSON files as part of the zip and will extract them to the proper location. I recommend this option as it is the easiest.

If you install Zombie Walkers via the in game mods menu (bethesda.net), then you won't get MCM support for free. This is because I'm not sure how or even if you can include the files. Follow the manual instruction steps below:

1. Manually Download the latest zip from the Zombie Walkers Nexus Site
2. Extract the zip manually on your PC
3. Move the files under the MCM folder to your Fallout 4 Data directory (eg. "C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data")

Supporting Config Changes

I did run across a couple of nuances between my holotape configuration pattern and MCM. MCM exposes the raw value of global variables on things like sliders where my holotape menus were able to map values to text labels. Many Zombie Walkers global variables have 0 - 100 style settings and a -1 value with special meaning.

For example, the screenshot at the top of this blog shows Max Effective Level of -1 with a comment at the bottom when you hover stating "-1 is Unlimited...". On the holotape, I was able to clearly label "Unlimited" as the text label for -1 and show numbers for the other options.

Max Effective Level configuration via Zombie Walkers holotape.
This may seem like bad, but it is likely due to how I am overloading a single global variable with what could be two separate configurations: and unlimited checkbox (or switcher as MCM calls it) and a max effective level integer which is only used if unlimited is false (or off). MCM has the ability to conditionally hide options so it should be possible to clean this up in the future.

Another interesting tidbit is that MCM makes it very easy to allow a wide range of values, so I've allowed % style configurations to use 0-100 while the holotape may only have 0, 25, 50, 75, 100 options. As a result, you can see options actually fall off the holotape if a value is selected in MCM that is not accounted for on the holotape. I'm not going to worry about this one though as I believe the use of MCM will make the holotape obsolete anyway and updating the holotape to include more options is tedious and time consuming (which is why the options are already limited).

What's next?

In the short term I plan to support and test the new configuration options for human replacements (type and faction overrides) that were introduced alongside the MCM update. I've actually began playing my mod again and every time I do I seem to walk away with some minor tweaks I want to make to get the experience like I want it (hardcore zombie apocalypse survival). I may blog a little about my play-through and what other mods I'm using to supplement the experience, we'll see.

Zombies feast on a settler in the middle of the road. What do zombies do with all the people they kill? In previous versions of Zombie W...

Zombies feast on a settler in the middle of the road.
What do zombies do with all the people they kill? In previous versions of Zombie Walkers they just walked on by and wandered away, but no more! Now you have the opportunity to stumble upon scenes like above before fighting for your life to avoid the same fate.

Behavior Update

The Fallout 4 engine uses a combination of AI packages and linked references to mostly govern actor behavior outside of combat. I already created a custom package for zombies for their horde movement behavior based on the default package master that I have now stripped down and simplified to ensure zombies only perform the actions I want them to.

Package used by zombies to Sit, Follow, or Patrol based on the linked references they may have assigned.
Packages are made up of Procedures which are what actually make an actor move or otherwise interact with the game world. Most procedures are configurable and take various properties in as input to tell it what to interact with or where to move the actor. The three procedures above all operate on a linked reference as a target. 

Note that procedures can also have conditions assigned to it which can cause a procedure to be skipped. In the screenshot above, the Sit procedure will only execute if the linked reference is not disabled and the actor has the FeralGhoulRace. I added the race condition to prevent Ghoul zombies (from NPC Resurrection) from trying to use furniture they have no animation for which would otherwise cause them to just stand around.

Procedures Used

Sit procedure - This procedure causes an actor to use a particular piece of furniture. Maybe it should be called "Use Furniture" instead? This is used to link zombies to the special feral ghoul eating furniture next to a dead body.
Follow procedure -  This procedure causes an actor to follow another actor around. This is used to group zombies together. Zombies follow each other until ones becomes the defunct leader and wanders.
Patrol procedure -  This procedure causes an actor to move to a marker of some kind and markers can be chained together forming a path (or moved like this mod does to implement wandering zombies - see Horde Behavior).

Setting Linked References

SandboxFeralGhoulSquatEating furniture
There is a script attached to all zombies that initializes a zombie (once) when they are spawned, listens to certain events (like a zombie dying or entering combat), and updates their behavior. The behavior update portion of the script essentially sets the linked reference for that zombie so that the appropriate procedure described above triggers. 

In the case of zombie feeding, the script searches for nearby corpses and if found actually creates the furniture object. The furniture is then linked to the zombie with the keyword LinkAmbushFurniture since that is the same keyword used by existing ferals in the game. 

The end of the script executes EvaluatePackage to make the zombie re-evaluate the package tree described above. This causes the Sit procedure to execute which makes the zombie walk to the furniture and use it. Furniture has animations linked to it that are specific to the type of actor the furniture was made for. The SandboxFeralGhoulSquatEating furniture is what is used by zombies and makes the zombies squat down over the corpse and use their hands to grab from the ground in front of them and then move to their mouths as if eating.

What About the Corpse?

There are two events you can register for to detect when an actor uses furniture (OnSit) and stops using furniture (OnGetUp). When OnSit is triggered, the corpse being "eaten" by the zombie has a random limb chosen and Dismembered. Once all limbs are dismembered the corpse is marked as eaten so other zombies now ignore it.

A cleanup script runs and disables the zombie furniture after about 1 hr in game. When this happens the OnGetUp event is triggered as the zombie exits that no longer valid furniture. This allows the script to update the zombie behavior again which could cause the zombie to move on to the next body part or wander away if nothing is left to consume.

Limitations and Future

The corpse eating is limited to Feral Ghoul zombies right now. Zombies spawned by NPC Resurrection or replacement of humans are actually Ghouls and do not have the animations required to use the furniture. I am exploring alternatives for them possibly including the game's built in Cannibal perk. Early experiments have failed but I will pursue it.

Some corpses, like the dead raider across Sanctuary bridge, refuse to be eaten for some reason and I have yet to figure out why. If "Already Dead" is enabled under Spawn Settings -> Replacements -> General Settings, then that raider is marked as zombie food until it resurrects as a zombie itself. The zombies nearby detect this and create the furniture marker but don't use it.

The behavior updates described above do not apply to all zombies. Some zombies have pre-defined behavior like ambushes (Crawling out from under cars) that I didn't want to break so I exclude them from being changed. Also, currently the behavior updates do not apply to interior locations. This was mostly to avoid zombies trying to wander to inaccessible areas and getting stuck, but I may revisit this to at least allow them to search for food.

The many faces of a life after death. Player Death Alternative allows you to keep playing in the event you finally succumb to death. The...

The many faces of a life after death.
Player Death Alternative allows you to keep playing in the event you finally succumb to death. The mode respawns you at a settlement and creates a zombie with all your gear in the spot where you died. Now this mode has received some love to make it better (and more stable).

Player Appearance

One of the things I really wanted to do was have the player take on the appearance of the settler they were replacing (if there was one to replace). Unfortunately the Papyrus functions to get HeadParts are all not available without F4SE (Fallout 4 Script Extender, which won't work on XB1). What I've decided to do instead is at least try to randomize the player appearance as much as I could. This also works when the player spawns in a random location due to having no settlers left to replace.

While there are no function to get HeadParts there is a function to change them. Gotta love the consistency from Bethesda on that one, huh? The ChangeHeadPart function in particular allows you to change parts of the head by passing in a HeadPart object representing the part you want to change. HeadParts are available for eyes (color), hair, and beard (for males) so I've included all of them. When you re-spawn a random eye/hair/beard is assigned to your character.

Unfortunately this does not include hair/skin color or other facial parts like nose/ears/eyebrows/etc. I have yet to figure out how to change these parts via scripting. It'd be nice to at least choose a random preset and then randomize the facial parts mentioned earlier, but I'm not sure if that is possible via scripting either.

Random Equipment

Another change to Player Death Alternative is when the player is re-spawned they now are assigned the following:
1) random blunt melee weapon (eg. board, cane, pool cue)
2) random under-armor clothing (eg. fatigues, road leathers, tattered rags)
3) stimpak, sweet roll, dirty water, and a single lockpick
This helps further randomize the character and in the case of the aid items add a bit of survivability. In the future I may consider adding a gun with limited rounds and possibly armor based on level.

Spawn Location

New spawn location at Covenant that doesn't automatically aggro the entire community.
Re-spawns with Player Death Alternative enabled will first check for existing non-unique settlers to replace and spawn you in there place. If not settlers are available, then a random settlement is chosen regardless of whether the player has ever visited it before.

The exact location of that spawn point used to be right on top of the workshop. It is now the linked ref of the map marker associated with the location of the workshop. I believe this to be the fast travel marker which is meant as a spawn point and tends to be outside the center. It gives you the options to assess the situation and decide to go in or turn around and head a different direction before getting knee deep in combat.

Bug Fixes

Recent updates also included bug fixes related to Player Death Alternative. The biggest being a script error related to an off-by-one error randomly accessing an array. The script error was infrequent as most random values fell within the range, but when it occurred it caused the re-spawn to never complete and black screen to get stuck. I've ran into this and know others have as well and I'm hoping these help resolve the issue and make the re-spawn work more reliably. 

Future Thoughts

Outside of continuing to improve the random appearance and equipment assigned there are other ideas I'm flirting with. One involves creating a random quest for the newly spawned player to give them a purpose. This idea was actually spurred when I watched YouTube video where the player created a fake mission for himself with a custom map marker: "The apocalypse just started and I need to find my daughter at the library."