Sunday, July 10, 2022

Proposal: Start Your Engines

Reached quorum 7 votes to 0. Enacted by Kevan.

Adminned at 11 Jul 2022 17:28:35 UTC

Create a rule called “The Arena” (as a subrule of “Bouts”, if that rule exists):-

Bouts take place in the Arena, which is mapped as a row of thirteen spaces from left to right. Each Bot in the Arena may face either left or right. When a Bout begins, the two Bots taking part are placed in the two spaces at either end of the Arena (assigning these at secretly random), facing one another. All of this is tracked privately by the Announcer.

During a Bout, the Announcer runs the Script of each Bot in turn, starting with the Bot on the left, and continuing this process until ten turns have been taken in the Bout. The Bout then ends, and the Announcer posts a blog entry summarising its events.

Add a new rule, “BotScript”:-

Each Bot has a Script, being a list of up to ten Triggers, each Trigger having a corresponding Reaction. Bots’ Scripts are tracked privately by the Announcer.

An Operator may change their Bot’s Script at any time by privately informing the Announcer of this.

Triggers are:-

* “If the X space(s) in front are empty…”, where X is a number from 1 to 13

Possible Reactions are:-

* “...move forwards X times”, where X is a number from 1 to 13
* “...move backwards X times”, where X is a number from 1 to 13
* “...turn to face the other way”

To run a Script, the Announcer reads through its list from top to bottom until they find a Trigger which is true for the Bot in question: upon finding one, they apply the corresponding effect, and this ends the run of the Script. If they reach the end of the Script and no Triggers are true, nothing happens as a result.

A Bot can only move into an empty space: if an individual move step would take the Bot into an occupied space, or if no space exists to move to, the Bot remains in its position instead.

A very basic starting system for programming bots, to see whether this makes any sense.

Comments

lendunistus: he/him

10-07-2022 17:44:34 UTC

I’d add an extra row or two, one-dimensional gameplay seems too restrictive

Kevan: he/him

10-07-2022 17:49:26 UTC

Perhaps - although even three rows of a 2D grid might be enough to lose your opponent on. But this is just a bare bones idea to see if people want to play something like this and the Announcer wants to process it.

SingularByte: he/him

10-07-2022 18:40:50 UTC

Honestly I’ll probably be mentally imagining it to be a 2D arena anyway even if it’s 1D. The maths might get complicated if it were to become actual 2D arena.

Nothing would stop a proposal to make a reaction where you drive around a bot to get behind them, or to dodge in place to represent sideways movement.

Kevan: he/him

10-07-2022 18:46:39 UTC

Oh, sure, this is very much intended as a simplified model of two bots moving around in a 2D arena space where they have no problem turning to face one another.

Lulu: she/her

10-07-2022 23:45:17 UTC

imperial

Trapdoorspyder: he/him

11-07-2022 04:07:44 UTC

for

SingularByte: he/him

11-07-2022 05:05:53 UTC

for

Josh: Observer he/they

11-07-2022 08:25:25 UTC

for

Darknight: he/him

11-07-2022 12:16:56 UTC

for

Snisbo: she/they

11-07-2022 17:17:32 UTC

for Even though I’m still a bit confused how turning works in 1 dimension

Snisbo: she/they

11-07-2022 17:17:53 UTC

… nevermind