Created
May 12, 2019 23:16
-
-
Save nucleartide/8f5ff047c4dc05695cdca982ceb0371e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const verbs = [ | |
'move horizontally', | |
'raise sword', | |
'lower sword', | |
'thrust sword', | |
] | |
const objects = [ | |
'fencer with sword', | |
'piste', | |
// 'score', | |
] | |
// more ideas: | |
// object idea: time as an object | |
// effect idea: arcade-style random event: fleche? | |
// effect idea: reset positions for each bout - will do this | |
const nodes = verbs.concat(objects) | |
for (let i = 0; i < nodes.length; i++) { | |
for (let j = i+1; j < nodes.length; j++) { | |
console.log(`${nodes[i]} | ${nodes[j]}`) | |
} | |
} | |
/* | |
# move horizontally | raise sword | |
Parry | |
* player with right-of-way will parry (that is, stun) opponent | |
* thrusts are move-cancelled | |
* if both have right of way, players return to previous stances | |
# move horizontally | lower sword | |
Parry | |
* player with right-of-way will parry (that is, stun) opponent | |
* thrusts are move-cancelled | |
* if both have right of way, players return to previous stances | |
# move horizontally | thrust sword | |
Stab | |
* when in stabbing range, thrusting sword penetrates opponent | |
# move horizontally | fencer with sword | |
Stab | |
* when in stabbing range, moving into opponent will penetrate opponent | |
Tip Collision | |
* when both fencers' swords' tips have nearly the same y-coord, moving into opponent | |
will push back both players | |
# move horizontally | piste | |
Fall | |
* when outside of the piste, player falls and opponent receives point | |
* during a bout, piste gets smaller over time | |
# raise sword | lower sword | |
N/A | |
* no relationship here. these verbs are mutually exclusive | |
# raise sword | thrust sword | |
Upper Thrust | |
* thrust with raised sword | |
* lane-change | |
# raise sword | fencer with sword | |
N/A | |
* see "move horizontally | raise sword" | |
# raise sword | piste | |
Widen | |
* when swords clash, widen the piste by x | |
* else, narrow the piste over time | |
# lower sword | thrust sword | |
Lower Thrust | |
* thrust with lowered sword | |
* lane-change | |
# lower sword | fencer with sword | |
N/A | |
* see "move horizontally | lower sword" | |
# lower sword | piste | |
Widen | |
* when swords clash, widen the piste by x | |
* else, narrow the piste over time | |
# thrust sword | fencer with sword | |
N/A | |
* see "move horizontally | thrust sword" | |
# thrust sword | piste | |
Narrow | |
* missed thrusts will narrow the piste. | |
* forces players to conserve thrusts for a killing blow | |
* encourages aggression | |
# fencer with sword | piste | |
Gravity | |
* fencer must remain on piste, to avoid plummeting into an abyss | |
* if fencer falls off piste, bout ends and players spawn in spawn | |
positions after x amount of time | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment