Brainstorm Creature Mechanic - Imp priorities
I recently had a game where I dug into the labyrinth and ended up with all my imps focused on claiming tiles and wouldn't do anything else. I couldn't get them to feed the dark mother the resources needed to make more orcs, build the hydraulics for a trap to fire a cannon at any of the monsters attempting to come swarming out of the labyrinth or anything.

Even when the dark mother was under attack they wouldn't feed her to she could make more orcs to defend her. What few imps I had left were still too busy running around the labyrinth claiming tiles.

I definitely want to see the system discussed in another thread on imp task management implemented. In the meanwhile I'd like to see claiming tiles could at least be put on a lower priority then generating new creatures and building, until your new imp task management system can be implemented.
Yea I think the main order is:

Creating creatures
Claiming floor
Making food and such
Not so important
Pyramid of Live
[Image: kEbemdH.png]
I agree, although if a creature is starving and there's no food available to feed it that should give a bonus to the making food priority so that it takes on a the highest priority until the problem is solved. But I'd say that claiming floor tiles should be the lowest priority, with making food the next higher priority.

Here's how I'd do the priorities from highest to lowest:

Creating creatures
Making food and other items
Claiming floor
It is tricky Smile

If we compare to the last version I can say that the imps are a lot smarter now. They prioritise everything they do depending on how much is stored in the storage room. For example, if you are low on beer, and you have antroots in the storageroom, and that antroot is assigned to be delivered to the brewery, the picking up priority for the antroot is directly related to how much beer there are in the storageroom. You can try it out youselves, if you sell one of your storage table which is filled with items, you will notice that the imps pick up depending on how much you have of them already. So in my case the stones often get picked up last because I already have so much stones stored.

The tricky part is to get the imps to prioritise between totally different work types, like digging, claiming paths, building, transporting wounded and so on. And also get them to prioritise work in assigned areas of the dungeon.

We have been discussing it loosely here:

So the work on imps priorities is definitely not finished yet Smile

Hmm, give me an hour and I will explain the ideas I have at this moment.
I think claiming floor is still important above food because the imps than keep making the food and brewing and such. I think these two are the same.
Pyramid of Live
[Image: kEbemdH.png]
So the current idea I have now is the following:

The player will be able to assign workers / imps to every room. The rooms will then be split into two categories "the storage rooms" and "other rooms".

Every storage room will can be linked to the nearby storage rooms like this:


When a new storage room is built it will automatically assign one worker to it, and link itself with the nearby storage rooms. Then the player can link it differently if he wants to, or assign more workers to it. The workers in the storage room will only handle all the carrying between storage rooms.

As seen in the picture here...


...the "other rooms" are each and one linked to one storage room, they can only be linked to one storage room and they can switch storage room, but they can not be unlinked from a storage room. So if a storage room is connected to a farm room (which contain a farm land and a mill) and a cookery room (which contains a brewing vat) like in this case, the storage room knows that it must have water and ant roots stored to make the production go around, but it don't need the flour. That is where the storage room workers comes into the picture, the storage room workers make sure that the storage rooms are have the materials the need to make the production go around, so if we have a storage room nearby which contains water, the workers there will transport the water to this storage room, and these storage room workers may transport the flour that it is in it to another storage room which is connected to a bakery.

The workers in the "other rooms" will only focus on collecting items that they need for their production from the storage room that their room is linked to, and also delivering items that is being produced and must be stored.

So to sum things up a production chain could look like this:


- Water is fetched from a well, and the worker that works on that well will deliver the water to storage room #1 because that is the storage room the well is connected too.
- Then the worker at storage room #1 will transport the water to storage room #2 because it needs water.
- Then all the rooms that is connected to storage room #2 will be able to fetch that water and use for either brewing beer or watering antroots.
- So when a antroot has been harvested, it will be transported to the storage room by the worker in the farmroom.
- From there the worker in the cookery room will fetch the antroot from the storage room to use it in his beer production.
- When the beer is made it will be transported back to the storage room by the worker in the cookeryroom.
- And finally the worker in the bar will fetch the beer from the storage room and serve it to his guests at the bar Smile

So what about the path claiming and the building and the rest?
I imagine that all other work that is not self sustaining, and that the player points out for the imps should be handled by the rest of the imps that aren't working in any of the rooms. So by doing this we will have two main categories of imps, one category that only do the jobs in the rooms, and one category that does the rest. The rest will have to prioritise their works between claiming paths and walls, digging, building, picking up items that gets dropped after the digging (and deliver them to the nearest storage room), taking care of wounded.

The thing here is that splitting up the imps in even more categories could be a problem, because if we have "builders" for example, they will stand idle as soon as there is nothing to build, while the diggers may have their hands full..

So what do you guys and gals think?
Wow i think this is pretty impressive, now I know how it all works. Can't you figure out a way that categorie 2# (builders,...) also have a mechanic like this. They already have but like, when there is no building work they will help digging. Then when there is some building work they will start with it after they finished the tile he was digging. So there are never many imps doing nothing
Pyramid of Live
[Image: kEbemdH.png]
Well, it doesn't work like this now, now any imp can take take any task.. But this is the plan I have for the future. And yes the builders and the diggers will belong to the same category, meaning that they will share the work load.
Ooh it's for the future well good plans made for it!
Pyramid of Live
[Image: kEbemdH.png]
That sounds like a good overall plan, Rasmus.

One thing though, is have you got a plan on how to handle a few errors I could see happening?

1- if a new room is built and there are no idle imps to be assigned to it
2- if a new room is built and there is no available store for it to link with
3- all stores are either blocked or destroyed, how do the rooms handle this?
4- if a store needs certain goods and it's not getting them how about having it dispatch imps to collect them from another store. Also if 2 stores are connected as in the example above and let's say store to the south gets a new bar connected to it, its imps need to go to the northern store to deliver water anyways, who not have them know that their store now needs beer and pick it up while in the store that has it to bring back to their own store, it seems to me that would be more efficient then having south store's imps deliver water to north store and go back empty handed while north store's imps have to carry the beer to south store, but maybe they can't because they're all busy carrying between other stores that aren't being shown in the diagram, so the new bar goes a long time without any beer to serve.
5- how to you handle it if the north store gets so full of antroots that it can't take any more water, which the brewery needs to use up the antroots and make beer, that the bar needs to serve the orcs and imps, but until room in the store is cleared up no antroots can be used up for anything, but because none can be used due to the lack of water, well, you get a classic catch 22 situation where the problem itself blocks the solution.

I have a couple of suggestions to prevent #4 from happening, first off, if the store connected to the farm and brewery is getting full of antroots it can send a "no more antroots needed at this time message to the farm which will automatically go idle until more antroots are needed again. Second, if another store needs more antroots it can dispatch imps with the surplus antroots to that store, thus making more room for the water. Third, if the store is too full to accept the water it needs to supply the brewery but another store has room it can send the extra antroots to that other store to make room for the water and beer (if the antroots are later on needed they can always be transported back again later). Forth, if all else fails, have the option to click on a store and order some items trashed, that store's imps will then take the selected items somewhere and destroy them, removing them from the game permanently.

As things stand, I can see the potential for all stores to go into a gridlock and we would need some methods, both automated and manual to break such gridlocks, besides just building more stores, which may not be possible if wood is needed for this and cannot be collected by the imps due to the gridlock.

#'s 1-3 could easily be handled by outputting a simple error message and some sort of "go to" tool to notify you of the nature and location of the problem, meanwhile the affected room(s) just stay idle, with an error icon or text over them as a reminder that they have a problem that needs to be solved.
1 - This could be a problem. But it could be handled with a simple error message as you said.
2, 3 - Is not a problem because right now the Dark Mother room actually works as a storage room as well.

4 - As the rooms only can link to one storage room at a time, the storage rooms will have to keep the resources balanced between the storage rooms, like having antroots delivered to the storage rooms that needs the antroots. Also if a storage room actually don't need any antroots it will try to get rid of it by sending it out to storagerooms that actually needs it. If a storage room have to much of a certain item it will halt the devilries of that item to the storage room as you suggested, and by doing this the farm lands connected to this storage room will stop their production. Another thing is that we will give the player some control over how much can be stored of certain items in the different storage rooms.

I think this answered most of your suggestions, but I would like to discuss how much influence the player would have over the storage room storing capacity, and how it would be solved. The player should be able to stop and start the production of individual rooms. But for the storage rooms it can be a little bit tricky, because there are so many items, and having a percentage of the maximum storage capacity reserved for individual items is a bad idea as it would result in less storing capasity for all items as soon as I introduce a new item into the game.

What about if the storage room only accepted items it didn't need if it had 10% of the storage capacity free?
One simple method used to handle a similar thing in other resource management games is to have each item have a minimum and maximum amount for each storage room, This could be initially set to defaults based on what resources the rooms connected to it need. If the amount goes under the minimum more will automatically be brought in from wherever has more, be it a production room or another store. If it can't find any more of that item, the game could output a warning message that you are running out of that item at that store.

How the maximum works is a store just stops collecting an item when it reaches it's maximum.

Still, having an option to discard items if there's too many of them is needed. In my last session my stores were getting jammed up with stone, beer, bread and fish. I have no control over when and how often the imps fish, so having the ability to dispose of surplus items is a must.

IMO the balancing of how many resources are available vs. how much building things costs needs to be worked on. Maybe have building walls require stone, and increase the amount of stone it costs to build things that require it. Same goes for wood, antroots, flour, coal and iron. Excess gold has never been a problem so far. If anything finding enough to make orcs is the challenge. Maybe have the orcs require more beer to make, but leave the amount of gold required the same.
Wrong category, moved to General Discussion. Tongue
Spec: Win 10, ATI 7800 HD, res: 1280x1024x75. I support The Venus Project & Resource-Based Economy

This is a suggestion for the game, I don't see how putting a suggestion in the suggestions forum is putting it in the wrong place. Confused I thought that's where you want suggestions to go. :-/

IMO this is confusing to have the discussion of a suggestion in the general discussion forums where it might not get the attention it should as a suggestion.
Well, I agree with both SU and Sebt on this one. It is a suggestion that we should improve the imp priorities, but we are having a discussion on how to do it. The thing is that I will and would have improved the imp priorities even if this topic wasn't created. So I have to agree with Sebt there, this topic is way to general. But don't worry, I will take my discussion to this topic when it is time to improve it Smile

Forum Jump:

Users browsing this thread: 1 Guest(s)