The NPCMod is a community modding project. While initially started by Sphereii and Xyth back in A16, the team continues to grow in size every alpha. The goal of this project is to provide “Core” functionality and templates that can be reused by modders to add high functioning characters to their mods. There are 2 core modlets, both are required for this mod to work. The 0-SCore modlet contains C# code and the 0-XNPCCore contains the xml and templates.
By design this mod encourages expansion through expansion packs. Character packs focused on a entity type, for example, a 1-soldier pack or a 1-spider pack add new characters to the 0-XNPCCore. A 2-soldierfactions pack might add different factions to the 1-soldier pack, reusing those same soldier models. The sequence 0-, 1-, -2 etc. indicates there is a dependency on another modlet with a lower number prefix. Other character modders have committed to contributing additional characters that leverage this mod pack like they do to the POI (Buildings) collection called CompoPack. If you would like to join this community team, or have some features or characters to contribute, they would love to hear from you!
Current Stable Version: 20.6.01.03
Current Experimental Version: Not Available
- This mod includes a Unity Tutorial Project (available separately) containing the mods controller and templates and scripts so making new characters is easy.
- NPC characters support all vanilla character features. These include Humanoid rigging, root motion animation, collision with vehicles, rag-dolling, 100’s of animated reactions (including hit locations, limping, etc.), limb decapitation and gore. These can also be retextured in xml to offer even more variety. There are some exceptions, especially on animals, which typically do not have ragdolls.
- NPCs use a new Artificial Intelligence system called UAI. Unlike zombie AI (EAI), this system allows for advanced tasks and real time decision making based on considerations. Should the NPC attack, run, loot, follow, backup to optimized weapon range? All tasks and considerations.
- Work very well as sleepers in POIs, respecting all of the POI volume properties.
- Can be setup to attack on bloodmoons!
- Spawn with vanilla or custom weapons just by editing xml.
- Can be hired, becoming loyal companions, sharing your adventures and challenges.
- Hired NPCs can be ordered to follow and stay, with new features like looting and guarding coming soon.
- Animals can also be hired, though don’t accept Dukes. Try meat.
- NPCs have factions. Some like you, some don’t. Beware of bandits!
- Hostile NPCs have additional AI so they will hunt you down more than zombies can, be warned!
- No more losing your NPC. They will teleport to you if stuck, get too far away, or if configured, to your bedroll when you die.
- They will follow you on foot, keeping up with you, and if you get into a vehicle, they will hide and reappear once you exit the vehicle.
- They can heal themselves when its safe to do so, and there is a medic package for characters that can heal and mend others.
- Low maintenance, no need to feed or water these folks, but that is a feature that could be available later.
- Lifelike Idle animations while chatting and wandering were added to improve immersion. Many more will be added after initial release.
- When the player/leader crouches, so do the NPCs
- Scalable, modular architecture, so expanding character and new behaviors is much simpler.
- Customizable pathing per NPC will be available but requires implementation details not yet available. Stay tuned.
There are craftable player commands that will control your hired NPCs as a group. You can craft these commands by typing in NPC in your crafting menu.
There are currently three commands:
- Mode: This command is a toggle between various control modes:
- Hunting (default): In this mode your NPC swill automatically target anything that it sees as being hostile towards it or yourself. You have no control over their actions besides stay and follow.
- Full Control: In this mode the NPCs will not automatically target anything. It will behave as if all hostiles are threats and will only engage if you are hurt or if you start attacking one of the threats.
- Stop: This command is a toggle and when paired with Full Control will make your NPCs halt or resume attacking their targets. This becomes especially useful when you feel like you or your NPCs will not survive an encounter and you want them to simply follow you so you can avoid the encounter altogether. It is also useful when you wish to travel without engaging any targets.
- Help: This command is useful when you are in Full Control and want your NPCs to engage targets within 20 meters of you. If you are without ranged weapons, you want to be able to have your NPCs help you without having to either take damage or attack the hostile.
- What happened to the CreaturePacks and NPC mod?
- They have been merged, combined and obsoleted. Now that code can be natively loaded by the game, there was no reason to keep those two separated. This version is simpler to load, maintain, and has more features than either one did.
- Can I run this with EAC enable?
- NO, EAC must be turned off.
- Can I learn how to add my own characters?
- Sure, its never been easier to learn to make characters. lots of work went into simplifying the process, and scripts can do most of the work for you now. There are videos available to assist.
- I have great ideas for more features, where do i make suggestions?
- Forum thread works or on Guppy’s modding forum in the NPC-mod channel
- I found a bug! Where do i post that?
- Please provide the info requested in the bug form found below, and post it forum or on Guppy’s modding Discord under the npc-mod-bug reports
- Does this work on dedicated servers?
- It should, the current version tested well on dedi. All mods, cores and expansion packs MUST be loaded into BOTH the Dedi and all client Mods folders.
- Have a good question? Maybe you will see it listed here soon!
- Always use a fresh game if you update Score or NPCCore. Strange things can happen updating the cores on an existing game.
- The UI needs work, some overlapping text, Sirillion has volunteered to refresh it.
- Hired NPCs might Leroy Jenkins on aggressive animals, use the command interface to gain more control.
- Melee NPC detection of crawlers in the grass isn’t as good as ranged, but works.
- NPC ranged can sometimes not hit as well as other times. Might be debuffs accumulating.
- It’s a very new mod, expect bugs we didn’t find yet, and please report those.
- NPCMOD-SP-0034: Hired NPCs will despawn at times (ex: using vehicles)
- NPCMOD-SP-0037: Ranged Hostile NPCs stop being able to damage you when you are close and lower than them
- NPCMOD-SP-0039: Friendly NPCs spawned in “passive” sleeper volumes will not move if hired
- NPCMOD-SP-0044: Melee NPCs can properly hit crawlers when on the road but cannot always see them when in grass
- NPCMOD-SP-0048: NPCs can talk to the player while fighting, until they are hit by an enemy
- NPCMOD-SP-0049: Setting the respawn CVar to 0 still respawns NPCs next to their leader. Possibly change SCore so CVar value of 1 would respawn them. No CVar or value of 0 would not
- NPCMOD-SP-0050: NPC ranged can sometimes not hit as well as other times. Might be debuffs accumulating.
- NPCMOD-SP-0051: NPCs will use the trader voice set at times
- NPCMOD-SP-0052: NPCs in passive sleeper volumes turn to look at the player when they’re not active
- NPCMOD-DEDI-0006: NPCs can be hired by another player after you’ve hired them – fixed
- NPCMOD-DEDI-0008: A hired NPC does not know who to focus on when two players are around them. Focus should be on the leader – fixed
- NPCMOD-DEDI-0015: NPCs no longer have the walking anim, float when walking away from you and you chat with them: Only occurs when you press “E” quickly before they enter chat action.
- NPCMOD-DEDI-0016: Hired NPCs will path to another player then path back to the leader
- NPCMOD-DEDI-0021: When you hire a dynamic spawned NPC, their spawner source is supposed to be changed to static. It seems that’s failing
BUG REPORTING FORM
Summary: (a short description of the bug)
Game Version: (A20 bxxx)
Platform: (PC / Mac)
Video Settings: (Low / Medium / High / Ultra / Custom (Custom has many combinations, so just list the settings you think are relevant to the bug if any))
Game mode: (MP host / MP client / SP / Client on Dedi)
Did you start a new game? (Yes/No) Note: Do not submit a bug report until you retest your issue in a new game.
Did you validate your files? (Yes/No)
Are you using any other mods? (Yes/No) Note: Please retest without any mods loaded in a new game.
EAC off? Note: Needs to be Off.
Detailed steps to reproduce the bug:
Actual result: (description of what is occurring)
Expected result: (what you expect to occur)
Turn EAC Off!
Option 1: Download 0-XNPCCore.zip and SCore using the links below. If the download is a .zip or .7z file like the 0-XNPCCore.zip is, then unpack that compressed file and place the mod found inside into your Mods folder. SCore isnt compressed, so download that folder directly. Then load as many expansion packs as desired, unpacking the file if needed. If you are using a dedicated server, you also need to load both Core modlets into your dedi server Mods folder. So copies in both the client side Mods folder and also on the server Mods folder.
Option 2: Use the modlauncher to load the 2 cores.
Here is a helpful video to get you started:
1. You are allowed to use the NPCMod, its NPCCore, Unity Controller and expansion packs without any kind of direct modifications. All modifications and/or derivative works of NPCCore, controller and expansion packs are restricted to private use only unless those modifications are done in expansion mods that have a dependency on the unaltered Core mods being loaded. The mod and expansion packs contain purchased assets, including animations in the included character controller, so any derivative use of the models or controller is also contingent on purchasing those assets first.
2. You are encouraged to use the NPCMod as part of your own mod, public or private. However, you must provide credit to the community team by adding the “Powered by Score and NPCCore” logo to your mods opening screen and forum posts. (Resize as appropriate)
3. The team is not responsible for any damage, including damaged savegames, by using this mod.
Meet the Team
(Historic and Current, in no particular order)
- Sphereii: C# wizard and modding community teacher. Famous for his mod launcher and other code bits
- Xyth: Unity guy and modding community teacher. Not very famous.
- GuppyCur: Discord master and sometimes zombie maker. Hope to see him active in A20
- TSBX: TFP tester and previously a zombie creator
- DarkStarDragon: Active creator of NPCs, maker of great expansion packs
- Sirillion: The UI master himself, creator of screens and menus.
- FuriousRamsay: Lead tester and contributor of NPCCore xml code
- Khzmusik: C# code contributor and local math wizard
- Mumpfy: Graphics and character retexturing guru
- Khaine: Very helpful input on mod design
- Arramus: POI/sleeper tester and designer
- Mr. Devolver: Longtime tester and advocate
- Magejosh: Tester
- GanTheGrey: Zombie maker
Xyth is sure he’s missing several others who helped along the way, please let him know whos been missed!
Unity Tutorial Project
This is only needed if you want to teach yourself how to make your own characters: A20 Tutorial Project
Videos That Might Be Useful
Updated mod to 126.96.36.199. Requires very latest SCore, due to code dependencies. Added a new UAI AITask created by Khzmusik, Guard and Return. He will detail its function and limits:
As promised, here are details about the new guard functionality.
Guard and Return
This command shows as “Guard and return to where I am standing” in the NPC dialog (or “Guard and return here” for companion animals like the fox). When the command is issued, the NPC will initially go to where you were standing and will face the same direction you were facing (like the “Stay where I am standing” command).
But unlike the “Stay” commands, the NPC will leave its post to attack enemies. If it doesn’t die from the fight, the NPC will return to its guard position and resume watch.
Be forewarned, NPCs can have a tendency to jump off of high places when they are going after enemies. This might leave them unable to get back to their guard positions. So if you want things like guard towers, the existing “Stay” commands are probably a better choice. But the “guard and return” is a good choice for guard dogs, melee NPCs, or just NPCs that are in places they can easily return to.
For POI designers, you can issue that command to NPCs that spawn into sleeper volumes, using the SCore pathing cube. Just put “task=guard” as the text of the pathing cube.
This requires the very latest versions of both SCore (20.6.381.1359) and NPC Core (20.6.01.03).
The latest version of SCore also fixes an NPC-related bug with the vanilla drone code. A drone that was shot by a ranged NPC would cause an exception, and afterwards the NPC would become invulnerable. This has been reported by a few people who installed the GNS WarMod (from the Guns, Nerds, and Steel series), so if you’re one of those people, you definitely will want that version.
Core Mod Downloads (also available on the ModLauncher)
Download SCore: (0-SCore)
Download NPCCore: (0-XNPCCore) (generally, the most current version listed in the experimental will work as well if not better)
Experimental Release – New features, limited testing
(Not Available) Experimental NPCCore (Use Stable)
Download Most current 0-SCore version required (and then copy ONLY the 0-SCore subfolder into your Mods folder.)
Download 1-NPCXBirdPack by Xyth (Adds birds to the sky)
Download 1-NPCXSpiderPack by Xyth (Adds giant spiders to hostile biomes)
Download 1-NPCXMechPack by Xyth (An assortment of mechanical terrors)
Download 1-RaiderGurlzPack by DarkStarDragon (Adds 50’s style Gansta gals)
Download 1-RaiderzPack by DarkStarDragon (Adds several nasty bandit type foes)
Download 1-SoldierPack by DarkStarDragon (Basic military types)
Download 1-VaultDwellerzPack by DarkStarDragon (Vault 99 is waiting…)
Download 1-RobotzPack by DarkStarDragon (Mechs and more!)
Download 1-ZombiezPack by DarkStarDragon (DarkStar’s first zombies, wasn’t gonna happen until it did.)
Download 1-PitFighterzPack by DarkStarDragon (MMA at its finest)
Download 1-SurvivorzPack by DarkStarDragon (You are not alone!)
Download 1-OrczPackAlpha by DarkStarDragon (Have no fear, they only come to liberate you!)
Download 2-OrczPackBeta by DarkStarDragon (Must load the 1-OrczPackAlpha for this to work as expected!)
Download 1-KnightsNPeasantzPackAlpha by DarkStarDragon (Ni! Ni!)
Download 2-GoblinzPack by DarkStarDragon (Must also load 1-KnightsandPeasants AND 1-OrczAlphaPack)
Download 1-FantasticBeastz by DarkStarDragon (Oh My!)
Download 1-YeOldeUndeadPack by DarkStarDragon (Dem Bones!)
Download 2-RaiderGurlzPack-Friendly by Mr.Devolver (An expansion for an expansion pack! Adds friendly, hirable versions of DarkStar’s RaiderGurlz. You need to load the cores AND the RaiderGurlz expansion when you load this mod.)
Download 2-SummonFoxFriend by Arramus (You have a friend.)
Download 2-NPCXSpiderPack-ColonyExpansion by Arramus (An expansion for an expansion pack! Adds more spider variety. You need to load the cores AND the 1-NPCXSpiderPack expansion when you load this mod.)
Download 1-GansStandardZombies by GanTheGrey (Gan is back with some of his A19 favorite normal zombies.)
Download 1-GansSpecialZombies by GanTheGrey (Like zombie oddities? Look no further…)
Download 1-khzmusik_Zombies by Khzmusik (As if you have enough zombies…)
Download 1-khzmusik_Civilians by Khzmusik (Folks just like you, trying to survive.)
The forum topic of the mod is here.
Credits: Xyth, SphereII and community