![]() |
|
This thread is locked; no one can reply to it.
![]() ![]() |
1
2
|
[Questing Game] World Generator |
Onewing
Member #6,152
August 2005
![]() |
A little over a week ago, I mentioned I was working on a little project and I was starting with the world generation. I've kind of hit a milestone with it and I decided to release a demo program for people to see and possibly get some feedback before I dig deeper into what actually happens in these worlds. Some screenshots: Nothing fantastic, I'm even using two-year old code from lost Cosmos project. I changed the color palette and added some things like forests and rivers and there ya go. The circles and lines see in the graphs above are the "locations" and "paths" one can take (once the actual game is ready) to travel between places. While having your parties travel from one node to the next, they will fight battles (possibly develop relationships, get a sickness, get an injury, etc.). Red paths mean that in the game, it will require finishing a quest to unlock. Green paths require a subquest be finished (but most of the time, it just saves travel time). Blue paths are shortcuts, requiring something like extra money or having a Paladin (or any other job) in the party. Here's a link to check it out in its infancy: Key commands Geographic Locations Generated You can open the config file to change the amount of nodes generated at the bottom of the config file. ------------ |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
It made Pangaea for me. It's interesting. I like that there are so many diverse climates. What kind of parameters did you use to generate the terrain? Humidity, altitude, temperature? My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Onewing
Member #6,152
August 2005
![]() |
Quote: I like that there are so many diverse climates. What kind of parameters did you use to generate the terrain? Humidity, altitude, temperature? The basic process for creating the map (italicized words are the paremeters, usually integer): 1) Start with a flat ground The next steps are in creating the node graph. [Edit] ------------ |
ngiacomelli
Member #5,114
October 2004
|
I remember you showing off the first version of this! The change in colour palette (and the further developments) are a big improvement. Regarding the actual game, it kind of sounds like a souped up version of The Oregon Trail, which I used to play for hours when I was younger. The only real suggestion I'd make is that the landscapes would probably look better (especially as you intend to allow zooming) with antialiasing. Keep up the good work!
|
Onewing
Member #6,152
August 2005
![]() |
Quote: The only real suggestion I'd make is that the landscapes would probably look better (especially as you intend to allow zooming) with antialiasing.
Thanks. If I manage to get further into the game play to satisfy my hunger, I'll definitely I'm tinkering with generating the location names. I probably won't release another version until I have fog of war and have the player moving from node to node rather than just glancing at the whole graph. Some screenies: http://www.allegro.cc/files/attachment/597615
------------ |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
Maps said: Portland's Trashy Castle
The names are pretty good. Could use a little fine tuning after the initial generation, but they're good. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Onewing
Member #6,152
August 2005
![]() |
Quote: Could use a little fine tuning after the initial generation, but they're good. Yeah, I'll probably be tweaking them for a while. I'm going to go ahead and release a the next pre-alpha verison (it is a WIP afterall), because I figure I won't have much time to work on it until next weekend (if even then). This version gives a somewhat more hands-on feel to what the gameplay is evolving into. At the moment, it is a barren world filled with locations, but no life, other than you. Eventually, there will be townsfolk, members to recruit and battles to wage. All you can do now, is go from location to location and imagine the missing pieces. Screenshots: The paths to really mind at this point are the red ones. These are locked paths that would require a quest to be completed. The makeshift quest for now is simply travel to another, reachable node. Once the quest is completed, it'll turn green. The number under the location's name is the "rank" or the difficulty of that area. Imagine each rank increase is several times harder. Last, but not least, the black node surrounded by purple is the calculated final stage of the game. There could be harder stages, but this one is the one to beat the current generated game. ------------ |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
It works fine for me, and I made it to the last stage, Bella Vista. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
ngiacomelli
Member #5,114
October 2004
|
This one really interests me! The location names are pretty funny and I'm in love with the detail of the world generator. Will other inhabitants have an impact on the world at all? For instance, will a town be able to develop a settlement, attack neighbouring towns, deplete resources in an area, etc.
|
Audric
Member #907
January 2001
|
I have one graphical suggestion: |
Onewing
Member #6,152
August 2005
![]() |
Well, since I haven't had electricity in a week (argh!), I haven't had a chance to do anything with the project. So, I guess I'll just unveil some of the design work to keep the thread alive a little longer. Quote: It works fine for me, and I made it to the last stage, Bella Vista.
Nice, that's a town about forty minutes from my house. Quote: Will other inhabitants have an impact on the world at all? For instance, will a town be able to develop a settlement, attack neighbouring towns, deplete resources in an area, etc. I hope to have as many impacts as possible via AI. That being said, to specifically respond to the examples you listed, I don't currently plan to allow development of settlement during the game (not in the design papers at least). In some situations, "control" of settlements may change alignment (or change into ruins if it were destroyed). Probably won't have depletion of resources. Character jobs There are three scores the player invests in to build each character: Melee, Mind and Mystique. These act like rock-paper-scissors to some degree (like mind has an advantage over melee, but a high level melee could still beat a low level mind). Melee jobs are like warriors, farmers, knights, etc. Mind are like engineers, librarians and mages. Mystique are like dancers, ninjas and jokers. And, of course, there are jobs for mixed combinations of the three M's. Next, each character has an alignment: light, neutral and dark. Adjusting these numbers provides the player with unique characters. I have written out a huge table of all the "classifications" based on the numbers. For each M, you can have the stat from 0 to 100. For each 10 (0-9, 10-19, 20-29, etc.) you have one classification per alignment. Thus, you'd have ten classifications for Melee Neutral, if you didn't invest any points on the other M's. Ten more for light and ten more for dark. So each M has 30 different classifications. Naturally, a mixture should also have 30 classifications. That's 120 different titles a character can have. From bouncers to gardners to pirates to prostitutes, the player should have pretty colorful parties. Furthermore, each job has ten degrees. Like the Nurse job could have the "Candy Striper" degree followed by the "LPN" degree and so on and so forth. Each degree comes with one ability, like "needle prick" or "medicate." Every ability filters to one of five things: healing, buff, attack, debuff, nuke (for lack of better words at the moment). So, while the player is seeing all kinds of different things, ultimately, behind the scenes, everything filters down to the three M stats (plus armor and weapons stats, something I'll get into later), alignment and the five abilities to keep the code relatively straightforward. Story Arcs During gameplay, the bad AI can advance towards their goal if you don't prevent them. The monster can be awakened! You can lose. And, one story arc can go into another: if the monster is awakened, perhaps now the goal is to defeat the big bad boss. Also, there will probably be the negative goals, like "destroy the planet" and such. That's design goal anyway. I imagine you can see the complexity of pulling that off... ------------ |
OICW
Member #4,069
November 2003
![]() |
So basically it will be an RPG but without all the cliche stuff we see on every other corner. Something like Heroes of Might and Magic, but w/o strategy elements - you walk through the world, accomplish quests, see world live it's own life, meet other parties etc. Am I right? [My website][CppReference][Pixelate][Allegators worldwide][Who's online] |
Onewing
Member #6,152
August 2005
![]() |
Quote: Am I right? Essentially yes. I'm hoping to go so far as have a complete simulation mode. Think of The Sims, where if you don't tell the Sim to do something, it'll do what it wants, but you can always override and tell it to do something else. It's almost like a step or two up from Progress Quest, having a bit of actual interaction with the user. Balancing it to get exactly the right amount of interaction I'm expecting to take a while. Version 0.0.3 Additions * Naming Landmasses * Defining Landmass type * Defining Regions * Settlement population ranges * Setting population in nodes * New Settlement types * New Region Names * Determing Node Type
I also worked on a few bugs and got a little caught up with this problem. And the executable: MyQuest 0.0.3 Lastly, in case I didn't mention it, the world is based on a flat bitmap image. The reason I'm doing this is I want to also be able to put any image as the world. It could be a picture of me. Afterall, the map is just eye candy, the node graph is where all the game revolves around. I could hand draw my own maps. Or, I could use a Final Fantasy map.
------------ |
Schyfis
Member #9,752
May 2008
![]() |
I didn't know Mississippi was a continent. ________________________________________________________________________________________________________ |
Audric
Member #907
January 2001
|
Out of curiosity, in-game, how do you explain the travel routes that cross oceans, as they don't always start and end near the coast ? Flying transport lines? |
Onewing
Member #6,152
August 2005
![]() |
Quote: I didn't know Mississippi was a continent. Ah, but did you know that Mississippi is a county in Arkansas? The list of possible names for region or landmass come from the counties of US states. I've added up to California thus far. Quote: Out of curiosity, in-game, how do you explain the travel routes that cross oceans, as they don't always start and end near the coast ? Flying transport lines? I can't really explain as much as I can defend. You don't really travel in straight lines through forests or mountains either. Essentially, a line between two nodes is just stating there is a path between these two places. Maybe they get on a boat once they get to sea, etc. However, just like in adding polygons to make a model more realistic, adding more to the amount of nodes to the world increases its overall believability. And, I am going to have fast transport lines connected between settlements. These will be some kind of system where you can get around a bit faster, but don't fight any battles to gain any xp. They'll be good for timed quests. Version 0.0.4 The party wakes up at 5:00am and packs up camp, eats some breakfast and heads out for at 6:00am. At 7:00pm, they stop, setup camp, find food, eat, converse and go to sleep around 9 or 10pm. However, the only thing you'll see at the current time is either "TRAVELING" or "SLEEPING". Traveling across mountains is the slowest form of travel. Sea is the fastest (and they'll move while sleeping). To help increase the accuracy, I've created a middle point node on each edge. It's like that I'll end up creating several "milestone" nodes on each path until I feel it is an acceptable accuracy. You can press 's' to see a list of all settlements and their population. Node information has been moved to the current HUD at the bottom of the screen. The file is a bit bigger because I added sqlite statically to my program: ------------ |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
It's coming along nicely. The player locater covers the name of the current town though. It might be nice to describe the available types of travel between one node to the next : hiking horseback train sea going vessel balloon (dirigible / hot air balloon) plane etc...
My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Onewing
Member #6,152
August 2005
![]() |
Quote: It's coming along nicely.
Thanks. Quote: The player locater covers the name of the current town though. Noted! I'll try to change that for the next version. Quote: It might be nice to describe the available types of travel between one node to the next : Right now, everything is "Walking Briskly" except for sea travel. I googled walking briskly and found it took about 16-17 minutes to walk a mile. I then decided players could walk around the fantasy world in 10 days, making the world 900 miles in width. World sizes of 2500 (normal) and 5000 miles will be included later on. This makes the normal fantasy world about a tenth of the size of Earth (25000 along the equator). Woah, sorry, went off on a tangent there. Ultimately, there will be more options when moving from one node to another. Like, walk (fight enemies along the way) or run (hurry past monsters to destination). But yes, I do hope to have other means of travel as well that can drastically change the characters sim-like stats (for example, comfort goes up if you take a first-class airship). Version 0.0.5 Version 0.0.5 Addition 100+ Weather Conditions Temperatures Shown Slight Timer Change to return CPU Power Seasons Modifications Yellow Debug lines removed Reset ticks after generation The current weather drops and rises like a sin wave based on the time of day (midnight being the lowest of the wave, noon being the highest). Easy to implement and believable enough imo. The current condition is based on cloud, wind and temperature intensity (and type, for special cases (no snowing in desert)). Depending on the season, these intensities change in different ways during the day. The full list of weather conditions can be found here, some items moved. I still need to add cold/warm fronts and freezing/heat waves for further drastic weather changes. I'd also like to have hazards (tornados, hurricanes, etc.) occur depending on certain situations, which will actually kill the population in the game. And maybe some easter eggs, like "Raining cats and dogs." As you can tell, I've been building quite a stage, but overall activity is pretty dormant. I'm hoping to start adding the actors soon, which I hope brings the game to life. Unfortunately, I'm getting ahead of myself and I'm watching as the bugs creep up. I'll probably have to work on the stability before too long. [edit] ------------ |
Kikaru
Member #7,616
August 2006
![]() |
This game is starting to look pretty awesome. How are you thinking of doing dungeons? |
Ran444
Member #9,701
April 2008
|
This looks quite cool. I hope that the full version will contain full SI-standards support? |
SiegeLord
Member #7,827
October 2006
![]() |
What's up with the diamondy shape of the mountains? If you notice they seem to be square pyramid shaped, instead of more conical shape of real mountains. I'd imagine you would improve the visual output of your generator greatly if you improved your height generation algorithm. And yeah, it'd be nice if you had means to introduce your own units into the system, so you are not stuck with the imperial system. I know it's your game and all, but if most of the world can't understand the units you are using, then what's the point of outputting them in the first place? Also, one place I've been to had a temperature of 141 deg F (60.5 deg Celsius). Quite toasty EDIT: Thought about adding visible day night cycles? "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Darizel
Member #10,585
January 2009
![]() |
Very impressive & I like the whole idea of creating unique planets. Only recommendation would be to fix up the zoom mode (less pixelated ---------- |
decepto
Member #7,102
April 2006
![]() |
Cool idea. What method are using to create random land masses? If you are looking for some interesting methods, check out Perlin Noise and Brownian Bridges. -------------------------------------------------- |
Onewing
Member #6,152
August 2005
![]() |
Quote: How are you thinking of doing dungeons? My hope is to have submaps that are exactly like the world graphs. However, in dungeons, time is slower, meaning instead of taking days to travel between nodes, it could just take hours. I might have different graph structures too, like more orthogonal. However, I think these nodes will have to be "entered" like the player has to "enter" them. In otherwords, if you go to a dungeon on the main world map, if you don't "enter" it, you're technically just passing by. Quote: I hope that the full version will contain full SI-standards support? Yeah, shouldn't be too hard to implement. I'm doing it this way for now so I can recognize obvious errors. Quote: What's up with the diamondy shape of the mountains? I once implemented a "light" system that really brought out the pyramid-like hills/mountains. Currently, it's a relatively low priority thing to fix, since it doesn't effect gameplay at all (purely aesthetic). Quote: Also, one place I've been to had a temperature of 141 deg F (60.5 deg Celsius). Yeah, temperatures need a bit of work. They're a bit too extreme as is. The average temperature is pretty realistic though. Quote: Thought about adding visible day night cycles? The code from the old Cosmos engine is still in there for day/night cycles (commented out), however I'm not currently planning on using it. It places the sun somewhere moving along the horizontal. This would mean I would have to introduce timezones and on a map this small, you'd pass a timezone or two every time you moved from one node to the next. I kind of feel that would be over engineering and only be good for the techie players. I am thinking of having a sun or moon icon hovering over the party icon. I might turn that into a weather icon and have a particle effect representing rain, snow, etc. Quote: Only recommendation would be to fix up the zoom mode (less pixelated Okay, upped the resolution and blurred to make it look less pixelally (with little hit to the generation phase thankfully). Quote: What method are using to create random land masses? If you are looking for some interesting methods, check out Perlin Noise and Brownian Bridges. I was recommended the Perlin Noise method when I was working on Cosmos. The current method I'm using is the Onewing method, something I made up completely, so it probably isn't the most efficient algorithm. The two main variables that create it are how often a new island is created (pic random x,y) and how far to jump from last x,y. Version 0.0.6
Keys: ------------ |
Edgar Reynaldo
Major Reynaldo
May 2007
![]() |
I'm not too fond of the blurring effect on close zooms. I guess I figured that you would eventually replace the pixel colors with tiles. Something else - the latest version takes up nearly 100% cpu on one core, even when nothing is happening and there is no mouse movement. Looks like you're still making good progress though. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
|
1
2
|