Run unloaded factories in 1 calculation.

    Joined
    Jan 31, 2015
    Messages
    1,696
    Reaction score
    1,199
    • Thinking Positive
    • Likeable
    I'm fine with the current crafting system, but it can be improved.

    Schine can make factories in unloaded sectors continue production with a simple 3-4 step calculation that will cause NO additional lag.

    Factories already remember their active/inactive state on load in. They just need to set a time stamp on load-out.

    Then on load-in if state is active, calculate the number of cycles for which it was unloaded.

    Check linked storage and instantly produce as many items as would have been made given the time & material available.

    Running factories in unloaded sectors by calculating every tick would lag the server... Doing it all instantaneously on load-in in a single calc would not lag and would improve crafting substantially by allowing production to occur while players do other things in other sectors.
     
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    Well...if the factory's been unloaded for a week, and has lots and lots of storage space connected, but not enough storage to dump into...

    First off, you could have suddenly become material-bankrupt without realizing it, and second, you'll have an overloaded factory as well. Just to be extra painful.
    This might be useful for smaller factories/factions that want to produce, say, large amounts of, let's say advanced armor, and do it using a small factory overnight or something. But this leads to another question: How do you stage production, so that if one factory makes hardeners, one makes hull, one---well, you know how to produce advanced armor. But if you make each of these, do you just spit them all out instead of allowing the last factory to produce advanced armor? Or do you find a way to track the production through and decide that the very last factory (And the one making standard armor, or colored hull, whichever) had enough supplies to produce throughout the time period, even though it didn't necessarily have them when you logged off?----This is a problem because, if all factories are calc'd simultaneously, then the later stages don't necessarily find the right materials.
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    Well...if the factory's been unloaded for a week, and has lots and lots of storage space connected, but not enough storage to dump into...
    Irrelevant. Just build enough storage or pipe the output through another factory.
    First off, you could have suddenly become material-bankrupt without realizing it, and second, you'll have an overloaded factory as well. Just to be extra painful.
    Irrelevant, again. Just separate factory input and general supply storage.
    It will never become overloaded because the output size can limit the number of used production cycles.

    But this leads to another question: How do you stage production, so that if one factory makes hardeners, one makes hull, one---well, you know how to produce advanced armor. But if you make each of these, do you just spit them all out instead of allowing the last factory to produce advanced armor?
    Now it gets interesting.

    I would
    1. Give each factory "production cycles" based on timestamp differences between load-out and load-in.
    2. Then, I would check the input stacks for how many cycles can be run.
    3. Then, I would check the output storage size for how many production cycles it can hold.
    4. If multiple factories output into the same storage, the sum of output-size/cycle for the smallest number of cycles will be reserved, then the smallest number factory will be subtracted and knows it's output cycles, repeat instead of the simple step#3.
    5. If a factory receives from another, inherit all that factory can produce before step#2.
    6. If input is shared among factories, share the input equally based on consumption/cycle before step#2 and step#5
     
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    Neon, this is a case where there IS NOT enough storage when finished---not a case of "I'll need more storage when it happens". Yes, Neon, you CAN prepare for this---but why make it riskier to allow low-ranking (*Potentially untrustworthy) faction-members access storages and factories. Why make it dangerous to let things run while you're offline? We're assuming that you don't prepare for the eventuality, meaning that one screw-up or internet failure means that you become materially bankrupt.

    In other words, your counter-arguments are arguing the wrong things. The last one, though, is a possibility, though I would instead rank production of things in tiers. Tier 0 is raw materials (Things you get from mining), tier 1 things that can be made with only tier 0 materials, tier 2 can be made from just tier 1 and 0, etc. That way, you can stage production so that you check for everything. Utilizing this to its fullest extent would take some storage-manipulating, but not much. This last point can be made to require intelligent user use, but the first two points you dismiss as irrelevant are, in fact, obviously not. We don't need to booby-trap any of the present systems.

    A note: Make sure that this is an OPTION in the factory's menu. Every factory setup ever should not suddenly begin burning materials without warning.
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    Madman198237 – Actually I am a step further.

    By translating Tier0 raw mats step-wise to Tier1,2,3 … you limit the production by the available output storage.

    I go in reverse from Tier3 to T2,1,0 … which allows me to translate storage space to possible production cycles to possible input pull.
    This possible input pull can be used as storage if the lower-tier suppliers can deliver the required input in whole recipe-stacks.
    I propagate the pull, not the push.
     
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    The problem with your method is that it doesn't produce all the possible end products. The problem with using both (Yes, I just went 2 steps further than you. What now, bro?) is that it ends up possible to run an extended loop, each time producing more, which could be laggy. Otherwise, using both (0-1-2-3-2-1-0) works fine.
     

    Sachys

    Hermit.
    Joined
    Nov 30, 2015
    Messages
    648
    Reaction score
    318
    The idea is a good un, but... would need some work to make it a good thing (ie I cant get online for a month, return and a months worth of calculations are done when I load in... i can only guess that will lag - same with not returning to home sector for the same time - ive done that).

    Perhaps a production limit instead - ie things can be calculated on how long to produce "50k of x" VS time turnover might be a good midway solution.

    Set factories to produce 50k grey standard armour and (i forget the specific amounts) x amount of grey adv hardner and so on?

    Edit: we can call the system "Henchman"
     

    nightrune

    Wizard/Developer/Project Manager
    Joined
    May 11, 2015
    Messages
    1,324
    Reaction score
    577
    • Schine
    • Top Forum Contributor
    • Thinking Positive
    The big problem I see is with trade hubs and auto factories.
     
    Joined
    Jan 31, 2015
    Messages
    1,696
    Reaction score
    1,199
    • Thinking Positive
    • Likeable
    Well...if the factory's been unloaded for a week, and has lots and lots of storage space connected, but not enough storage to dump into...

    First off, you could have suddenly become material-bankrupt without realizing it, and second, you'll have an overloaded factory as well. Just to be extra painful.
    This might be useful for smaller factories/factions that want to produce, say, large amounts of, let's say advanced armor, and do it using a small factory overnight or something. But this leads to another question: How do you stage production, so that if one factory makes hardeners, one makes hull, one---well, you know how to produce advanced armor. But if you make each of these, do you just spit them all out instead of allowing the last factory to produce advanced armor? Or do you find a way to track the production through and decide that the very last factory (And the one making standard armor, or colored hull, whichever) had enough supplies to produce throughout the time period, even though it didn't necessarily have them when you logged off?----This is a problem because, if all factories are calc'd simultaneously, then the later stages don't necessarily find the right materials.
    These would all be legitimate concerns that every manufacturer would have to consider, Madman, should they choose to leave their factories on while out farming pirates or playing with allies. They aren't concerns that would be imposed on manufacturers choosing to simply instant manufacture with giant arrays of enhancers either, so they aren't really downsides so much as problems to be solved to gain optimal benefit from the ability. In the end it would be supplemental to existing manufacture techniques, and since it would open new opportunities for convenience and parallel activities while crafting it would enhance gameplay without any negative impact on players' ability to choose not to leave a factory running while they go visit several shops to gather rare components.

    It might not allow the same kind of perfect production lines as achieved by babysitting a vast enhanced factory line, but that is not the purpose behind my suggestion. I have no interest in replacing or obsoleting current production. Only in enhancing it, in accommodating a broader player base, and improving gameplay opportunities. This can be done with no negative significant impact on collective performance in Multi Player.

    To me the focus is less on enabling players' to manufacture while offline (though that would enhance gameplay for players whose lives sometimes get too busy to spend massive amounts of time in-game for a few days or weeks, like during finals or a family crisis), and more on freeing up miners and industrialists to fly, fight, trade, build, and explore while crafting. In Single Player it might not even be very useful, but in Multi Player it certainly would be. If it enhances gameplay for some of our key demographics, then it will expand the alpha and potential player base resulting in a better game for all concerned.
     
    Joined
    Aug 28, 2013
    Messages
    1,831
    Reaction score
    374
    • Legacy Citizen 2
    • Top Forum Contributor
    • Legacy Citizen
    and more on freeing up miners and industrialists to fly, fight, trade, build, and explore while crafting.
    So would it require someone to be online for the faction?

    And yes, I do think that having manufacturing limits is a good idea. Maybe having an option for a factory to only make things while a factory that pulls from it is active?
     

    Az14el

    Definitely not a skywanderers dev
    Joined
    Apr 25, 2015
    Messages
    848
    Reaction score
    325
    • Legacy Citizen 2
    • Purchased!
    • Community Content - Bronze 1
    Over-underproduction isn't an issue that can't be overcome with a bit of logic, enhancers, storage-fu & a shit-ton of reactors


    Not saying it shouldn't be a bit simpler, but that its not a problem with game function. If you know what blocks you want (or more accurately, the handful that you don't), it's just a matter of ratios & infrastructure, then you can simply undock > mine > dock > wait for items to drop into shop.
    No reason it shouldn't work unloaded provided all the logic is ultimately doing is sending on & off signals to the factories.
     
    Last edited:
    Joined
    May 18, 2015
    Messages
    287
    Reaction score
    165
    • Purchased!
    Good suggestion. I think Schine will eventually get to it, once crews are manning ships/stations. Assuming that passive resource acquisition is still planned, I would stop at "Factories should keep working in unloaded sectors", and leave the implementation to Schine.
     
    • Like
    Reactions: Az14el
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    Another good idea would be the implementation of a system to limit the number of items a factory makes. As in, a number-input field that allows you to say "Make 1000000 grey advanced armor. Stop when finished." Instead of "make 1000 grey adv here, then some more later, etc."
     
    Joined
    Aug 23, 2016
    Messages
    758
    Reaction score
    129
    If you have a chain of factories linked up to produce something, with multiple child links to some parents, possibly with feedback loops(?), that haven't been carefully synced, calculating the number produced in a certain time period could be a non-trivial problem.
     
    Last edited:

    Lecic

    Convicted Lancake Abuser
    Joined
    Apr 14, 2013
    Messages
    5,115
    Reaction score
    1,229
    • Thinking Positive Gold
    • Purchased!
    • Legacy Citizen 11
    First off, you could have suddenly become material-bankrupt without realizing it,
    Are you saying this can't already happen? I know for a fact it's happened to some factions before.

    -but why make it riskier to allow low-ranking (*Potentially untrustworthy) faction-members access storages and factories.
    This is a stupid and pointless fear. If these untrustworthy factionmembers wanted to fuck you over, they could just dump everything in their inventory garbage can. They can already do this right now.
     
    Joined
    Feb 25, 2016
    Messages
    1,362
    Reaction score
    268
    You're right, especially on the second point. (Shudder)
    Alright, I said it.

    Now then, for the first thing: This just makes it easier to make a small mistake and run out of material.

    The second one: Yeah----this makes it easier for new/inexperienced/careless faction members to make a mess of things. You're right about the sabotage, but do we really need to give them MORE ways to wreck things?
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    I'd like a separation between high-ranking and low-ranking faction members to protect high-ranked sections.
    As if the high-ranked members were part of 2 factions, the high ranked and shared faction.

    But if you think this further, maybe we should scrap factions altogether and implement groups with the name of the person leading them.
    Your friends can join your group.
    Your ship is not for you, but your group, but defaults to the leader-position (only you) in this group.
    back to topic: About the factories eating your stuff …

    You should ALWAYS separate the things you want to keep from what you manufacture.​
     
    Joined
    Jan 31, 2015
    Messages
    1,696
    Reaction score
    1,199
    • Thinking Positive
    • Likeable
    I'd like a separation between high-ranking and low-ranking faction members to protect high-ranked sections.
    As if the high-ranked members were part of 2 factions, the high ranked and shared faction.

    But if you think this further, maybe we should scrap factions altogether and implement groups with the name of the person leading them.
    Your friends can join your group.
    Your ship is not for you, but your group, but defaults to the leader-position (only you) in this group.
    Ok... you should suggest that... somewhere that isn't someone else's suggestion about improving manufacturing ;)
     

    Gasboy

    BLRP
    Joined
    Aug 11, 2013
    Messages
    1,311
    Reaction score
    360
    • Community Content - Bronze 2
    • Legacy Citizen 6
    • Purchased!
    I have a small suggestion that might help with the perceived problems with MacThule's suggestion: production runs.

    If you have your storage and factories all interconnected, the only limit is how much required resources are in storage. I came to the suggestion forum to suggest the idea of production runs. Simply give a field in the factory where you enter in the number of products you want the factory to make. That way everything can still be interconnected, and running in unloaded servers, because once the factory hits its quota, it shuts down. So not only does storage not overflow, but you have the added advantage of not wasting resources on unneeded finished products.
     
    • Like
    Reactions: Lecic