15 May 2020

Ball and Chain (roguelite idea)

What this all about? A guy with a spiky ball and chain, throws and pulls the ball to kill stuff. Ideal for a 7DRL game or some roguelite. This design was made in a single day so things can be a bit rough or inconsistent but i think it gives the main idea nicely.

Last Update May 2020




The game begins with the player being trapped in a room covered with fog. The player has to move inside the room to reveal the location of the door and the switch to open it. The door unlocks once the switch is activated so the player can escape the room to the next.

- Turn based movement: Player moves first, all enemies move second. Only one action can be performed per turn (walk a tile, throw ball, recall ball etc)

- Enemies move closer towards the player each turn, trying to enter attacking range

GAMEPLAY

Very bare bones, straight to the point. No loot, no items, no complicated rules, unlocking content or hidden mechanics. It should be pick-up and play, where the fun comes from using your head trying to figure out how to survive endless waves of enemies utilizing a combination of moves available.


The Ideal way to kill is to make the ball land on the enemy and bash his head, or throw the ball behind the enemy and pull the chain the next turn to call the ball back and kill everyone in the path. Some enemies cannot be damaged by the ball so the player has to use the environment or come up with couple of creative ways.

So its a game about using the ball to lay traps. The single turn delay between throwing and recalling the ball adds some extra tactical element to it as you have to plan the right time to throw and recall while considering the enemy movement.



Each turn the player can do one of the following moves;

Move - the player can move to a neighbouring tile (8 directions including corners) as long as the ball is in his hands. Player cannot move if the ball has been thrown and has to pull ball back first


Throw the ball - The ball has a range of 5 (or 6 not sure) tiles and can be thrown N S E W. When the ball is thrown it floats above characters so no damage is done unless the ball lands on a tile that is occupied by someone. Note that the ball can only be thrown exactly to the 5th tile of each direction.



Pull Ball - The ball will crush everything on its path back.

Once the ball has already been thrown, tap the ball and tap the player to pull back the ball (or drag a line from ball to player)


Pull yourself to the tile of the ball - if there is nothing between the player and the ball, the player can pull himself to the ball. This will work as long as the path between the ball and the player is empty however Im not really sure if this is a good idea since it gives the player great speed advantage compared to enemies. I guess this should be implemented depending on how many enemies each room will have. unless each room is packed with 15 20 enemies this would totally break the game to give the player such speed boost. Balance is key.

Once the ball has already been thrown, tap the player and tap the ball to teleport the player to the location of the ball (or drag a line from the player to the ball) 



Swing Ball - clockwise of counter clockwise, the ball will damage everything in its path.

Once the ball has already been thrown, tap the ball to highlight the two possible tiles, tap one of the two highlighted tiles to swing the ball (or drag a line)



and that covers all actions you can do without using any UI buttons.




ENEMIES

Didnt spend much time with any of these but couple of enemies with fun mechanics I could think of from the top of my head;

Note

- Enemies other than tough guy cannot move on to the tile occupied by the ball.
- AI should always home in on the player, so their only goal is to take the shortest path to reach the player without caring for their health (unless they burn themselves with fire (see tiles section)
- I gave the enemies silly names homage to old atari stuff, not the Billy Eish song :)

Bad Guy - The default melee enemy that can be found in every level. Moves towards the player 1 tile per turn, deals 1 point of damage if gets close enough.



Jump Guy - leaps towards the player 3 tiles per turn, can jump over obstacles and tiles that are impossible to pass. Landing on the players head will cause damage to the player, he will attack instead of jumping if the player is standing on an adjacent to him.



Helmet Guy - cant be killed by throwing the ball on his head, must throw ball behind and pull it back to hit him from behind. If ball lands on his head it bounces back and damages the player.



Tough Guy - takes a few hits to kill him (probably 2 should be sufficient) has the ability to pickup and hurl the ball (or any other object such as walls etc he finds on his path) back to the player causing damage. If you throw the ball towards him he will catch and throw it back it back to you and hurt you instead.

AI should be simple, if he moves on a tile that is occupied by an object, he grabs and hurls it 5 tiles towards the player (in the same turn he moved so there is no delay) He doesnt care if the player is in range or if there is a friendly target.



Dart Guy - shoots poisonous darts once the player gets in range. Dart guy will shoot even if there is an enemy on his path.



Potion Guy - slow moving enemy that drops potions (that heal) when killed. Has a short ranged attack towards the player (damages everything in its path). He will explode if hit with a burning ball (see tiles section) damaging everything around him.



Potions he drops can include things like healing, fire resistance (protects against one fire based attack or allows the player to pass one flame tile) speed boost (allows player to move twice per turn)



Swarm of insects - slow moving enemy that cannot be damaged by the ball unless the ball is on fire (see tiles) the swarm will divide (duplicate) itself into 2 tiles if the ball lands on the tile it occupies or if the ball is pulled through the swarm.



TILES

A list of tiles that the player will come across through the game.

Empty - default tile. Pebbles, grass or dirt. Whatever...

Wall - blocks the player and enemies from moving on the tile, can be destroyed by throwing the ball behind the wall and pulling it.  Tough guy (see enemies section) will pick it up and hurl towards the player (destroying the wall in the process)

Swamp  - sticky stuff, anyone who enters the swamp has to wait a turn before they can move again. The ball will be harder to pull back if it lands on the swamp so it will take two turns to pull it back up. Swamps can be removed by throwing the burning ball on them

Fire - Burns anything that passes through it including the ball. Ball gets lit on fire for 5 turns, making it easier to kill stronger enemies such as swarm of insects (burning ball kills them before they can divide into two), helmet guy (his helmet wont protect against the burning ball) or the though guy (burns when he holds the ball)

Door - The player must find and move onto the tile that has the switch (or throw the ball on the tile with the switch to activate the mechanism and open the door. Once open, player can exit the room and move on to the next room.

Chasm - (or hole) cannot throw the ball or enter a hole tile, Chasms are used to restrict play area and can be randomly placed in rooms to give some tactical depth.

LAYOUT

Rooms do not require to have logical wall or object placement they can be totally random however some care must be given for doors, making the switches reachable by the player without making the game unplayable.



WINNING AND LOSING THE GAME

Players win when they manage to unlock the door and escape the last level of the game (30 or so perhaps, I dont care)

Players lose when they run out of health. Permadeath, so its back to level 1.

Maybe a simple scoring system can be added. Each kill can give some points, different enemies can have different values,  single turn combo kills should have multipliers. I dont care.