ISAWHIM Posted October 28, 2022 Share Posted October 28, 2022 Before I continue, I want to apologize. I can come-off as being crass, sarcastic and borderline rude, but that is NOT my intentions in anything I write. I honestly want it to be seen as "constructive criticism", if anything. (Possibly as twisted humor too.) Also, this is going to be a TLDR flood of information that isn't well structured. First, I would like to say that I am enjoying the game, only a few QOL mods needed, but they ARE NEEDED, to compensate for the lack of QOL in the game. I have enjoyed this game for YEARS now... (Minus the spaced-out part, which I still have not played. I am still playing in the classic portion of the game. I just couldn't leave my dupes unattended, without warnings, for so long, due to the horrible lack of "self-preservation" of a dupe and so few "useful warnings", where you can actually do something, by the time you hear the warning.) Now, onto the TLDR... (Stop reading now and you will enjoy your day better.) NOTE: Much of this might be better left for "ONI-II", or "ONI-III", since "ONI-SO" is sort-of "ONI-II". I know I am beating a dead horse here, but ONI needs to bite the bullet and just program "mixing of gasses and liquids" within "unit spaces". Most of these issues would instantly be solved by doing this, and it expands the game for much greater, and more accurate, real-world physics and interaction. (Sorry, but the excuse that it's too complicated, impossible due to mechanics, or other excuses, besides, "we just don't want to do it", are real.) I can do it, with limited programming knowledge, using VB6 and even excel spreadsheet. Here is my argument. It breaks NOTHING, game-wise. Pumps still work, pipes still work, devices still work, even with mixed gasses. There is absolutely ZERO weight to the "it'll make it impossible or a nightmare to sort" argument. There is only gains here, and I will explain. 1: You can stop using those horrible "random numbers", which are highly CPU demanding. That is used to make the gasses and liquids "dance" around the screen, randomly. You can use, FAST, scientific calculations, including the MISSING thermo-dynamics which makes heat rise and cold fall and makes atmospheric pressure greater and hotter below and thinner and colder above. As opposed to ONLY using "pressure expansion" for everything and a fake "diffusion", which is also simulated by "pressure expansion" here too. 2: You only need, a minimum of 2 elements per block. (A block being isolated into an upper and lower portion. The lighter element always above, except if an object is within the space. While the heavier element is pre-sorted to occupying the lower portion of the block. Though, 3 elements would be better, and that would be my suggested "limit". Because 4 elements starts to eliminate the "fast formulas".) With only 2 elements per block, which are pre-sorted, you can easily make them "flow" correctly. They are already pre-sorted, if they are not both the same elements. Additionally, you can easily do fast thermal-dynamics. Within a single block, even with the same element, the hot one can rise while the cold one can fall. (There is a point where cold hydrogen will fall through heavier and HOT CO2. This would easily allow that, FAST, as only one single block has to be checked.) The elements can be liquids and gasses, obviously, in that single block. An air-pump will still only pick-up air, and a liquid pump will still only pick-up liquids, but there will NEVER be an "invisible vacuum" within a partial liquid block. now, there will be some gas, unless the liquid is in an actual vacuum. (These "splits" are not just "half-blocks", they are just the virtual division between volume/masses of a block. Even atmosphere can be FAST this way. As opposed to everything having an unrealistic "unified pressure". At the MAGMA level, should be higher pressure, which allows more mass/volume per block, while near space, there should be less volume/mass per block. Which leaves the center of the map, where we start, like "sea-level".) Exposure to space should NOT be required to "simulate horribly", atmospheric pressure, which eventually will just bleed the world of ALL gasses. Again, this speeds-up calculations, because you are not tracking that infinite "flow of pressure", from top to bottom, with space exposure. There should be a point where, even the thinnest gasses, remain "bound by gravitational forces", because "in a vacuum", even the lightest gasses "Fall down". Yes, to a point, they also expand, but they do not all fly off into space. (That requires heavy negative ions to lift gasses off a planet, otherwise earth would have no atmosphere!) Finally, liquids can fall "together", (if only two, or four), without exploding into odd, and impossible forms, as they try to dodge gasses and other unlike liquids of solid blocks! Pro-tip, Liquid trumps gas... MOVE THE GAS OUT OF THE WAY, PRIOR TO LIQUIDS trying to enter a space below. Never saw water form a wall or explode into a floor, in mid air, because three gasses were "in the way", and the gasses "couldn't move". Takes a micro-second to move them, prior to water occupying the "void" where the gas previously was. Gasses will still sort themselves out. They will NOT stay mixed. Now, having pre-sorting, which is also faster, it is now more realistic. Gasses in one block can go half left and half right, and it makes sense, no "dancing" to simulate horizontal splitting into "like gasses". (Ionic bonding) No fake dancing to randomly determine, that heavy gasses fall MORE down, randomly, than up. They can actually just flow down, like in reality, by volume, not "fake pressure diffusion". They can also rise-up, when heated, through other gasses, or hover over liquids, in the same block as the liquid, if there is room. The neat thing, is that any "item" can ALSO occupy "space" in a block. That would offset the blocks volume/mass, and the representation would be that only the lower portion of the block could contain a gas OR a liquid. Virtually, the item is occupying the upper portion of the block, as it is "off the ground". Though, that could be, optionally, reversed for "gasses", so gasses virtually occupy the upper portion and only a liquid would occupy the lower portion, as "pre-sorted", so a liquid would naturally "fill the void" on the ground. The representation would not change. It would either be represented as a full block of gas over the item, or a partial block of liquid over the item. (The upper portion drawn as the block's contents above, which is either ALSO liquid or just a gas.) 3: Your randomness can be "predetermined", to really speed the game up. A simple index of 1000 random values, which are actually just floating numbers from 1.0f to 0.0f. Each type of thing that needs a random value would just cycle through the list, either forward or backwards (both directions at the same time, one for odd indexes and one for even indexes) and it would be unnoticeable to 99.9999999% of anybody, and equally as functional. (You can even make fast-indexes, for things like gasses, if you STILL want to use the horrible "random dance". Since there are only 8 possible ways for a gas to move, or 0 for no movement, which is 9 total values, unless you want a set ratio of 50% chance that it doesn't move, then there is 16 values and 8 of those are just 0. You make an index of 1000 moves, values of 4 bits, each for 16 choices. You shuffle them, so you have 100% even randomness, and apply them the same as above. Even byte indexes get forward cycling, while odd ones get reverse cycling. You can even add an extra "offset", by index of the element, as the starting position in the random list. But that would require you to track each indexes current position and increment it with each use.) 4: You don't have to "move everything at once"... There are, modestly, about 30-60 FPS. Again, by index isolation of each movable item... only "think about" moving 1/30th or 1/15th of the things that need to think about moving. (As opposed to the things that have thought about moving, and are now just moving their "share of time" to the destination they thought about moving to.) This includes gasses "dancing", Critters, Dupes who may need 1/10th to 1/5th for tasks. 5: OMG, the rockets... Why are they made to be so complex. Seems like a hack that never got finished. It would be nice to see, as the rocket is fueling, the "potential travel distance", in the rocket info page. (The engine or the cockpit, or any selected portion of a single rocket.) QOL fail, we need to go to a menu in a space-map to get rocket info. Also, why is an atmo-suit needed WITHIN the rocket? My dupe is already wearing a suit! It's a wasted resource that has to keep being picked-up and added into a rocket, when there is no dupe present. Just check if the dupe has an suit, while inside the rocket. Also, put a button, that works, to force a dupe to get into a rocket, or just wait to launch, until a dupe arrives. The "assign" option is busted. If a dupe leaves a rocket, it still says assigned, then you have to unassign them and the dupe jumps into the rocket??? Also, if we use the "nearest dupe" option in tasks, then a dupe may NEVER get into a rocket. Had a qualified dupe REFUSE to get into a rocket until I unselected that option in my tasks. They were doing everything BUT operating the rocket or "researching"... Not sure what task is for the rocket. Honestly, I am not sure what most tasks are designated for. Storing is used for deliver, deliver is used for tidy, tidy is used for storing and delivering, it's a horrible mess of conflicting confusion. Back to the rockets... The detection dishes don't see the rockets in time to open the doors of a bunker, quite often. That is if the option to select the rocket even exists. I have not seen my rocket in the ONE detector I built, specifically for the rocket, in ages. It disappeared when I rebuilt the rocket, after I destroyed the engine first and rebuilt it from the ground-up. Apparently, destroying the cockpit destroys the "rocket", and rebuilding it, if it was previously selected, stops the new rocket from showing in the list. Why is there no "any rocket" option. I only have one... I don't intend to have more than one... If I did, it would STILL be in the same bunker area and then I would need one detector for EACH rocket? That makes no sense. (Makes sense if I have three bays and three rockets, but not if they all fit in one bay, and not if the detector doesn't show "new rockets", after rebuilding one.) Then there is the horrible space-map operation. My rocket kept going to the same location and I couldn't get it to go to the one I selected. Every time I selected a planet, then selected the "launch", to go to that planet, the selection changed back to the original location. (There is a specific order to selecting, which is neither logical, or explained, and no way to "cancel the launch". Would be nice to have a count-down and a cancel, or just have it WORK correctly, so it doesn't deselect your planet and reset it, when selecting "launch".) Though, I just updated the game, so maybe, doubtful, that was addressed. Steam and solid boosters... Such a useless combo. Each one is specific to a set range limit of possibility. I am not even sure why a cargo-container, which barely brings back a hand-full of items, weighs so much more than the items themselves, and why it weighs more than the "packed" research sections. Honestly, research sections should weigh more than the EMPTY cargo containers and the cargo containers should be returning TONS more. Justify the "weight penalty" as "cargo return weight limit". Or, here is an idea... Cargo only fills, based on "available return fuel". So the cargo spaces can be weight-limit capped, but should weigh less than the research modules. (So you also are limited to research, which should honestly only be one unit per ship. That gives you time to use the items you are harvesting from the planets. Also, the first two planets should have "dirt", "water", "polluted water", and possibly "coal"... Just basics, that we often seem to run-out of. Require the boosters for the next three levels of travel, where more "basic" materials are abundant, but no exotics. Save exotics for the petroleum rockets and make boosters functional for them too. Boosters are a penalty for anything other than the steam rocket. They should be an instant "boost gain" for the first 5000Km, at the least. Also, like real boosters, they should not return with the ship, just the booster-less frame, which should have to be rebuilt for a new launch, or replaced with some other unit.) 6: Wasted processing, for no real reason... Everything mined is HALF the volume. If it's EVERYTHING, except water and gasses, then why not just make it 100% and make EVERYTHING half the volume/mass in the map? I don't get why you would apply MATH to something that is ABSOLUTE, as a yield. Seems horribly redundant and a waste of processing and programming. Also, it makes NO SENSE... If I dig a hole at the beach, and put the sand in a bucket, I have 100% of the sand I dug up and it is now in the bucket. If I put it back, in the hole, it fills the whole hole, not half of the hole. If you want half-volume for something, like a metal, just put half the volume or have digging metal yield SAND + METAL, or DIRT + METAL, or what makes more sense... Sand + Dirt + Metal. 7: Water pumps fill a whole packet in a pipe, but Air pumps fill only half a packet in a vent. Why? That forces us to use 2 air pumps, which now costs 2x more than liquid, to pump. It should, if anything, be the other way around. Liquid is harder to pump, but liquid pumps should just cost more to power. The air pump, in essence, is just a fan. If it was an actual "pump", I would expect it to fill the vents. Especially since it can push through an over-pressure vent. 8: For the love of all things good... Fix the Electrolier already. Even in normal operation, under ideal conditions, it self-over pressurizes, because the horrible pressure-diffusion code doesn't allow its's own gasses to move out of the way in time. It only works in a perfect vacuum, to 100%, which is an impossibility, considering the #7 issue and the fact that it outputs two blocks of gasses out of ONE space. Even better... Make ONE of the gasses come out of a vent connection, like almost every other machine. Honestly, I am not sure why ALL machines don't have an OPTION, to exhaust OR attach a vent to them, or plumbing to drip, OR attach a pipe on all units. 9: Please build "Circuit boxes", so we don't have to build massive circuits, which should be TINY, in the physical world. One cube box can have up to 4 connections, coming in from the four sides. It would open-up like when building the command module, into a tiny "blank world", where you can design the internal circuits and connect them to the four individual outputs. Bonus for making ONE box on EACH machine, and having options to select what a machines interaction options are. Also, the ability to include, internally, within these boxes, ALL sensors. (Obviously, pipe sensors and vent sensors would require a box to be built over a pipe or vent.) So we can have a temp/atmo/timing/gas/liquid sensor, all within the same "box" or "block" of space, as opposed to demanding 4 individual, unoccupied, remote spaces, away from the things we are trying to sense.) This includes data-cables, which each end should have an automatic "union control", to set where a ribbon may attach to a single wire. You just set the line you want it to connect to, at the union. As opposed to the need to build a whole, specific, connection type to go in or out, which is the same thing, it's just a bundle of wires. Honestly, just allowing us to lay up to four wires in one space would be better. If we want them to merge, we would just select to connect the one wire to the other, otherwise, treat it as a "new wire" or as "passing over", no stupid bridges. (This would also extend to pipes and vents, the "no need for bridges". If we click on a joint and select "join", give us the option of setting each connection as "priority" or "default" which is just a normal connection, or "drain" or "fill". etc... Though it would be nice to have pipes in one block, and 2 vents. But, having the connection control would make more sense, while it removes a redundant, dysfunctional "bridge" which is actually a pump with odd, illogical, priorities that are uncontrollable and unseen.) 10: Staleness limit for food storages, and PER ITEM quantities limits. Also, AUTO-COMPOSTING, as opposed to dropping food on the ground and then manually having to select composting, or closing the fridge after selecting something to be composted. Keep the fridge open, we are still trying to do things in there! Why would you close it anyways on us? That's just rude and inconvenient. 11: Freezers, or the option to switch a fridge to a freezer mode. (With some appropriate indicator like a blue-light to indicate it is in freezer mode.) 12: Hydroponics blocks NOT showing DIRT in them. Here is a concept, show the LIQUID in them... Water or Polluted Water or Nutrient-Boosted variants of those two main sources, if fertilized. Also, demand "Clay-pellets", as a medium. Get us introduced to clay/ceramic and give another production item to the kilns. 13: For the love of all things good, use realistic powers and wiring requirements. You have, literally, made power management 1000x harder to manage and program and made us 1000x dumber in the process. That is NOT how electricity works, AT ALL. The thickness of the wire has NOTHING to do with WATTs, its all about AMPs, which is Volts*Amps=Watts. Transformers have NOTHING to do with WATTs, they are all about VOLTs. You can have a 100,000 watt heater run of a thin telephone wire, if the voltage is high enough, which is managed by a transformer. On that same respect, you can melt a wire as thick as my arm, with 1 watt, if the voltage is low enough, because it's the AMPs that determines how thick a wire has to be, not the WATTs. Look, it's basic science here. High voltage lines, which use a transformer to change voltage from 220,000v to 220v, are only as thick as a normal HOUSE MAIN wire. Because they are 1000x the voltage, they are running at the same AMPs, and they can handle 1000 houses worth of WATTAGE. But your house can only handle 1/1000th the wattage of the high voltage lines. Essentially, in the game, you are doing a double-up. You are forcing us to use heavy wire AND also a transformer. It should be one, OR the other. Heavier wire to handle more power, OR a transformer to allow a smaller wire to handle larger wattage loads, not both and both are being done wrong. Horribly wrong. For instance, I know a lot of you are in a non-US country and use 220v as your base-volts. You know why that is? Because that allows your wires to be thinner, under the same loads. Here, in the USA, we have 110v and demand thickeer wires to run the same things. For instance, our computers demand a 10amp wire, while yours only demands a 5amp wire for the same 1200watts of power. Computer 600-1200 watts... ONI computer 120 watts??? Home generator 6,500-30,000 watts... ONI generator 800 watts??? Growing light 800-1200 watts... ONI growing light 10 watts??? Water pump 600-1200 watts... ONI 120 watts??? Air-handler 600-1200 watts... ONI 120 watts??? Space heater 700-1200 watts... ONI 120 watts??? (Also produces over 6000 watts of heat??? From 120 watts!) Nothing, electronic, makes sense. Generators all produce barely any power and devices power demands are horribly over or horribly under any logical sense for the actions. Also, the impossibility that they produce more heat than they actually consume in power. Wattage IS exactly the measure of WASTE HEAT converted in the consumption of power. A computer that consumes 1200 watts of power generates as much heat as a 1200 watt space heater, or a stove burner on low. NOTHING consumes 1200 watts, but yields MORE than 1200 watts of heat, that would be an "over unity device". That is like saying it consumes 120 watts but outputs 1200 watts. Generally speaking, a generator should produce about 80% of a resource to yield xxx power/heat. It's not both, the "heat" is the 20% NOT converted into power and lost, as heat. If you consumed 1000 kDTU/Joules of energy, assume it produces 800 WATTS of power and 200 kDTU of heat that it emits. 14: Severe extremes between gasses, liquids, solids and built structures. Seems like a poor hack that just causes things to cascade, instead of being a "help" within the game. Ice takes forever to melt in storage, sitting in a room full of molten lava or massive 20K hot nitrogen filled room. Floor debris is similar, with better apparent insulating properties than the best insulation in the game. I have critters being born at higher temps than the air they are sitting in, because they are born over a piece of debris that just won't cool, and they are destroying things that have overheat temps that shouldn't have overheat temps, like a critter drop-off!?!? Just because they walked in front of it and they are 380F and I can't make that item out of steel. Add this to the odd impracticality that items made with something like 4kg of material don't have the mass of 4kg of the material they were made out of. It's like they were made into thermal plates and they absorb energy from EVERYTHING faster than any of the materials they were actually made from. 15: Repairs NEED to STOP if an item is set to be "destroyed". My dupes are repairing things that are set to be destroyed, which forces me to waste materials or manually ALSO have to set each item to be "do not repair", before I set it to be destroyed. Total inconvenience. Also, repairs, like block-building, should be able to be done through corners, and honestly, through a single wall block. (Meaning that a pipe or wire, which is sitting behind a wall, should be repairable. I can understand not building it or deconstructing it through a wall, but not "repairing it", as well as corners.) That's just a convenience issue. A notice about what caused the damage should remain as well. Some say heat damage, or cold damage, but some do not. I have a pipe that got damaged from ??? No apparent reason. I have to disassemble a vital block to repair it, because it's sitting one block in, on a corner, but the corner is exposed. Makes no sense that I can build a block on the corner, but not repair an item in the wall, on that same corner. But I can repair a pipe within a wall just fine. 16: For the love of all things good... If a dupe drops an item he was delivering... Have him go pick it up and continue delivering it. Instead, they run all the way back to where they got the item in the first place, and then, annoyingly, also drop it again. Running in an endless loop, at times. All they had to do was go back down the ladder, which was closer, and get it. (Or another dupe) Which leads to the second annoying behavior. Dupes will pick up items close to them, to deliver to a remote location, instead of getting an item NEARER to the location they are headed, like a storage bin sitting right next to the item, which they run right past. Even when set to "nearest dupe" in the tasks. The most annoying thing is when a dupe will carry items out of storage, into another storage, because it has a higher priority. That should be an OPTION to NOT FILL FROM STORAGE, and should be a default behavior, like how auto-bottling for water dispensers is not a default set option. Honestly though, we need a new storage unit that is just a "priority fill", as opposed to a "storage unit with storing priorities". It would be filled from any source, while normal storages would just be for storing "swept" or "tidy" or "store" items. A visually different storage container, for quick identification among the plethora of normal storage units. Again, as I mentioned with the fridge, storages should have some kind of "per item limit", as opposed to, or in addition to, an overall storage capacity limit. It would be nice and beneficial to limit storage of EACH item type to something like 1000Kg or units of each item selected. So items can be dispersed, instead of all being crammed into one unit, leaving no room for other item types in the same unit that has multiple item types selected for storage. (Or, by default, have dupes fill the "least full", to a distance limit, of whatever item they are carrying. So one may drop 10K in one bin, then the next would put 10K in another next to it, so some other item in the list can still fit in the storage. As long as they are not running across the whole map to "evenly distribute items". Though, that would be a good "idle time killer".) 17: Auto sweepers honestly should be smaller, consume less power and have filters themselves. Sorters should ALSO have multiple filters, like storages. (I would go so far as to say that liquid and gas filters should have multiple selectable filters too. Even if it was a new filter type that consumes more power. Though, I think all filters should also consume less power.) Extending this to the sensors, which should have the option to select multiple things to sense, or a "NOT" option... Not oxygen, Not Polluted water, Not Coal, set where you select what to detect. Or, just letting us choose if it sends a red or green signal on detection. Same-same. As opposed to littering the world with giant automation NOT gates, which are 2x larger than the actual sensor and can't be put over a sensor. 18: Automation "plugs", that can be connected together, if they match. Input to an output connection, no need for a wire to join them. As long as they are paired, if built over the other connection, it should count as a connection. Why not reduce clutter by making it more cluttered. (Because that allows automation controls to be built over one another, making it more cluttered, but less cluttered, because the controls don't occupy half the world-space for no reason. Or, just make control boxes, as I asked above. Kills two birds with one stone.) 19: Since you are not going to change the power, and you may have read this far... Make the 1000 watt transformer a 2000 watt transformer, and the 4000 watt transformer into a 40,000 watt transformer, so it makes sense. Why have a 4kw when you have NO 4kw wires? It would make sense that you have a 1000 for the 1000w wires, a 2000w for the 2000w wires and a 40,000 for the 40,000w wires, all stepped down from the appropriate higher wattage lines. (Should be voltages. not rekindling that annoyance.) 20: Make tubes so they can do 90-deg solid turns, like wires. They already make 90-deg turns, so why force us to have an extension between turns? You just like forcing inconveniences, for no explicit reason. Also, through floor connections should work "through ladders and fire-poles", when turned sideways. (My opinion... But honestly, all but exits should be buildable behind ladders and fire-poles. I understand why they are not, but it would be a lot more structured if they were treated as "background items", as opposed to being a foreground "blocking" item. We can run past them, so we should be able to climb a ladder over them. Again, it just doesn't make sense, like the need for a floor through-hole, if they are a background item that you can walk in front of.) 21: Last one, I promise... This is more of a bug than anything... Germ-sensors, at times, get "stuck" saying they have 1-8 germs on they are "detecting", when there are zero germs ON the sensor, or IN the pipes or vents. Confirmed by manually draining, germ-free, spraying which never happens, because there are no germs externally, and also by allowing fluids or gasses to pass through, and no germs come through and the germ-level remains "stuck" at 1-8 germs. Picture included... It stops my system cold, at random times and I have to adjust the setting, or save and reload and HOPE it changes after reloading. Also, the settings for sensors, should, kindly say, ABOVE or EQUAL TO, or BELOW or EQUAL TO. Since below 0, in this sensor, at-least, triggers if it is zero, which is NOT below 0. Link to comment https://forums.kleientertainment.com/forums/topic/144134-suggestions-rants-and-considerations-no-holds-barred/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.
Please be aware that the content of this thread may be outdated and no longer applicable.