• Welcome to The Campaign Builder's Guild.
 

World Builder Software (post your ideas!)

Started by Cap. Karnaugh, December 09, 2009, 10:49:04 PM

Previous topic - Next topic

Cap. Karnaugh

Hey guys! Here's the deal: ever since I enrolled in Software Engineering, I had the idea of making a automatized world-building program.
Since I like sandbox type of games, this program should cover almost every single aspect of my world (from fauna to flora, language, pantheon, guilds, politics, etc), but at the same time give enough flexibility to tweak around with the input parameters so as to have a unique and coherent setting.
So, after some thought, I made a list of which things it should create

Character Creation
   PC creator
   NPC creator
   Villain creator (yeah, I have that AD&D book :D)
   Name generator, which could vary according to Nation or Kingdom
   Character's appearence (NPC or PC)

Rule creation
   Class Creation
   Prestige classes creation (this was back when I played D&D 3E, doesn't make much sense now in true20)
   Talent creation
   Spell creation
   Skill creation

Object creation
   Item
   Magical Items
   Weapons
   Armor
   Books
   Artifacts
   Jewelry

Game Management
    Adventure name generator
   Dice roller (OBVIOUSLY)
   treasure generation
   Traps generation
   Random encounter generation
   Adventure creation (where you should specify "acts" or "phases", each one with terrain, weather, characters in it, etc)
   Voice synth (OK, this is waaayyyy out of my league, but I'm just letting the creativity flow, hehe)
   Combat manager (between armies and party vs. monsters)


Campaign Management
   Random weather (each weather would have a probability attached to it according to the kingdom where the adventure takes place)
   Random hex-grid combat map generator
   Calendar generator (which could vary -again- according to the kingdom)
   Notes
   Interactive world atlas (a la Encarta Encyclopedia)
   Random "places" (a ruin, a church, that kind of places) generator
   translator (basic one, of course)


World generation
   Cities, towns, etc
   Kingdoms
   Armies
   Pantheons
   Planes
   Animals
   Plants
   Weather
   Maps (maybe hex-grid?)
   Calendar (with moon phases, holidays, etc)
   Heraldry (basic shield creator)
   Noble houses (according to races)
   Foods
        //I bought tournaments, fairs and taverns book ¿So what?
   Taverns/Inns
   Tournaments
   Fairs
        Tents
   Monsters & races
   Insults
   Religions
   Diseases
   Languages

And this is my comprehensive list. I would appreciate if you could add new things to the list, or for any of the items listed, which options would you like to be able to tweak.

Cap. Karnaugh

Oh! BTW. I'm currently busy with a project at work, and both my family and university are taking the rest of my free time, so, up until mid-february, you shouldn't expect any software created.
That said, I'll gladly hear your opinions before even starting, so to have a clearer picture of how to make this program really useful.

Elemental_Elf

An exotic location section might be helpful in addition to your comprehensive list. Also, random name generators should be made for items, kingdoms, npcs, cities, towns, dungeons/adventure spots, spells, magical creatures, plants, artifacts, books, etc.

Lmns Crn

Wow, this is impressively ambitious! Welcome to the site, by the way.

I am going to need some time to wrap my head around the concept you're presenting, here. My gut feeling is that such software has the potential to be either a powerful creative tool or a straitjacket, depending on how much and what types of human input it allows for, and what it does with that input. I'll need some time to consider things.

I'm a little bit confused by the scope of your project-- it looks... well, frankly, huge. You seem to have functions in mind for worldbuilders, for GMs/storytellers, and for players. I am wondering who you see using this software and for what tasks.

I am very much interested in hearing more about what you have in mind. But I will mull it over and try to get you some additional ideas, after I let this sink in a bit.
I move quick: I'm gonna try my trick one last time--
you know it's possible to vaguely define my outline
when dust move in the sunshine

Cap. Karnaugh

@Elemental Elf: Nice! Thanks for your contribution.

[blockquote Luminous Crayon]Wow, this is impressively ambitious! Welcome to the site, by the way.[/blockquote]
Hi L.C.! Yeah, it's a pretty ambitious program, hope I'm up to the task. Just in case, I'll release it under GPL, so that anyone is free to modify it at will.

[blockquote L.C.] (...) such software has the potential to be either a powerful creative tool or a straitjacket, depending on how much and what types of human input it allows for, and what it does with that input.(...)
[/blockquote]
Completely agree; if you don't allow enough customization, it could make worldbuilding too easy (not bad by itself) and uncreative.

[blockquote L.C.]I'm a little bit confused(...)You seem to have functions in mind for worldbuilders, for GMs/storytellers, and for players.
[/blockquote]
My bad, the thread's title was perhaps misleading. At first I had the idea of a worldbuilding app, but as time went by, I realized that it could be more comprehensive, outside it's initial scope.
From my point of view, the first 3 modules listed here would be relatively easy to implement (though there are tons of those apps in the market)
Next, the world generation. It's just a matter of knowing WHAT things you want to know about a certain item, and then applying a formula (I can explain this a little bit if you want me to). Lastly, Campaign and game management modules would be the hardest ones.

[blockquote L.C.]I am wondering who you see using this software and for what tasks.
[/blockquote]The target would be mostly GM's. As for the tasks, the program is intended to make GM's (and players') life easier when running a campaign/adventure.

Jharviss

This is fascinating, gnola14, and something I've certainly considered enough. Though you'd have a hard time getting your hands on them, anything in the Gygaxian Fantasy Worlds series of books would probably help you out immensely. Those books are full of random charts for you to choose things from.

That little sidenote left aside, I would love to help you out with any content you need.

Do you plan on this being fully generating? It would be really cool to have a list of parameters that you can adjust, but then it details out an ENTIRE world.  A large enough program with enough processing power could truly detail out a lot... that'd be fascinating.

And I could see how it would work, too.

Step One: Random races

Step Two: Random nations
 - Random cities in nations
 - One of three biggest randomly selected as capital

Step Three: Random Cities
 - Populations assigned based on nation populations
 - Livestock and crops randomly assigned based on random assigned location in world which then selects from a list of random environs that can be in that location

Step Four: Random People
 - Adventure plots randomly assigned to random people
 - Goals and merits randomly assigned to people

Bigod, if this could be created to have no overlaps, it'd be brilliant. Gah, as if. :P  That'd require quite a bit, but like you, I'm just thinking through my keyboard.

Cap. Karnaugh

Quote from: The Crakmono(...) Gygaxian Fantasy Worlds series of books would probably help you out immensely. Those books are full of random charts for you to choose things from.
Great Crakmono! I'll check them for sure.

Quote from: The CrakmonoThat little sidenote left aside, I would love to help you out with any content you need.
Please, be my guest :D . Any help would be appreciated.

Quote from: The CrakmonoDo you plan on this being fully generating? It would be really cool to have a list of parameters that you can adjust, but then it details out an ENTIRE world. (...)

That's pretty much what I'm trying to accomplish. As a matter of fact, the whole idea began when I was running an adventure on a small town, and I thought "How cool would it be to know every people in here, their relationships and what do they work". After that I just kept thinking in other "cool" things to automatize (things that I wouldn't create by my own hand)


Lmns Crn

Hmm. Okay. So, here's the thing. Everybody thinks of random generators when they think of these kinds of utilities, and I'm going to suggest that you go a different way-- their results are often lackluster. 'Sides, there are plenty of random generators out there already.

What I think would be awesome is some kind of very guided semi-random generator. Like, instead of clicking "populate this town" and getting a town with a random number of randomized people with randomized traits, the generator actually thinks it through. Maybe you have the option to determine the size of the town, its major industries, the major factions that influence it (from your preset list of organizations and power groups in your world), or even how old the town is, and the generator goes from there. Rather than just randomizing everything, it would check to make sure there's some kind of government, that the town has the tradesmen and industries it needs to sustain itself, and that there aren't any glaring, unaccounted-for contradictions (i.e., huge ironworking industry in a city with no ore for miles and miles, etc.).

What would really be super-pro is if, instead of doing such generating jobs as "snapshots of now", they span history. Say, the "now" year for your world is 1000, and you want to generate a city that's been there since the year 500, the generator would start by generating a new settlement in 500 and letting it grow for five hundred years, tracking births and deaths, immigrants, new construction, natural disasters, and all that sort of thing. (Instead of starting in 1000 and generating a "finished product", cut from whole cloth.) I think you'd get weightier results: You'd know, for example, that the Herefords are descendants of the trader who founded this town, and that they spent their saved fortune to rebuild after the tragic fire of 897, etc.

In matters re: treasure/object generation, I'd like to see user input able to really heavily customize the database from which new items are generated. Like, if you're going to see it potentially generate a "holy [thing] of [religionname]", I want to be able to customize both of those variable lists, and also to specify that Religion A is opulent and poetic (so emphasize gold icons and flowery scriptures), Religion B has no holy books because it originates in tribes with no written language (so don't generate books), and Religion C emphasizes humility, poverty, charity, and detachment from earthly desires (so these themes should show up in randomly generated items, but no gold or precious stones).

This one is my favorite part:

I want to see software with the ability to suggest far-reaching changes and consequences as a result of actions, and give the user the ability to choose or tweak them based on these extrapolations.

For example, say I've got a world in progress, and I want to add a new thing to it: a plant, which grows in marshlands, and whose seeds can be processed into a powerful aphrodisiac. Now, wouldn't it be amazing if a program could take that input and do the following:

1. add the new plant to the world in appropriate climate regions and show you on a world map where it grows

1a. let you tweak that area with sliders for how hearty it is, the top/bottom temperature levels it tolerates, etc.

2. suggest effects of this new, useful herb on the economies of settlements in/near that region (will they be wealthier? will there be more herbalists/pharmacists/witch doctors there? will there be more crime (directly or indirectly related to the availability of powerful aphrodisiacs)? how will this affect global trade routes?

3.) how would the availability of a powerful aphrodisiac change the outcome of the year 638 Civil War of Castleton? (if Lord Craven could simply have drugged and seduced the widowed queen before the power struggle escalated to fighting, could bloodshed be avoided? If so, would the Castleton army-- at full strength now, not depleted by infighting-- successfully resist the barbarian invasion of 713?)

3b. give you a little flowchart of branching tree of these effects, and let you confirm/deny them one at a time (with each decision affecting the range of future possible outcomes, if appropriate); say, what if I really liked the Civil War of Castleton, I should have the option to override the program and keep the civil war in place, even if the program's extrapolation says that this new plant means it probably wouldn't have happened.

And yeah, I understand that these suggestions add up to a truly enormous project. But hey, you asked for a wishlist. :yumm:
I move quick: I'm gonna try my trick one last time--
you know it's possible to vaguely define my outline
when dust move in the sunshine

LD

Perhaps of interest for you:

http://www.thecbg.org/e107_plugins/forum/forum_viewtopic.php?70946.last

and

http://www.thecbg.org/e107_plugins/forum/forum_viewtopic.php?70944

A wholly randomly generated world.

--
Also Dwarf Fortress' development can help you understand the difficulty and challenges and nuances of the task you appear to be attempting:
http://www.bay12games.com/dwarves/dev_now.html

Cap. Karnaugh

@ Light Dragon: You wanted me to check out your map generation process or did I look at the wrong thing? Pretty cool how you did those maps.

[blockquote Luminous Crayon]What I think would be awesome is some kind of very guided semi-random generator. [/blockquote]
LC, that's what I have in mind actually. To automatize the things that otherwise you wouldn't create by hand (eg: relationship and jobs of 2 million people), but still requiring some careful thinking from the user.
Oh! I really liked your idea on how to create a city with history.
About the other thing (the plant and its consequences)...yes, it's pretty f* hard, though we're just brainstorming, so any ideas are valid :D


SDragon

This sounds like an incredibly interesting idea, and I can't wait to see the "final" result. Maybe include a mad-libs style fluff generator, or options to override the randomness in various elements?

What language do you plan on using, anyway?
[spoiler=My Projects]
Xiluh
Fiendspawn
Opening The Dark SRD
Diceless Universal Game System (DUGS)
[/spoiler][spoiler=Merits I Have Earned]
divine power
last poster in the dragons den for over 24 hours award
Commandant-General of the Honor Guard in Service of Nonsensical Awards.
operating system
stealer of limetom's sanity
top of the tavern award


[/spoiler][spoiler=Books I Own]
D&D/d20:
PHB 3.5
DMG 3.5
MM 3.5
MM2
MM5
Ebberon Campaign Setting
Legends of the Samurai
Aztecs: Empire of the Dying Sun
Encyclopaedia Divine: Shamans
D20 Modern

GURPS:

GURPS Lite 3e

Other Systems:

Marvel Universe RPG
MURPG Guide to the X-Men
MURPG Guide to the Hulk and the Avengers
Battle-Scarred Veterans Go Hiking
Champions Worldwide

MISC:

Dungeon Master for Dummies
Dragon Magazine, issues #340, #341, and #343[/spoiler][spoiler=The Ninth Cabbage]  \@/
[/spoiler][spoiler=AKA]
SDragon1984
SDragon1984- the S is for Penguin
Ona'Envalya
Corn
Eggplant
Walrus
SpaceCowboy
Elfy
LizardKing
LK
Halfling Fritos
Rorschach Fritos
[/spoiler]

Before you accept advice from this post, remember that the poster has 0 ranks in knowledge (the hell I'm talking about)

LD

Oh gnola, actually I didn't do those, another person on the forum did. One thread is the process for doing the maps, the other is where Saranosil discussed how she went about her randomization process- if you want to ask her any questions. The last link is to Dwarf Fortress.

And here's the first thread of Saranosil's: "http://www.thecbg.org/e107_plugins/forum/forum_viewtopic.php?70784" I should have put that in the first link.

I also should have explained more- sorry for being too brief. I hope this helps.

Welcome to the forum.

Cap. Karnaugh

Quote from: Rorschach Fritos(...) or options to override the randomness in various elements?
¿You mean, like (eg) the interracial mix percentage in a city (DMG 3E)?

Quote from: Rorschach FritosWhat language do you plan on using, anyway?
Well, I'm proficient with Java, but I've been wanting to program something in Python, so maybe this is a good chance to do so (Python+Pygame probably)

Lmns Crn

Quote from: Cap. Karnaugh (aka gnola14)¿You mean, like (eg) the interracial mix percentage in a city (DMG 3E)?
This brings me to another feature suggestion: Would it be possible to let software users import or create their own demographics and other data? I know there are a lot of people on this site who depart rather radically from whatever DMG defaults you might name, or who don't use anything resembling a typical D&D world whatsoever.
I move quick: I'm gonna try my trick one last time--
you know it's possible to vaguely define my outline
when dust move in the sunshine

Cap. Karnaugh

Quote from: Luminous CrayonWould it be possible to let software users import or create their own demographics and other data?
Sort of a tricky question; you see, while I do intend to give as much flexibility as possible, there's also the realistic side of what I can accomplish on my own and in my free time.

That's why I'm relying on several books to extract some mechanics on how to create stuff. That said, the mechanics themselves should not be the main focus, but rather WHICH things would you like to be able to edit.