World of Banished

Conversations => General Discussion => Topic started by: salamander on June 27, 2014, 07:13:41 AM

Title: Brainstorming about the future
Post by: salamander on June 27, 2014, 07:13:41 AM
We've all seen, and probably contributed to, wishlists about features we'd like to see added to Banished.  I was thinking it might be fun to try to go one step further.  Instead of saying what you want to see in the future, how about trying to describe how you think a feature would actually work in the game.  Maybe this would give some Luke some ideas, if he ever visits here, about not just features, but also about implementation as far as the UI and/or other aspect of the feature.

To start, here are my ideas about Stockpiles (most of which are from other posts, not my own).  In my current game, I seem to spend a lot of time trying to redistribute logs, firewood, stone and iron by selecting stockpiles for destruction.  But, that gets to be tedious, and depending on stockpile location, without some additional micromanagement, you end up just shifting materials between two stockpiles.

Stockpiles have a capacity, just like barns, but can vary in size.  I'd like to see:
Some potential problems:


There are obviously questions/problems with this idea.  Do you have any ideas about how to address them?  Or, a completely different idea altogether?
Title: Re: Brainstorming about the future
Post by: irrelevant on June 27, 2014, 07:37:35 AM
It would be nice if you could initiate an order to move resources from a particular stockpile to another, or from one barn to another, or from a stockpile to a marketplace, etc.

I'm envisioning some function that would allow you to create a "move resources" task by clicking on an origin and on a destination, and ideally also tell it what resources to move and what to leave (if any), and the game engine would put that task into the laborer queue.

Super idea, btw. I'd love to be able to do this.
Title: Re: Brainstorming about the future
Post by: salamander on June 27, 2014, 10:17:52 AM
Quote from: irrelevant on June 27, 2014, 07:37:35 AM
It would be nice if you could initiate an order to move resources from a particular stockpile to another, or from one barn to another, or from a stockpile to a marketplace, etc.

I'm envisioning some function that would allow you to create a "move resources" task by clicking on an origin and on a destination, and ideally also tell it what resources to move and what to leave (if any), and the game engine would put that task into the laborer queue.

It seems like one of biggest differences between what you're describing and my original post is the amount of user-management involved.  Yours requires user intervention, and mine would be sort of a 'background' task once set up.  To be honest, I like your approach better since it eliminates the balance and percentage problems ... nice idea.

I wouldn't think there would be a problem with source-to-destination interaction with the game ... it's already being done with roads, fields, really any task that has a before-and-after click to get it set up.  Do you have an idea of how and when the amount of material to be transferred would be set ... maybe on a UI information screen for the source or destination stockpile/barn?

Quote from: irrelevant on June 27, 2014, 07:37:35 AMSuper idea, btw. I'd love to be able to do this.

I can't take credit for the idea of dealing with stockpiles and/or barns in a more organized way.  I've seen posts about these things all over the place.  I do think it would be nice (and maybe useful) to bring a lot of these ideas together in one place, though.
Title: Re: Brainstorming about the future
Post by: mariesalias on June 27, 2014, 10:54:21 AM
Quote from: irrelevant on June 27, 2014, 07:37:35 AM
It would be nice if you could initiate an order to move resources from a particular stockpile to another, or from one barn to another, or from a stockpile to a marketplace, etc.

This! So much this! ^


And an undo button would be helpful. Not to undo a built building or anything but when planning out layouts. I am not sure how it could be implemented though. 
Title: Re: Brainstorming about the future
Post by: irrelevant on June 27, 2014, 11:08:53 AM
Quote from: salamander on June 27, 2014, 10:17:52 AM
  Do you have an idea of how and when the amount of material to be transferred would be set ... maybe on a UI information screen for the source or destination stockpile/barn?
I suppose the TP functionality could be adapted without too much trouble (said a man who would not be doing any of the work). The TP must have a table that holds its actual inventory. That same table probably also contains the numbers where you set the desired inventory levels. Every storage location must use a similar or identical table for its inventory (or perhaps they all use the same big table). If it's the same table, I would think it wouldn't be such a stretch to also have the desired inventory level functionality added.

The missing piece there would be something to indicate that this inventory was to come from a specific location, and something to link that to the task queue so that laborers could be assigned to the job.
Title: Re: Brainstorming about the future
Post by: Paeng on June 27, 2014, 04:04:54 PM
Yep, good thoughts on the stock piles...

In addition, I'd love to see stock pile can be declared as -

Construction Sites
Allowing for on-site use of construction materials, e.g. treating the building footprint as a temporary stockpile so that villagers don't haul the stone from the site, across the map, then back to the site.

Also an 'early pick' for the -

Producers
Those who produce community goods out of collected materials (Blacksmith, Tailor, Brewer etc.) should get first pick on needed stuff (iron, coal, leather, wool, berries). For example - citizens tend to 'steal' coal for heating. Some sort of toggle or the ability to requisition a certain amount (like the trading post does) might fix that.

Title: Re: Brainstorming about the future
Post by: salamander on June 28, 2014, 04:52:28 AM
Snapshot Summary #1: Transferring Resources

Lots of good ideas.  Trying to take as much of what's been said as possible into account, here's a mock-up of how this could possibly work in-game to move resources from one stockpile (A - the source) to another (B - the destination):
A similar approach might work for other point-to-point transfers, like barn to barn, as well.

I think it's important that in trying to work out how users would interact with the game for new features like this, we try to stick to things can already do in one way or another.  Without knowing how the game is coded, I think everything in the mock-up above is already in the game (eg, information screens, tabbed screens, buttons, laborers moving set amounts of resources, etc...) -- it *might* be relatively straightforward to implement.




Other Ideas:
Title: Re: Brainstorming about the future
Post by: Paeng on June 28, 2014, 06:52:29 AM
Quote from: mariesalias on June 27, 2014, 10:54:21 AMAnd an undo button would be helpful. Not to undo a built building or anything but when planning out layouts.

Just for me to understand - right now you 'plop' a blueprint and immediately 'Pause' it... it stays inactive until you either 'un-pause' it or until you click on "Remove Structure", which just deletes the blueprint without further ado... How would a "Undo" button work differently?

Sorry, I'm probably just slow...  :-\
Title: Re: Brainstorming about the future
Post by: salamander on June 28, 2014, 07:49:41 AM
@Paeng (and @mariesalias) -- I had the much the same question.  If I understand @mariesalias' suggestion right, while you can use the 'Remove Structure' to delete the footprint, during layout of an area, switching back and forth between buildings and the 'Remove' button can be tedious.  I can see how an 'Undo' button on the footprint's info screen could speed things up if you were trying to place a lot of footprints before starting to actually build.

@mariesalias -- Is this close to what you meant?
Title: Re: Brainstorming about the future
Post by: Paeng on June 28, 2014, 08:17:11 AM
Okay, trying to visualize our Transfer thingie -

Attached


* I believe all needed values are already in the game...
Title: Re: Brainstorming about the future
Post by: salamander on June 28, 2014, 08:52:41 AM
Good idea putting up a screen shot.

The way I'm picturing it in my head is the first tab could be the usual 'Inventory' like stockpiles/barns have now ... with nothing settable, just information about what's being stored.  The second tab (maybe re-labeled 'Transfer') would be similar to what you're showing, with some way of changing storage values.  I think the drop down in your trader screen could be dropped entirely -- the game would know whether it's looking at a barn, or stockpile, or whatever.  The buttons at the bottom of your screen shot would be for starting the transfer itself.
Title: Re: Brainstorming about the future
Post by: Paeng on June 28, 2014, 12:34:56 PM
Quote from: salamander on June 28, 2014, 08:52:41 AMI think the drop down in your trader screen could be dropped entirely -- the game would know whether it's looking at a barn, or stockpile, or whatever.

Well, for the one you originally picked... however, I think it is nice if you can just continue picking other piles and barns from the already open menu, instead of having to return to the game and start looking again...  :)
Title: Re: Brainstorming about the future
Post by: salamander on June 28, 2014, 01:16:48 PM
I guess what I was thinking is that if you tried to transfer between two storage sites (including, maybe, trading posts and markets) that weren't compatible, the game just wouldn't allow it.  Since the menu belongs to the source storage site, that limits where you can transfer to.  I do agree that being able to keep the info screen open after starting a transfer would make it easier to deal with more than one transfer.

I'm not trying to argue ... I just think I'm missing something important in what you're saying.
Title: Re: Brainstorming about the future
Post by: Paeng on June 28, 2014, 03:47:17 PM
Quote from: salamander on June 28, 2014, 01:16:48 PMI'm not trying to argue ...

No problem...  :)

In your Snapshot Summary #1,  No 4 and 5 -
I understood that as being able to perform the "select and send" multiple times... (because the click on 4 does not end the transaction like e.g. the "Dismiss" button for Traders).

* But that falls already into the programming realm - where I know nothing...
Title: Re: Brainstorming about the future
Post by: salamander on June 28, 2014, 05:32:54 PM
OK ... I see what you're saying.  Being able to do multiple 'select and send' would definitely be useful.  I wonder if flipping steps 4 and 5 (ie, click on destination, *then* hit the 'Transfer' button) would be a better way, or maybe just a little more intuitive?  With the same screen open, you could click destination, click Transfer ... click destination, click Transfer ... etc...

Even though the game already can deal with start-end mouse clicks, I'm not sure if this would fit well enough into what already exists to be easily added.  But it seems that as long as there's a button (the 'Transfer' button) to terminate the current transfer and add it to the laborer queue, each additional transfer order, even from the same source storage site, could be considered as a completely separate order.
Title: Re: Brainstorming about the future
Post by: irrelevant on June 28, 2014, 06:03:14 PM
I think you are going to want to do transfers from the map rather than from a list. How bout if it worked like this:

You select a storage site with left click. This is the origin storage site.

You select a second storage site with ctrl + left click. This is the destination site.

A "Logistics" screen pops up. It lists the current inventory of the origin site in the left panel, and the right panel is the transfer quantity panel. It would look similar to the "Trade" screen in the TP.

You say what quantity of each you want to transfer, and you click the "transfer" button.
Title: Re: Brainstorming about the future
Post by: RedKetchup on June 28, 2014, 06:14:23 PM
Anyone remember Age of Empire ? you could select a building and build something, and you could right click on another building (like a tower?) and as soon the troop was made, they were going into that 'right clicked' building.

i think the very very old ceasar 3(1998) also had some features, but so long time i dont really remember exactly, but it had alot more control versus we can do in Banished

so ya , the barns (and warehouse) had a 'menu' where you can say for every items listed to : 'go pickup the items' (from another barn or warhouse), 'accept' or 'refuse' (to be stock here)


i am not sure if the game has been coded for that(for these right click, or left click or control-left), unless if in the future we get a huge patch.
Title: Re: Brainstorming about the future
Post by: salamander on June 29, 2014, 05:31:43 AM
@irrelevant -- That's an interesting approach, and off-hand it seems like it might be cleaner than what I originally had.  The game certainly already 'knows' how to deal with mouse clicks modified by having a control-type pressed.

One of the ideas being batted around, though, is being able to do multiple transfers from one origin site to several destinations, without having to start from square one for each transfer.  Do you think your approach would be able to handle that type of thing, or would you have to go back to the map and start the left-click/ctrl-left-click each time?
Title: Re: Brainstorming about the future
Post by: salamander on June 29, 2014, 05:38:07 AM
Although this topic started using stockpiles as a convenient example, it has grown a little to include resource transfers between barns, marketplaces, etc...  It occurred to me that most of these transfers could work just fine, but the transfer to the market may be a problem.  In this case, you're 'fighting' against an AI (the vendors) that already are trying to manage how a market is stocked.  So, it may be that setting up user-controlled transfers to the market could be a more involved process to add to the game than other types of transfers.
Title: Re: Brainstorming about the future
Post by: irrelevant on June 29, 2014, 09:33:29 AM
Quote from: salamander on June 29, 2014, 05:31:43 AM
@irrelevant -- That's an interesting approach, and off-hand it seems like it might be cleaner than what I originally had.  The game certainly already 'knows' how to deal with mouse clicks modified by having a control-type pressed.

One of the ideas being batted around, though, is being able to do multiple transfers from one origin site to several destinations, without having to start from square one for each transfer.  Do you think your approach would be able to handle that type of thing, or would you have to go back to the map and start the left-click/ctrl-left-click each time?
Not sure about that. If the database and engine work anything like how I imagine they do, I expect that setting a second transfer order would override the first one, although any citizen who was already carrying out the first order would continue to do so.
Title: Re: Brainstorming about the future
Post by: rkelly17 on June 29, 2014, 10:07:11 AM
One thing I like about some of the Impressions city-builders (Pharaoh and Emperor for sure) was that you could tell market places not to carry certain goods. If you wanted to keep a neighborhood in worker housing rather than luxury housing you tell the market in that neighborhood not to stock luxury goods. So, I'm wondering whether something like that could be used to address the problem mentioned that citizens take, for example, coal that you want your blacksmiths to use for steel tools (I've basically given up on steel tools for that reason). You could also direct certain fruits to the circle where most of your taverns are if you're producing ale for export. The one problem I see is that production of items like tools for general usage can't really be concentrated or you get spot shortages around the map or vendors making very long trips. Perhaps that could be balanced by the idea of orders for storage yards and barns. In Pharaoh I always set two storage yards near each residential area to "get" the necessities for higher level housing (e.g., pottery) so that those goods were close at hand for market vendors. Maybe 2-3 barns and a storage yard in each market circle set to "get" the necessities. A second problem (maybe) is that in games like Pharaoh and Emperor storage yards always had a staff who could go out and get. Customizable barns and yards would require staffing which would reduce the number of laborers available for normal service. The trade off might be worth it.