{"id":14235655,"url":"https://github.com/indiv0/colonize","last_synced_at":"2025-04-06T09:09:35.266Z","repository":{"id":24066497,"uuid":"27452741","full_name":"indiv0/colonize","owner":"indiv0","description":"A Dwarf Fortress/Rimworld-like game written in Rust","archived":false,"fork":false,"pushed_at":"2023-01-20T22:38:05.000Z","size":827,"stargazers_count":370,"open_issues_count":10,"forks_count":14,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-03-30T08:08:52.498Z","etag":null,"topics":["dwarf-fortress","game","piston","rimworld","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/indiv0.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-12-02T20:48:53.000Z","updated_at":"2025-02-02T19:02:03.000Z","dependencies_parsed_at":"2023-02-12T06:15:53.404Z","dependency_job_id":null,"html_url":"https://github.com/indiv0/colonize","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indiv0%2Fcolonize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indiv0%2Fcolonize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indiv0%2Fcolonize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indiv0%2Fcolonize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/indiv0","download_url":"https://codeload.github.com/indiv0/colonize/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247457803,"owners_count":20941906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dwarf-fortress","game","piston","rimworld","rust"],"created_at":"2024-08-20T21:02:13.760Z","updated_at":"2025-04-06T09:09:35.249Z","avatar_url":"https://github.com/indiv0.png","language":"Rust","funding_links":[],"categories":["Rust","Games"],"sub_categories":["Helpers"],"readme":"# colonize\n\nA Dwarf Fortress/Rimworld-like game written in Rust.\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cstrong\u003eLive Demo (v0.7.0; \u003ca href=\"https://github.com/indiv0/colonize#controls\"\u003eControls\u003c/a\u003e)\u003c/strong\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://colonize.rs/0.7.0/\"\u003ehttps://colonize.rs/0.7.0/\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"2\"\u003e\n      \u003cimg src=\"https://img.shields.io/badge/license-GPL--3.0--or--later-blue.svg\" alt=\"license\"\u003e\u003c/img\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n***See the [changelog] for what's new in the most recent release.***\n\n![colonize-screenshot](https://colonize.rs/colonize-v0.3.0.png \"Colonize v0.3.0 - Game scene\")\nColonize v0.3.0 terrain. Source: [Carter Anderson](https://github.com/cart)\n\n# Table of Contents\n\n* [About](#about)\n* [Controls](#controls)\n* [Compiling \u0026 Running From Source](#compiling--running-from-source)\n* [Contributing](#contributing)\n* [License](#license)\n\n# About\n\nI've always wanted to create a game like Dwarf Fortress or Rimworld.\nA game with emergent complexity, engrossing simulation, and the potential for _fun_ that comes from that.\n\nThis is my attempt to build that game.\n\nMy view on what exactly this game should be like is unclear, and at the moment\nit's mostly a technical experiment and personal exploration of game development.\n\nThe best way I can summarize my current vision is that this game should provide\na real-time simulation of a world in which individual entities (like dwarves in\nDwarf Fortress) perform actions to satisfy goals set by the player (e.g. \"build a house\",\n\"harvest some wood\", \"mine some stone\"). The gameplay will focus on getting a\nplayer to build a fort/base and protect it from threats. These threats may be\nthe elements, monsters, or various catastrophes. For now, the game is intended to\nbe single-player only.\n\nCurrently, the game only generates some basic 3D voxel terrain from fractal brownian motion.\nMy next step is probably to add some basic AI entities (\"dwarves\") and have them walk\naround the map and harvest some resources.\n\n# Controls\n\nThe controls are a bit wonky right now, and they vary depending on whether you're\nplaying the game in the browser (WASM) or on your machine (native).\n\nCurrently, the controls are focused on moving around the map and regenerating\nthe terrain with new parameters.\n\n- Movement: W/A/S/D/Q/E\n- Moving a Dwarf: Select them with the mouse first, then use Z/X/C/V/B/N\n- Orientation: Arrow Keys or Numpad Arrows (WASM); Mouse (Native)\n- Terrain:\n    - Y-Offset (+/- 1): U/H\n    - Frequency (+/- 0.001): I/J\n    - Lacunarity (+/- 0.1): O/K\n    - Persistence (+/- 0.1): P/L\n- Slicing: -/= to increase/decrease the Y-Level\n- Misc:\n    - Spawn 10 more dwarves: T\n\n# Compiling \u0026 Running From Source\n## Prerequisites\n\n* [rust](https://www.rust-lang.org)\n\n## Enable Fast Compiles (Optional)\n\nFor fast iterative compiles, follow the [instructions in the Bevy book](https://bevyengine.org/learn/book/getting-started/setup/#enable-fast-compiles-optional)\non how to setup fast compiles.\n\n## Compiling\n\nBuild \u0026 run:\n```sh\ncargo run --release\n```\n\n## Compiling for WASM\n\nSetup:\n```\nrustup target add wasm32-unknown-unknown\ncargo install wasm-bindgen-cli\n```\n\nBuild \u0026 run:\n```\ncargo build --release --target wasm32-unknown-unknown --no-default-features --features wasm\nwasm-bindgen --out-dir target --target web target/wasm32-unknown-unknown/release/colonize.wasm\n# Build the CSS (which uses TailwindCSS)\nyarn install\nmake styles\n```\nServe project dir to browser. i.e.\n```\nmake serve\n```\n\n# Contributing\n\nContributions are always welcome!\nIf you have an idea for something to add (code, documentation, tests, examples,\netc.) fell free to give it a shot.\n\nPlease read [CONTRIBUTING.md][contributing] before you start contributing.\n\n# License\n\nPortions of the code come from MIT-licenced projects.\nWhere possible, the original copyright notices and licenses are included as headers in those files.\nAll **modifications** to these works are licensed under the GPLv3 terms below.\n\nColonize is distributed under the terms of the GPLv3 license or later.\n\n```\nCopyright (C) 2016-2021 Nikita Pekin and colonize contributors\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n```\n\nSee [LICENSE][license-gpl] for details.\n\n# Credits\n\nThis project is possible due to the excellent work of many developers.\nCheck out the some of the giants whose shoulders we stand on:\n* [Bevy](https://bevyengine.org/) - Game engine\n* [bonsairobo/building-blocks](https://github.com/bonsairobo/building-blocks) - Voxel library\n* [mrk-its/bevy_webgl2](https://github.com/mrk-its/bevy_webgl2) - WebGL2 renderer plugin\n* [aevyrie/bevy_mod_picking](https://github.com/aevyrie/bevy_mod_picking) - 3D mouse picking plugins\n\nThe list of contributors to this project can be found at\n[CONTRIBUTORS.md][contributors].\n\n[changelog]: https://github.com/indiv0/colonize/blob/master/CHANGELOG.md \"Changelog\"\n[contributing]: https://github.com/indiv0/colonize/blob/master/CONTRIBUTING.md \"Contribution guide\"\n[contributors]: https://github.com/indiv0/colonize/blob/master/CONTRIBUTORS.md \"List of contributors\"\n[license-gpl]: https://github.com/indiv0/colonize/blob/master/LICENSE-MIT \"GPLv3 license\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findiv0%2Fcolonize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Findiv0%2Fcolonize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findiv0%2Fcolonize/lists"}