ColdCore New Admins Guide An Introduction to Setting Up a ColdCore Database written by Chuck Shepherd last updated and HTML-ized by Brandon Gillespie Note This is a rough draft of a 'New Admin Guide'. Please send comments/questions/topic we want to be included in this. I'm hoping for it to serve the same function eventually as the 'New Archwiz FAQ' for MOO. DISCLAIMER: A lot of important information is left out. If you feel something should be included, please let me know! This document will improve a lot faster if others help. -- Chuck Purpose The ColdCore New Admins Guide is meant to (eventually) discuss some of the issues that new Admins run into when first setting up the ColdCore database used with the cold virtual environment server. It is not meant to be a general introduction to the Core from a users point of view, or an introduction to the ColdC language. Some terminology Some preliminary definitions: driver The software program which manages the database. database Procedures and information used to define the specific behaviour of the driver. server Both a driver and database functioning together on a network site. ColdC The object-oriented database language used by the driver. Loosely based off C with object extensions. ColdCore The primary Virtual Environment System core database under development by the Cold Project. Genesis The Cold Project's ColdC driver. Initial Login After you start up the server, telnet to port 1138 to that machine. For the curious, Brandon reports that 1138 was not chosen solely as a nice sounding random number, but is minor homage to George Lucas and Star Wars fandom. The label 'THX 1138' is found in several places throughout the films of George Lucas. Specifically, in Star Wars IV Luke and Han transfer a prisoner from cell block 1138. After issuing the telnet command, the following splash screen will be displayed if the server is running: ------------------------------------------------------------------------ + ColdCore + Virtual Environment Server "Make it idiot proof and someone will make a better idiot." Administrators: nothing Currently Connected users: 0 Core: ColdCore 2.0 Driver: Cold Genesis 0.2-8 ** Use 'H?elp' for a list of commands ** ------------------------------------------------------------------------ The quotation and database version may differ from what is shown here. At this point, create yourself a user with the create command, given with the syntax: create where: name is the name you wish to have on this world. password is the password you assign to the user, and email@host is an email address for the character. After you connect, you will be placed into the pit. *** IMPORTANT *** At this time, all new users will be Admins with full access to the database. Since being an Admin is equivalent in powers to having a 'root' permissions for the database, or being a wizard on a MU*, one of the first things you will want to do is to change the default user class to something more benign. Setting the User Class When ColdCore is first started up, the default user class is '$admin', which gives new users full access to the server. Since you probably don't want everyone on your cold server to be a administrator, for security reasons, it's a good idea to change the default user class to something less powerful than $admin for anyone who will not be an administrator. If you want new starting characters to be programmers by default, issue the following commands as an Administrator: @mojo on ;$sys.set_starting('new_user_class,$programmer) @mojo off Other acceptable user classes are $user and $builder. These can replace the '$programmer' to make the default user class either $user or $builder. About @mojo The @mojo command provides a tool for turning system access to the database on and off. It's a simple protection mechanism to help administrators from accidentally destroying or messing up parts of the database. Of course, the protection is only as good as @mojo on When you are done using the super-Admin powers, make sure to turn that ability off. This can be done with the command: @mojo off Trivia Note Mojo is power in vodoo. Making someone an Admin Now that you've made sure that everyone is a $programmer, $builder, or $user instead of an $admin, you might decide that a $user should be a $builder, $programmer, or $admin, or vice versa. If you have @mojo on, the @adjust user command can make someone an Admin. Using: @adjust to an admin user will become an Admin. Similarly, @adjust to a programmer will make someone a programmer. The @adjust command also works for changing guests into permanent users of the system. Changing the Title and Name of the server How do you change the name and title of the database? The default name of the server is "ColdCore 2.0" under the parameter server_name. This can be set with the command (setting @mojo if required): ;as $motd; server_name = "My New Server Name" The default Server Title, "Virtual Environment Server", is changed by: ;as $motd; server_title = "My New Title" Changing the Object Name When you reference an object name by it's object name (such as $user, $edit, etc) it may sometimes be useful to change it. You do this simply with the @rename command, such as: @rename $old_obj_name $new_obj_name If both names begin are in the standard Object Name syntax (beginning with a dollar-sign) @rename will figure it out and change the object name instead of the VR name. Changing the port number of the server If you want your default number to be something different than 1138. do the following: @mojo on ;as $login_daemon; .set_default_port(NEW PORT NUMBER); @mojo off The next time the server is restarted the port number will be NEW_PORT_NUMBER. You can get the current port number by running the command: ;$login_daemon.current_port(); You can also use .set_default_port() to set the port number for other daemons, such as the $http_daemon. *** Sections I still need to write **** •Setting up the $http interface. •Security Issues. •Using the Backdoor (otherwise titled, when coding disasters happen) •More... send suggestions?