Skip Navigation

Tile God

Note:  This game is not playable, however, it's almost playable.

You have found a newly born planet, barren of life but pregnant with possibility. Your divine powers can craft the genesis of life here...but another god contests your dominion! Banish the pretender from your realm!

======== Overview ========
Victory Condition: Occupy the enemy Temple.

The most central design idea behind TileGod is a major break from standard unit-based strategy games: your units (with one exception) cannot be directly controlled. Players influence the behavior of allied and enemy lifeforms with miracles that alter the map itself! TileGod is a simultaneous-turn PvP game. Simultaneous turntaking and resolution makes for deep strategy at all levels of play. Players are constantly attempting to predict their opponent's allocation of Power Points while devising an unpredictable but meritable plan of their own. TileGod is 'game theory' on steriods.
v --------------- The Color Wheel ---------------
There is a cycle of five elemental types in TileGod, corresponding to five colors. Plains Water Swamp Mountain Forest Plains Water ... yellow blue black red green yellow blue ... Each element has two unopposed elements (its neighbors in the cycle) and two opposed elements (its non-neighbors). For example, the Forest element is opposed to Water and Swamp and unopposed to Mountain and Plains. You can refer to the depiction of the color wheel in the UI for a reminder.

----- Tiles -----
The map consists of a hexagonal grid divided into tiles. At any given time, a tile's terrain is that of one of the five elemental types. Tiles also have a resource score, determined randomly at the start of the game. Resources may be temporarily added to a tile during the Enrich Tiles phase, and may be depleted during the Foraging/Starvation phase. Notwithstanding these perturbations, a tile's resource count resets to its original value at the start of each turn.

--------- Lifeforms ---------
Lifeforms are units that you and your opponent create. As mere mortals, they cannot comprehend the will of the gods, and so you cannot issue orders to them directly. Lifeforms will move to the highest-resource tile available to them. With your divine power, you can temporarily imbue tiles with extra resources, thereby enticing lifeforms to relocate. Lifeforms can forage more resources from their favored terrain, so take this into account when predicting how units are going to move. For more, see 'Stage 4: Foraging/Starvation' and 'Stage 5: Migration' Each element has a corresponding type of lifeform. Lifeforms are better at fighting and foraging when on their favored terrain, and less effective on opposed terrain. They are neither advantaged nor disadvantaged when on unopposed terrain.

------- Temples -------
A player's starting square is their inviolate Temple, the nexus of their divine power. The object of the game is to win a battle on the enemy god's temple. You lose the game if your opponent's forces win a battle at your Temple. Your Temple acts as a conduit for your power into the world, just as your Prophet does. Miracles far from your Temple cost more Power Points to perform.
-------- Prophets --------
Each player starts the game with a Prophet (spawned at their Temple). The Prophet is a mobile channel for your power into the world. Miracles near your Prophet take far fewer Power Points to perform. A prophet has one of the five types. The Prophet is the only unit that can be directly controlled. You can choose to move your Prophet during the 'Move Prophets' stage at the start of the turn.

============= Order of Play =============
Players take simultaneous turns broken up into phases, as follows:

1) Move Prophets


2) Miracle Phase
2.1) Receive Power Points(and Sacrifice Life Forms)
2.2) Enrich tiles
2.3) Terramorph
2.4) Spawn life
3) Lifeforms (automated)
3.1) Forage/Starve
3.2) Migrate
3.3) Combat

=== Phase 1: Move Prophets ===
At the beginning of the turn, players have a chance to move their prophet up to one square.

=== Phase 2: Miracle Phase ===
During the Miracle Phase, players receive and allocate Power Points.

--- 2.1 Receive Power Points ---
At the start of the Miracle Phase, players receive power points proportional to the number of living worshippers they have. Specifically, PP Received each turn = 2*NUM_LIFE_FORMS + 5
Further, at the start of each turn, players can sacrifice life forms for 1 Power Point apiece, or double that for sacrificed life forms that share the color of their tile.
--- 2.2 Enrich Tiles ---
After receiving power points, you have the option of adding temporary resources to tiles. Each additional resource point added to a particular tile costs more Power Point than the last. PP Cost for adding resources = (Distance from prophet)*5 + oldResourceCount + (coldResoucesCount+1) + ... + newResourceCount
Example: Changing a tile with 3 resources to 6 if the tile was 1 tile away from a prophet = 1*5 + 4 + 5 + 6 = 20 PP
Enriching tiles is useful for preventing starvation on overpopulated hexes and for luring lifeforms (yours or theirs) onto particular tiles. Since phases are resolved simultaneously, it is possible (and often correct) to interfere with an enemy's migration plan by enriching a tile. If you think that your enemy might disrupt your movements with an enrichment, it might be worth over-enriching the tile that you want lifeforms to move to

--- 2.3 Terramorph ---


After deciding whether and how to add resources, players may spend Power Points to rotate the terrain of a tile one or more steps left or right around the color wheel. For example, rotating a Water tile once to the right yields a Swamp tile. Since turns are resolved simultaneously, it is possible for both players to terramorph the same tile. All such rotations are applied to the tile, so a Water tile rotated left once and right twice becomes a Swamp tile.
Terramorphing Cost = (max(1, Distance from prophet))*(rotations)
--- 2.4 Spawn Life ---
After terramorphing, players have the option to spend Power Points to spawn life on tiles. A number of lifeforms are spawned equal to the resource level of the tile.
Spawn life cost = (Distance from prophet)*numLifeForms*5
Note that, by this equation, prophets and temples can spawn life free-of-cost on their current tile.

=== Phase 3: Lifeforms ===
The third phase requires no player input.
--- 3.1 Foraging/Starvation ---
Lifeforms consume 1 resource apiece from the tile they occupy. If there are not enough resources to feed all lifeforms on the tile, then excess lifeforms die. Lifeforms opposed to the tile die first, then unopposed lifeforms, and last of all favored-terrain lifeforms.
--- 3.2 Migration ---
Any lifeforms that survive the Foraging phase move to the neighboring tile with the most resources. If the current tile has more resources than the neighbors, the lifeforms stay put.
--- 3.3 Combat ---
When worshippers of two different gods migrate to the same tile, they engage in combat. Normally, each unit of one god dies to take out one unit of the other god. Units fighting on a tile type opposed to the unit type count as half of a unit for purposes of combat. Similarly, favored units count as one-and-a-half units. If combat occurs on a tile that contains a prophet, the prophet 'panics', spawning units of the prophet's type. The number of units so spawned equals the number of resources on the tile.

=================== Bring Your Bugspray ===================
This was our first foray writing our own networking code (MindGames' networking was handled by the Spring Engine), so be warned! If players submit their respective moves for a phase in quick succession, the board state may become corrupted.

Installation Instructions:
-1. Install python 2.6 or newer (but not python 3!).
0. Install the python PyGame library from http://pygame.org/download.shtml
1. Download the .zip file from here
2. Unzip the file to a location of your choice on your computer
3. Open a command-line window (Terminal on Mac computers...)
4. Navigate to the unzipped file’s directory. cd ~/.../TileGod_1.0
5. One player needs to run Server.py. python Server.py
Prompted questions are self-explanatory
(Probably choose a grid size of between 5x5 and 10x10)
(You IP address can be found here: http://whatismyipaddress.com/)
6. Each player then needs to run Tilegod.py python Tilegod.py Prompted questions should be self-explanatory
7. The game window should run after all prompts are answered.