Feedback/Modification Room Mechanic - Rooms. Do we need them?
#1
Code:
Before the Imp's Job Reform of '07, I couldn't think of a reason as to why rooms existed in the first place.

Now we have a reason: To have a set group of imps idling around until the real un-unionized workers delivered them goods so they can work... if they feel like too.

And what does this get us? An inefficient dungeon unable to pay the orcs for protection, piles of rubbish accumulating in our very corridors and an unfair distribution of the gold among the storage rooms.

And who is to blame for? Ourselves! Yes, ourselves, because we let someone higher up, whom we never get to see, point with his finger who should work where!

DOWN WITH THE ROOMS I SAY, EQUALITY OF OPPORTUNITIES FOR EVERY IMP, ORC AND CYCLOTAUR!

Joking aside, are rooms really necessary? Why not let the player construct whatever structure he wants, wherever he wants it, and let the imps do the jobs that need to be done whenever they are needed to be done?
Reply
#2
I think the reason for that is because in earlier versions the game was getting very laggy at times, especially in a large, well-developed dungeon. The rooms have reduced the lags noticeably for me. I haven't had any major issues with lagging since the use of rooms, other then necessary and usual tweaking and balancing of a new system, which in 0.7d is massively better then the previous version (I can't comment on versions 0.7a and 0.7b as I couldn't play those versions due to a game breaking bug).

IMO there is definitely still more work to be done. Once issue that will eventually come up is a full store room shutting down production of rooms linked to it since it wouldn't be able to receive the end products from that room. There is an ongoing discussion about being able to set limits as to the maximum and minimum number of items a store room will accept to fine tune item and storage availability so the user can control that sort of situation without micromanaging it, but that's a discussion for that topic's thread.
[Image: 11619898803_7d3a89e6bd_n.jpg]
The Golden One!
Reply
#3
The lagging is a good reason..
At first I implemented the rooms because the buildings in them was autocreated just like in DK. But then after that I made some major changes to the game that the player were able to build his own buildings in the rooms. At this point the rooms were useless, and I did get some comments about why they were there at all..

Now it is a little bit more tricky because if I would remove the rooms there is nothing binding a group of buildings together and the imps will run freely and be much harder to bind to certain tasks. That is the main reason we need the rooms now. If there are another way to bind the imps together with a group of buildings that is just as easy as now without the need of rooms I will definitely consider it.
Reply
#4
I don't have any issue with there being rooms, for one thing, they clearly define what type or production should be going on in an area, so I can more easily plan out my production chains and organize where I want to produce something in the future. I know this because I've marked it out with the appropriate room type.
[Image: 11619898803_7d3a89e6bd_n.jpg]
The Golden One!
Reply
#5
That's something I was really bothering me - if everything works on Room Buildings (RBs), why we need Room Floors?

If chains could go directly to each RB (including wells, fishing spots, etc.) or group of RBs (group would automatically be created when game find that the same RB(s) abuts to each other, each RB is one tile farther from RB of the same type - so you don't need to have each Antroot field chained, but whole group of them as one thing) production chain would be very flexible.

This way we could invent buildings that would be put everywhere (I suggested for example to put RB on bridge from where you could gather magma to pots). Claiming them would be the same as in DK - as bigger is group of RBs as longer it take to claim them. Also we could make RBs destroyable. Imps could be associated to direct Room Building instead to whole Room, also every imps that stores resources in each room could just move from one Storage Room to what you want or food from Storage Rooms to Bar Room tables (in this case chaining could be more efficient).

It would be easier to put the same RB in different place like Weapon Rack or Storage Shelve - so now storing items of any kind could be possible in every Room, place, each would have its own store room and... this even would may complicated chaining rooms obsolete - but what we would do to make imps storing desired item to Room Building that needs specific type of resource? A script that would tell imps that after they dig out for example iron will store it in Iron Smelter not in the closest Storage Room. What if you find iron, but there's no need for it? Game will check first if there's no need for this type of resource and id not imp will put it to closet Storage Room, simple.

Ability to built everything anywhere would allow us to develop new strategies, economics, tactics (imagine - you place full of resources store room in your blacksmith and greedy one would like to grab them unconscious that you secured your room with dozens unpleasant traps Big Grin), so that's another way of going out of DK schemes.
Spec: Win 10, ATI 7800 HD, res: 1280x1024x75. I support The Venus Project & Resource-Based Economy
Reply
#6
The thing is that we need the Room Floors because they group the buildings together. We could let the player group the buildings together without the room floor, but this would make the linking system much more complicated than it is now.
Reply
#7
(19-06-2014, 11:44 AM)Rasmus Wrote: The thing is that we need the Room Floors because they group the buildings together. We could let the player group the buildings together without the room floor, but this would make the linking system much more complicated than it is now.


That's why I said about automatically grouping Room Buildings that are close to each other, but - when I think about Room roles more...

...in other hand... Rooms could group every Room Buildings in between Room boundaries, which would be even better if we could built storages or wells on every Room Floors - so thanks to that what you would only need is to link Storage Rooms between other Storage Rooms if storage Room Buildings in Rooms are full or there is need to go from one SR to SR from which will be stored items from our Room where its storages are full. No need to make chains between wells and storages in Room boundaries because they will be automatically chained with that Room.

What do you think about this now?
Spec: Win 10, ATI 7800 HD, res: 1280x1024x75. I support The Venus Project & Resource-Based Economy
Reply
#8
What I envisioned when I posted this was exactly what Sebt mentioned (on the 5th message).

I think that linking room together exclusively can and do bring new problems to the table.
Right now, we have to both link production rooms to storage rooms and set in those storage rooms which resources to accept/reject. If by any chance you max out a storage or mix the accept/reject order, production stops altogether.


I think it would be much simpler if rooms and linking disappear.


You would have different structures built wherever you want, along with storage facilities scattered around. Any structure built besides another structure of the same type would behave as one unit. You would still be able to mark what accepted/rejected in a storage unit, in order to have dedicated storages (so imps don't fill the storage near the backing table with stones). Imps would use whatever storage is nearer that accepts the resource he is carrying/fetching.

Specialised workers would change a little bit. Instead of being chained to a room, they would be chained to a profession. The first time you build a structure from one of the professions (bartender, cook, metal worker, farmer) one imp gets assigned that profession automatically. You can change that from a menu afterwards, to balance things as you see fit.

Storage workers will be added to the free-workers pool. They'll carry around resources that they find lying on the floor, collect water when there's a projected need of it, feed the dark mother and claim new land when idle (or when they are told to build a torch).


Along with this, it would also be nice to have a priority % that would appear when right-clicking a structure. This would work as follows:

You have %100 to distribute among your structures. Whenever you build a new structure it takes a little bit of priority from every other structure evenly. So if you have...
  • 50% - Baking table.
  • 50% - Farm lot (several adjacent farm blocks constitute 1 lot that shares the same priority)

...and decide to build a melter, you'd have...
  • 33% - Baking table.
  • 33% - Farm lot
  • 33% - Melter

...but now you really need some iron ingots to build punching pigs, so you right-click on the melter and a priority icon appear in the radial menu which tell you the priority % number assigned to it. Above said icon is a green arrow, and below a red arrow. Whenever you click on them, you add or subtract 1% to the % value. So let's say you want to prioritize the melter, you click the green arrow a couple of times until you leave it at 40%. Now, the baking table and the farm lot both have 30%, instead of 33%.

[Image: 4EOtm95.png]
  • 30% - Baking table.
  • 30% - Farm lot
  • 40% - Melter

Same would work if you are fed up of feeding orcs with bread. You would decrease it's priority by clicking the red arrow of the baking table until it's 20%, distributing this extra priority relatively even among the other structures...
  • 20% - Baking table.
  • 34.3% - Farm lot
  • 45.7% - Melter

...the only thing that could be useful is a lock symbol along with the green and red arrows, so you make sure that the priority % of a particular structure is left untouched. This way you could have the ease of mind that no matter how much you distribute the % around, a particular structure will always have a 20% of priority among the free-workers.


Thanks for reading Wink
Reply
#9
(19-06-2014, 07:53 PM)Excess Wrote: Right now, we have to both link production rooms to storage rooms and set in those storage rooms which resources to accept/reject. If by any chance you max out a storage or mix the accept/reject order, production stops altogether.

I think it would be much simpler if rooms and linking disappear.

Hmm, yes that's problem - chaining limits you to Rooms you are chained to only.

(19-06-2014, 07:53 PM)Excess Wrote: You would have different structures built wherever you want, along with storage facilities scattered around. Any structure built besides another structure of the same type would behave as one unit. You would still be able to mark what accepted/rejected in a storage unit, in order to have dedicated storages imps(...) imps don't fill the storage near the backing table with stones). Imps would use whatever storage is nearer that accepts the resource he is carrying/fetching.

Dedicated storages - good name for it. I would like to have marking what accepted/rejected in a storage unit going automatically and working in two simple ways:
  • Storages chained with Room(s) (Buildings) - could only accept items that are required by Rooms chained automatically with that Storages,
  • Storages not chained with any Room - could gather surpluses from nearest Rooms or gather resources that are not used in production - this won't need Imps to do long distance runnings.
This way we can have two types of Storages (Dedicated and Free/Ready to Fill Up with anything) and nothing else and you don't need to use chains because it all happens automatically.

(19-06-2014, 07:53 PM)Excess Wrote: Specialised workers would change a little bit. Instead of being chained to a room, they would be chained to a profession. The first time you build a structure from one of the professions (bartender, cook, metal worker, farmer) one imp gets assigned that profession automatically. You can change that from a menu afterwards, to balance things as you see fit.

This would even make more sense for equipment items that would be made certainly for creatures with specific profession.

(19-06-2014, 07:53 PM)Excess Wrote: Storage workers will be added to the free-workers pool. They'll carry around resources that they find lying on the floor, collect water when there's a projected need of it, feed the dark mother and claim new land when idle (or when they are told to build a torch).

This would fit the idea of having Free/Ready to Fill Up storages as I called it, what's more if we would have integrated storage-to-storage system Imps wouldn't need to place items on the ground (it's like placing pizza on the ground without plate tho) - but in storages.

(19-06-2014, 07:53 PM)Excess Wrote: Along with this, it would also be nice to have a priority % that would appear when right-clicking a structure. This would work as follows:

You have %100 to distribute among your structures. Whenever you build a new structure it takes a little bit of priority from every other structure evenly. So if you have...

Nice idea, couldn't we have it going automatically? I mean percentages of what should be delivered to Room and in what number could be adjusted automatically to Room needs - IMO also taking care of many Rooms you have and calculating how much we need would take too much time and there's problem of over micromanagement.

About same Rooms... with what I agree with Rasmus and that is only 1 thing that would make that Rooms should stay is that they could connect together all kind of Room Buildings into one organism, so automatically chain all units together... until we won't just chain (for example with something like hydraulic pipes) Room Buildings (including wells etc.) together in another way.
Spec: Win 10, ATI 7800 HD, res: 1280x1024x75. I support The Venus Project & Resource-Based Economy
Reply
#10
(19-06-2014, 08:36 PM)Sebt Wrote:
(19-06-2014, 07:53 PM)Excess Wrote: Along with this, it would also be nice to have a priority % that would appear when right-clicking a structure. This would work as follows:

You have %100 to distribute among your structures. Whenever you build a new structure it takes a little bit of priority from every other structure evenly. So if you have...

Nice idea, couldn't we have it going automatically?

It does, unless you decide to give more priority to one task or another.

I'm not talking about percentages of items stored on a specific storage room, but priority of tasks. If you prioritize a baking table, the free workers would help cooks by fetching necessary ingredients and delivering the finished goods directly to the bar room, unless the bar is already full, then it would go to the storage, if there's one accepting the item.
Reply
#11
Sebt Wrote:Nice idea, couldn't we have it going automatically? I mean percentages of what should be delivered to Room and in what number could be adjusted automatically to Room needs - IMO also taking care of many Rooms you have and calculating how much we need would take too much time and there's problem of over micromanagement.

I do agree that too much micromanagement does bog the game down, but no option to micromanage when it's necessary to do so can also be very frustrating. I've had macromanagement based games where the game stubbornly refuses to do a task that I can see as plain as a hand in front of my face must be cone NOW but that the automated system, limited to only what criteria it's been preprogrammed with can't "see". So I like to have the game take care of the mundane, but leave the option to override the automation when I have to.

It sounds to me that's what Excess is proposing would do exactly that, assign an automatic default priority to tasks but also allow the option to override the default when necessary. I've proposed similar ideas myself, only going beyond just prioritizing the production of items, but also of construction projects, transport of items, of people, digging, mining, and exploring could all have a priority rating which would give a weighted queue instead of a first task input, first task done (or whatever the current system is).
[Image: 11619898803_7d3a89e6bd_n.jpg]
The Golden One!
Reply
#12
(20-06-2014, 07:58 AM)Seriously Unserious Wrote:
Sebt Wrote:Nice idea, couldn't we have it going automatically?

I do agree that too much micromanagement does bog the game down, but no option to micromanage when it's necessary to do so can also be very frustrating. [...]

It sounds to me that's what Excess is proposing would do exactly that [...]

Exactly, spot on Wink

(20-06-2014, 07:58 AM)Seriously Unserious Wrote: [...] but also of construction projects, transport of items, of people, digging, mining, and exploring could all have a priority rating which would give a weighted queue instead of a first task input, first task done (or whatever the current system is).

That is contemplated in my grand scheme of things, but didn't want to mention it to keep things simple at first, as is a controversial topic. But seeing that we share the same vision this is how I thought it could work:

There are permanent tasks you can prioritize and temporal ones. They are exactly the same and behave exactly the same. They even share the same %100 that is distributed among them.

The only difference is that if you give a temporal task a priority boost, whatever % you assigned to them, which gets taken evenly from all the other tasks, return automatically to those tasks when its finished.

This temporal task includes:
  • Feeding the mother.
  • Pick up the resources on an area.
  • Finish building a structure.
  • Digging a specific wall/area marked (thanks SU)
  • Exploring a specific dark place over another (thanks SU)
  • and so...

So this way you not only can assign a more permanent importance to a global task (like make food) but you can also give a boost to things that may not be a priority to the AI but are for you, like feeding the dark mother to produce more orcs when you are in the middle of a battle, for example.
Reply
#13
About prioritizing, how would you separate priority percentages ro more than I.e. 12, 15, 20 and more different rooms? Why to set priority percentages when each room could need different resources in different number and time? When building new room the percentage for old rooms would need to be changed to still receive 100% for all structures together - it will affect percentages you set before manually too unless game adjust itself correct percentages.

My proposal is to filling up rooms (its own dedicated storages) with only needed items by the closest to room in need Imps who are idle. Room sent them message "feed me paper" or something. When room is still being delivered with needed resources in specific time it won't show you it works with lower efficiency. All happens automatically because that's the most efficient way to stabilize way of delivering materials to manufacturer - you cannot predict very precisely in what time and how much imps need to deliver materials to keep room efficiency at maximum lvl when resources are not stored still in the same time, but are finite, delivered in various periods and amount. How would you manage it with setting priorities to rooms you want the most to be filled with certain resource? Especially that building one building more could require completely changing priorities percentages for all building else.

If you set percentages you risk that you'll deliver too much to one room and not enough to other. Sure we could stay with manual function of changing priorities %, sometimes maybe player would intentionally like to set that priority % not other. Smile
Spec: Win 10, ATI 7800 HD, res: 1280x1024x75. I support The Venus Project & Resource-Based Economy
Reply
#14
(20-06-2014, 10:54 PM)Sebt Wrote: About prioritizing, how would you separate priority percentages ro more than I.e. 12, 15, 20 and more different rooms? [...] When building new room the percentage for old rooms would need to be changed to still receive 100% for all structures together - it will affect percentages you set before manually too unless game adjust itself correct percentages.
Exactly. Whenever you build a new structure, a little bit of priority % will be automatically taken from every other structure already functioning. So, unless you lock a % on a specific structure, every structures % give a little bit of it's priority to the new building.

(20-06-2014, 10:54 PM)Sebt Wrote: If you set percentages you risk that you'll deliver too much to one room and not enough to other. Sure we could stay with manual function of changing priorities %, sometimes maybe player would intentionally like to set that priority % not other. Smile
That's exactly the idea. Of course you may unbalance production, but it's entirely your fault. And if you see that something is being produced more that another thing you need more of now, you can always re-adjust the priorities and fix the issue. We, as players, have the power to fix unbalance.
As of right now we are powerless. The only thing we can do if we need more bread, is to stop the beer production, so the imps will exclusively bake bread.
Reply
#15
(20-06-2014, 11:54 PM)Excess Wrote: We, as players, have the power to fix unbalance.
As of right now we are powerless. The only thing we can do if we need more bread, is to stop the beer production, so the imps will exclusively bake bread.

Yes, exactly. The flaw with the solution in the example is that you may need that beer too, so you're stuck with a "one, or the other, but not both" situation.

However, one way to simplify the priority idea would be to have a simple number that sets a weighting that is used in calculating where on the queue a task lies. So a high priority task that's been on the queue longer then other tasks will be done first. If a new task gets added and that task type is set at a high level of priority, then it would "jump the line" so to speak, while a low priority task might sit at the bottom of the queue for a while, until there's nothing else for an imp to do.

So how about this then, a weighting number to set priority that's between 0 and 10, with 5 being medium priority, 10 being the highest possible and 0 being stop production. That would then build on the existing produce-don't produce system by adding different levels of urgency. So if bread is urgently needed, it could have its priority set to 8, while beer could be set to 4 and the imps would pay twice as much attention to producing bread as beer, but the beer wouldn't have to be turned off completely just to get another resource made.

For tasks like construction, each individual build order could also have its own priority level which would influence where in the queue a task is placed. So if you order a door built and it's at the bottom of the imp's queue, then the priority of building that door was raised to 10, it could jump up to the top of the queue and the next available imp would build it, possibly slowing down an invading horde long enough to assemble your orcs to defend your dungeon.

I think tasks already have priorities as it is, but that they're hard coded and fixed. this would simply mean adding a UI to adjust them and making task priorities variable, but with a the current hard-coded values as defaults.

Quote:About prioritizing, how would you separate priority percentages ro more than I.e. 12, 15, 20 and more different rooms? Why to set priority percentages when each room could need different resources in different number and time? When building new room the percentage for old rooms would need to be changed to still receive 100% for all structures together - it will affect percentages you set before manually too unless game adjust itself correct percentages.

My proposal is to filling up rooms (its own dedicated storages) with only needed items by the closest to room in need Imps who are idle. Room sent them message "feed me paper" or something. When room is still being delivered with needed resources in specific time it won't show you it works with lower efficiency. All happens automatically because that's the most efficient way to stabilize way of delivering materials to manufacturer - you cannot predict very precisely in what time and how much imps need to deliver materials to keep room efficiency at maximum lvl when resources are not stored still in the same time, but are finite, delivered in various periods and amount. How would you manage it with setting priorities to rooms you want the most to be filled with certain resource? Especially that building one building more could require completely changing priorities percentages for all building else.

If you set percentages you risk that you'll deliver too much to one room and not enough to other. Sure we could stay with manual function of changing priorities %, sometimes maybe player would intentionally like to set that priority % not other. Smile
I thinks what we're getting here is a language barrier misunderstanding...

We're not talking about setting amounts of items to be stored in rooms or used in production, but in having a way to set in what order the imps do the tasks in the queue. Do they make beer first, or do they make bread first? If bread were set to a priority of 8 and beer with a priority of 4 like in the example above, 2 times out of 3 they would be doing the bread first, but would still be making beer 1 time out of 3 that they make something in the cookery room. Basically if the imps have a choice, make beer or make bread, they'll make bread in this example, but if there is no make bread task in the queue for that room at the time (all baking tables are in use, for example, the imps will start making beer until a baking table becomes available.
[Image: 11619898803_7d3a89e6bd_n.jpg]
The Golden One!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)