Go to file
2021-12-18 11:36:51 +01:00
app Implemented weather data. 2021-12-18 11:36:51 +01:00
Mourne-CI Implemented assignment data, and set up the admin panel and migrations for them. 2021-12-18 11:19:29 +01:00
www Ported the building editor's ui (at least what I could for now). 2021-11-16 18:55:29 +01:00
.clang-format Initial commit. 2021-10-30 19:01:52 +02:00
.clangd Added .clangd config file so you don't have to rely on old vscode behaviour to find compile commands.json. 2021-11-15 11:00:03 +01:00
.gitignore Added .cache folder to the gitignore. 2021-11-15 11:00:27 +01:00
build.config.example Initial commit. 2021-10-30 19:01:52 +02:00
build.sh Initial commit. 2021-10-30 19:01:52 +02:00
HEADS Added assignment related classes. (They are the copy of building for now.) 2021-12-18 10:55:46 +01:00
LICENSE Initial commit. 2021-10-30 19:01:52 +02:00
main.cpp Created a new UserModel, that creates the test admin account with the proper userlevel. 2021-11-14 22:54:29 +01:00
migrate.sh Initial commit. 2021-10-30 19:01:52 +02:00
Readme.md Small readme change. 2021-10-30 19:13:15 +02:00
run.sh Initial commit. 2021-10-30 19:01:52 +02:00
SConstruct Weather initial setup. 2021-12-18 11:23:59 +01:00

Mourne

An old village builder / hero manager web rpg that I originally wrote using Code Igniter 3 ported to rcpp_framework.

The original code is under the Mourne-CI folder. I wrote this about 9 years ago. I only have the application code in the folder. I decided not to commit the framework code itself to minimize the chance of committing passwords, or stray temp files and such. This was my first bigger app, so even though when I wrote this I did pay attention to make it secure (it's probably not that bad), however it's still probably not a good idea to use it as it is.

This is highly experimental stuff. It probably shouldn't be used by anyone who's sane.

Note: this readme has been taken from an another project of mine, it will be updated later.

Compilation

Will only work on linux! Works on the rasberry pi.

Dependencies

Arch/Manjaro:

pacman -S --needed scons pkgconf gcc yasm 

Debian/Raspian:

sudo apt-get install build-essential scons pkg-config libudev-dev yasm 

Optionally if you install MariaDB/MySQL and/or PostgreSQL the compile system should pick it up. Make sure to get a version whoch contains the development headers (A bunch of .h files).

Initial setup

clone this repo, then call scons, it will clone rcpp cms into a new engine directory. Run this every time you update the project. You don't have to run it before / between builds.

# git clone https://github.com/Relintai/mourne.git mourne
# cd crystal_cms
# scons

Now you can build the project like: scons bl. ([b]uild [l]inux)

Adding -jX to the build command will run the build on that many threads. Like: scons bl -j4.

# scons bl -j4
- or -
# ./build.sh

Now you can run it.

First run migrations, this will create the necessary database tables:

# ./engine/bin/server m
- or -
# ./migrate.sh

Now you can start the server:

# ./engine/bin/server
- or -
# ./run.sh

Make sure to run it from the project's directory, as it needs data files.

Now just open http://127.0.0.1:8080

You can push floats to the "a/b" MQTT topics, and the new values will be save in the database.sqlite file, and will appear in your browser.

Structure

The main Application implementation is app/ic_application.h.

The main.cpp contains the initialization code for the framework.

The content/www folder is the wwwroot.