-
Notifications
You must be signed in to change notification settings - Fork 0
Development Environment
Arganium has been designed to be easy to build and modify. This guide will help you get started with a development environment and the general workflow.
Generally a distribution of Linux is strongly recommended. Most of Arganium's development was performed on Ubuntu and it is recommended. That said any distribution or even other operating systems should have no problem running Arganium as long as they meet all the software requirements above.
The first order of business is to get a functional installation of Ruby. If you choose you can use a system Ruby installation, rbenv, or something custom but RVM is recommended because of its ease of setup and excellent support. For up to date instructions please follow the guide but the following should normally work:
curl -sSL https://get.rvm.io | bash -s stable --rubyrvm install 2.2rvm use 2.2 --defaultrvm gemset create rails5.0rvm gemset use rails5.0gem updategem install bundlergem install nokogiri
Nokogiri is a dependency for many other gems and may require Ruby Libraries to be installed. On Debian this is the
ruby-devpackage.
Now that you have a functional and flexible Ruby environment set up, it's time to install Rails.
gem install rails- Verify installation with
rails -v cd <repobase>/gloombundle install
A 3.0+ build of Zandronum is required. These can be found under the Download area of the official Zandronum site.
- Download the archive for your platform.
cd /optmkdir zandronumcd zandronumtar xvjf <path to downloaded archive>- Edit your
.bashrcto place/opt/zandronuminto yourPATHvariable.
Naturally you're going to need a game WAD. Once you have a game WAD you wish to use, enter the following:
mkdir ~/.zandronumcp <path to game wad> ~/.zandronum/<game>.wad
At this point you should have a development environment ready to work with. If you encounter problems please log an issue with details. The average workflow for each component of Arganium is typically the following:
-
Certain: Certain is a Ruby program and can be run directly from
<repo>/certain/bin/certain.rb. Example scripts for launching the Certain wrapper and the client are located under<repo>/certain/examples. - Gloom: Gloom is a Rails application and launching it is like many others.
cd <repo>/gloom./setup./setup <config.yml generated>SECRET_KEY_BASE=$(rails secret) rails server -b 0.0.0.0-
Clients: web clients need only connect on the default port for the Rails Server (typically
3000in development) with a standard web browser. Zandronum clients need to launch Zandronum with thearganium.pk3and the level being used. An example script for how to do this is provided in<repo>/certain/examples/.