News:

Welcome to World of Banished!

Main Menu

Brainstorming about the future

Started by salamander, June 27, 2014, 07:13:41 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

salamander

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:

  • A UI screen similar to trading posts, but only including stockpile resources
  • The UI screen would let you set a maximum for the stockpile, in case you didn't want the stockpile at its current size to be filled.
  • The UI would let you set a percentage of the total maximum/capacity for each resource.  I'm using a percentage since the size or chosen maximum of the stockpile can vary.
  • Laborers (maybe at a low priority) would try to keep the stockpile at the values that were chosen
Some potential problems:

  • How would you prevent one stockpile from being emptied at the expense of another?  Presumably, all stockpiles would be created equally, and there would need to be a balance.
  • Would stockpiles need to be staffed in order for this approach to make sense, or can we just assume that laborers have standing orders to keep things moving around?


There are obviously questions/problems with this idea.  Do you have any ideas about how to address them?  Or, a completely different idea altogether?

irrelevant

#1
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.

salamander

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.

mariesalias

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. 

irrelevant

#4
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.

Paeng

#5
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.

[i]Heads are round so thoughts can take a turn[/i]
[color=teal][size=8pt]Editor's Choice [b]here[/b][/size][/color]

salamander

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):

  • left-click on A to bring up the information screen
  • the information screen would now have a second tab called, say, 'Transfer' ... click on that tab
  • the Transfer tab would list all of the stockpile resources and have up/down arrows (like a trading post) to select an amount to transfer
  • at the bottom of the 'Transfer' tab would be a 'Transfer' button (again, think about the trade screen at a trading post) ... click that button
  • immediately left-click on stockpile B to set the destination for the transfer
  • laborers would handle the transfer
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:

  • an 'Undo' function for building footprints (@mariesalias)
  • treating building footprints as a temporary stockpile for building resources (@Paeng)
  • setting resource priority for producers needing that resource (@Paeng)

Paeng

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...  :-\
[i]Heads are round so thoughts can take a turn[/i]
[color=teal][size=8pt]Editor's Choice [b]here[/b][/size][/color]

salamander

@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?

Paeng

#9
Okay, trying to visualize our Transfer thingie -

Attached


* I believe all needed values are already in the game...
[i]Heads are round so thoughts can take a turn[/i]
[color=teal][size=8pt]Editor's Choice [b]here[/b][/size][/color]

salamander

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.

Paeng

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...  :)
[i]Heads are round so thoughts can take a turn[/i]
[color=teal][size=8pt]Editor's Choice [b]here[/b][/size][/color]

salamander

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.

Paeng

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...
[i]Heads are round so thoughts can take a turn[/i]
[color=teal][size=8pt]Editor's Choice [b]here[/b][/size][/color]

salamander

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.