Sociopolitical Ramifications Mucker Policy version 3.0 ------------------------------------------------------ 1.0 How can I be a MUCKER? We welcome both experienced and neophyte muckers on SPR. We ask only two things : 1 ) You help the general SPR public by writing useful programs of some social benefit or aid to building 2 ) That you abide by the SPIRIT and LETTER of our mucker policy, laid out in the remainder of this file. If you are unsure as to whether a program you wish to write or use falls into one of the "grey" areas of these guidelines, ASK FOR CLARIFICATION! We may be able to suggest ways to accomodate your needs. 2.0 What does a mucker do? 2.1 Learning to Program Start by reading the MUF tutorial (info muf-tutorial), MUF manual (man), and the changes file (info changesfb*). Alternately, MUF classes may be held when interest is high enough. Contact the MUF wizards for more information on classes. If you should need more help than this, let us know. We may be able to put you in touch with another mucker willing to tutor you. NOTE : If you write a small program to test something, or find you no longer need a program, please remember to @recycle it! 2.2 The Big-Time -- Public Programming Whenever writing a program, especially when a program will be publicly accessible (set link_OK), make sure it adheres to these guidelines : 1 ) It should NOT violate guidelines of privacy, respect, or honesty (see section 3.0 of this policy), 2 ) It should not be wasteful-- do not use more space or CPU time than is reasonable, or duplicate programs that already exist, 3 ) It should be useful to the muck in some way, 4 ) The code should be neat and orderly (examine section 2.3 below for these guidelines). 5 ) The program should be set up for @view a ) @set =_docs: If one of your programs meets the guidelines in this document, you may ask to have it made publicly available. Such a program must be set "link_OK" in order for people to use it. (@set =l). Such a program that would be useful as a command for everyone may be installed as a global. Type 'globals' to see some commands available. To help in avoiding program duplication, the program 'plib' is available. Type it and follow the directions from there :) If you find a program that would only be a modification of an existing one, you may either contact the program owner to change it, or, if the header declares it to be public property, use the base program, being sure to credit ALL authors, and make the changes. Then submit it to the MUF wizards for review. 2.3 Coding Style Guidelines As of June 16, 2001, the following guidelines will be in effect regarding programs submitted for public use and Mucker bits: 1 ) All programs shall have a header! The header should minimally contain the following information : a ) The program name and version number, b ) your name (RL or character), c ) if modified, the name of the other authors and what they contributed, d ) instructions on setting up the program. 2 ) USE COMMENTS TO MAKE PROGRAM EASY TO FOLLOW!! A comment takes up little space, and can make a program easier to maintain or modify for those who come later. It will also speed up the time it takes to approve a program by allowing the examiner to see at a glance what you're doing. 3 ) USE INDENTATION! Whatever indentation schem you use, be consistent. At a minimum, indent two spaces in each of these situations : a ) When writing the body of a routine, b ) When writing the body of a loop, c ) When writing the body of a conditional expression. 3.0 Guidelines to Proper Programming Etiquette 3.1 Privacy Players of SPR are entitled to privacy. If you couldn't find something out by normal means or without the permission of the users involved, you should not find it out with a program. ***** Normal means does NOT include abuse of the powerful MPI command language. That means one does not use MPI to violate the Privacy of others, or attempt to manipulate or look at things or rooms you do not own. However, when you use certain programs, it is understood that the program may store, relay, or use _reasonable_ information for _reasonable_ purposes. If you are unsure if your program would meet this guideline, ASK! For the purposes of SPR's MUF policies, we recognize 2 types of programs that may or may not violate the privacy policies. They are : 1 ) Bugs * A bug relays information from a person or room to another person or room, either by immediate transmittal or by storing it for later reading. * Programs such as broadcast when used by someone who IS aware the program is there is not considered a bug. * Such a program becomes a bug when the individual being spyed upon is unaware of the transmital or recording. HOWEVER, if you're involved in role-play and the organizers allow it, bugs may be used ONLY in those areas specified for the role-play. A list of all such rooms should be sent to the MUF and PR wizards. If we have no record and receive a complaint, it's your tail on the line. 2 ) Scanners * A scanner find information about other players, their properties, or belongings that would not normally be available. * A scanner is legal ONLY when it shows messages or properties set specifically for that program, OR when the player MUST set a property to use the program. Along with instructions for setting the prop, the player must be told what they are giving the program permission to do. 3.2 Respect Certain programs may, while not invading a player's privacy, harass that player or make it possible to do so in a way that is undetectable. ALL players are entitles to respect and dignity, thus such programs are ILLEGAL. There are effectively two types of programs that are quite easy to cross the line with. These are : 1 ) Spoofers * Allow a player to simulate another player's actions * Programs should CLEARLY mark spoof messages that could be confused as another player's words or actions as a spoof. 2 ) Markers * Changes, adds, or removes player properties WIHTOUT their implicit permission. * Programs should search for a prop that denotes the player has given such permission or they are in violation of this policy. 3.3 Other Prohibited Programs (MUF or MPI) SPR prohibits general teleporter programs that would allow players to invade private rooms or that are intended to violate virtual reality, e.g. in a way that violates privacy or in areas where it is nondesired encouraging people to teleport directly to a room, ignoring intervening areas. Teleporters may be allowed in limited cases, but only for very specific reasons and purposes. They must follow these restrictions: 1 ) Players must agree explicitly, or implicitly by entering a vehicle, following another player, being picked up by that player, etc. to be moved. 2. Programs to move players can only move players from or to rooms for which they have permission, and under such circumstances as are appropiate, e.g. a taxi might have stops in different rooms with the permissions of these rooms' owners. 3. Such programs must be appropiate to the circumstances, the "virtual reality" of the situation in question, etc. Additionally, PROGRAMS WHICH YOU DID NOT WRITE AND FOR WHICH YOU HAVE NO PERMISSION TO INSTALL BY THE AUTHOR OF THE PROGRAM ARE ILLEGAL!! It's called piracy. If you are discovered with pirated programs and it is determined you knew them as such, your mucker bit WILL be suspended for a MINIMUM of 6 months. 4.0 Punitive Measures Should one of your programs be found in violation of these guidelines, the following will occurr. 1 ) Your mucker bit (builder-bit if an MPI program) will be suspended 2 ) You will be required to explain why you have the program and why you need something that is against our policies. 3 ) A --THOROUGH-- investigation will be conducted. 4 ) Based on the results of the above, your bit may be reactivated, suspended temporarily or permanently, or, in severe/repeat cases, toading. 5.0 Macros Macros should be commented, or else obvious from the name or definition as to what they are intended to do. Yes, many of the current macros do violate this policy right now, but work is underway to fix them. Rome wasn't built in a day. 6.0 The Final Word If you have any questions about this policy or any matters related to it, please ask a knowledgeable individual. Remember that ignorance is no excuse. In all disputes related to MUCKER policy and programming on SPR, the judgement of the SPR MUF wizard is final and supercedes the guidelines of this policy. 7.0 Mucker Bits M1 - Starter When requesting a mucker bit on SPR, this is the one you start with. This will allow access to approximately 75% of the MUF primitives. This allows you to learn MUF without fear of damaging anything. M2 - Standard This bit is given out only to those with a proven track record on SPR. In other words, you should have written, tested, and debugged some useful programs BEFORE you even consider asking. A bare MINIMUM of 4 programs should be submitted at the time of the request. M3 - Special This bit is not normally available for the asking due to the rather sensitive data it allows the programmer to retrieve from the database. This level is available ONLY at the MUF wizard's discretion and with a VERY good reason. 8.0 Credits Adapted from the original CROSSROADS Muckers policy. Original draft v1.0 written 2/4/91 by Tygryss (Insane Mucker in Residence) Revised v1.1 3/12/91 by Lynx (Lynxiwynxipooflemuffins) Revised v1.2 3/29/91 by Cinnibar Revised v2.0 2/28/92 by Lynx Revised v2.1 3/ 8/92 by Lynx Revised v2.2 3/15/92 by Lynx Revised v2.3 6/11/94 by Riss to include MPI and Mucker Levels. Revised v2.4 2/22/98 by Syvel, adapted for use on Sociopolitical Ramifications. Revised v3.0 7/21/2001 by Lord Charabis