Rust bindings for libepicinium, a library containing the core functionality of the strategy game Epicinium. This library implements Epicinium's game logic to load maps and calculate subsequent game states.
The rest of Epicinium will be open-sourced in the near future. It will also be coming soon to Steam.
Epicinium is being developed by A Bunch of Hacks, a worker cooperative for video game and software development from the Netherlands. Contact us at info@epicinium.nl.
src/
defines idiomatic Rust bindings for the C foreign function interface of libepiciniumepicinium/src/build/libepicinium.cpp
is the C++ implementation of libepiciniumepicinium/src/logic
contains C++ source files for Epicinium's game logicepicinium/src/ai
contains C++ source files for Epicinium's artificial intelligenceepicinium/src/common
contains C++ source files for various utilities used in Epiciniumepicinium/libs/jsoncpp
contains C++ source files for JsonCpp, a dependency of Epiciniumepicinium/libs/plog
contains C++ source files for Plog, a dependency of Epiciniumepicinium/Makefile
is a copy of the full Makefile used to compile Epiciniumepicinium/.config.make
defines additional flags passed to the Makefile- the
build.rs
build script calls the Makefile to compile a static library of libepicinium from its C++ source, which is then linked by Cargo with the Rust bindings
This library was created by A Bunch of Hacks.
It is made available to you under the AGPL-3.0 License,
as specified in LICENSE.txt
.
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Affero General Public License (AGPL) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
- Epicinium, the full source code for Epicinium
- Epicinium documentation, which includes a wiki and a tutorial for Epicinium
- Epicinium-NeuralNewt, a libtorch framework for training (partially) convolutional neural networks to play Epicinium via NeuralNewt, a parameterized decision tree AI, with evolutionary training techniques
- Epicinium-NeuralNewt-automatonlib, a precompiled C++ library with Epicinium logic for Epicinium-NeuralNewt