Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 17 18 [19] 20 21

Author Topic: Iron Testament - an ancient "open world roguelike" (pre-alpha)  (Read 78449 times)

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #270 on: June 03, 2015, 12:12:15 pm »

Ah, thanks! The link and your summary were both helpful for me setting out how to create a similar system.
In your simulation, what do you do about the number of each type of agent? Is the number of them constant for each, do they switch roles but the overall number of agents stay the same, or does the actual number of agents change? The first would of course be easier, but in both the report linked and your own data the supply of commodities changes over time.

Currently, I seed the economy with a preset number of agent types (lots of farmers, lots of agents who produce the types of goods that a city is exporting). When an agent goes bankrupt, a new one appears. The new agent's type is set as a coin flip between the agent who would produce the current most demanded good, or the current most profitable agent type. Taxes are collected each turn, so unproductive agents will eventually go bankrupt and be replaced.

The interesting part is that since there's a finite amount of gold in the world, it's impossible for all agents in the economy to be successful. There will always be agents bankrupting and new ones appearing, giving the economy a natural ebb and flow.
Logged

Graknorke

  • Bay Watcher
  • A bomb's a bad choice for close-range combat.
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #271 on: June 03, 2015, 12:29:56 pm »

Okay, I think I understand it well enough now. I look forward to seeing how it plays into the wider systems you have :)
And while what you've described so far is already more than complex enough to be a challenge for me to replicate on its own, have you got any plans for limitations caused by finite common goods? Things like deforestation, mines running out... that kind of thing.
Logged
Cultural status:
Depleted          ☐
Enriched          ☑

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #272 on: June 03, 2015, 03:38:11 pm »

And while what you've described so far is already more than complex enough to be a challenge for me to replicate on its own...

You can also check out Bazaar Bot, an open-source replication of the same paper:
http://www.gamasutra.com/blogs/LarsDoucet/20130603/193491/BazaarBot_An_OpenSource_Economics_Engine.php

...have you got any plans for limitations caused by finite common goods? Things like deforestation, mines running out... that kind of thing.

Yes - one of the major reasons I wanted to implement the economy system is so that it could also collapse, due to any number of reasons including lack of resources.

The first step will be linking economic activity to specific places in the world. So, each tile on the world map will have a certain number of "slots" for farmland, each forest will have a certain amount of woodcutters it can support, etc. Whenever a city's economy looks to create a new agent, it would have to respect the limits, so even if mining was the most needed agent type, it couldn't place another one if the mines were full. Tying economic activity to the land will let farmlands be plundered, or mines captured, which would send ripples through the economy.

This is the short-term goal for the economic side of things. I'd also like to look at things like different farming regions having differing fertility, or even different agricultural technologies or techniques affecting each farm's output.

However, getting to the point where resources get depleted may take some time, and will probably have to wait until other gameplay elements are in.
« Last Edit: June 03, 2015, 03:39:58 pm by Clownmite »
Logged

Graknorke

  • Bay Watcher
  • A bomb's a bad choice for close-range combat.
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #273 on: June 03, 2015, 05:10:52 pm »

You can also check out Bazaar Bot, an open-source replication of the same paper:
http://www.gamasutra.com/blogs/LarsDoucet/20130603/193491/BazaarBot_An_OpenSource_Economics_Engine.php
Thanks for that too. Can't go wrong with more resources to learn from.

Whenever a city's economy looks to create a new agent, it would have to respect the limits
Setting limits on the number of each type of agent actually is, I would say, a solution that is more than good enough. It can be tweaked to represent many different scenarios. There's resources being denied by enemies, you could have a straight counter for resources that decreases, and the number of slots available goes down in order to simulate the same production requiring a larger area, increases in the number of 'manufacturing' style slots to represent increases in productive technology, factories that operate on a larger scale. It's obviously not perfect (and what is?), but for gamey purposes you could hit just about everything with it.
Logged
Cultural status:
Depleted          ☐
Enriched          ☑

HavingPhun

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #274 on: June 05, 2015, 02:50:07 pm »

   I may have a bit of trouble trying to explain what my question is, but I shall ask it as you seem to have tackled it. From your pictures, I believe that when your game generates it's worlds it first generates a 'world' map. This map is just a 'zoomed out' map, each tile is just used to represent a region and is actually made up of many other tiles.

   Then you have the 'local' map, the one that your character actually walks around in. I currently am at the point where I can generate world maps, with rainshadows, biomes and all of that. But, I am rather confused as to how you generate the local maps of each world tile. For example:

-How do you know what elevations that the local tiles should be?
-How to you get the edges of the maps to line up?
-Do you generate the local maps after you generate the world maps?

   I hope I have explained my question in an understandable way, let me know if I need to explain it differently.
Logged

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #275 on: June 06, 2015, 10:45:45 pm »

The library I'm using has a function that draws hills at a specific height. I draw hills at the 4 corners, 4 midpoints, and center of the local map, where the height of each hill is the height of the corresponding tile on the world map, and the radius is roughly half the local map width. That forms the seed of the elevations, and then there's some noise added on top of that. Currently the heights of the local tiles don't matter too much anyway, so until they do I won't be thinking too much about it. I may give combat advantages based on height, but only if I have an easy, sensible, and unobtrusive way to see heights + their effects on the map.

The edges of the maps don't line up. That's another problem that I won't be focusing on near-term. The idea will be that you move around on the zoomed out map, and then go onto the local map when anything interesting happens. You won't be able to travel seamlessly around the world on the local map in the near term.

I only generate the local maps "on demand", so only when a player actually wants to view the local area.
Logged

HavingPhun

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #276 on: June 09, 2015, 02:17:42 pm »

The library I'm using has a function that draws hills at a specific height. I draw hills at the 4 corners, 4 midpoints, and center of the local map, where the height of each hill is the height of the corresponding tile on the world map, and the radius is roughly half the local map width. That forms the seed of the elevations, and then there's some noise added on top of that. Currently the heights of the local tiles don't matter too much anyway, so until they do I won't be thinking too much about it. I may give combat advantages based on height, but only if I have an easy, sensible, and unobtrusive way to see heights + their effects on the map.

The edges of the maps don't line up. That's another problem that I won't be focusing on near-term. The idea will be that you move around on the zoomed out map, and then go onto the local map when anything interesting happens. You won't be able to travel seamlessly around the world on the local map in the near term.

I only generate the local maps "on demand", so only when a player actually wants to view the local area.
You are using libtcod, correct? I suppose that is one way to do it. The piece about making sure that each local areas height matches the worlds height is what has stumped me. On your world maps, what scale did you use for elevations? I used 0-255 (including zero) since it is easy to give a specific color to each height that way because RGB goes from 0-255.
Logged

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #277 on: June 10, 2015, 01:24:22 am »

Yup, I use 0-255 too, for both the global and local maps.

Right now, I'm imagining my local areas as one "section" of a larger world region. In the near term, I'm not worried with having the map edges line up perfectly, as long as I get a map that is a reasonable approximation of the area it takes place in. This means that in my local maps, the tiles in my map edges will vary in height and not perfectly "line up" with what the bordering tile in the world would have.

I'd ask the same question to the dev of Ultima Ratio Regnum, or Tarn Adams himself in a Future of the Fortress thread. Both those games create local maps which line up seamlessly with each other, so you'll likely get a better response there. I myself wonder how they do it!
Logged

P(ony)SI

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #278 on: June 10, 2015, 05:33:48 pm »

I'd do it by generating the entire world at once and then splitting it into chunks without re-generating anything. That seems very inefficient though, so you'd be better off asking Toady One or something.
Logged

HavingPhun

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #279 on: June 12, 2015, 02:53:34 pm »

Yes, I will ask Toady One, he has done it. I was thinking that one way to make the edges match up could be to just run a function that 'smooths' the edges of each map out. So it would take the average of the edges of two adjacent local maps and set that as the edge height.
« Last Edit: June 13, 2015, 04:14:10 pm by HavingPhun »
Logged

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #280 on: August 03, 2015, 01:47:35 am »

Just a small update; things are moving along little by little. There's the first pass at having resource gathering tied to a physical place in the world, so if an army comes pillaging, those resource gatherers can no longer produce their goods until the army moves away (although armies don't really exist yet).

I've been thinking a lot about how I want the player to tie into everything. What I'm aiming for is that the world will get its history going for a bit and when some interesting event comes up, the player is given the option to take over that character. After that event is resolved, the player would be given the option to continue playing, or have the world go back simulating stuff until another interesting event comes up.

I guess that this might end up looking like a "story generator" more than a traditional roguelike. But as I'm developing this, it's becoming obvious why nothing like this (except for DF and maybe URR) has been done before. It's just really difficult to figure out how to design a world with interesting events, plot hooks, and stories that don't feel too cookie-cutter, and even harder to get that in code. 
Logged

Mephansteras

  • Bay Watcher
  • Forger of Civilizations
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #281 on: August 03, 2015, 12:36:25 pm »

Worthy goal, though!
Logged
Civilization Forge Mod v2.80: Adding in new races, equipment, animals, plants, metals, etc. Now with Alchemy and Libraries! Variety to spice up DF! (For DF 0.34.10)
Come play Mafia with us!
"Let us maintain our chill composure." - Toady One

Lightman

  • Bay Watcher
  • The groboclones are looking for you.
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #282 on: September 14, 2015, 01:57:00 pm »

I guess that this might end up looking like a "story generator" more than a traditional roguelike. But as I'm developing this, it's becoming obvious why nothing like this (except for DF and maybe URR) has been done before. It's just really difficult to figure out how to design a world with interesting events, plot hooks, and stories that don't feel too cookie-cutter, and even harder to get that in code.

What's URR?
Logged

Asgarus

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #283 on: September 15, 2015, 04:04:47 am »

I guess that this might end up looking like a "story generator" more than a traditional roguelike. But as I'm developing this, it's becoming obvious why nothing like this (except for DF and maybe URR) has been done before. It's just really difficult to figure out how to design a world with interesting events, plot hooks, and stories that don't feel too cookie-cutter, and even harder to get that in code.

What's URR?

Ultima Ratio Regum


Just a small update; things are moving along little by little. There's the first pass at having resource gathering tied to a physical place in the world, so if an army comes pillaging, those resource gatherers can no longer produce their goods until the army moves away (although armies don't really exist yet).

I've been thinking a lot about how I want the player to tie into everything. What I'm aiming for is that the world will get its history going for a bit and when some interesting event comes up, the player is given the option to take over that character. After that event is resolved, the player would be given the option to continue playing, or have the world go back simulating stuff until another interesting event comes up.

I guess that this might end up looking like a "story generator" more than a traditional roguelike. But as I'm developing this, it's becoming obvious why nothing like this (except for DF and maybe URR) has been done before. It's just really difficult to figure out how to design a world with interesting events, plot hooks, and stories that don't feel too cookie-cutter, and even harder to get that in code. 

That sounds genius. It's like reading a book and being able to change the story by controlling your favorite character yourself ;)
Logged

Clownmite

  • Bay Watcher
    • View Profile
Re: Iron Testament - an ancient "open world roguelike" (pre-alpha)
« Reply #284 on: September 16, 2015, 01:07:35 am »

That sounds genius. It's like reading a book and being able to change the story by controlling your favorite character yourself ;)

Thanks, we'll see if it works out. There's still a long way to go.


I've spent the past few weeks completely rewriting the economy module to overcome some of its limitations. I think it's finally coming together. The world economy seems relatively stable after the 25-year test run i did (graphs for the result of this test run can be found here - note the bottom two subplots of each graph are mislabled, they should say "by total amount of goods [offered / requested]" in the title). The current settings make supply of items very high, so the graph should get more interesting as those numbers get reduced and agents have to compete more fiercely for resources.

This updated version has a much better tracking of goods, so I hope to tie those in with everything else in a much nicer way. For example, people will need to get enough stone to build dungeons and whatever else. Ideally having historical figures (rather than the general "economy agents") compete for resources will make the happenings of the world much more interesting.
Logged
Pages: 1 ... 17 18 [19] 20 21