(set: $NumberofOptions to 8)(set: $PlayerSteps to 0)(set: $PlayerPunch to 0)(set: $PlayerKick to 0)(set: $PlayerDodge to 0)(set: $PlayerGuard to 0)(set: $PlayerGrab to 0)(set: $Deviation to 1)(set: $PlayerLocation to 1)(set: $PrevLocation to 0)(set: $BoardState to (a: "a","b","c"))(set: $Lap to 0)(set: $EnemyPunch to 0)(set: $EnemyKick to 0)(set: $EnemyDodge to 0)(set: $EnemyGuard to 0)(set: $PlayerLife to 7)(set: $PlayerPosture to 7)(set: $EnemyLife to 7)(set: $EnemyPosture to 7)
Welcome to Rondel Fighter! Each round you build strength in up to 3 kinds of attacks by moving around the board.
After that, both you and your enemy choose an action and use all of its strength. The winner deals damage. Last fighter standing wins.
The board resets after every 3 laps. Use that to mix up your strategies!
[[Prepare for your fight->Welcome]](set: $NumberofOptions to 8)(set: $PlayerSteps to 0)(set: $PlayerPunch to 0)(set: $PlayerKick to 0)(set: $PlayerDodge to 0)(set: $PlayerGuard to 0)(set: $PlayerGrab to 0)(set: $Deviation to 1)(set: $PlayerLocation to 1)(set: $PrevLocation to 0)(set: $Lap to 0)(set: $EnemyPunch to 0)(set: $EnemyKick to 0)(set: $EnemyDodge to 0)(set: $EnemyGuard to 0)(set: $EnemyLife to 7)(set: $EnemyPosture to 7)
(display: "GenerateBoard")
Here is where future iterations will allow you to customize the deck of actions from which your boards are generated, and possibly improve stats. Haven't quite worked out progression
[[Let the fight begin!->Loop1]]
(if: $PlayerSteps is 3)[(set: $PlayerSteps to 0)(display: "BattleChoices")
](else:)[
(for: each _i, ...(range:1,$NumberofOptions))[(set: _dude to $BoardState's (_i))(if: _i is $Viable1 or _i is $Viable2 or _i is $Viable3 or _i is $Viable4 or _i is $Viable5 or _i is $Viable6)[(link: "Prepare to ")[{
(set: $PrevLocation to $PlayerLocation)
(set: $PlayerSteps to $PlayerSteps+1)
(set: $PlayerLocation to _i)
(if: _dude is "Punch")[(set: $PlayerPunch to $PlayerPunch + 1)]
(if: _dude is "Kick")[(set: $PlayerKick to $PlayerKick + 1)]
(if: _dude is "Dodge")[(set: $PlayerDodge to $PlayerDodge + 1)]
(if: _dude is "Guard")[(set: $PlayerGuard to $PlayerGuard + 1)]
(if: _dude is "Grab")[(set: $PlayerGrab to $PlayerGrab + 1)]
(set: _enemyMana to (random: 1,5))
(if: _enemyMana is 1)[(set: $EnemyPunch to $EnemyPunch + 1)]
(if: _enemyMana is 2)[(set: $EnemyKick to $EnemyKick + 1)]
(if: _enemyMana is 3)[(set: $EnemyDodge to $EnemyDodge + 1)]
(if: _enemyMana is 4)[(set: $EnemyGuard to $EnemyGuard + 1)]
(if: _enemyMana is 5)[(set: $EnemyGrab to $EnemyGrab + 1)]
(goto: "Loop1")
}] _dude](else:)[ (set: _dude to $BoardState's (_i))(if: _i is $PlayerLocation)[You are here.](else:)[Future move: _dude]]
]]Fire: $PlayerFire ---Enemy Fire: $EnemyFire (set: _stepsleft to (3-$PlayerSteps))---Steps Until Combat: _stepsleft
Water: $PlayerWater ---Enemy Water: $EnemyWater (set: _lapsleft to (3-$Lap))---Laps Until Board Reset: _lapsleft
Wind: $PlayerWind ---Enemy Wind: $EnemyWind ---Void: $PlayerVoid ---Enemy Void: $EnemyVoid
Earth: $PlayerEarth ---Enemy Earth: $EnemyEarth ---Melee: $PlayerMelee ---Enemy Fire: $EnemyMelee {
(set: $Viable1 to ($PlayerLocation+1))
(set: $Viable2 to ($PlayerLocation+2))
(set: $Viable3 to ($PlayerLocation+3))
(set: $Viable4 to ($PlayerLocation-$NumberofOptions+1))
(set: $Viable5 to ($PlayerLocation-$NumberofOptions+2))
(set: $Viable6 to ($PlayerLocation-$NumberofOptions+3))
(if: $PrevLocation > $PlayerLocation)[(set: $PrevLocation to 0)(set:$Lap to ($Lap+1))]}(set: $PlayerChoice to "Nothing")(set: $PlayerLevel to 0)(set: $EnemyChoice to "Nothing")(set: $EnemyLevel to 0)
(display: "Enemy Turn")
(if: $PlayerPunch > 0)[Level $PlayerPunch (link: "Punch")[ (set: $PlayerChoice to "Punch")(set: $PlayerLevel to $PlayerPunch)(set: $PlayerPunch to 0)(goto: "Resolve")] Punch beats Grab or Dodge.
](if: $PlayerKick > 0)[Level $PlayerKick (link: "Kick")[ (set: $PlayerChoice to "Kick")(set: $PlayerLevel to $PlayerKick)(set: $PlayerKick to 0)(goto: "Resolve")] Kick beats Punch or Guard.
](if: $PlayerDodge > 0)[Level $PlayerDodge (link: "Dodge")[(set: $PlayerChoice to "Dodge")(set: $PlayerLevel to $PlayerDodge)(set: $PlayerDodge to 0)(goto: "Resolve")] Dodge beats Kick or Grab.
](if: $PlayerGuard > 0)[Level $PlayerGuard (link: "Guard")[(set: $PlayerChoice to "Guard")(set: $PlayerLevel to $PlayerGuard)(set: $PlayerGuard to 0)(goto: "Resolve")] Guard beats Dodge or Punch.
](if: $PlayerGrab > 0)[Level $PlayerGrab (link: "Grab")[(set: $PlayerChoice to "Grab")(set: $PlayerLevel to $PlayerGrab)(set: $PlayerGrab to 0)(goto: "Resolve")] Grab beats Guard or Kick.]
(set:_damage to 0)(if: $PlayerChoice is $EnemyChoice)[Both fighters used $PlayerChoice (if: $PlayerLevel is $EnemyLevel)[at the same level! Both fighters take 1 chip damage.(set: $PlayerLife to it-1)(set: $EnemyLife to it-1)](elseif: $PlayerLevel > $EnemyLevel)[(set: _damage to ($PlayerLevel-$EnemyLevel))(set: $EnemyLife to it-_damage)but the Player's was stronger! The enemy takes _damage](elseif: $PlayerLevel < $EnemyLevel)[(set: _damage to ($EnemyLevel-$PlayerLevel))(set: $PlayerLife to it-_damage)but the Enemy's was stronger! The player takes _damage]](elseif: $PlayerChoice is "Punch" and ($EnemyChoice is "Grab" or "Dodge"))[The player's jab is faster than the enemy's $EnemyChoice! Enemy takes $PlayerLevel.(set: $EnemyLife to it-$PlayerLevel)](elseif: $PlayerChoice is "Kick" and ($EnemyChoice is "Punch" or "Guard"))[A swift kick overpowers the enemy's $EnemyChoice! Enemy takes $PlayerLevel.(set: $EnemyLife to it-$PlayerLevel)](elseif: $PlayerChoice is "Dodge" and ($EnemyChoice is "Kick" or "Grab"))[The player ducked the enemy's $EnemyChoice! Enemy takes $PlayerLevel.(set: $EnemyLife to it-$PlayerLevel)](elseif: $PlayerChoice is "Guard" and ($EnemyChoice is "Punch" or "Dodge"))[Patience beats the enemy's $EnemyChoice! Enemy takes $PlayerLevel.(set: $EnemyLife to it-$PlayerLevel)](elseif: $PlayerChoice is "Grab" and ($EnemyChoice is "Guard" or "Kick"))[The enemy's $EnemyChoice left them open for a throw! Enemy takes $PlayerLevel.(set: $EnemyLife to it-$PlayerLevel)](else:)[The enemy's $EnemyChoice beats the player's $PlayerChoice dealing $EnemyLevel damage!(set:$PlayerLife to it-$EnemyLevel)]
Enemy Life: $EnemyLife
Punch: $EnemyPunch -----Dodge: $EnemyDodge
Kick: $EnemyKick -----Guard: $EnemyGuard
Grab: $EnemyGrab
(if: $PlayerLife < 1)[You Lose!
[[New Game->Start]]](elseif: $EnemyLife < 1)[You Win!
[[New Game->Start]]](else:)[The fight [[continues!->Loop1]]]{(set: $EnemyOptions to (ds: ""))
(if: $EnemyFire > 0)[(set: $EnemyOptions to it + (ds: "Fire"))]
(if: $EnemyWater > 0)[(set: $EnemyOptions to it + (ds: "Water"))]
(if: $EnemyWind > 0)[(set: $EnemyOptions to it + (ds: "Wind"))]
(if: $EnemyEarth > 0)[(set: $EnemyOptions to it + (ds: "Earth"))]
(if: $EnemyVoid > 0)[(set: $EnemyOptions to it +(ds: "Void"))]
(if: $EnemyMelee > 0)[(set: $EnemyOptions to it + (ds: "Melee"))]
(set: $EnemyPunch to (either: ...$EnemyOptions))
(if: $EnemyPunch is "Fire")[
(set: $EnemyLevel to $EnemyFire)
(set: $EnemyFire to 0)
(if: $EnemyValue is 1)[(set: _max to 4)]
(if: $EnemyValue is 2)[(set: _max to 6)]
(if: $EnemyValue is 3)[(set: _max to 8)]
(if: $EnemyValue is 4)[(set: _max to 10)]
(if: $EnemyValue is 5)[(set: _max to 12)]
(if: $EnemyValue >= 6)[(set: _max to 20)]
(set: $EnemyValue to $EnemyLevel*(random: 1,_max))
]
(if: $EnemyPunch is "Water")[
(set: $EnemyLevel to $EnemyWater)
(set: $EnemyWater to 0)
(set: $EnemyValue to (3*$EnemyLevel+(random: 1,8))))]
(if: $EnemyPunch is "Wind")[
(set: $EnemyLevel to $EnemyWind)
(for: each _i, ...(range:1,$EnemyLevel))[
(set: _die to (either:...(4,6,8,10,12,20)))
(set: _roll to (random: 1,_die))
(set: $EnemyValue to it + _roll)]
(set: $EnemyWind to 0)]
(if: $EnemyPunch is "Earth")[
(set: $EnemyLevel to $EnemyEarth)
(for: each _i, ...(range:1,$EnemyLevel))[
(set: _roll to ((random: 1,4)+(random: 1,4)+(random: 1,4)))
(set: $EnemyValue to it + _roll)]
(set: $EnemyEarth to 0)]
(if: $EnemyPunch is "Void")[
(set: $EnemyLevel to $EnemyVoid)
(for: each _i, ...(range:1,$EnemyLevel))[
(set: _roll to (random: 1,10))
(set: $EnemyValue to it + _roll)]
(set: $EnemyVoid to 0)]
(if: $EnemyPunch is "Melee")[
(set: $EnemyLevel to $EnemyMelee)
(set: $EnemyValue to $EnemyLevel*5)
(set: $EnemyMelee to 0)]
}The Enemy used a level $EnemyLevel $EnemyPunch attack for $EnemyValue power!Enemy Life: $EnemyLife
Punch: $EnemyPunch -----Dodge: $EnemyDodge
Kick: $EnemyKick -----Guard: $EnemyGuard
Grab: $EnemyGrab {
(set: $EnemyOptions to (a: "hi"))
(if: $EnemyPunch > 0)[(set: $EnemyOptions to it+(a:"Punch"))]
(if: $EnemyKick > 0)[(set: $EnemyOptions to it+(a:"Kick"))]
(if: $EnemyDodge > 0)[(set: $EnemyOptions to it+(a:"Dodge"))]
(if: $EnemyGuard > 0)[(set: $EnemyOptions to it+(a:"Guard"))]
(if: $EnemyGrab > 0)[(set: $EnemyOptions to it+(a:"Grab"))]
(set: $EnemyOptions to it-(a:"hi"))
(set: $EnemyChoice to (either: ...$EnemyOptions))
(if: $EnemyChoice is "Punch")[(set: $EnemyLevel to $EnemyPunch)(set: $EnemyPunch to 0)]
(if: $EnemyChoice is "Kick")[(set: $EnemyLevel to $EnemyKick)(set: $EnemyKick to 0)]
(if: $EnemyChoice is "Dodge")[(set: $EnemyLevel to $EnemyDodge)(set: $EnemyDodge to 0)]
(if: $EnemyChoice is "Guard")[(set: $EnemyLevel to $EnemyGuard)(set: $EnemyGuard to 0)]
(if: $EnemyChoice is "Grab")[(set: $EnemyLevel to $EnemyGrab)(set: $EnemyGrab to 0)]
}Life: $PlayerLife
Punch: $PlayerPunch -----Dodge: $PlayerDodge
Kick: $PlayerKick -----Guard: $PlayerGuard
Grab: $PlayerGrab ---Laps until board resets: {
(if: $PrevLocation > $PlayerLocation)[
(set: $PrevLocation to 0)
(set:$Lap to ($Lap+1))]
(set: $Viable1 to ($PlayerLocation+1))
(set: $Viable2 to ($PlayerLocation+2))
(set: $Viable3 to ($PlayerLocation+3))
(set: $Viable4 to ($PlayerLocation-$NumberofOptions+1))
(set: $Viable5 to ($PlayerLocation-$NumberofOptions+2))
(set: $Viable6 to ($PlayerLocation-$NumberofOptions+3))
}(set: _countdown to (3-$Lap))(if: _countdown <= 0)[(set: $Lap to 0)(display: "GenerateBoard")]_countdown(for: each _i, ...(range:1,$NumberofOptions))[(set: $Mana to (either: "Punch","Kick","Dodge","Guard","Grab"))(set: $BoardState's (_i) to $Mana)]Double-click this passage to edit it.