# Dev Guide

## Dev Guide

- [Dev Intro](https://ss3d.gitbook.io/dev-guide/readme.md): Intro to developing for Space Station 3D!
- [Using GitHub](https://ss3d.gitbook.io/dev-guide/readme/using-github.md)
- [Using Unity](https://ss3d.gitbook.io/dev-guide/readme/using-unity.md)
- [Licensing](https://ss3d.gitbook.io/dev-guide/readme/licensing.md): SS3D project licenses.
- [File Naming & Organization](https://ss3d.gitbook.io/dev-guide/readme/file-naming-and-organization.md)
- [File Naming](https://ss3d.gitbook.io/dev-guide/readme/file-naming-and-organization/file-naming.md)
- [File Organization](https://ss3d.gitbook.io/dev-guide/readme/file-naming-and-organization/file-organization.md)
- [Object Type](https://ss3d.gitbook.io/dev-guide/readme/file-naming-and-organization/file-organization/object-type.md)
- [Networking](https://ss3d.gitbook.io/dev-guide/networking.md)
- [Introduction to Game Networking](https://ss3d.gitbook.io/dev-guide/networking/introduction-to-game-networking.md): Basic networking concepts for game development.
- [FishNet Networking](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking.md)
- [Server](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking/server.md)
- [Client](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking/client.md)
- [Server RPC](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking/server-rpc.md)
- [ObserversRPC](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking/observersrpc.md)
- [Network Message](https://ss3d.gitbook.io/dev-guide/networking/fishnet-networking/network-message.md)
- [Guidelines](https://ss3d.gitbook.io/dev-guide/guidelines.md)
- [The C# Style Guide](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide.md)
- [Nomenclature](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature.md)
- [Namespaces](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/namespaces.md)
- [Classes & Interfaces](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/classes-and-interfaces.md)
- [Methods](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/methods.md)
- [Fields](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/fields.md)
- [Parameters](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/parameters.md)
- [Delegates](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/delegates.md)
- [Events](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/events.md)
- [Misc](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/nomenclature/misc.md)
- [Declarations](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations.md)
- [One declaration per source file](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/one-declaration-per-source-file.md)
- [General class structure](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/general-class-structure.md)
- [Access Level Modifiers](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/access-level-modifiers.md)
- [Spacing](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/spacing.md)
- [Brace Style](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/brace-style.md)
- [Switch Statements](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/switch-statements.md)
- [Language](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/language.md)
- [Common Patterns and Structure](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/common-patterns-and-structure.md)
- [Applying attributes on all network related methods.](https://ss3d.gitbook.io/dev-guide/guidelines/the-c-style-guide/declarations/common-patterns-and-structure/applying-attributes-on-all-network-related-methods..md)
- [Code Design Definitions](https://ss3d.gitbook.io/dev-guide/guidelines/code-design.md)
- [Actor](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/actor.md)
- [SubSystem](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/subsystem.md)
- [View](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/view.md)
- [Events](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/events.md)
- [Event Bus](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/events/event-bus.md)
- [Action](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/events/action.md)
- [SubSystems Locator](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/subsystem-locator.md): Class used to get game subsystems, using generics and then making cache of said subsystems.
- [Tweening](https://ss3d.gitbook.io/dev-guide/guidelines/code-design/tweening.md)
- [Asset Criteria](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria.md): The criteria used for accepting assets.
- [External Criteria](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria.md)
- [Animations](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/animations.md)
- [Fonts](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/fonts.md)
- [Models](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/models.md)
- [Textures](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/textures.md)
- [Graphics](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/graphics.md)
- [Audio](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/external-criteria/audio.md)
- [Importing Criteria](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria.md)
- [3D Models](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria/3d-models.md)
- [3D Animations](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria/3d-animations.md)
- [Textures](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria/textures.md)
- [Graphics](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria/graphics.md)
- [Audio](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/importing-criteria/audio.md)
- [Internal Criteria](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria.md)
- [3D Models](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria/3d-models.md)
- [3D Animations](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria/3d-animations.md)
- [Textures](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria/textures.md)
- [Graphics](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria/graphics.md)
- [Audio](https://ss3d.gitbook.io/dev-guide/guidelines/asset-criteria/internal-criteria/audio.md)
- [SS3D's coder good practices](https://ss3d.gitbook.io/dev-guide/guidelines/ss3ds-coder-good-practices.md)
- [Code design patterns](https://ss3d.gitbook.io/dev-guide/guidelines/code-design-patterns.md)
- [Guides](https://ss3d.gitbook.io/dev-guide/guides.md)
- [Application Settings](https://ss3d.gitbook.io/dev-guide/guides/application-settings.md)
- [Running the Project](https://ss3d.gitbook.io/dev-guide/guides/running-the-project.md)
- [Configure your firewall and antivirus](https://ss3d.gitbook.io/dev-guide/guides/running-the-project/configure-your-firewall-and-antivirus.md)
- [Building the game](https://ss3d.gitbook.io/dev-guide/guides/running-the-project/building-the-game.md)
- [Joining a server](https://ss3d.gitbook.io/dev-guide/guides/running-the-project/joining-a-server.md): For the purpose of debugging (maybe even playing some day), this page explain how you can join as a client in a SS3D server, in or outside the Unity editor.
- [Hosting a server](https://ss3d.gitbook.io/dev-guide/guides/running-the-project/hosting-a-server.md): For the purpose of debugging (maybe even playing some day), this page explain how you can host a SS3D server, in or outside the Unity editor.
- [Setting up a dedicated server](https://ss3d.gitbook.io/dev-guide/guides/running-the-project/setting-up-a-dedicated-server.md): For the purpose of debugging (maybe even playing some day), this page explain how you can open a server-only SS3D server, in or outside the Unity editor.
- [Debugging SS3D](https://ss3d.gitbook.io/dev-guide/guides/debugging-ss3d.md): This page aim to show some practices that could be helpful to help you debug SS3D.
- [Maintainer Guide](https://ss3d.gitbook.io/dev-guide/guides/maintainer-guide.md): This guide has for objectives to set common good practices for Maintainers to follow before merging a pull request. Also useful for contributors who want to know about our expectations.
- [Pull request review process](https://ss3d.gitbook.io/dev-guide/guides/maintainer-guide/pull-request-review-process.md)
- [Testing SS3D](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d.md): This page describes how testing framework.
- [Assets audit tests](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d/assets-audit-tests.md)
- [Edit mode tests](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d/edit-mode-tests.md)
- [Play mode tests](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d/play-mode-tests.md)
- [Inventory test](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d/play-mode-tests/inventory-test.md)
- [Health tests](https://ss3d.gitbook.io/dev-guide/guides/testing-ss3d/play-mode-tests/health-tests.md): This describe a bunch of tests to perform when messing with things related to health.
- [Working with animations](https://ss3d.gitbook.io/dev-guide/guides/working-with-animations.md)
- [Roadmap](https://ss3d.gitbook.io/dev-guide/roadmap.md): The progress bar of Space Station 3D.
- [Releases](https://ss3d.gitbook.io/dev-guide/roadmap/releases.md): Defining what a release version means.


---

# 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/dev-guide/readme.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.
