Schedule I
Install

Details

Last Updated
First Uploaded
Downloads
232
Likes
0
Size
198KB
Dependency string
DooDesch-Personnel-2.1.1
Dependants

Categories

Personnel - Custom NPCs for Schedule I

🛟 Need help or found a bug? Get support at support.doodesch.de/personnel.

The NPC framework for Schedule I. NPC packs are plain folders - spawn points, daily schedules, customer/dealer economy, relationships, contacts - and Personnel spawns them as real S1API NPCs: networked, saved, walking their routines. Since 2.0, no mod code needed at all.

Version Game MelonLoader S1API

What it does

  • NPC mods without code. A pack's manifest.json can carry everything: spawn point and region, a daily schedule (walk routes, buildings, seats, vending machines, slot machines, dialogue spots, car trips), customer or dealer economy, inventory, relationships and contact presentation. Set "autoRegister": true and Personnel spawns the NPCs as real world NPCs on its own.
  • Real S1API NPCs, not props - prefab, networking, save/load and mugshot handled by S1API, the same machinery hand-coded NPC mods use.
  • Physical or contact-only. Most roster NPCs can stay phone contacts (near-zero cost); only the ones that should walk the world are physical. Big packs stay fast, also on Steam Deck.
  • Deep appearance: body, skin, hair, face, eyes, eyebrows, clothing, accessories and custom PNG layers (e.g. tattoos). Design packs live in-game with Personify.
  • Coordinates from the console. The game shows none, so personnel pos 07:30 hands you a finished walkTo action for the spot you are standing on, personnel spawn a full spawn block, and personnel route collects a whole day's route. Everything lands on your clipboard.
  • Stable, save-safe NPC ids with rename escape hatches (packId, saveId).

Requirements

  • Schedule I (IL2CPP) with MelonLoader 0.7.3+.
  • S1API (pulled in as a dependency).

Using it

Install Personnel plus any NPC pack or NPC mod that depends on it. Packs live in UserData/Personnel/Packs/<PackName>/; on startup the log lists each pack with its NPC ids and how many were auto-registered. In co-op, everyone needs the same packs installed - the same rule as for mods.

Want a template? Set LoadExamplePack to true (UserData/MelonPreferences.cfg under Personnel_01_Main) and restart - a small example pack is dropped into Packs/Examples, including an NPC with a spawn point and daily schedule to copy.

For pack authors and developers

Every manifest block (spawn, schedule, customer, dealer, inventory, relationships, contact) is documented on the Pack Format wiki page. Mods can still bring pack NPCs in with one tiny subclass:

public sealed class PaleNpc : Personnel.PersonnelNpc
{
    protected override string DefId => "examples_pale";
}
var npc = new PaleNpc();   // spawns a fully networked, saved S1API NPC from the pack definition

Full pack format, API reference and examples on GitHub.

Settings

  • LoadExamplePack (default false) - drop the bundled example pack on disk as a template.
  • EnableAutoRegister (default true) - kill switch for pack auto-registration.

Editable in UserData/MelonPreferences.cfg.

License

MIT. See the included LICENSE.md.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.