feat: add persistent-world station game
Bevy ECS workspace with three crates:
- game_core: rsn data definitions, components, Tiled map loader, protocol
- game_server: authoritative simulation, Rune scripting, persistence,
dedicated server binary
- game_client: rendering, UI and input; embeds the server for
singleplayer and hosting
Items, recipes, buildings and skills are defined in assets/data, behavior
in Rune scripts under assets/scripts, and maps are made in Tiled.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 17:44:13 +00:00
|
|
|
[workspace]
|
|
|
|
|
resolver = "3"
|
2026-10-18 18:08:45 +00:00
|
|
|
members = ["crates/game_core", "crates/game_server", "crates/game_client", "xtask"]
|
feat: add persistent-world station game
Bevy ECS workspace with three crates:
- game_core: rsn data definitions, components, Tiled map loader, protocol
- game_server: authoritative simulation, Rune scripting, persistence,
dedicated server binary
- game_client: rendering, UI and input; embeds the server for
singleplayer and hosting
Items, recipes, buildings and skills are defined in assets/data, behavior
in Rune scripts under assets/scripts, and maps are made in Tiled.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 17:44:13 +00:00
|
|
|
default-members = ["crates/game_client"]
|
|
|
|
|
|
|
|
|
|
[workspace.package]
|
|
|
|
|
version = "0.1.0"
|
|
|
|
|
edition = "2024"
|
|
|
|
|
|
|
|
|
|
[workspace.dependencies]
|
|
|
|
|
bevy = { version = "0.19", default-features = false }
|
|
|
|
|
bevy_replicon = "0.44"
|
|
|
|
|
bevy_replicon_renet = "0.20"
|
|
|
|
|
serde = { version = "1", features = ["derive"] }
|
|
|
|
|
rsn = "0.2"
|
|
|
|
|
rune = "0.14"
|
|
|
|
|
tiled = "0.16"
|
|
|
|
|
thiserror = "2"
|
2026-10-18 18:47:43 +00:00
|
|
|
serde_json = "1"
|
|
|
|
|
uuid = { version = "1", features = ["v4", "serde"] }
|
|
|
|
|
sqlx = { version = "0.9", default-features = false, features = ["any", "sqlite", "postgres", "runtime-tokio", "tls-rustls-ring-webpki"] }
|
|
|
|
|
tokio = { version = "1", features = ["rt-multi-thread"] }
|
|
|
|
|
directories = "6"
|
2026-10-18 19:41:58 +00:00
|
|
|
clap = { version = "4.6", features = ["derive"] }
|
|
|
|
|
toml = "1.1"
|
|
|
|
|
toml_edit = "0.25"
|
feat: add persistent-world station game
Bevy ECS workspace with three crates:
- game_core: rsn data definitions, components, Tiled map loader, protocol
- game_server: authoritative simulation, Rune scripting, persistence,
dedicated server binary
- game_client: rendering, UI and input; embeds the server for
singleplayer and hosting
Items, recipes, buildings and skills are defined in assets/data, behavior
in Rune scripts under assets/scripts, and maps are made in Tiled.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 17:44:13 +00:00
|
|
|
game_core = { path = "crates/game_core" }
|
|
|
|
|
game_server = { path = "crates/game_server" }
|
|
|
|
|
|
|
|
|
|
[profile.dev]
|
|
|
|
|
opt-level = 1
|
|
|
|
|
|
|
|
|
|
[profile.dev.package."*"]
|
|
|
|
|
opt-level = 3
|
|
|
|
|
|
2026-10-18 18:08:45 +00:00
|
|
|
# Used by `cargo xtask pack` for distributable builds.
|
|
|
|
|
[profile.dist]
|
|
|
|
|
inherits = "release"
|
|
|
|
|
strip = true
|
|
|
|
|
|
feat: add persistent-world station game
Bevy ECS workspace with three crates:
- game_core: rsn data definitions, components, Tiled map loader, protocol
- game_server: authoritative simulation, Rune scripting, persistence,
dedicated server binary
- game_client: rendering, UI and input; embeds the server for
singleplayer and hosting
Items, recipes, buildings and skills are defined in assets/data, behavior
in Rune scripts under assets/scripts, and maps are made in Tiled.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 17:44:13 +00:00
|
|
|
[workspace.lints.clippy]
|
|
|
|
|
# Bevy system queries are naturally verbose.
|
|
|
|
|
type_complexity = "allow"
|
|
|
|
|
too_many_arguments = "allow"
|