Setup · Usage · Games File · Factions · Documentation · License
Click here for an example of a leaderboard that uses this generator.
Setup
The following packages are required:
- C++17 Compiler: Any C++17 compiler will do, such as GCC or Clang. On Ubuntu, install GCC with
sudo apt install g++or Clang withsudo apt install clang. - CMake: On Ubuntu, install with
sudo apt install cmake. - Gnuplot: On Ubuntu, install with
sudo apt install gnuplot.
Build the program with:
mkdir build
cd build
cmake ..
make
This builds the build/bin/ti4-echelon program.
You can optionally run tests from the build directory with:
make test
You can optionally install the program from the build directory with:
sudo make install
This installs the program to /usr/local/bin/ti4-echelon. To uninstall the program, simply delete it.
Usage
Run with no arguments or with the --help argument to obtain usage information.
Otherwise, for regular use, run with:
ti4-echelon --games <path> --leaderboard <path>
--games <path>specifies the path to the games file to be read. Required.--leaderboard <path>specifies the path to the directory in which the leaderboard will be written. Optional. If omitted, no leaderboard is written.
Games File
The games file is a plain text file with the following format:
2021-07-31 free-for-all 10 8h35m
1st Alice 10 Winnu
2nd Bob 9 Xxcha Kingdom
3rd Carol 8 Clan of Saar
4th David 8 Universities of Jol-Nar
5th Erin 7 Empyrean
6th Frank 6 Argent Flight
2021-07-24 teams 14
1st Bob 15 Mentak Coalition
1st Alice 11 Titans of Ul
2nd Carol 13 Nomad
2nd Gabby 11 Mahact Gene-Sorcerers
3rd David 12 Yssaril Tribes
3rd Hugo 10 Arborec
etc.
- Games are separated by one or more blank lines.
- Each game consists of a header line followed by a number of result lines.
- The header line must contain a date, a game mode, a goal number of victory points, and an optional time duration, in this order, each separated by whitespace.
- Each result line must contain a place, a player name, a number of victory points, and a faction name, in this order, each separated by whitespace.
- Dates must be in the YYYY-MM-DD format.
- The game mode must be one of either
free-for-allorteams. - The time duration is optional. If included, it must be in the
<hours>h<minutes>mformat, such as 8h35m. - Places are case-sensitive and must exactly match one of the following spellings:
1st,2nd,3rd,4th,5th,6th,7th,8th. - In free-for-all games, each player must have a unique place. Recall that initiative breaks ties in victory points, and additional victory points in excess of the game’s goal number of victory points are worthless.
- When playing in teams, all players on the same team must have the same place; this is how teams are identified.
- Player names are case-sensitive and cannot contain any whitespace.
Factions
The faction names in the games file are case-sensitive and must exactly match one of the following spellings:
ArborecArgent FlightBarony of LetnevClan of SaarEmbers of MuaatEmirates of HacanEmpyreanFederation of SolGhosts of CreussL1z1x MindnetMahact Gene-SorcerersMentak CoalitionNaalu CollectiveNaaz-Rokha AllianceNekro VirusNomadSardakk N'orrTitans of UlUniversities of Jol-NarVuil'raith CabalWinnuXxcha KingdomYin BrotherhoodYssaril TribesCustom
Remarks:
- Note the numeral ones (
1) inL1z1x Mindnet. - Note the hyphen (
-) inMahact Gene-Sorcerers,Naaz-Rokha Alliance, andUniversities of Jol-Nar. - Note the apostrophe (
') inSardakk N'orrandVuil'raith Cabal. - If playing a Frankendraft-style game with custom factions, use
Customas the faction name.
Documentation
Building the documentation requires additional packages:
- Doxygen: On Ubuntu, install with
sudo apt install doxygen. - Graphviz: On Ubuntu, install with
sudo apt install graphviz. - TeX Live: On Ubuntu, install with
sudo apt install texlive texlive-fonts-extra.
Documentation is optional and disabled by default but can be generated from the build directory with:
cmake .. -DBUILD_DOCS=ON
make docs
This generates HTML documentation using Doxygen. The documentation is located in docs/html. Open the docs/html/index.html file in any web browser to view the documentation.
License
This work is maintained by Alexandre Coderre-Chabot (https://github.com/acodcha) and licensed under the MIT License. For more details, see the LICENSE file or https://mit-license.org. This work is based on the Twilight Imperium 4th Edition board game by Fantasy Flight Games. The contents, copyrights, and trademarks of everything involving Twilight Imperium 4th Edition are exclusively held by Fantasy Flight Games; I make no claim to any of these in any way.