doc/old/main-page
TrustCore is intended to provide core trust components useful to deal with UUIDs and changing names. This plugin provides a mixture of library functionality for use by other plugins, as well as commands for information about UUID and name history, further commands to set and track buddies you trust. To make the transition to changing names easier, the plugin will be able to deny login for players who changed their names to a previously known name, based on building a database about all known players, even for older versions of CraftBukkit and Minecraft.
Available Documentation
A first "quick and dirty" plugin version is pending approval, do read the following to utilize it:
http://dev.bukkit.org/bukkit-plugins/trustcore/pages/doc/old/quick-n-dirty/
About
Designed for the era after the UUID changes, this plugin is intended to provide the means to prevent too easy exploitation and confusion, to create a common look-and-feel more easily, also to enable plugins to make a trustworthy choice of if to allow use of a name in a command or not, based on the players intention (buddy system).
Strategy on using this plugin:
- Install it before people can actually change names.
- Let it import all player names that are known to the server.
- Let it look up all UUIDs and build a database.
- Let it block players who changed to already known names.
- Update all plugins to something that works with UUIDs, best be all harmonizing with each others concepts of dealing with special cases, as well as user-interfacing (utopia).
- Release the locking out of name changers, maybe, or partially release.
- Make server "complete" by changing to plugins that use the same methods and can rely or be controlled/assisted by TrustCore.
- Release the lockout for real.
Planned Features
Core Functionality
- Keep a database of name + uuid combinations, including more information to track changes and history of name changing. This should also be available for older Minecraft versions, in theory. At least compiling with the version in question should make it compatible.
- Forced and lazy lookup policies to query all known information from Mojang, either because your Minecraft version does not do it, or to track inconsistencies.
- Allow locking players out, who changed their name to a previously known one, or who changed their name at all (configurable). This is for legacy plugin survival.
- Allow locking players out completely, e.g. for disaster recovery. Maybe, if detectable.
- Add commands to get a summary of names and UUIDs, allow tracking name changing.
Basic Extensions
- Add a buddy system, to allow plugins and players to query if referencing a buddy based on the name is safe, allows to track name changes on your buddies.
Advanced Library Extendsions
As this is a library functionality, it will not have any effect without other plugins using it. Probably parts will be used internally for some things, though.
- Unique short token support for use on the server, to identify players, e.g. for bank accounts or signs. Creation and administering those is done by this plugin.
- Browser functionality for browsing through information. Command based, with extensions for navigation by clicking.
Advanced Interoperability Extensions
Mostly uncertain, but thinkable.
- Hooks for other plugins, e.g. to make tokens work with signs or commands of other plugins.
Requirments
- Database must be set up in the bukkit.yml file, because this will use the Ebeans server, at least at first. Prefer a local database.
Downside
This is why the project is experimental:
- Not yet implemented!
- If other plugins don't use this, only the core features for tracking and lookup are available.
- It might not really be ready for public use in time, however it could be used on a backup.
- It's not 100% sure, how/if i will actually pull this all through.
FAQ
- Why don't you name it "Protectionism" in the first place, as you won't implement the complicated stuff anyway?
- Good idea, will consider that!
- I will likely implement all that on my own server, unless i drop having a server. Can not state about how it will really support other plugins without other plugins adapting. Since many plugins will somehow adapt to UUID changes, one can't be sure what will be possible afterwards - neither if there will be other plugins than my own hooking into this.