# Systems

## Systems

- [Systems Intro](https://ss3d.gitbook.io/systems/systems-intro.md): Technical documentation regarding the functional systems of Space Station 3D!
- [Game Controls](https://ss3d.gitbook.io/systems/systems-intro/game-controls.md)
- [User Interface](https://ss3d.gitbook.io/systems/systems-intro/user-interface.md)
- [Item Sprite Generation](https://ss3d.gitbook.io/systems/systems-intro/item-sprite-generation.md)
- [Asset Data](https://ss3d.gitbook.io/systems/asset-data.md): The asset management system.
- [How Asset Data works](https://ss3d.gitbook.io/systems/asset-data/how-asset-data-works.md)
- [Using Asset Data](https://ss3d.gitbook.io/systems/asset-data/using-asset-data.md)
- [Creating an Asset Database](https://ss3d.gitbook.io/systems/asset-data/creating-an-asset-database.md)
- [Known Issues](https://ss3d.gitbook.io/systems/asset-data/known-issues.md)
- [Traits](https://ss3d.gitbook.io/systems/traits.md): The traits system is a simple way of checking for basic properties in objects.
- [Containers & Items](https://ss3d.gitbook.io/systems/traits/containers-and-items.md): Using traits and filters with containers and items.
- [Roles](https://ss3d.gitbook.io/systems/traits/roles.md): Using traits for ID/role permissions
- [Gamemodes](https://ss3d.gitbook.io/systems/gamemodes.md): The gamemode system decides what objectives are given to player and which of them are antagonists.
- [Adding objectives](https://ss3d.gitbook.io/systems/gamemodes/adding-objectives.md): This page describes how to add a new objective that can then be added to a game mode.
- [Adding game modes](https://ss3d.gitbook.io/systems/gamemodes/adding-game-modes.md): This page describes how to add a new game mode with it's set of objectives
- [Roles](https://ss3d.gitbook.io/systems/roles.md): Roles and loadouts system. How to set them up.
- [Adding a new role](https://ss3d.gitbook.io/systems/roles/adding-a-new-role.md): This page describes how to add a new role into the game
- [Adding a new permission](https://ss3d.gitbook.io/systems/roles/adding-a-new-permission.md): This page describes how to add new permissions into the game
- [Interactions](https://ss3d.gitbook.io/systems/interactions.md)
- [Interactions Guide](https://ss3d.gitbook.io/systems/interactions/interactions-guide.md)
- [Containers](https://ss3d.gitbook.io/systems/containers.md): The container & inventory system. How to set them up and use in-game.
- [Using containers in game](https://ss3d.gitbook.io/systems/containers/using-containers-in-game.md): Once your container is all set up, you can use it in game, here's how you can do it with different container set up.
- [Setting up a container](https://ss3d.gitbook.io/systems/containers/setting-up-a-container.md): This page describe how one can set up a container on a game object in the Unity's editor.
- [Fields description](https://ss3d.gitbook.io/systems/containers/setting-up-a-container/fields-description.md): This page explain what the fields in the AttachedContainer script are doing, and eventually what you have to do to set them up correctly.
- [Networking a container](https://ss3d.gitbook.io/systems/containers/setting-up-a-container/networking-a-container.md)
- [Custom storage conditions](https://ss3d.gitbook.io/systems/containers/setting-up-a-container/custom-storage-conditions.md)
- [FAQ](https://ss3d.gitbook.io/systems/containers/faq.md)
- [Inventories](https://ss3d.gitbook.io/systems/inventories.md)
- [Developer Guide](https://ss3d.gitbook.io/systems/inventories/developer-guide.md)
- [Tilemaps](https://ss3d.gitbook.io/systems/tilemaps.md): Functions and features of the tilemap system.
- [Creating Maps](https://ss3d.gitbook.io/systems/tilemaps/creating-maps.md): Using the tilemap creator.
- [Adding new items & objects](https://ss3d.gitbook.io/systems/tilemaps/adding-new-items-and-objects.md)
- [Adjacency Connections](https://ss3d.gitbook.io/systems/tilemaps/adding-new-items-and-objects/adjacency-connections.md)
- [Technical Implementation](https://ss3d.gitbook.io/systems/tilemaps/technical-implementation.md): This page describes some of the inner workings of the tilesystem
- [Refactor notes](https://ss3d.gitbook.io/systems/tilemaps/refactor-notes.md)
- [Interface](https://ss3d.gitbook.io/systems/tilemaps/interface.md)
- [Entities](https://ss3d.gitbook.io/systems/entities.md)
- [Character Customization](https://ss3d.gitbook.io/systems/entities/character-customization.md)
- [Lobby](https://ss3d.gitbook.io/systems/lobby.md)
- [Crafting](https://ss3d.gitbook.io/systems/crafting.md)
- [Chat](https://ss3d.gitbook.io/systems/chat.md)
- [Channels](https://ss3d.gitbook.io/systems/chat/channels.md)
- [Department specific channels](https://ss3d.gitbook.io/systems/chat/channels/department-specific-channels.md)
- [Distance based channels](https://ss3d.gitbook.io/systems/chat/channels/distance-based-channels.md)
- [Audios](https://ss3d.gitbook.io/systems/audios.md)
- [Examine](https://ss3d.gitbook.io/systems/examine.md)
- [How it works](https://ss3d.gitbook.io/systems/examine/how-it-works.md)
- [Setting up a game object to be examinable](https://ss3d.gitbook.io/systems/examine/setting-up-a-game-object-to-be-examinable.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://ss3d.gitbook.io/systems/systems-intro.md?ask=<question>
```
The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.
Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
