Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3

Author Topic: Instead of lots of workshops make one factory. Reduced lag?  (Read 3252 times)

RabidAnubis

  • Bay Watcher
    • View Profile
Instead of lots of workshops make one factory. Reduced lag?
« on: November 09, 2011, 05:20:05 pm »

(Searched Under Factories, Workshops, Larger Workshops, nothing really showed up that I liked or was truly related to.)

So, as we all know as of now this game is a LAG fest once you get a larger amount of dwarves, and "courtrooms" and "trials" and detectives and ect. couldn't happen as it would take up half of your population.  So I'd like to present the idea of factories. 

Let's Say that you want to build a fortress of, I don't know, a thousand dwarves.  Dwarves going to Dwarves to and from workshops for 1 meter for materials certainly causes a massive amount of LAG, due to the amount of calculations.  So here are my thoughts on how this would work.  Hear me out, as a little bit of it sounds insane.

Quote from:
A second idea

And perhaps it would be easiest if a factory was a 7X9 building that could have 4 dwarves in it at once, requiring 4 dwarves for it to work (Schedules)

I'm going to use smithing as an example.

So, the factory would make 2 lower quality items a batch.  A smithing factory would have a large smelter and 2 forge areas.  In order to make let's say Iron swords, the smelter areas of the factory would be loaded from it's back room (Storage, the end 1X7 area) with maybe 20 iron (To minimize travel), and the iron would come out at the same pace it was being used up by the forgers, the flow of the bars directed by the smelters. Once the smelter reached lower than 5, the smiths would try and refill it.  Once a barrel amount of the item has been made (Not sure how much) the items would be barreled and put into the end 1X7 storage.

This would require minimal movement.  It would require only-

The Ore storage to be loaded with bins of ore. (Possibly by haulers between work cycles)
The Finished product area to be loaded with empty bins (Possibly by haulers between work cycles)
The Dwarves to go to the workstation
The Dwarves to take their positions
(They do their work, not needing to move, could take a while)
The Dwarves retire to leave, after several weeks of making goods straight, taking a long nap.
The finished products are taken to stockpiles.

What you guys think?  Would require by far less movement than now, along with less fortress mess in general.

1. You dig out an empty room, remove everything from it.  Then you would place doors to the room.  Now that all sections are cut off from the outside, part 2 would begin.

2. Then you would place an anvil in the room (As a placeholder, maybe a flag or whatever) and do f to designate the room as a factory.  It would expand to all walls automatically.

3. Once this happens, the game will detect if the factory has access to warm/damp stone, which will affect what functions it can do, it will also detect the amount of room it has.

4. You will then choose what function the factory does.  So if I want my factory to do smithing/smelting, then it would say YES to warm stone, meaning it can 'wire' forges to heat.  What would then happen is the entire thing will become a square with the title of the factory over it.  Let's say this factory has 200 'room' in it.  Right now I don't have much to do, so I'll only devote 10 of those to forging, and 10 to smelting.  What this will do is give me 5 forges and 5 smelting areas, each one costing 2 room.  The reason why it costs so little is because the rest of it would be the Factories storage, which is normally included in the workshop.  So in this case, I would have 180 'room' for storage, which without barrels would be 180 spots to store stuff.  Because it is one building, it would take no lag to pick up something from one side and place it in the other.

5. As of then, dwarves would come down with the necessary reasorces to build this factory, along with masons to wire it and architects to designate (You won't be able to see the inside of the factory, just a square with the function over it)  To make it simple on everyone, once you make a factory you can't change it.  Then if you designated work, a person would head down to inform the factory to begin production, and they would.  Once they produced the item, it would remain in the factory, and a hauler would have to go inside to take stuff.

Now, factories are very efficient and all but there will be several major disadvantages compared to workshops.  Workshops would be required by legendary dwarves, along with goods made from a workshop are slower to be made but also tend to be better.  Also, you wouldn't be able to see a factories insides, besides the stuff in the T menu for items and the V menu for dwarves.

I'm certain there's an easier way to think of this, but that's what you guys are for.  Maybe instead of being a room it could be a construction.
« Last Edit: November 10, 2011, 06:24:02 pm by RabidAnubis »
Logged
Dwarf Fortress: Your game is working on giving NPC's lives. Our game is working on giving them a working nervous system.
Aahhh I can't find the fish cakes in the bunny level, they keep getting enraged and I don't have any holy hand grenades
The Age of Myth: Goldenhold

Di

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #1 on: November 09, 2011, 06:36:28 pm »

Well, firstly, I'd like to congratulate you on bringing up something completely new here   :D
Second, this sounds interesting, but I've got impression that it's too simplistic for Toady to implement this.
Besides, how this factories should be treated by non-dwarves running around your fort? And what about destruction?
Logged
Quote from: Creamcorn
Dwarf Fortress: Where you meet the limit of your imagination, moral compass, sanity and CPU processor.
http://www.bay12forums.com/smf/index.php?topic=103080.0 Fix sober vampires!
http://www.bay12forums.com/smf/index.php?topic=91442.0 Dwarven Cognitive Science

knutor

  • Bay Watcher
  • ..to hear the lamentation of the elves!
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #2 on: November 09, 2011, 07:13:44 pm »

Let's Say that you want to build a fortress of, I don't know, a thousand dwarves.  Dwarves going to Dwarves to and from workshops for 1 meter for materials certainly causes a massive amount of LAG, due to the amount of calculations.  So here are my thoughts on how this would work.  Hear me out, as a little bit of it sounds insane.

I'm all for factories that produce full bins/barrels of items.  But I prefer to know the geometry of the factories, prior to being built, 3x3.  The painting off a zone for it doesn't attract me.  There is already too much confusing painting, with activity zones,  stockpiles and burrows.  That all could be unified into the same allocate and assign region rules step.  I would like to see all the workstations with barriers on their edges preventing dwarfs from passing through, widened to 5x5 size.

As for late game lag, I've found it somewhat smoother to reduce alerts to NONE, at the later stages the patrols and traps should all be automated, and the ones not, can be hot keyed a function key.  Another thing that I found that reduces late game lag is during worldgen.  Use advanced parameters instead of Create World.  Cull all unimportant figures turn to YES.  And limit the saves, to only seasonal.  There is a way to stop the needless pauses, for births, and wet rocks, too.  I haven't found it, but I read somewhere it speeds up the game.  Those alerts tho, in big fortresses run on and on, even after its paused, limiting those, I'd imagine increases the speed.

I agree with adding factories to produce bulk items, at later stages.  But not with how ya suggested it.  Not unless its implemented as an brolly fix, that conforms all the other region painting-allocating tools and adds them including your suggested method, into one.  I could jump behind this suggestion if it were to somehow have a dependency to the Architect skill. 

Sincerely,
Knutor
Logged
"I don't often drink Mead, but when I do... I prefer Dee Eef's.  -The most interesting Dwarf in the World.  Stay thirsty, my friend.
Shark Dentistry, looking in the Raws.

RabidAnubis

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #3 on: November 09, 2011, 08:16:50 pm »

XD

Thanks for the complements Di

As for destruction, it would just be torn apart like a workshop.  I didn't think about that.

@knutor

I'm just saying that everything helps =)

And perhaps it would be easiest if a factory was a 7X9 building that could have 4 dwarves in it at once, requiring 4 dwarves for it to work (Schedules)

I'm going to use smithing as an example.

So, the factory would make 2 lower quality items a batch.  A smithing factory would have a large smelter and 2 forge areas.  In order to make let's say Iron swords, the smelter areas of the factory would be loaded from it's back room (Storage, the end 1X7 area) with maybe 20 iron (To minimize travel), and the iron would come out at the same pace it was being used up by the forgers, the flow of the bars directed by the smelters. Once the smelter reached lower than 5, the smiths would try and refill it.  Once a barrel amount of the item has been made (Not sure how much) the items would be barreled and put into the end 1X7 storage.

This would require minimal movement.  It would require only-

The Ore storage to be loaded with bins of ore. (Possibly by haulers between work cycles)
The Finished product area to be loaded with empty bins (Possibly by haulers between work cycles)
The Dwarves to go to the workstation
The Dwarves to take their positions
(They do their work, not needing to move, could take a while)
The Dwarves retire to leave, after several weeks of making goods straight, taking a long nap.
The finished products are taken to stockpiles.

What you guys think?  Would require by far less movement than now, along with less fortress mess in general.


Logged
Dwarf Fortress: Your game is working on giving NPC's lives. Our game is working on giving them a working nervous system.
Aahhh I can't find the fish cakes in the bunny level, they keep getting enraged and I don't have any holy hand grenades
The Age of Myth: Goldenhold

astaldaran

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #4 on: November 09, 2011, 08:19:21 pm »

Just so we are all on the same page:

I guess I'm not entirely sure how this would reduce "lag" (I'm not sure this is really the correct term since that refers to latency...a  connectivity issue but that is besides the point)..

There are to  issues that you have when playing dwarf fortress which eat up you (the player's) time.

 1) is efficiency..how far do the dwarves have to walk, etc and you as a player want to have a say over this...to me it seems that the factory idea is trying to address this problem
2) "lag" basically the game starts going slower because it is trying to keep track of literally tens of thousands (or more) items, dwarves, 'emotions', events, pathing, etc  This I think is the MAIN problem..this is what causes you fps to start decreasing and I think the issue you are alluding to with the problem of a thousand dwarf fort (mo doubt efficiency could be an issue as well--but this is more of a game challenge then anything). I don't see how this factory idea would decrease any "lag" since (with my understanding) the game is still keeping track of exactly the same number of items, same activities, etc. I guess the one concession  I could give is the pathing to the resources which were previously just outside the factory but now are inside...but I think this would be virtually no savings since such a short path is very simple and non-intensive to calculate.  Plus it wouldn't all be savings, the program still has to keep track of what things are available inside the workshop, who is using which items, etc.
Logged

RabidAnubis

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #5 on: November 09, 2011, 08:23:47 pm »

Just so we are all on the same page:

I guess I'm not entirely sure how this would reduce "lag" (I'm not sure this is really the correct term since that refers to latency...a  connectivity issue but that is besides the point)..

There are to  issues that you have when playing dwarf fortress which eat up you (the player's) time.

 1) is efficiency..how far do the dwarves have to walk, etc and you as a player want to have a say over this...to me it seems that the factory idea is trying to address this problem
2) "lag" basically the game starts going slower because it is trying to keep track of literally tens of thousands (or more) items, dwarves, 'emotions', events, pathing, etc  This I think is the MAIN problem..this is what causes you fps to start decreasing and I think the issue you are alluding to with the problem of a thousand dwarf fort (mo doubt efficiency could be an issue as well--but this is more of a game challenge then anything). I don't see how this factory idea would decrease any "lag" since (with my understanding) the game is still keeping track of exactly the same number of items, same activities, etc. I guess the one concession  I could give is the pathing to the resources which were previously just outside the factory but now are inside...but I think this would be virtually no savings since such a short path is very simple and non-intensive to calculate.  Plus it wouldn't all be savings, the program still has to keep track of what things are available inside the workshop, who is using which items, etc.

It wouldn't have to keep track of who is using them.  But the rest of it I see.  However, it would make all of the items having to be tracked in fifteen workshops down to one. 
Logged
Dwarf Fortress: Your game is working on giving NPC's lives. Our game is working on giving them a working nervous system.
Aahhh I can't find the fish cakes in the bunny level, they keep getting enraged and I don't have any holy hand grenades
The Age of Myth: Goldenhold

Silverionmox

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #6 on: November 10, 2011, 11:59:32 am »

I honestly am put off by as the impoverishment of gameplay and fortress planning that it implies.

As an alternative, the "rooms as workshops" ideas would also enlarge the workshop area, add storage space, and add place for multiple dwarves to work without sacrificing player control of the fortress layout, flavour, etc.

http://www.bay12forums.com/smf/index.php?topic=26178.0
http://www.bay12forums.com/smf/index.php?topic=22288.msg242005#msg242005
Logged
Dwarf Fortress cured my savescumming.

RabidAnubis

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #7 on: November 10, 2011, 06:10:44 pm »

I honestly am put off by as the impoverishment of gameplay and fortress planning that it implies.

As an alternative, the "rooms as workshops" ideas would also enlarge the workshop area, add storage space, and add place for multiple dwarves to work without sacrificing player control of the fortress layout, flavour, etc.

http://www.bay12forums.com/smf/index.php?topic=26178.0
http://www.bay12forums.com/smf/index.php?topic=22288.msg242005#msg242005

Sorry.  Didn't see those threads.

DAMN!  So it's not original!
Logged
Dwarf Fortress: Your game is working on giving NPC's lives. Our game is working on giving them a working nervous system.
Aahhh I can't find the fish cakes in the bunny level, they keep getting enraged and I don't have any holy hand grenades
The Age of Myth: Goldenhold

sockless

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #8 on: November 10, 2011, 07:10:24 pm »

I'd say that it is original insofar that it isn't mentioned weekly around here.

I plan on one day making a giant thread detailing exactly how these should be done, like the improved farming thread has done, but I haven't been arsed.

I think the idea of making it a zone is the best method of implementation, as then it is fully scalable to whatever size you want.

I like the idea of workshops for legendary craftsdwarves as well.


Logged
Iv seen people who haven't had a redheaded person in their family for quite a while, and then out of nowhere two out of three of their children have red hair.
What color was the mailman's hair?

RabidAnubis

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #9 on: November 10, 2011, 09:22:47 pm »

I'd say that it is original insofar that it isn't mentioned weekly around here.

I plan on one day making a giant thread detailing exactly how these should be done, like the improved farming thread has done, but I haven't been arsed.

I think the idea of making it a zone is the best method of implementation, as then it is fully scalable to whatever size you want.

I like the idea of workshops for legendary craftsdwarves as well.

Oh well.  But the aim of my idea is that it will produce things in barrels, making there be fewer individual items to track.

I plan on making an index of all the suggestions.  The suggestion bar is really clunky.
Logged
Dwarf Fortress: Your game is working on giving NPC's lives. Our game is working on giving them a working nervous system.
Aahhh I can't find the fish cakes in the bunny level, they keep getting enraged and I don't have any holy hand grenades
The Age of Myth: Goldenhold

knutor

  • Bay Watcher
  • ..to hear the lamentation of the elves!
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #10 on: November 10, 2011, 11:21:44 pm »

Oh well.  But the aim of my idea is that it will produce things in barrels, making there be fewer individual items to track.

That's a wonderful idea.  It most definitely can't hurt the graphics lag.  *Thumb WAY-WAY up*

Maybe all it would take aside from scale enlargements on workstations would be a carpenter-metalsmith showing up at design stage. Carpenters and metalsmithes make all bins/barrels.  Heck I even think glassmakers make a few.  Or make it an optional as to what material the storage container, bulk package came out as.  I dunno. 

I really like the idea of reducing travel times, in an effort to make the game flow better.  That would certainly make the game more enjoyable to me.  I'm old and have difficulty keeping track of things.  In addition to helping the aging gamers; rabisanubis's suggestion would certainly shorten the Depot stocking process.  Sometimes the humans pack up and leave before I'm done loading  trade goods into my Depot. 

Ever have that happen?

Sincerely,
Knutor
Logged
"I don't often drink Mead, but when I do... I prefer Dee Eef's.  -The most interesting Dwarf in the World.  Stay thirsty, my friend.
Shark Dentistry, looking in the Raws.

thisisjimmy

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #11 on: November 10, 2011, 11:36:10 pm »

This will not help performance.  Due to the way the pathfinding algorithm works, pathfinding only takes a long time when the path is long and indirect.  The cost of pathfinding to a stockpile that's just a few tiles away is negligible.
Logged

Waparius

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #12 on: November 11, 2011, 01:20:01 am »

Quote
I think the idea of making it a zone is the best method of implementation, as then it is fully scalable to whatever size you want.

If it is zone-style, the interface should be improved with a "Fill Room" option that works like making rooms from furniture.

Otherwise, yeah.

The idea of making bins/barrels of stuff at a time isn't a bad one. Nor is the idea of being able to link the workshop rooms with minecarts when they come in. Being able to set up some kind of production route, Settlers-style, would help with my OCD.

Logged

Silverionmox

  • Bay Watcher
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #13 on: November 11, 2011, 04:27:48 am »

It would already help if dwarves could produce a barrel full of stone trinkets when given a barrel and a stone block. They could take more time to finish the job, so that would cut down on walking time for gathering the resource as well as storing the products. But then it ought to take longer, and we'll also need to track the progress because longer jobs have a high chance of being interrupted by hunger, thirst or Fun.
Logged
Dwarf Fortress cured my savescumming.

knutor

  • Bay Watcher
  • ..to hear the lamentation of the elves!
    • View Profile
Re: Instead of lots of workshops make one factory. Reduced lag?
« Reply #14 on: November 11, 2011, 08:24:16 am »

longer jobs have a high chance of being interrupted by hunger, thirst or Fun.

The way I see the coder getting around the hunger and thirst problem is to make it take much longer during the design phase, but not during the actual craft phase.  Actually making a master architect something to strive for.  It is after all, a factory, and not lowly workstation with a bench, tools and dwarf centerfolds.  It'd have to consume wood and metal faster than any furnace however, if it were pumping out items in bulk containers.  I'm fond of the idea, however, deep down, I just don't like the terminology, "Factory".  Sounds too technical, for enjoyment purposes.  What do you think?

Sincerely,
Knutor 
Logged
"I don't often drink Mead, but when I do... I prefer Dee Eef's.  -The most interesting Dwarf in the World.  Stay thirsty, my friend.
Shark Dentistry, looking in the Raws.
Pages: [1] 2 3