"You gotta die for something." - STARWOLF
Space Frontiers is a next-generation online community multiplayer game in which players find themselves within a galaxy consisting of multiple sectors and spaceships. Active co-operative and PVP gameplay takes place in and around manned spaceships together with a strong foundation of social community-oriented gameplay features. Developed as a sandbox, shaped by the players.
Space frontiers seeks to deliver an experience that offers high amounts of supported players for decentralized gaming communities that provide their own selections of (both client- and server-side) content, mods, gamemodes, gameplay, moderation and plugins. Communities will be tasked to host a cloud of servers, rather than just a single server. This is to provide reliable authorative computational power for the partially persistent Galaxy they host. Each server within the cloud represents an active sub-sector of the Galaxy, usually with one spaceship. We intend to support galaxies with more than one thousand active players in real-time.
There are gameplay videos of Space Frontiers on YouTube.
The repository contains both the server and client. Both are entirely written in Rust with the Bevy ECS game engine. The technology stack is cutting-edge and will serve next-generation video-games well. Space Frontiers is designed from the ground up to support modern CPUs to efficiently take advantage of any amount of available CPU cores without increasing code complexity and without chances of data races. The old prototype client is made with Godot 3.
Socials:
We are not ordinary, revolutionary would be a better word. There is community sovereignty, integrity, values and strong personalities together with honest beings and experienced leaders that operate in truth and good faith.
Space Frontiers and the community are age rated 18+ ๐. Minors may not be present without parental approval and parental supervision.
- Decentralized gameplay, each community can host their own server. ๐
- Parallelized Entity Component System architecture. ๐ก
- Pure Rust. No garbage collection. Fast code execution. ๐
- Data-oriented and modular within a thread-safe and strictly compiled environment. It is easy to add and remove entities, systems, components, map cells and more simply by managing plugins that will get compiled with the project. ๐ญ
- Using the cutting-edge Rapier 3D Physics engine. ๐
- Character meshes and animations are integrated with Mixamo for rigging. โ
- Inventory system, pick up, wear, attach, place and equip items with character entities.
- Melee & projectile combat systems, damage player, ship walls or other entities with various types of damage and the ability to target specific body parts.
- Advanced bbcode chat, with support for examining entities, modular (radio) channels and proximity communication.
- Actions and tab menu's to easily interact with the world while also offering protection against cheaters.
- Configurable console commands, including rcon admin commands.
- Clients can load in custom content on a per server basis thanks to a traditional automatically shared and downloaded content folder approach.
- Cell based map support with a graphical user interface map, world and entities editor with support for sizes up to 1km by 1km with 100,000+ dynamic (de)constructable ship cells.
- Atmospherics simulation including temperature, pressure, diffusion, gravity and the vacuum of space.
To compile and run Space Frontiers:
- Select latest versioned branch from this repository and clone it.
- In your terminal navigate to the project folder you have just obtained.
To start the server run:
cargo run server
To start the new Bevy client run:
cargo run
To run Space Frontiers at maximum performance with a slower compile time add the following flag to the run command:
--release
You can obtain the feature-rich 0.0.3-snap7 prototype client on Discord. Ensure your server has the right git branch with the same version as the obtained Godot client and not the master branch!
The prototype client is built on top of a Godot 3.4 release.
Currently there is full focus on recreating the client in Bevy ECS. The new Bevy client is developed open-source in this repository.
The technical documentation of the most recent stable snap branch is found at docs.sf.starwolves.io.
There is also a (currently outdated) guide available.
Generate documentation yourself for master (latest code and docs!!) or other versions:
cargo doc --no-deps --document-private-items --open
This project is oriented towards long-term development, meaning it is here to stay and to be developed for some years to come. Feedback, bug reports, suggestions and critique are very much appreciated. Gitlab issues and pull requests will be reviewed and considered.
You can fund the project here and get in contact with us afterwards for special and lasting roles and titles!
The hopes are to financially reward and/or hire the most suitable people for their contributions in the much further future.
Contributors of this project have to agree to our Contributor License Agreement. You may send your signed version to [email protected] so your associated Gitlab account will get activated.
The code of this repository is licensed under the proprietary code license. The assets of this repository are licensed under the the proprietary assets license. Both licenses we intend to support with value to authenticity and community freedoms without elements of modern day cancel culture ๐.
In the much further future when a yet to be-decided amount of accounts have been sold: the codebase and assets for Space Frontiers at that moment and onwards will go Free Open Source (FOSS) under The GNU Affero General Public License version 3 and Attribution-ShareAlike 4.0 International. When this happens the main code base will continue to be subject to the Contributor License Agreement. The official Space Frontiers server browser would continue to be sold on Steam with Steam community integration. This is all to continue long-term efforts to keep profits going that also get distributed to partnered communities. A CLA in the FOSS stage allows for exclusively Star Wolves to grant communities the right to potentially keep their server code closed-source and client-side code and assets protected.