|Nathan Schneider 13eb58a3ee Removed child org from parent children list||1 year ago|
|docs||1 year ago|
|lib||1 year ago|
|modpol_core||1 year ago|
|modpol_minetest||1 year ago|
|.gitignore||1 year ago|
|GOVERNANCE.md||1 year ago|
|LICENSE||1 year ago|
|README.md||1 year ago|
|depends.txt||2 years ago|
|description.txt||1 year ago|
|init.lua||1 year ago|
|login.lua||1 year ago|
|mod.conf||1 year ago|
Modpol, short for "modular politics," enables diverse governance processes on multi-user platforms. It offers a library with which users can choose, modify, and create modules that add specific governance functionalities.
This implementation is a mod for Minetest, a free/open-source voxel game. It is designed to be adapted to other multi-user platforms that also employ Lua as an extension language.
Learn more at modpol.net.
To use this in Minetest, simply install it in your
worldmods/ folder. Minetest will load
In the game, open the Modpol dashboard with the command
For testing purposes, players with the
privs privilege (generally admins) can use the
/mptest command, which resets all the orgs and opens a dashboard.
Modpol can also be used independently of Minetest as a command-line tool. Currently command-line use of modpol requires a Unix-style system, but it is intended to become more fully platform independent.
The command-line version is in the
modpol subdirectory. To run the program on Unix systems in CLI mode, install lua or luajit and execute the following in this directory:
$ lua[jit] login.lua
Alternatively, to test arbitrary functions in the interpreter outside of the interactive dashboards, load Modpol's library with:
$ lua[jit] > dofile("modpol_core/modpol.lua")
In the interpreter, for a list of global functions and tables, use
The persistent storage method may be chosen in
modpol.lua. If available, Modpol uses Minetest's built-in StorageRef system for Minetest 5.*. If that is not available, or in CLI mode, data will be stored in a data directory at
modpol_core/data/. This will contain a log file and serialized program data files.
Various guides are available at the GitLab wiki.
Read documentation of functions and modules at
docs/doc/index.html. Documentation was generated using LDoc. To generate basic documentation for every page, download
ldoc and use the following command:
$ cd docs/ $ ldoc ..
This will not generate the same index page and sidebar as the documentation provided; the appropriate structure needs to be added manually.
Learn more about the project and how to develop your own modules in the wiki.