Daniel Lepage on 14 Jan 2004 04:54:54 -0000


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

[Spoon-business] JunkBots


Facts about the following proposal:
* It contains only the very basic JunkBot stuff - what they are, how to get one, how to send commands, what the command MOVE does. * It states that all commands must be sent to the public forum; it includes in a comment what should be changed once a script is available to receive and reveal the information at the appropriate time. * I will add to the Wiki a page containing all of the Command Descriptions (all one, from this prop); it is my belief that while Dave is required to maintain a publicly accessible copy of all game documents, it is sufficient that he see to it that such a copy exists, so Dave need not track Command Descriptions in the database.

I propose:

{{
__JunkBot Madness!__

Create these rules:
{{
__Junkbots__ {*(Environments:Grid:JunkBots)*}

Each player may own up to one JunkBot. JunkBots are Grid Objects.

No player may own more than one JunkBot.

A Player who has no JunkBots may pay 10 points and 2 bandwidth to create one; the newly created one is owned by its creator and is placed on a random Empty square. If no such square exists, a random square with no Bots in it has its height set to zero, and the Bot is placed there.

}}

{{
__JunkBot Energy__ {*(Environments:Grid:JunkBots)*}

Each JunkBot has a number of units of Energy.

At the beginning of each nweek, the Energy of each JunkBot in an Empty square increases by 20.

When a new JunkBot is created, it has 100 Energy.

Each Junkbot has a Maximum Energy, which is initially 150. If a JunkBot has more energy than its Maximum Energy, it loses energy until it no longer has too much.
}}

{{
__Commands__

There exist objects called Commands, and Game Documents called Command Descriptions.

A Command Description describes a valid type of Command. A Description consists of a Command, a Cost, a set of Choices (which may be empty), and a list of effects.

Commands must be submitted in the following format:
<time>: <name> <choice1> <choice2>...
where <time> is either 1, 2, or 3, <name> is the name of the command, and <choice1>,<choice2>,etc. are the choices required by the Command Description (if there are any). The number signified by the <time> is the Command's Time.

During an nweek, each player who owns a JunkBot may send any number of commands to the JunkBot they own by posting them to the public forum.

[[Once a script is available to handle the reception and subsequent revelation of commands, the end of the above sentence should be modified to read "privately sending them to an address/webform of the administrator's choice.", and the following paragraph should be added:

The admin may designate an email address and/or webform to which Commands should be sent; if e does not, e is assumed to have designated eir own email address. Commands sent to other addresses are ignored. All Commands submitted during an nweek are private information until the end of that nweek.
]]

Players may not send Commands to JunkBots they don't own, unless a rule says otherwise.

At the end of each nweek, the administrator should make all Commands sent during the previous nweek available for public review. The Commands sent during a given nweek are said to be the Active commands for the next nweek; the set of all Commands legally sent to a given JunkBot during a given nweek is that JunkBot's Command Queue for the next nweek.

At the end of the first checking period of each nweek, every JunkBot executes all commands in its Command Queue that were sent with Time=1, in the order in which they were submitted. At the end of the second checking period of each nweek, every JunkBot executes all commands in its Command Queue that were sent with Time=2, in the order in which they were submitted. At the end of the third checking period of each nweek, every JunkBot executes all commands in its Command Queue that were sent with Time=3, in the order in which they were submitted.

When a JunkBot executes a Command, the following occurs:
If the command has a cost, the JunkBot pays that cost if able. If it does not have what is needed for the cost, it pays as much of it as it can, and ignores the rest of the command. If it successfully pays the cost, the effects of the Command occur; if any one of them is forbidden by a rule, nonsensical, or impossible, then that effect fails to occur.

No JunkBot may execute any Command unless the Rules specifically permit them to.

All JunkBots may execute the Command Move.
}}

Create a new Command Description:
{{
__MOVE__

Cost: 10 Energy
Choices: Choose a direction (Left, Right, Up, or Down)
Effect: The Junkbot moves one space in the chosen direction, if it is able to. If this would result in two JunkBots sharing the same location, each JunkBot loses 5 Energy (or all its energy, if it has less than 5), and the JunkBot executing this command doesn't move.
}}
}}

--
Wonko

_______________________________________________
spoon-business mailing list
spoon-business@xxxxxxxxx
http://lists.ellipsis.cx/mailman/listinfo/spoon-business