docs: document SS13 feature gaps and development priorities
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
parent
4d7d777e86
commit
fadd159de6
|
|
@ -25,6 +25,9 @@ with [Bevy](https://bevy.org) in Rust.
|
|||
| `crates/game_server` | Authoritative simulation, Rune scripting, persistence, `game-server` binary |
|
||||
| `crates/game_client` | Rendering, UI and input (`game` binary); embeds the server for singleplayer/host |
|
||||
|
||||
See [SS13 feature gaps](docs/ss13-feature-gaps.md) for an inventory of major
|
||||
systems and smaller features that are not yet implemented or are only partial.
|
||||
|
||||
The client never changes game state directly. It sends requests (`Login`, `SetMovement`,
|
||||
`Interact`, `Craft`, …) and the server replicates the resulting state back. In
|
||||
singleplayer the same server systems run inside the client process, so singleplayer and
|
||||
|
|
|
|||
|
|
@ -0,0 +1,142 @@
|
|||
# SS13 Feature Gaps
|
||||
|
||||
This document is an inventory of major systems and smaller features that are
|
||||
not present, or are only represented in a basic form, in Station. It is based
|
||||
on the current source code and shipped content, not a promise or schedule for
|
||||
implementation. Space Station 13 differs substantially between codebases and
|
||||
servers, so this is a practical comparison with common SS13 gameplay rather
|
||||
than an exhaustive specification.
|
||||
|
||||
Station currently provides persistent worlds rather than rounds; free
|
||||
movement; inventory and item use; crafting, construction and gathering; skills;
|
||||
simple hunger and health; basic machines; chat; multiplayer; admin controls;
|
||||
and world/character persistence. Those systems provide a foundation, but do
|
||||
not yet form the crew-driven, round-based station simulation typical of SS13.
|
||||
|
||||
## Major Systems
|
||||
|
||||
These are large gameplay pillars. Many depend on several other systems and
|
||||
would need coordinated data, server simulation, UI, networking and content.
|
||||
|
||||
- [ ] **Round lifecycle and lobby:** Lobby, ready-up, round start and end,
|
||||
round timers, end-of-round summary, and a clean reset or new-round flow.
|
||||
- Not needed, as I want to go for long running servers instead of round based
|
||||
- [ ] **Crew roles and departments:** Job selection or assignment, department
|
||||
rosters, role-specific equipment and responsibilities, access levels, and
|
||||
command structure. Current skills gate a few recipes; they are not jobs.
|
||||
- [ ] **Antagonists, objectives and events:** Hidden roles, role objectives,
|
||||
round-specific threats, dynamic events, and systems for declaring or resolving
|
||||
round outcomes.
|
||||
- Not needed for now
|
||||
- [ ] **Combat and security:** Character-versus-character combat, weapons,
|
||||
projectiles, armor, restraints, arrest and evidence workflows, and security
|
||||
tools. Current damage is limited to basic survival/script effects rather than
|
||||
a combat model.
|
||||
- [ ] **Atmospherics and environmental simulation:** Gas mixtures, pressure,
|
||||
oxygen and breathing, temperature, fire, vent/scrubber networks, and
|
||||
environmental hazards.
|
||||
- [ ] **Power and electrical engineering:** Power generation and distribution,
|
||||
cables, breakers, consumers, power outages, and electrical hazards.
|
||||
- [ ] **Medical simulation:** Damage types and body zones, injuries, surgery,
|
||||
diseases, status effects, diagnosis, medical equipment, and treatment
|
||||
workflows. Current health/nutrition and healing items are intentionally
|
||||
simple.
|
||||
- [ ] **Chemistry and reagents:** Reagent containers, mixtures, reactions,
|
||||
chemical effects, toxins, and chemistry equipment. Current crafting consumes
|
||||
discrete item ingredients rather than simulating reagents.
|
||||
- [ ] **Research and technology progression:** Research points, unlock trees,
|
||||
department research workflows, and fabrication tied to discovered technology.
|
||||
Current crafting uses direct recipes and skill requirements.
|
||||
- [ ] **Station infrastructure and machinery:** Interconnected machinery and
|
||||
control systems, including powered/access-controlled airlocks, alarms,
|
||||
cameras, consoles, telecoms, and other department-specific equipment. Current
|
||||
doors are manually toggled and machines are generic timed processors.
|
||||
- [ ] **Communications and evacuation:** Radio channels, headsets, intercoms,
|
||||
station-wide alerts, emergency communications, shuttle request/control,
|
||||
evacuation, and escape outcomes. Current player chat is global.
|
||||
- Communication is needed, evacuation right now isn't
|
||||
- [ ] **Character roles and species simulation:** Species traits, body structure,
|
||||
species-specific needs, equipment restrictions, and distinctive capabilities.
|
||||
- [ ] **NPCs and autonomous station systems:** NPC behavior, station AI, robots
|
||||
or cyborgs, pets, and other non-player entities with useful behavior.
|
||||
- [ ] **Station-scale content and workflows:** Full department layouts,
|
||||
interactive props, specialized tools, jobs' equipment, and multi-step
|
||||
objectives that give the above systems a playable station context. Current
|
||||
map and item/building/recipe data are a small prototype set.
|
||||
|
||||
## Minor Systems And Features
|
||||
|
||||
These are smaller in scope than the pillars above, though some will rely on a
|
||||
major system before they become useful.
|
||||
|
||||
- [ ] **Roleplay interactions:** Emotes, visible speech bubbles, character
|
||||
examine/look descriptions, and contextual examine text for items and
|
||||
buildings.
|
||||
- [ ] **Equipment and clothing:** Wearable slots, uniforms, storage containers,
|
||||
backpacks, hand-held equipment, and item-specific interaction rules. Current
|
||||
inventory is a simple slot list without equipment slots.
|
||||
- [ ] **Richer status and damage feedback:** Temporary status effects,
|
||||
damage indicators, incapacitation states, and clearer causes of health loss.
|
||||
- [ ] **Access credentials:** ID cards, access levels, door authorization,
|
||||
access-denied feedback, and role-based access management.
|
||||
- [ ] **World interaction details:** Pulling and pushing objects, dragging
|
||||
incapacitated characters, furniture placement, storage access, and more
|
||||
contextual interactions.
|
||||
- [ ] **Construction and repair details:** Building damage and repair, tools
|
||||
with distinct uses, dismantling steps, and clearer construction feedback.
|
||||
- [ ] **Item affordances:** Item examination, splitting and merging stacks,
|
||||
container contents, transfer between containers, and item-specific
|
||||
interactions.
|
||||
- [ ] **Personal communication:** Local speech, radio device/channel selection,
|
||||
department channels, and communication feedback. The current chat is global.
|
||||
- [ ] **Character appearance and identity:** Configurable appearance, pronouns,
|
||||
character descriptions, and richer identity/role presentation.
|
||||
- [ ] **Sensory feedback:** Sound effects, ambient station audio, visual status
|
||||
cues, and alerts for nearby events.
|
||||
- [ ] **Player onboarding:** In-game controls and interaction hints, role/job
|
||||
guidance, and contextual help for station equipment.
|
||||
- [ ] **Administration and moderation tools:** In-game observation, teleport or
|
||||
intervention tools, logs and audit trails, and richer player reports. The
|
||||
server already has basic admin, ban, kick, whitelist, and configuration
|
||||
controls.
|
||||
- [ ] **Server discovery and reconnect experience:** Server browser, connection
|
||||
recovery, and clearer handling of disconnects. Current play supports direct
|
||||
address joining.
|
||||
- Not needed for now
|
||||
- [ ] **Content breadth and polish:** More items, recipes, machines, maps,
|
||||
station props, sprite variety, animations, sound, and UI for the gameplay
|
||||
systems added over time.
|
||||
|
||||
## Existing Systems That Are Only Partial
|
||||
|
||||
- **Survival:** Hunger and health exist, but there is no breathing, fatigue,
|
||||
temperature, toxin, or broad status-effect simulation.
|
||||
- **Medicine:** Healing exists, but there is no diagnosis, body-part treatment,
|
||||
surgery, disease, or reagent-based care.
|
||||
- **Engineering:** Construction and deconstruction exist, but there is no power,
|
||||
atmospherics, object damage/repair loop, or linked engineering machinery.
|
||||
- **Machines:** Input/output slots and timed recipes exist, but machines are not
|
||||
connected to power, research, access control, or station-wide networks.
|
||||
- **Social play:** Multiplayer and global chat exist, but there are no local
|
||||
speech, radios, role channels, or round objectives to structure crew play.
|
||||
- **Scripting and modding:** Data files and Rune hooks support content
|
||||
customization, but the current hooks do not provide a broad event, AI, or
|
||||
multi-entity simulation framework.
|
||||
|
||||
## Suggested Development Order
|
||||
|
||||
This is a dependency-oriented sequence, not a commitment:
|
||||
|
||||
1. Decide whether Station remains a persistent-world sandbox or moves toward a
|
||||
round-based loop; that choice affects persistence, roles, objectives and
|
||||
server lifecycle.
|
||||
- I want to stay persistent world sandbox style. The community should be able to build custom maps (scenarios) that can have goals
|
||||
2. Establish character state and interaction foundations: damage/status model,
|
||||
equipment, access, and robust item/container interactions.
|
||||
3. Add station infrastructure primitives such as power, atmospherics and
|
||||
machinery networks before building complex department equipment on top.
|
||||
4. Build role workflows and communications, then round objectives, antagonists,
|
||||
emergencies and evacuation around those foundations.
|
||||
5. Expand departments, content, audiovisual feedback and administration tools
|
||||
alongside playtesting and balancing.
|
||||
- There should also be tools to generate and modify content, so that communities can make custom content in a simple way
|
||||
Loading…
Reference in New Issue