• Stars
    star
    183
  • Rank 210,154 (Top 5 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 9 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Nox Futura - sort of like Dwarf Fortress in space.

Nox Futura (formerly Black Future)

Note: I've started working on this in Rust, the repo is https://github.com/thebracket/noxfutura.

An open-source game combining elements of Dwarf Fortress, Civilization, Warhammer, Douglas Adams, and more. It's very much in development, so don't expect miracles - or a finished experience - yet!

Please visit our website for more information, download links, etc.

Note that OS X isn't supported at the present time.

Contributions

I hope one day to release this on various platforms, so I'm not merging in PRs. It's open source, because I firmly believe that users should be able to see what they are running - but I'm not really looking for collaboration at this time. Sorry! If you do want to submit a change, I'll need to talk to you about license assignment - I need to be able to release re-licensed builds (and possibly one day make money off them), and I don't want to get into the nightmare of "I made $5, now I have to get $0.10 to contributor X, $0.05 to contributor Y, etc.".

As the game gets more mature, I'm hoping that providing the source will make life easier for modders, extenders and fans.

If you see something you like, feel free to use it (subject to the GPL license). I'm all in favor of assisting others.

Build Instructions by Platform

Unstable Builds

I'm still getting the machinery together to post unstable builds. Right now, there is a repeatable - scripted - build setup, but it requires that I remember to run it on three different platforms! These are just starting to come together, so for now I can't make any promises that these will work at all... but you can download periodic builds from itch.io

Windows Builds

Install packages (see below), open in VS2017 (there's a solution file included) and you should be able to build it.

Packages: boost (which pulls in zlib for you), curl, cereal, lua, glfw3, glew, glm. Sadly, this will take a while; on my Core i7 with 12 Gb RAM it took over an hour. The good news is that you only have to do it the once.

After that, you need to use the base as your working directory - so it can see game_assets and world_defs.x

There is an included Visual Studio project to make this easier.

Windows builds with MSYS2 - Unix compatibility

If you are using MSYS2 to build, you need to install (with pacman -S):

  • mingw64/mingw-w64-x86_64-libcurl-devel
  • mingw64/mingw-w64-x86_64-glew
  • mingw64/mingw-w64-x86_64-glfw
  • mingw64/mingw-w64-x86_64-boost
  • mingw64/mingw-w64-x86_64-cereal
  • mingw64/mingw-w64-x86_64-glm
  • mingw64/mingw-w64-x86_64-libc++
  • mingw64/mingw-w64-x86_64-ccache (to speed up compilation)
  • mingw64/mingw-w64-x86_64-cotire (to speed up compilation)
  • mingw64/mingw-w64-x86_64-fmt
  • tar (yes, that really isn't included by default...)

The Lua libraries bundled with MSYS2 do not work (at least for me), so I bundled Lua in the source directory.

Change directory to wherever you checked out bgame, and:

  • mkdir build
  • cd build
  • cmake -G"Unix Makefiles" ../src
  • make -j4
  • cp lua/liblua.dll .
  • ln -s ../world_defs .
  • ln -s ../game_assets .

You can now run ./noxfutura.exe to run the game. Note that ln -s on MSYS2 appears to just make a copy, so you may need to re-copy after the world updates. I have no idea why they would do this, NTFS supports links just fine!

This basic setup also worked with CLion on my machine.

Linux Builds

This is on the latest Linux Mint (18.3 at the time of writing). For some reason, it ships with old developer tools (disappointing!). This should fix that:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get install gcc-7 g++-7

You need to install the following packages (I did this on Ubuntu; other distros may vary): build-essential, git, cmake, extra-cmake-modules, libcurl4-openssl-dev, libglew-dev, libglfw3-dev, libglm-dev, libboost-dev, libboost-system-dev, libboost-filesystem-dev, zlibc, libcereal-dev, libncurses5-dev, libreadline-dev, liblua5.3-dev, libglew-dev

To build it:

  • Clone the github repo into a folder. git clone https://github.com/thebracket/bgame.
  • Enter the bgame folder, cd bgame.
  • Make a build folder, mkdir build, and enter it with cd build.
  • Tell CMake to create a build structure. cmake -G"Unix Makefiles" ../src.
  • Build the app with make -j4 (replace the 4 with how many CPUs you would like to use)
  • ln -s ../world_defs .
  • ln -s ../game_assets .
  • You can now launch the game with ./noxfutura

More Repositories

1

HandsOnRust

The source code that accompanies Hands-on Rust: Effective Learning through 2D Game Development and Play by Herbert Wolverson
Rust
302
star
2

rltk

Roguelike Toolkit - Modern C++ (14) SFML-based toolkit for creating roguelikes.
C++
297
star
3

noxfutura

Nox Futura is a Rust port of the C++ project of the same name. It's a Dwarf Fortress like, in 3D (and a futuristic setting). It's also a passion project, so I'm not expecting formalized release dates!
Rust
122
star
4

rustyroguelike

Following along with the /r/roguelikedev tutorial session, in Rust and implementing my own library as well!
Rust
116
star
5

roguelike-celebration-2020

Code for my Procedural Map Generation talk at the Roguelike Celebration 2020
Rust
61
star
6

secbot-2021-7drl

7-day Roguelike, 2021 (Success)
Rust
23
star
7

bevy-test

A quick and dirty Space Invaders type game in Bevy, with attached tutorial.
Rust
20
star
8

dankestdungeon

A 7DRL Project, using Emscripten to create a simple roguelike system in C++ that runs in the browser.
C++
19
star
9

png2rex

A quick utility for turning PNG files into REXPaint xp files.
C++
15
star
10

rust_brain_teasers

Source code to accompany the Rust Brain Teasers book.
Rust
15
star
11

bqos-oss

Bracket QOS - a Quality of Service/Experience server system writtin in Rust. Derived from the excellent LibreQOS Project.
Rust
14
star
12

ArdanUltimateRustFoundations

Course Material for Ardan Labs - Ultimate Rust: Foundations
Rust
14
star
13

Ardan-1HourAsync

Code accompanying the 1 Hour Dive into Async live stream.
Rust
13
star
14

png2rex_rs

Utility for converting PNG files to REX Paint .xp files.
Rust
9
star
15

rf-signals

RF planning system for WISPs, and a port of various RF algorithms to pure Rust.
JavaScript
9
star
16

cpumap-pping

A work-in progress experimenting with merging xdp-pping and xdp-cpumap-tc into one BPF program, with a view to helping LibreQoS and BracketQOS obtain this information in a scalable manner.
C
6
star
17

pyrite_box

Fun project making something that looks a bit like the old SSI Gold Box games.
Rust
6
star
18

libre_qos_rs

Some helpers for LibreQOS, written in Rust.
Rust
4
star
19

TechSupportRL

A quick roguelike for fun, as a break from writing Black Future. Should work as an RLTK example.
C++
4
star
20

bracket-ui

A user-interface library for bracket-lib.
Rust
3
star
21

rltk2

The Roguelike Toolkit, Version 2 - Very Much in development, I don't recomend trying to use it yet!
C++
3
star
22

rusty-jam-2

Entry for Rusty Jam 2 ( https://itch.io/jam/rusty-jam-2 )
Rust
3
star
23

gravity_well

A simple two-player (shared keyboard) game in which you collect salvage and try not to fall into a black hole.
Rust
3
star
24

Ardan-NR-2023-07

Rust
2
star
25

noxunreal

Unreal Engine version of Nox Futura. Relies on libnox.
Lua
2
star
26

ArdanRustDebugOptimize

In-Development repo for Rust Debugging & Optimization
Rust
2
star
27

Ardan_2023_07_24_Live

Live code repo for Ardan 2023/07/24 training
Rust
1
star
28

llm_rust_article_1

Rust
1
star
29

Ardan_2023_05_18_Live

Live coded repo for 2023-05-18 Rust 1
Rust
1
star
30

UltimateRust1-EcoSystem

Code to accompany Ardan Labs - Ultimate Rust 1, Condensed class.
Rust
1
star
31

ArdanLabs_RustInYourEnterprise

Code that accompanies the Introducing Rust into your Company Ecosystem talk
Rust
1
star