While coding obelisks, I had in my mind Sean Bean's Boromir whispering "one does not simply hardcode a feature like obelisks!"... he was right. Obelisks and their discover change almost every game stat, starting from the various characters ones. I coded only two of the four intended for the prototype, but soon I realized that I simply cannot hardcode their impact on the world. I need something structured, with a minimal level of architecture.
So I did it. Obelisks data is stored in the form of list of structs and I have a couple of static functions that handle them and modify the world. Game only know about their code, keeping a [font='courier new']vector[/font] of the founded obelisks codes, and some switches do the rest.
I had to manage some new art. Even if I chose to use non-original tilesets, I had to browse a bit to find something suitable, and I ended up modifying something and creating some other images. All these things took some time to get done.
Two obelisks implemented so far: Stone Tools (on the Scientific [green] area) and Fire (on the Social [blue] area). Everytime you find an obelisk in the map (and bump into) a dialog shows a brief description of the technology and a list of game benefits, as you can see in the picture below:
A critical design point
Finding obelisks expand your chances to win the game in many ways: Stone Tools, for example, gives a chance to Hunters to start kill something, so that Hunter becomes an interesting character. Obelisks are grouped by the maximum distance from the village they can be found. This is a critical design point.
Stone Tools is meant to be found at 1 tile from a village, so that harvesters can find it, given that it is a basic tech you absolutely need. Rarest techs will be far from villages or deep into dungeons, and only advanced characters can reach them. MaxDistanceFromVillage is one of the Obelisk struct member, and one of the most important. Probably here is where the whole design will take place.
When an obelisks is found, all obelisks of the same type are removed from the map, and one of the circles on the corner is filled with the icon of the tech, as you can see below.
I started to actually play the game and, well, it is quite fun even with the great number of obelisks in each area. They will be a lot more rare in the game!
When considering MaxDistanceFromVillage, do you account for distance on the map alone, or sub-map differentiation?
Also, do you factor "difficulty" as a measure of that (modifier perhaps)?