Table of Contents

Namespace S1API.Entities

Namespaces

S1API.Entities.Actions
S1API.Entities.Appearances
S1API.Entities.Behaviour
S1API.Entities.Customer
S1API.Entities.Dealer
S1API.Entities.Dialogue
S1API.Entities.Employees
S1API.Entities.Equippables
S1API.Entities.Impostors
S1API.Entities.Interfaces
S1API.Entities.NPCs
S1API.Entities.Relation
S1API.Entities.Schedule

Classes

NPC

Abstract base class for creating custom NPCs with modular architecture supporting both physical and non-physical NPCs. Physical NPCs are visible in the game world with 3D models, movement, and direct interaction. Non-physical NPCs are invisible contacts primarily used for messaging and phone interactions.

NPCAppearance

Modder-facing appearance customization system for NPCs. Provides builders to configure visual appearance including physical features, clothing, and accessories. Appearance configuration is done in OnCreated().

NPCCustomer

Modder-facing customer wrapper for an NPC. Provides helpers to configure and interact with customer behavior, including deal offers, contracts, and customer events. Customer configuration must be done in ConfigurePrefab(NPCPrefabBuilder).

NPCDealer

Modder-facing dealer wrapper for an NPC. Provides helpers to configure and interact with dealer behavior, including customer assignment, cash management, and contract handling. Dealer configuration must be done in ConfigurePrefab(NPCPrefabBuilder).

NPCDialogue

Modder-facing dialogue wrapper for an NPC. Provides helpers to create interactive conversations with branching dialogue trees, choice-based interactions, and dynamic responses. Use BuildAndRegisterContainer(string, Action<DialogueContainerBuilder>) to define custom conversations.

NPCInventory

Modder-facing inventory wrapper for an S1API.Entities.NPCInventory.NPC. Provides helpers to query capacity and insert items safely.

NPCMovement

Modder-facing movement wrapper for an S1API.Entities.NPCMovement.NPC. Provides navigation, warping, facing, and reachability helpers.

NPCPrefabBuilder

Builder for composing NPC prefab configuration before network spawn. Use to declare networked components, spawn position, customer behavior, relationships, schedules, and appearance defaults.

NPCPrefabBuilder.AvatarDefaultsBuilder

Wrapper for authoring appearance defaults without exposing game types to modders.

NPCRelationship

Modder-facing wrapper for an NPC's relationship data. Provides safe access to relationship values, unlock state, connections, and convenience helpers which bridge to the base game's NPCRelationData. Relationship configuration must be done in ConfigurePrefab(NPCPrefabBuilder).

NPCSchedule

Modder-facing scheduling wrapper for an NPC. Exposes the underlying schedule manager to enable, disable, and manage scheduled actions and curfew modes. Schedule configuration must be done in ConfigurePrefab(NPCPrefabBuilder).

Player

Represents a player within the game.

RandomInventoryItemsBuilder

Builder for configuring startup items and random cash for NPCs. Public surface uses strings/primitives only. All configurations are optional.

Enums

NPCRelationship.UnlockType

Unlock types mirrored from the base game.