Three weeks have passed since I began work on my month-long Minecraft government project and I’ve made some significant progress. It still has a ways to go, but I’m almost at the point where I could publish a working pre-release.
Throughout the week, my main focus has been completing the proposal and voting systems. Since these commands are the foundation of the entire plugin, so I need to make sure they are well polished and bug-free. I’m happy to say that I’ve (finally) reached a point where I can call the plugin “working”.
The most important aspect of the project is that every player has the ability to propose and vote on the execution of a command that would normally require an administrator. This feature has been implemented and is working perfectly. See the video below for a brief demonstration.
Now that the main feature is finished, Governance (the official name I chose for this project) can already be used in its current state to run a server. As you can imagine, the ability to run any server command is quite a responsibility, which is why I have included a few different configuration options in order to limit what and how proposals can pass.
The most important configuration option is the ability to set a list of allowed commands for the players to run. However, is the owner of a server would like the players to have complete control, they can add the command that allows them to add more commands. Two other important restrictions are the minimum number of votes required for a vote to pass and the percent of ‘yes’ votes required. With all of these configuration options, server owners are able to use these restrictions to ensure the players don’t go too crazy with their power.
Next week, I plan on implementing a Respect Level system into the vote announcements. The idea is that respectful/trustworthy players will accumulate Respect Points over time. The server owner can then use this value to restrict certain proposals to players that don’t have a high enough Respect Level. Or, perhaps Respect could be used as a minimum value for running for an office, which is another feature that should be added soon. See you next week for another update!