MCPcopy Index your code
hub / github.com/Grokmoo/sulis

github.com/Grokmoo/sulis @1.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0.0 ↗ · + Follow
3,387 symbols 9,349 edges 237 files 111 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Sulis

Sulis is a turn based Role Playing Game with an engine written from scratch in Rust. The game is in a fairly mature state with several available campaigns to play through.

Screenshot

Standalone Releases

Standalone binary releases are available for Windows and Linux if you are only interested in playing the game.

Please visit https://www.sulisgame.com or check the Releases page.

Developers and Modders

Resources for developers and modders are available on a page on the website. Currently, this includes docs for the LUA scripting API.

Building from Source

Prerequisites

You'll need recent versions of Rust and Cargo installed. The game will compile on the latest stable version. Get Rust

On Linux, you will need the ALSA development files installed for audio support. On Debian / Ubuntu, apt-get install libasound2-dev. On Red Hat / Fedora, yum install alsa-lib-devel.

On Windows Subsystem for Linux (WSL) running Ubuntu, run sudo apt install build-essential libasound2-dev pkg-config.

Installation

  1. Clone the git repository.
  2. cargo build --release
  3. Run the game with cargo run --release
  4. On first run, config.yml is created in your home directory. This file may be edited with your preferences. It is also written to when using the in game options menu, however changes you have made manually should generally be preserved.
  5. The Sulis User Folder location:
  6. Linux - $XDG_CONFIG_HOME/.sulis/ (typically $HOME/.config/.sulis)
  7. Windows -$HOME\My Documents\My Games\Sulis

Note that Running with release mode is recommended. The compilation process takes several minutes, but load time and performance in game are massively improved over a standard debug build.

Troubleshooting

If you encounter build errors on Linux, please check the Prerequisites section above first.

Please check the Issue Tracker for known bugs. You can create an issue. Please leave as much information as you can, including logs from your sulis user folder /log directory

Running the editor

  1. cd sulis_editor/
  2. cargo run --release

Built With

Authors

  • Jared Stephen - Development - Grokmoo

Licensing

This project's source code is licensed under the Gnu Public License version 3 - see the License file. This includes, but is not limited to all .rs, .yml, .json, and .lua files.

Many image assets in this project are licensed under the Creative Commons Attribution 3.0 Unported (CC-BY 3.0) or Creative Commons Attribution Unported 4.0 (CC-BY 4.0) Licenses. To view a copy of these licenses, visit CC-BY 3.0 and CC-BY 4.0.

Please note that some art assets are proprietary and may only be used and distributed as part of Sulis.

To view attribution and licensing information for each specific file used, please see the Attribution Sheet.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 2,438
Class 494
Function 349
Enum 92
Interface 14

Languages

Rust100%

Modules by API surface

sulis_state/src/actor_state.rs74 symbols
sulis_state/src/area_state.rs70 symbols
sulis_state/src/script/script_callback.rs67 symbols
sulis_state/src/game_state.rs66 symbols
sulis_state/src/turn_manager.rs60 symbols
sulis_state/src/entity_state.rs52 symbols
sulis_core/src/ui/widget.rs49 symbols
sulis_state/src/animation.rs47 symbols
sulis_core/src/ui/widget_state.rs47 symbols
sulis_core/src/config.rs47 symbols
sulis_editor/src/area_model.rs46 symbols
sulis_state/src/script/area_targeter.rs39 symbols

For agents

$ claude mcp add sulis \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page