Game concept idea: Waypoint
So I had an idea for a game bouncing around in my head and I thought I'd share it with everyone. The game is called Waypoint, and it's a turn-based puzzle/strategy game that you can either play against the AI or another person over a network (or as a board game). Here's how it would work:
The game takes place on a hex grid. The object of the game is to move your piece and reach five waypoints before your opponent does the same. The catch is that your opponent places each waypoint after you reach the previous one, the idea being to make it as difficult as possible to reach each waypoint.
Each hex tile is laid out as follows:
- A number in the center of the tile. At the start of each turn, you receive a number of movement points equal to the number in the center of the tile that your piece occupies.
- Up to six arrows leading out of the tile (one in each direction). Different tiles may have different sets of arrows. Some may have all six, some may only have one, etc. An arrow on a tile means that you may exit the tile in that direction. There are two types of arrows, regular and boost. A regular arrow allows you to exit the tile at a cost of one movement point. A boost arrow allows you to exit the tile at no cost.
- Up to six shields on the edges of the tile. Shields prevent you from entering a tile in that direction even if an adjacent tile has an arrow leading into it. Shields only prevent inbound traffic; it is entirely possible for one direction on a tile to have both an arrow and a shield.
- Tiles may also be removed from the map completely, although the map must always remain contiguous.
- Both player tokens may occupy the same space.
- Players may not move into a map space that contains no tile.
Setup:
The tiles are placed randomly on the board, with ten random empty spaces that contain no tile. Each player receives a "hand" of five additional map tiles, which are concealed from the other player. Before the game begins, each player places their token on the map, then each player places their opponent's first waypoint.
Turns:
Turns are divided into two phases: the movement phase and the tile phase. The phases are always in this order, although the player may skip either or both phases.
In the movement phase, the player may move up to as many spaces as their movement points allow. If a player reaches their waypoint, they score a point and their movement phase ends. Optionally, a player may forego their normal movement phase and instead move a single space in any direction (such as through a shield). The only exception is that there must be a tile in the space the player is moving into, as empty map spaces are completely impassible.
In the tile phase, the player must do one of three things:
- Replace an existing unoccupied map tile with a tile from their hand , and draw a new tile.
- Place a map tile in an empty space on the board.
- Take an unoccupied map tile from the board and put it in their hand, provided that the size of their hand never exceeds 10 tiles.
Players may not remove or replace a tile that their opponent placed in their previous turn, nor may they replace a tile that their opponent removed in their previous turn.
Finally, if the opposing player reached a waypoint at the end of their turn, the player must place a new waypoint for their opponent. It is legal for both players' waypoints to occupy the same tile.
The first player to reach five waypoints wins.
Notes:
As I said earlier, this could be a board game, although having a computer manage the tiles would make more complex tile layouts practical. I imagine at least a rudimentary AI for this game wouldn't be particularly difficult to write; it would be fairly simple to calculate the minimum number of turns to reach the current waypoint from each tile, then have the computer move its token toward the "closest" location, and at the same time placing and removing tiles to maximize the number of moves it would take for the player to reach their waypoint. The most effective way to beat this sort of AI would be to create an easy path, wait for the AI to commit to it, and then cut the path off so that they have to change directions.
The map size, movement points, as well as the frequency of arrows, boosts, and walls, would need to be adjusted to maximize the amount of fun in the game. Too many arrows and movement points and the game will be too easy, too many shields or not enough arrows and the game will be too irritating and slow.
Any thoughts or comments? I'm trying to make the game interesting without having it be overly complex.
I bears mentioning that qubodup just made some awesome tiles for this:
http://opengameart.org/content/hex-board-game-tiles
:)
Hmm. I might be interested in helping with this. It sounds like fun!
I've been experimenting with Python and pygame recently, and have been trying to come up with a good project to test my skills. If you're willing to bear with me a bit as I get oriented and such, we could do this.
I did have one suggestion: variable terrain movement cost. Perhaps make certain tiles take 2 or even 3 movement points to pass.
Also, maybe adding some sort of turn penalty for the tile phase. So if you remove a tile, you can't remove another one for 1 turn, or maybe not even be able to do anything tile related for that duration.
Anyway, let me know if you're interested.
Yes, I'd absolutely be interested! :)
For the record, I don't know python and can't provide much in the way of specific technical input in that direction (although I'm a reasonably good coder in general). That said, I'd be happy to playtest and help in other ways.
Bart