A game that resembles The Sims.
life-demo.mp4
This project is an experiment that aims to explore a few things:
GDScript lacks some features and tools that one would 6D55 expect from a "real" programming language. Development of complex systems in GDScript has been tedious as many changes resulted in a regression. This is the second project in series of trying out C++, Rust, and C# as a GDScript replacement.
All game code shall be written in Rust, with possible exception of GDScript for UI elements or other minor things.
(Traditional game AI, built with logic. Not the machine learning kind of AI)
My previous hierarchial state machine (modeled after fundamentals of Source Engine AI) ended up working great, but The Sims offers some very interesting conceps, such as advertisements.
Building a home in the game involves procedurally generating floors, walls, staircases, etc. and further modifying the result by for example cutting openings for doors and windows, making this kind of a spiritual successor to WorldEdit.
The GDExtension that makes up the games's actual source code (./rust/) is in its entirety licensed under LGPL. Some files are additionally available under more permissive MPL 2.0.
TODO: License the Godot project and its contained assets.
Requirements:
Steps:
- Run
cargo build
in the rust directory - Open the project in Godot editor
Pull requests are gatekept by this workflow. It will check if the code
passes unit tests(runcargo test
)- has linter warnings (run
cargo clippy
) - is formatted (run
cargo fmt
)