Topic: Warehouse controls
Lobsterninja Topic Opener |
Posted at: 2010-03-09, 22:18
Would be nice to allow the user to specify the desired stock level for each type of item in a warehouse. The warehouse would request shipment when the stock level is not met. The priority of a warehouse stock request would be lower than a standard consumer request. Top Quote |
Nasenbaer |
Posted at: 2010-03-10, 07:58
There is a similiar feature for the whole economy - click on a flag in your economy and than click on "ware target quantiy settings" (or similiar - don't have a widelands build in front of me atm ) However there are plans to improve ware handling in warehouses as well - so with "stop storing this ware here" and "move all wares of this type to another warehouse" buttons. But ... just future music at the moment :). Top Quote |
ixprefect |
Posted at: 2010-03-10, 16:43
What's the opinion on trying to balance warehouse contents automatically? If we have a request somewhere, let that request first check for supplies in the closest warehouse (or idle supplies that are not significantly further away). If this warehouse cannot fulfill the request, flag this somewhere in the warehouse. If a lot of supplies of the missing ware are available elsewhere, have part of them moved to that warehouse. This would cause building materials to migrate towards the borders where buildings are being built, even if the materials are produced close to the HQ. The whole idea appeals to me mostly because it's an interesting task to design useful heuristics. I'm not so sure whether it's actually a good idea from a game design perspective. Top Quote |
Lobsterninja Topic Opener |
Posted at: 2010-03-12, 11:00
I like both of those ideas. For warehouses, I would love to see a control for the desired stock level. The UI would replace the single number with a pair of numbers (current / desired), with + and - buttons to adjust the desired quantity. The rule would be that the desire for a commodity gets a bonus if the actual stock level is less than the desired stock level. It would still be possible for the stock to increase beyond the desired level if a commodity doesn't have anywhere better to go, but items will want to move from overstocked warehouses to understocked warehouses. Top Quote |
timowi |
Posted at: 2010-03-12, 15:02
I began to implement the "stop storage" and "move out" some time ago. I target to push a branch when build15 is ready. I had some problems with the request system and I think a will change a lot there. I thought of getting the warehouses out of the request system. This would make it a lot easier and allows to implement different "storage strategies". I still have to search for some bugs in the economy code before I can do something useful there. I try to write something about my plans and push a first branch as soon as possible. It makes not much sense to work on similar features "out of sync". But I want to do a bit for build15 before that. I think a heuristic for where to store a ware will make it more complicated and harder to understand. Possible it makes it even worse. On big maps it's often almost unpredictable where I will build the next building. Possible it even makes it worse by transporting a long way to a wrong direction and cause more traffic. I thought of adding a storage strategy like distributing over all warehouses if above a certain value stored and there is road capacity. Top Quote |
Lobsterninja Topic Opener |
Posted at: 2010-03-14, 05:00
Here's how I would design it... Keep in mind that this proposal is a complete system, so each item should not be considered individually without considering the whole (e.g. undoing a bad solution to a real problem and replacing it with a good solution is not the same as just removing the solution). Also, this implements a single basic idea that solves a large set of problems that either have no current solution or have a current inferior solution. With that in mind... Observations:
The basic idea is to solve all of the resource distribution problems by allowing the user to specify desired stock levels. This mechanism will also solve the problem of military training (i.e. that there is no decent mechanism for exchanging trained and untrained soldiers). These goals are to be met in a way that avoids micromanaging, and give the player control over something that is fun to control. Although I go into some detail here, the concept is quite simple when you take a moment to think about it. The desired stock level is not a hard limit. Items can become overstocked or understocked. The desired stock level determines where resources flow (details below...). Feature to be replaced:
Features to be added (globally implement the concept of desired stock levels)
In industrial buildings, overstocked items are available to be moved to where they are needed (note that this feature trumps the idea of manually expelling items, which is micromanaging). To stop production in an industrial facility, the player sets the desired stock levels to zero. Production will continue anyway until the stock is used up or sent elsewhere. Precedence for wares and raw materials:
Note that "fully stocked industrial building" neither sends nor receives. Whenever there is a difference in precedence of a good between any two buildings that can be resolved by a transfer, a transfer order is placed. Of course, a transfer from overstocked to fully stocked, or a transfer from fully stocked to understocked would not occur, since these cases would cause the same condition that they try to resolve (possibly resulting in a loop). When determining the relative importance of competing transfers, the transfer with the largest differences between desired stock and actual stock has precedence. Precedence for military units:
|
Lobsterninja Topic Opener |
Posted at: 2010-03-15, 02:10
I converted this to a blueprint: https://blueprints.launchpad.net/widelands/+spec/stocklevels Top Quote |
SirVer |
Posted at: 2010-03-15, 13:08
Hi, I had a throughout look at your proposition and I think the blueprint needs more work. I like the general style and it could become an example of future Blueprints. I have the following complaints:
I understand that you see the features as related, but I think each of them would be useful in their own regard and should actually not be considered as one feature. Cheers, !SirVer Edited: 2010-03-15, 13:09
Top Quote |
timowi |
Posted at: 2010-03-15, 13:59
Hi Lobsterninja, thanks for your detailed proposal fist of all i want to differentiate between changes/fixing to the underlying system and how to control the economy: The economy system:I have worked mainly on this part yet. It's hard to change the control functions if the underlying system does not work completely and correct. There are some bugs which must be fixed. (One of these is not considering the output queue of a warehouse when assign a transfer to a request). The economy should avoid traffic jams which are not necessary. I think of separating the storage of wares from the request system of economy. This would avoid some problems, should give some speed improvements and allows different strategies for storage of wares. The main problem with the economy I see:
Control the economy:micro- vs. macromanagingI think micromanagement should be possible in widelands but it must never be necessary. I consider even your stock levels as micromanaging. general
I think these will go away if the economy system is fixed (and advanced). That are workarounds for a incomplete economy/request... system. Military
I'm not with you in this point. The capacity setting makes sense in my opinion. Your right if you have enough soldier to fully occupy all military buildings. But most of the time you will not have enough soldiers. Whether this should be done by the player or by an AI is a different thing. Wareflow
There are? I think not. At the moment the only thing to control wareflow is ripping up roads. Stopping productionsites goes a bit in the direction bud does not really work.
I think your approach is far to much micromanaging. I want to do most of the settings economy wide. Setting this for every production site is far to much overkill.
This works fine if you have enough ware. But what is about the common situation the every building is understocked? It would not give much control over it. ConclusionThe current economy configuration is much like what you proposed. My planed addition are the mentioned fixing and advancing of the economy/request/transfer code and a little bit more control. My control addition would be:
Please try to separate the mentioned economy code improvements out of your proposal. I will write a blueprint and push some code a soon I have sorted this a bit. Cheers Timo Top Quote |
Nasenbaer |
Posted at: 2010-03-15, 17:10
Of course my personal opinion, but: I agree with Timowi here - there is no need for a complete economy/military design change - however there are many nice features that would improve the current system. Cheers Peter Edited: 2010-03-15, 17:13
Top Quote |