Wednesday, August 01, 2007

Proposal: Arrays and StacksBa

Failed to Acheive a najority of Votes within 48 hours.
2 - For
3 - Against
-Amnistar

Adminned at 03 Aug 2007 17:14:39 UTC

Remove the rule called ‘The Monkey Line’.

Rewrite the rule ‘Status’ to say:

Each Monkey has a Status tracked in the GDNT which is either In the Line, or In the Barrel. The default status for a monkey is In Line.

Add the following subrule to Status called ‘The Monkey Line’

The Monkey Line is an endless line of chalk squares (known as “Positions”), each of them numbered, starting from one and going up. Each monkey whose status is “In the Line” appears once and only once in The Monkey Line. The Monkey Line is tracked in a wiki page called “Monkey Dynasty Gamestate Documents”. Position one is known as the top of the list. Each Position may contain one or more Monkeys, or be empty. Whenever a Monkey joins the game or has eir status changed back to “In the Line”, they are placed in the lowest numbered empty Position. Whenever a Monkey has eir status set to something other than the Monkey Line or goes idle, they are removed from the monkey line and their position becomes empty.

If a Position is empty (and a later Position has a Monkey in it), or if a Position has more than one Monkey in it, then the Line is Unbalanced.

If a Position is empty, but the position immediately after it has a single Monkey in it, then any Monkey may move that Monkey into the empty position.

If a Position has two Monkeys in it, then any Monkey may increment the Position of every Monkey after that Position, and place the alphabetically-earliest of the two Monkeys into the newly vacated Position.

As a daily action, a monkey that is in the line may change their status from In the Line to In the Barrel.

Add the following subrule to status called ‘The Monkey Barrel’

The Monkey Barrel is an endless pile of squashed monkeys spaces (known as “Slots”), each of them numbered, starting from one and going up. Each monkey whose status is “In the Barrel” appears once and only once in The Monkey Barrel. The Monkey Barrel is tracked in a wiki page called “Monkey Dynasty Gamestate Documents”. Position one is known as the bottom of the barrel.
Each Position may contain one or more Monkeys, or be empty. Whenever a Monkey has eir status set to ‘In the Barrel’ they are placed in the slot one greater than the current largest occupied slot. Whenever a Monkey has eir status set to something other than the Monkey Barrel or goes idle, they are removed from the monkey line and their position becomes empty. If a Monkey goes idle while in the barrel, if he rejoins the dynasty instead of being placed in the monkey line, he is instead placed in whatever slot of the barrel he was in when he left. 

If a Slot is empty (and a later Slot has a Monkey in it), or if a Slot has more than one Monkey in it, then the Barrel is Unbalanced.

If a Slot is empty, but the slot immediately after it has a single Monkey in it, then any Monkey may move that Monkey into the empty slot.

If a Slot has two Monkeys in it, then any Monkey may increment the Slot of every Monkey after that Slot, and place the alphabetically-earliest of the two Monkeys into the newly vacated Slot.

As a daily action, a monkey that is in the barrel may change their status from in the barrel to in the line, but they may only do so if the barrel is not unbalanced and there is no monkey in a slot larger than theirs. (in other words, they are at the top of the barrel).

If anyone has an elegant way to handle trees, I would love to here it. I tried. I phailed.

Comments

Amnistar:

08-02-2007 00:35:47 UTC

for much clearer :)

Oracular rufio:

08-02-2007 04:02:52 UTC

1. Is the status “In the Line”, “In Line”, “Line”, “Monkey Line”?  You seem to have called it all of these things in there at different points.

2. “Whenever a Monkey has eir status set to something other than the Monkey Barrel or goes idle, they are removed from the **monkey line** and their position becomes empty.”  Now no one can be in the Monkey Line.

3. How do we keep track of idle people’s positions in the barrel?  Seems better to treat it more like the line.

4. The barrel doesn’t actually work like a stack right now - anyone can change their position and go to the end of the line, not just the one monkey at the top of the stack.  Unless I’m misunderstanding the intent.

This does seem neater, but I’ll hold my vote for now.

Chivalrybean:

08-02-2007 04:14:27 UTC

Idle people are essentially ignored, right?

Amnistar:

08-02-2007 04:39:16 UTC

Save that you can’t idle out of the barrel.

Kevan:

08-02-2007 09:46:22 UTC

against I like the idea of a barrel, but not that it copies the whole queue mechanic.

Clucky:

08-02-2007 11:04:49 UTC

How would you rather have it work, Kevan? You need a way for the dance to refer to specific monkeys, and a stack is as good as any (plus, of all he common data structures it makes sense)

90000:

08-03-2007 13:28:56 UTC

against

Hix:

08-03-2007 16:05:44 UTC

against

Clucky:

08-03-2007 16:12:57 UTC

Are people voting against this because of the mechanic itself (barrel = stack) or simply because of the execution problems Orcular pointed out?