Glotmorf on 24 Dec 2003 08:00:22 -0000


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

Re: [spoon-discuss] Junk


On 23 Dec 2003 at 19:26, Daniel Lepage wrote:

> Ok, I had an Idea for what to do on the Grid. The basic idea here is 
> that the Grid is covered with wreckage from the old grid, all compacted 
> and slightly fused together. The junk has varying height, each square 
> having its own height of junk.
> 	The junk is separated into Mounds, interconnected sets of squares that 
> all have height. Each square that has junk on it can be tunneled into; 
> but if all the squares of a mound are tunneled, the mound collapses. 
> This can be bad if your bot is under the mound.
> 	We each get one robot; the robots dig around looking for stuff, and do 
> stuff with them. There's no concrete goal yet, though it might be good 
> to start with, say, a one-in-twenty chance of finding a Shiny Thing 
> while you dig.
> 	The robots are battery operated, starting with 100 units of energy, 
> and unable to exceed 150 units; any robot action takes some energy 
> (moving is 15, digging into a filled square is 20, etc.). They also 
> have solar panels to replenish their power - each robot gains 20 energy 
> back every nweek, unless they're in a tunnel under the Junk.	
> 
> 	I have another section to this, which I'm leaving out right now, 
> covering Parts. They're a lot like speeder upgrades - you find them in 
> the junk and attach them to you, and they give you extra functionality. 
> For example, Lithium Batteries might let you store more Energy, and a 
> Big Stick might let you beat up other Robots.
> 	No hit points, yet...
> 
> 
> Any thoughts? Here's the proposal:
> 
> I protopropose:
> {{
> __Rising from the wreckage__
> 
> Append to r1635 the text:
> {{
> A square A and a square B are said to be $TYPE connected if B either is 
> the same square as A, or is $TYPE Consecutive to a square that is 
> connected to A, where $TYPE is one of Rectilinearly, Diagonally, or 
> nothing.
> }}
> 
> Create a new rule:
> {{
> __Junk on the Grid__ {*(Environments:Grid:Squares)*}
> 
> Each square of the Grid has a Height. Each square can also either be 
> Open or Filled.
> 
> If a square of Height one becomes Empty, its height becomes zero.
> If a square's Height is ever zero, it immediately becomes Open.
> 
> A Mound is a set of squares such that every square in the set is 
> Rectilinearly connected to every other square in the set, every square 
> in the set has Height greater than zero, and every square that's 
> rectilinearly connected to a square in the set but not in the set has 
> Height zero. [[i.e., a pile of junk squares surrounded by non-junk]]
> 
> If every square in a Mound is Open, that Mound Collapses - every square 
> in it becomes Filled and has its height decreased by one, and all 
> JunkBots in these squares are destroyed.
> }}
> 
> 
> Set the Grid to have heights as follows, where the height of each 
> square is the number given, and all squares are Filled except those 
> with height zero:
> 
> {{
> 1 4 0 1 1 5 5 5 4 0 0
> 0 1 0 0 0 2 1 0 0 0 0
> 2 4 0 1 1 4 2 0 1 0 1
> 5 2 1 4 0 1 4 1 4 1 4
> 2 4 0 0 1 1 2 1 0 0 2
> 1 0 1 1 6 6 7 5 0 1 5
> 1 1 4 3 5 2 5 1 0 1 4
> 0 1 2 4 2 0 0 0 0 0 0
> 2 5 1 2 4 0 1 0 1 0 0
> 5 5 0 1 0 1 4 1 4 0 0
> 0 1 1 4 0 0 1 1 1 0 0
> }}
> [[This map was generated by taking an 11x11 grid of zeroes, throwing in 
> 35 or so random 9s, and then averaging each square with its neighbors]]
> 
> 
> 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 owns a JunkBot 
> dictates what actions it takes; that is, the owner of a JunkBot may 
> cause it to take any action it could legally take.
> 
> 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 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.
> 
> No Junkbot can have more than 150 Energy; if a JunkBot has more energy 
> than it is allowed to have, it loses energy until it no longer has too 
> much.
> }}
> 
> 
> {{
> __Junkbot Abilities__ {*(Environments:Grid:Junkbots)*}
> 
> A JunkBot can pay 15 energy points to move itself to an Open square 
> adjacent to its location.
> A JunkBot can pay 20 energy points to cause a Filled square adjacent to 
> its location to become Open.
> A JunkBot cannot spend more energy than it has.

I have a problem with this part.

"Open" is not defined well.  You have "Open" as the state a 
square takes on when its height becomes zero.  With this as 
the sole possible definition, I gather that when a Filled 
square becomes Open it means its height becomes zero.

"Filled" doesn't seem to be defined at all, except to be the 
state of a square that's not Open.  Which means a square is 
Filled regardless of its height, as further demonstrated by 
the fact that all the starting non-zero-height squares, 
ranging in height from 1 to 7, are declared Filled.

However, "If every square in a Mound is Open, that Mound Collapses - every square 
in it becomes Filled and has its height decreased by one, and all 
JunkBots in these squares are destroyed."  But if the squares 
in the mound were all Open, that means their height was zero 
at the time, so either (a) there is no mound, since there is 
no set of contiguous non-zero-height squares, or (b) the 
height of all the squares becomes -1.

Further, no provision seems to be made in the act of changing 
an adjacent square from Filled to Open for varying height -- 
it costs the same energy to make a 7-height square Open as it 
does a 1-height square.  Is this logical?  If so, why have 
height at all?

Finally, if you're going to play with height and digging and 
all, I really wish you'd just introduce a Z axis, make it a 
grid of cubes, and let us tunnel up, down and sideways.  Plus 
have some provision for moving around on the surface without 
digging at all.

My two centimes.

						Glotmorf

-----
The Ivory Mini-Tower: a blog study in Social Technology.
http://ix.1sound.com/ivoryminitower

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