Grepolis is a node control game. Each city (or as I call them "node") can generate income and troops. It is also subject to attack from other players.
Each city has a specific set of coordinates within the "world". Each city is situated on an island with other cities. Only a certain number of cities can be present on any one island. Cities can attach each other by land only if they are on the same island, so attacking is normally done by sea.
A city can be founded, or captured, by a Colony Ship (CS) so coordinating attacks to arrive just before the CS arrives is important. There are a variety of troop types broken down into three general classes: Ground, Sea and Air (flyers). A combination of forces is necessary for a standard attack on a player city.
The good: I like the math in this game (I know, geeky). I created a spreadsheet to coordinate my various cities production (I had 98 cities by the time I decided to quit) and to coordinate attacks and defenses. It is very important to get your attacks clustered as closely together as possible. Having more than a few seconds between your last attack, your CS' arrival and your defensive units arrival is more than enough time for a good player to foil your attack.
The bad: Attacks can happen around the clock. One of the biggest advantages to being in an alliance is sharing the offline times of your opponents so you can attack them while they are sleeping. For the competitive OCD player, this means that you don't sleep well or often. My friend who got me into this game was getting up every couple of hours overnight in order to check to see if he had been attacked.
Some of the bad can be mitigated by joining a server with very slow travel times so you have more time to react to incoming attacks. Unfortunately this also means that your attacks take a long time to arrive as well.
Lastly, I think I would have liked this game better if it was turn-based so you could pick a server with 8 hour turns and sleep without being stressed :)