Browse Source

Edits to README for readability

Nathan Schneider 2 years ago
parent
commit
62d4c0518f
1 changed files with 13 additions and 12 deletions
  1. 13 12
      README.md

+ 13 - 12
README.md

@@ -1,23 +1,25 @@
 # Modpol for Minetest
 
-Modpol, short for "modular politics," is an extension that enables diverse governance processes on multi-user platforms. It offers a library that enables users to create or adapt their own modules that add specific governance functionalities. 
+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](https://minetest.net), a free/open-source voxel game. It is designed to be easily adapted to other multi-user platforms that also employ Lua as an extension language.
+This implementation is a mod for [Minetest](https://minetest.net), 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.
 
 ## How to use it
 
-Modpol is built around groups called *orgs*. At the base is an org with all users in it, called `Root` by default.
+Modpol is built around groups called *orgs*. At the base is an org with all users in it, called `Root` by default. *Modules* enable people to do things within orgs, such as decide on membership, grant powers to the org, and much more. To get started in Minetest:
 
-*Modules* enable people to do things within orgs, such as decide on membership, grant powers to the org, and much more. Modules can be added and modified by users to meet their needs. Modules can also be nested in each other, so one module can rely on another module to accomplish a process. Within an org, choose the module that you want to use:
+* Type the command `/mp`
+* Select the org `Root`
+* Choose one of its modules to make new orgs and craft their behavior
 
 ![](lib/module_list.png)
 
-Modules might simply carry out actions in the game, or they might require a group decision to do so. They might also change the modules available to users of a given org. There are currently two ways of doing this:
+Modules can be nested in each other, so one module can rely on another module to accomplish a process. Users might use a module to unilaterally carry out actions in the game, or the module might require a group decision to do so. Users can also change the modules available to users of a given org. There are currently two ways of doing this:
 
-* Remove modules from the list of modules loaded in `modpol_core/api.lua` and `modpol_minetest/api.lua`. This will make those modules no longer available to any user.
-* Remove modules for a given org from within the program using the `Change modules` module. The removed modules can be re-added in any org by using `Change modules` again.
+* Admins can remove modules from the list of modules loaded in `modpol_core/api.lua` and `modpol_minetest/api.lua`. This will make those modules no longer available to any user.
+* Players can change the modules available in a given org from within the program using the `Change modules` module. Removed modules can be re-added in any org by using `Change modules` again.
 
-The point is that Modpol should give you the ability to do whatever kind of politics you want with your modules. If there is something you would like to do that is not available, develop a module for it (or ask us for help!).
+Modpol should give you the ability to do whatever kind of politics you want with your modules. If there is something you would like to do that is not available, [develop a module for it](https://gitlab.com/medlabboulder/modpol/-/wikis/Module-Writing-Guide) (or ask us for help!).
 
 
 ## Installation in Minetest
@@ -39,7 +41,7 @@ The command-line version is in the `modpol` subdirectory. To run the program on
 $ lua[jit] login.lua
 ```
 
-Alternatively, to test arbitrary functions in the interpreter outside of the interactive dashboards, load Modpol with:
+Alternatively, to test arbitrary functions in the interpreter outside of the interactive dashboards, load Modpol's library with:
 
 ```
 $ lua[jit]
@@ -50,13 +52,12 @@ In the interpreter, for a list of global functions and tables, use `modpol.menu(
 
 ## Storage
 
-By default, a  data  directory  named  "data" will  be created in  this directory. `/data` will contain a log file and serialized program data files.
+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.
 
-Another storage method may be chosen in `modpol.lua`. A StorageRef-based method for Minetest 5.* is included: `storage-mod_storage.lua`.
 
 ## Design philosophy
 
-Modpol seeks to implement a theoretical framework, also called "[modular politics](https://metagov.org/modpol)," which proposes these design goals:
+Modpol seeks to implement a theoretical framework called "[modular politics](https://metagov.org/modpol)," which proposes these design goals:
 
 * *Modularity*: Platform operators and community members should have the ability to construct systems by creating, importing, and arranging composable parts together as a coherent whole.
 * *Expressiveness*: The governance layer should be able to implement as wide a range of processes as possible.