Society generation, again

I was working on society generation, where the system would generate whole socities (villages to be specific), inhabited with people. These people could be part of various factions or secret socities and have their own agendas. Moreover, some of them might have powerful artifacts or other special items, that would have history attached to them.

Continue reading

Generating scrolls

Earlier I blogged about procedural lore generation. That in itself is very large and complex topic and I wouldn’t want to tackle that in one go. One major part of the system would be generating all kinds of artefacts, of which some could even apppear in the game. This is quite large part too and will require significant changes (I have very few item types implemented currently).

But, I can already get started on fleshing out my ideas and implement a tiny, fairly insignificant portion of the system and see how well it will work and what kind of new ideas I’ll unearth. For this I chose cosmetic (at least for now) scrolls that player can find laying around everywhere in the game. I won’t be touching that much how the scroll generating will actually be implemented as a part of item system. Instead, I’ll assume that there’s some sensible way of system to call the code (although, I do have some hazy ideas already) and trigger creation of a scroll.

Continue reading

Legend generator

I love reading little snippets of background story in RPGs. These snippets can be in form of discussions with NPCs (or between NPCs), little notes, scrolls or even pages of books. But I generally don’t like reading long paragraphs that keep going and going. Information needs to be in tiny, bite-sized chuncks and it shouldn’t be mandatory to read all of them to proceed in game. I really liked for example how Dragon Age: Origins did this. There are tons and tons of stuff to discover, it’s delivered in varied means and it’s interesting.

Continue reading

Connecting the dots

I often babble about interesting environments, unique creatures, interesting choices and how they hopefully would create an emergent gameplay and story. One related concept is how the story elements are used to tell the story: they should be specific enough, so that the story being told can be followed and interpreted. At the same time they should leave enough empty space for audience to fill in. Funny example about this is hair colour of Legolas in Lord of the Rings. The fact that it’s not explicitly stated in the book, yet fans have been debating it a lot, is significant enough that the wikipedia article mentions it.

Continue reading

Procedural Content Generation

There couple interesting threads in Rogue Temple forums about generating flags and symbols and about Ultima Ratio Regum which uses procedural content generation beyond the usual 20+ level dungeon filled with monsters and items. Dwarf Fortress is another example of a game that does something like this.

This all got me thinking that it would be nice to do something that has not been done countless of times before. Of course coming up with a thing like that is hard, but things that are hard are often things that are worth doing. And I can just get started by doing something, that is not done as often as level generation.

Dwarf Fortress has system that sometimes generates a monster that is dangerous and hard to kill and throws it against your fortress. These monsters have procedurally generated abilities and appearance and can sometimes be quite nasty. Since I’m planning to write end bosses into the game, some of them could be generated procedurally. That would give players something new to fight with, instead of serving the same canned boss fight every time. If boss fights belong to game with instant death is another matter though.

History of the world is another part which I could enhance with content generation. The main points are written down, but I could fill in the blanks and let them vary between games. These could come in form of engravings, statues and other similar things (sort of what Dwarf Fortress already does).