Database Object Design
We are using
PostgreSQL
Security system
Permissions
Worked out this system at last. The answer was easy, each file has 2 owners. A GM and a player; other than that is it set up like a Linux system.
chown
Each objects or directory of objects will have an owner and an owner GM.
Owner
Group
Other
chmod
Each Owner level can set the object as:
Directory
Readable
Writable
Executable
Thus an object might belong to a player and be writable by that player and his GM. Thus Every Player will play under a GM's control and perhaps the control of all GMs the group setting of GM.
groups
Groups are just lists of players or else GMs
Someone in the superuser group can override any setting.
In game Objects
Each level inherets the properties of the one above it.
Earth Object
Earth objects are objects that can not move under their own power. They are not alive.
Water Object
Water Objects are objects that can reproduce but are not very smart. Plants and other simple life forms are made with this data type.
Fire Object
Fire Objects are objects that can move and tend to need AI for what they do. Basic animals are described here.
Wind Object
Wind Objects are objects that can move and think. They have good AI and or scripting. They can be run by players. Theses objects include the 5 basic races of the game plus all sub-races.
Void Object
Void objects are objects of creativity. They could be anything from gods to Super strong AI's with many robot subparts. Often they are run by the Game Masters only.

