tsunamayo / Starship-EVO

Welcome to Starship EVO bug tracking repo !
114 stars 17 forks source link

[discussion] We need to talk about fuel #4462

Open Uncle-Ulty opened 2 years ago

Uncle-Ulty commented 2 years ago

We need to talk about fuel

Hi Tsuna! Me and Servo were talking about fuel and energy balance in starship EVO.

6 way pipe

First, the 6way pipe connector doesn’t seem to been working properly. Some already said that this is a fuel tank reskin. I don’t know how is it supposed to work in starship evo, so I ran some experiments.

In the current experiment I use a ship (classified) with two identical power systems. One of them is supplied by a tank and straight pipes (the right one in the picture), and the second system is supplied by a tank connected to the reactor with a 6way pipe and pipes (the left one in the picture). If the 6way pipe is trully a reskin tank, so this reactor is using the fuel inside the 6way pipe, and ignoring the upper tank, since the fuel doesn’t flow between adjacent tanks. The bellow figure illustrates what happened after some time.

image

Fuel consumption

The current fuel consumption is insanely high! I’m using in this example a car-size hovercraft. It’s a 8x3x2 size and 3,8t hovercraft. The current energy balance is 99%, and its fuel consumption is 4,2l/s… We must consider that this is a game, a “futurist” one, but lets compare the number to the reality with some equivalent interpretations. Imagine a car consuming 4,2l liters per second. It means that in one minute this car would consume 252 liters, and this is a lot of fuel! We would consume 252 liters parking our car… these numbers don’t make sense, right? Let’s go further. If the Stevo fuel was gasoline (energy density 34,6 MJ/l), this hovercraft would require to produce 107,3 MW (143.489 hp) to keep running. As a comparison measure, the Itaipu Dam (the second largest dam in the world) has 20x turbines, and each one of them produces 700MW. We could say that this Dam, that supplies all Paraguay and 10% of Brazil’s energy, produces equivalent power of 130 of this starship evo hovercraft.

After these considerations, I think the fuel consumption rate should be reduced by a 5~20 factor to make it more playable. If the reactor uses all its internal fuel in one minute, maybe a 10 factor would make it run for 10 minutes with the same amount of fuel, a decent time. Or you can reduce the fuel rate consumption and also reduce the reactor internal tank.

image

Fuel in different scales

The 1m reactor brick, forming a 1m³ reactor, has 250l of fuel in its internal tank. Meanwhile the ¼ reactor, forming the same 1m³ reactor, has 1000 l [1m³], that is, the ¼ reactor has its entire volume filled with fuel, as it was a 1m³ fuel tank. it’s a little absurd.

image ¼ m [1m³] reactor stats

image 1m [1m³] reactor stats

image The ¼ m [1m³] reactor has the same amount of fuel as a 1m³ fuel tank.

These are my considerations. I have a lot to talk about the fuel mechanic, but I think these 3 points are enough for now. Let's see what the player base has to talk about

PFSCommissar commented 2 years ago

I agree with the above, the fuel consumption should be dramatically reduced not only for the sake of realism, but also the sake of building.

consider this case below: this is one of several reactors for my station hub, where the only reason these reactors exist is to power the shields. the piping configuration you see is still not sufficient for the reactor.

20220108112423_1

this gets much more challenging when we consider that reactors not only need sufficient connections, but we'll also have to make sure there are enough pipes upstream leading from the fuel sources. We'll be carrying this same amount of pipes through the more narrow portions of the stations so that fuel can flow fast enough from one module to the other, especially since we're also thinking about making fuel modules and docking ports for tankers. However, this not only has the potential to ruin aesthetics, but also can get out of hand very quickly.

20220108112519_1

as you can see above, my docking ports have 2 1/2 scale connectors. the default stations surge made are double the size and have 4 connectors. you can see how this quickly becomes a problem: Fuel will get choked and these reactors will start shutting down because they can't get enough. While we can have tanks in the individual modules, the reactors will simply guzzle those down and then get starved as they attempt to draw the same amount from the other fuel modules.

With this in mind, things start looking very unsustainable, especially when we want to preserve the aesthetics of our ships and stations. That's all just considering a station that has lots of space and doesn't need to power engines. if we try to create a war vessel, the challenge suddenly gets a lot bigger.

Regnion commented 2 years ago

252 liters per minute in a car-sized hovercraft is 66.5 gallons per minute for us Americans. At idle!

Servomotor commented 2 years ago

I can't really express any more than what has already been said. What I can say though is that some of us, I think most of us would prefer to release stuff to you, or on the workshop that is mostly functional. Meaning within the ballpark of balance. We know fuel balance, or any balance is usually a late stage development, but in the case of building stuff to maintain a lively workshop/community that the projects released should work for the people who use them.

The 6 way connector not working has caused me personally a bit of frustration, because I did not know it was not working correctly in the first place. I assumed it was working as intended. This made putting together a fuel system confusing, as some pipes would flow, some would not. This was very off putting and caused me to just log out of the game and do something else. If this happens to me, how many others might do the same.

I don't think it has to be said that most if not all of us understand the complex issue of developing the game as a solo person, when so many things need to take place for any one thing to work properly. We know it cant all be done at the same time and that your development time must be used efficiently, but I think this fuel tank issue is important enough to warrant some fixes/chances/balance time.

pinesh commented 2 years ago

Perhaps instead of requiring a hand-built pipe, the solution could be an equivalent to the link tool. Drawing fuel connections from tanks to systems could render nothing or even a flex hose (yesssssss bring them back!.) Considering how difficult it must be to dynamically determine links through pipe blocks. Direct logic-style connections could be far safer and easier to test!

cloudrambler commented 2 years ago

Adding to what @Servomotor has said, I wonder if there are certain game mechanics for which expert players could provide more assistance. For complex reactive aspects such as fuel, cargo, NPC pathfinding (character and ship), missions, survival modes, etc., would it be helpful to have closed experimental branches where we could test out these functions in a raw state and provide early feedback. It would not have to be as stable as the previous public experimental branch, and we would focus on the aspects being tested for bug reporting.

tsunamayo commented 2 years ago

Hi all thanks for the feedback. I will fix the 6 way. Now if there is an issue and that it is off putting I need to be aware of it! (and I need to be aware that it is ruining the game for you - I have many issue to fix unfortunately...) I will fix the internal tank storage scaling also. Also I planned to add some more powerful debugging tools to see what is happening in your design. I got side tracked with the tutorial which went very very badly and where way more time consuming than anticipated unfortunately, so yeah fuel needs a bit of love from my side. I will do a big push adding fuel harvesting, multi-fuel and more soon.

Regarding balancing if you want to help me give me hard example with reactor size and grid-size (and blueprints), as it depends a lot on grid-size. My issue is with the small grid reactor which packs a lot of energy... And as you noted the fuel should scale linearly with volume, unlike what reactor do: they are non linear, meaning a reactor twice as big will only be 4x more powerful instead of being 8x more powerful (2x2x2, those are 3d objects!). Mini-reactors are challenging for that reason, I might nerf them all-together as I think it those non-linear scaling rules are hard to understand for newcomers (and honestly for me too) and getting in the way now that we are working on fuel.

Yes consumption value seems high I will nerf them down...

Regarding flow I think the current calibrated value is one 0.25 pipe for 2x 1m reactor, which visually seemed okay for me, but I can change this. That being said if you use a large 3d stack of many small-grid size it will always look stupid / challenging regarding plumbing. Consumption scales with 3d volume, but the fuel connection can only scales with the 2d surface.

Now side note, a Saturn-5 glurps several tons of fuel per seconds, which is equivalent to 85x hoover dam ^^. Only to send 50 tons to the moon. So I guess we must do much more efficient than reality...

PFSCommissar commented 2 years ago

To be honest, i don't think Saturn V is a proper comparison. Those are rocket engines, notorious for being some of the most fuel inefficient propulsion devices ever created. We also have to consider that real life space programs budget fuel as deltaV, because it's all about orbital mechanics and you only need to burn however long it takes to change your trajectory. in SEVO, there are no orbital mechanics, so we have to burn constantly in order to move. Therefore, fuel efficiency is even more a necessity than it is in real life.

The second thing to consider is we aren't powering engines, but the reactors that power engines. That gives an idea of electric propulsion, which is known for being highly efficient, but with low thrust. However, it's certainly feasible that higher thrust can be achieved as technology progresses, with minimal loss to the fuel efficiency, such as the plasma engines currently under development. But to speak to the reactors themselves, your real life reference depends on what type of reactor you want. Nuclear fission or fusion? fancy antimatter scifi stuff? or simple hydrogen fuel cells. The fuel cells probably make the most sense with our current tank and pipe setup. Real life analogues can produce 33.3 kWh/kg, whereas hydrocarbon fuels are around 12 kWh/kg.

Given the fact that SEVO already has tech like lightspeed and warp, at this point we're already at the point where it would make sense for you to just make up some numbers and not worry too much about the real life stuff. i think what's important is to create something that functions well and allows players to get a lot of use out of their ships and (mostly) preserve aesthetics, while still offering something of an optimization challenge. We're happy to continue testing and provide you with that feedback as you iterate.

tsunamayo commented 2 years ago

@PFSCommissar Yeah I agree with that, this is why I said we need to be much more (fuel) efficient than reality... Real world rocket are basically fuel tank plus a little bit of payload, so that is not really interesting to design... Cheers

Uncle-Ulty commented 2 years ago

That's why I limited my sample to a car-size hovercraft, cuz it's a situation that most of us are used to. Thus, for the hovercraft, the fuel consumption numbers were insanely high. Even for a helicopter/drone, 252 liters per minute is a lot.

And ofc, to put an object in orbit you need to supply it with power to increase its kinetic energy, gravitational potential energy, to compensate for drag, and so on...

But we should keep it in the playable context. The current fuel consumption is so high that it impossibility any gameplay. You won't be able to go from a station to another. But, this orbital talk is interesting, cuz it made me remember that, maybe, the fuel consumption to take off from a planet should be increased compared to a flight between stations.

PFSCommissar commented 2 years ago

In a sense, we already have that since ships slow down near planets. If the fuel consumption rate is based only on how much throttle you’re putting in, then the longer transit time close to a planet = more fuel burned

Uncle-Ulty commented 2 years ago

Yeah, you're right. This will make people think twice before landing on a planet with a big battleship. Instead, they gonna use a small shuttle to make this travel. Unless you plan a Geonosis invasion, ofc xD

Servomotor commented 2 years ago

In game play terms we just need to hit a spot that is rewarding (to refuel) but not punishing (needing to refuel too often) but also not boring (never having to refuel or refuel occasionally).

Tsuna, that ship I sent you a month ago that I have been working on (the larger black/silver one with the nice interior). I envision a 3 hour constant duty duration on the fuel. Meaning, if I fly at 100% reactor, the ship should last for 3 hours.

I think balancing fuel and reactors to the ships size and performance is fun, but only when its logical.

I cant say for everyone else, but to me the fuel tanks should have 1 end value which is comprised of all tanks in the chain. I feel this way about reactors as well, in that we need a way to link multiple reactors together to work as one unit. I say this because sometimes the space we have left in a ship to shoehorn in a reactor (or needing more reactors than planned) will be taken in small cubbey holes. You can see in that ship I sent you how the space is very oddly shaped, and how a big rectangle reactor will not fit in their so easily. (spawn a second one and remove the reactor).

I might have to send you the most current version, ad I am sure some of that space has changed (as I type this, not even sure if your version has the reactors in the two engine rooms).

cloudrambler commented 2 years ago

If we imagine the reactors are some form of futuristic engine that derives electrical (or plasma) power from fuel, we would surmise they are both efficient and fast. Something like a fuel cell with the power density of a jet engine. That's a fairly fuel hungry device to base the game mechanics upon, but could be a good starting point.

Also we should not think of the game ships as traditional rockets. We have very high impulse thrusters that consume no fuel directly, so we have to assume they are exploiting some facet of quantum inertia to produce directional thrust. On which basis we can calculate their power consumption in terms of work done to accelerate the ships, being 100% efficient. The light-cruise and warp engines are equally fictional, and it would be game breaking if anyone seriously considered E=mC2. So why not use contemporary aircraft as a reference for power requirements.

Taking @Uncle-Ulty example of the 3.8T hovercraft needing 4.2l/s to hover, we can contrast that against a 747 aircraft which has pretty much that same fuel consumption rate and a mass of 187T. So for atmospheric flight, we could surmise the present game fuel consumption is almost 50x exaggerated.

If we assume that in the future, all forms of flight will have roughly the same power density as a jet engine, then the same fuel rate could apply to all thruster and drive types. Perhaps it would make sense to make the hover thrusters more efficient first, then reduce the fuel usage by a smaller amount. For example, the hover thrusters could be 5x more efficient, meaning that reactor fuel rate would only be 10x less. That feels more appropriate for space ships than 50x less, which could be too trivial.

tsunamayo commented 2 years ago

@Uncle-Ulty @Servomotor Hi, the 6 way connector is working correctly on my side. The 6 way is a mini-tank, so connecting it directly to another tank is not working (and also dont really make sense, as you would use it to connect 3+ pipes...). I am not sure what issue did you had with it @Servomotor , were they connected to a tank directly? I will add a "flat pipe" so you can connect two tank together, or put a tank next to a reactor... Thanks

ProPeach commented 2 years ago

@Uncle-Ulty @Servomotor Hi, the 6 way connector is working correctly on my side. The 6 way is a mini-tank, so connecting it directly to another tank is not working (and also dont really make sense, as you would use it to connect 3+ pipes...). I am not sure what issue did you had with it @Servomotor , were they connected to a tank directly? I will add a "flat pipe" so you can connect two tank together, or put a tank next to a reactor... Thanks

For the six way, I also assumed at first it would work like any other pipe rather than a tank as it basically just looks like a multi-directional pipe. A use-case would be here, where I'm splitting off a pipe from a tank into two systems, a reactor and a warp core (pretty sure they'll need fuel in the future? Either way splitting off from the tank like this is relatively common). Sounds like the Flat Pipe would help in this situation between the 6 way and the tank, but for me that feels less natural or intuitive than simply using the Connector Pipe and would require teaching the player how to use the Flat Pipe for things like this. image Would it be possible to enable adjacent systems to share fuel without the need for the Flat Pipe? imo that'd be the most elegant solution from a purely user centred viewpoint

Servomotor commented 2 years ago

The accompanied diagram is how I imagined the Fuel/Reactor system to work. I must stress, the system needs to be simple to hook up so that new players do not become frustrated. We should be able to daisy chain fuel tanks together, reactors together etc. I feel that the system should work so that if you add a reactor or add a fuel tank that it just adds to the overall system numbers. Basically, just linking all the parts together should give a fully functional system.

Servo Fuel Diagram for Starship Evo

Uncle-Ulty commented 2 years ago

@Servomotor , these 6way won't work, cuz they can't be adjacent to another tank / 6way connector

6way connector is a reskin tank, and as a tank it can't transfer fuel to adjacent tanks. So every tank and every 6way connector MUST be connected to pipes only. You need at least one pipe to connect two tanks, or two 6way connector or a 6way connector to a tank

image

Servomotor commented 2 years ago

@Servomotor , these 6way won't work, cuz they can't be adjacent to another tank / 6way connector

6way connector is a reskin tank, and as a tank it can't transfer fuel to adjacent tanks. So every tank and every 6way connector MUST be connected to pipes only. You need at least one pipe to connect two tanks, or two 6way connector or a 6way connector to a tank

image

I know they won't work. I am showcasing that they should work this way.

The entire system needs to work as a single unit. Regardless of how many fuel tanks are connected, or how they are connected, they should add to the total amount of fuel usable. Same with reactors.

pinesh commented 2 years ago

@Servomotor I think the most appropriate solution is to move away from total dependence on pipes and instead look at hoses.

Drawing connections: Hoses can be drawn between two entities directly, doing so might not render the hose, but would still have the same material cost dependent on distance (solves the 0 length pipe)

Otherwise, a bit like the logic plates of Skywanderers, hoses could be drawn from output spaces (as they presently do) where a pipe would naturally go.

6-way connector would have 6 of them. Valves have 2, as do the tube tanks. Pipes have 2 (this permits the creation of output points on objects that don't have hardcoded output spaces like the big square fuel tank or systems by utilizing the framework already in place

What about straight hoses?

The link tool already renders curves, hoses could mimic them. if players want different ones, the length of the hose, and by proxy, the tightness of the bend could be solved simply by holding SHIFT and moving the scroll wheel. Straight hoses are achieved by linking a hose between two connectors in a straight line.

A straight hose being drawn image

A curved hose being drawn image

What about flow? If flow rates are something you wish to maintain, hoses might take the scale of whatever they're connected to, should a hose be connected to a 1m pipe, that end would start at 1m thick, if the destination was only a 1/2m across, however, the hose shrinks on that size and the flow capacity of that link is limited to the smaller connection.

Advantages: Child entities With links, the problem with connecting fuel sources to sub-entities and vice versa is solved.

Intuitive: The link system is one of Starship EVO's most intuitive tools. It's clean, efficient, and straightforward, little extra is needed to explain how fuel works if it's handled the same way.

0 Distance: Link systems would natively work with 0 distance connections, or any distance for that matter.

Flow: A linked network would permit the setup of a shared fuel pool, players would not need to worry about having a dozen pipes leading from the same tank to the same reactor simply because the distance isn't large enough for the next scale up.

Compactness Links need not have collisions, Hoses can get through awkward spaces, or link directly to their target through other fuel entities (not possible with current pipes).

Performance: Using a link system to connect fuel systems lets you create a hardcoded network of fuel entities that don't have to rely on difficult positional mapping to determine if fuel is connected. Currently, I find that fuel really struggles to travel through more than a few pipes before the network breaks down completely. Entities in the network can be updated instantly and fuel can be updated networkwide without having to rely on large-scale pipeworks.

The same fuel network using 6 ways and hoses image

PFSCommissar commented 2 years ago

From an aesthetic viewpoint, i’d disagree with hoses. They don’t allow you to choose the look, colors, or structure of your pipes network. Especially in the case of auto scaling hoses, the current system is preferable, as you could sub a 1m tube for 4 .25m tubes, which may be easier to hide in a hull body.

The current system will work fine if we lower consumption rates and make fuel tanks automatically flow to adjacent reactors. Space Engineers uses a very similar system, and i’ve never seen anyone struggle to understand it. The only difference between the two is that SEVO has flow rates.

As a side note: One option for keeping pipe numbers low while flow rates stay up could be pipe sized pump blocks

kynamats commented 2 years ago

This has all got away from the fact that fuel consumption is a big problem that gets in the way of building. Any and every ship I've put a fuel system into won't sustain itself more than 2 minutes, and that's if I make it look like a balloon. The thing that draws me, and I'm sure others, most to the game is the huge amount of creativity possible, and if fuel gets in the way of that imo it will detract from the experience.

pinesh commented 2 years ago

From an aesthetic viewpoint, i’d disagree with hoses. They don’t allow you to choose the look, colors, or structure of your pipes network. Especially in the case of auto scaling hoses, the current system is preferable, as you could sub a 1m tube for 4 .25m tubes, which may be easier to hide in a hull body.

The current system will work fine if we lower consumption rates and make fuel tanks automatically flow to adjacent reactors. Space Engineers uses a very similar system, and i’ve never seen anyone struggle to understand it. The only difference between the two is that SEVO has flow rates.

As a side note: One option for keeping pipe numbers low while flow rates stay up could be pipe sized pump blocks

Colors and appearance are easily done, as hoses were done back in sky wanderers before so I don't see how that would impact it. You could just as easily sub 4 hoses in the place of a 1m too.

I've had real challenges actually getting fuel to move through pipes. Networks will sometimes move fuel to a point and reach an invisible wall and stop moving fuel any further.

Despite the unbroken connection, the fuel only made it halfway before breaking. image

Flow rates and consumption lead to frustrating scenarios where I only have the physical room to wire reactors from one tank, but the flow rate requirements are so large that I can't fit secondary tanks because there just isn't enough room to fit the pipes.

Crude mockup, but the second fuel tank requires all that pipe just to keep up with the fuel drained from the first. image

Consumption and flow rate fixes will certainly help mitigate these challenges with the existing pipes, but I believe that the pipe system has fundamental difficulties in devising and adapting to internal fuel network changes and that link system could be a solid resolution.

PFSCommissar commented 2 years ago

I never played skywanderers, so admittedly i don't know what you're talking about. However, If hoses exist as automatic connections between two points, I don't see how that won't lead to aesthetic issues. Consider an open room where there's a reactor in the ceiling, and a fuel tank beneath the floor. In the current system, we can route pipes through the walls discreetly and up into the ceiling. We could even make a fancy arrangement along the walls to add to the greebling of our ship and for the viewing pleasure of those inside. However, a hose that creates a direct connection might just run straight through the center of the room, because that's the most direct path. Not to mention that we can't create any fancy arrangements just for fun.

If hoses are different than my impression, then i would be more amiable to it. But in my experience automatic connections rarely take on an aesthetically pleasing look.

The issue you're describing with the second picture is a symptom of what we're all here for: less fuel consumption. That's not really the pipe system's fault, but the crazy fuel rates. As i mentioned before, if we're really concerned about upstream pipe amounts, we could introduce pumps. However, the ideal solution is lowering the consumption rate so much that upstream issues will never be significant.

pinesh commented 2 years ago

I never played skywanderers, so admittedly i don't know what you're talking about. However, If hoses exist as automatic connections between two points, I don't see how that won't lead to aesthetic issues. Consider an open room where there's a reactor in the ceiling, and a fuel tank beneath the floor. In the current system, we can route pipes through the walls discreetly and up into the ceiling. We could even make a fancy arrangement along the walls to add to the greebling of our ship and for the viewing pleasure of those inside. However, a hose that creates a direct connection might just run straight through the center of the room, because that's the most direct path. Not to mention that we can't create any fancy arrangements just for fun.

If hoses are different than my impression, then i would be more amiable to it. But in my experience automatic connections rarely take on an aesthetically pleasing look.

The issue you're describing with the second picture is a symptom of what we're all here for: less fuel consumption. That's not really the pipe system's fault, but the crazy fuel rates. As i mentioned before, if we're really concerned about upstream pipe amounts, we could introduce pumps. However, the ideal solution is lowering the consumption rate so much that upstream issues will never be significant.

As I implied in my straight hoses section, indirect links are perfectly reasonable. By moving via routers instead of directly from system to system, neat, straight hoses and 90-degree bends are all perfectly practical.

Hoses also solve the child entity fuel issue. just as logic is performed now, fuel could be linked to sub entity grids.

Fundamentally yeah, hoses don't solve the consumption problem. But they provide a much stronger framework to handle them.

Uncle-Ulty commented 2 years ago

People, I'd like to avoid asking tsuna to add more bricks and stuff and try to keep the solutions as simple as possible. Tsuna already gave the solution, a flat pipe, and I think it's enough for now. The whole 6way / tank issue was due to some lack of information... maybe it would be interesting to edit the pipes descriptions inside the game.

and as Kyna remembered, fuel consumption is the real problem atm, since it impacts the gameplay.

pinesh commented 2 years ago

People, I'd like to avoid asking tsuna to add more bricks and stuff and try to keep the solutions as simple as possible. Tsuna already gave the solution, a flat pipe, and I think it's enough for now. The whole 6way / tank issue was due to some lack of information... maybe it would be interesting to edit the pipes descriptions inside the game.

and as Kyna remembered, fuel consumption is the real problem atm, since it impacts the gameplay.

Hoses are about as simple as possible. We're going to run into the child entity issue sooner or later. Flat pipes feel like less of a feature and more of a stopgap measure. I certainly don't want more work for Tsuna, but getting pipes working properly across networks, or avoiding the issue with a linked system that already has some of the frameworks in place seem to be pretty equal in weight

ProPeach commented 2 years ago

People, I'd like to avoid asking tsuna to add more bricks and stuff and try to keep the solutions as simple as possible. Tsuna already gave the solution, a flat pipe, and I think it's enough for now. The whole 6way / tank issue was due to some lack of information... maybe it would be interesting to edit the pipes descriptions inside the game.

and as Kyna remembered, fuel consumption is the real problem atm, since it impacts the gameplay.

Fuel consumption is absolutely the pressing issue, glad it's got the attention it needs. I also agree with not adding unnecessary bricks and keeping it as simple as possible, which is why I'm against the Flat Pipe. It's fixing a problem that could be changed by altering the 6 way to work like a pipe rather than a tank, as it's pretty unintuitive atm which is partly why this thread exists.

The hoses are the best solution to CE - CE transfer imo, but I don't think they're a good substitute for 100% of fuel transfers. You're gonna need both for different situations.

Uncle-Ulty commented 2 years ago

or you can set the hinges/rotators/pistons as pipes too, to transfer fuel between entities...

pinesh commented 2 years ago

People, I'd like to avoid asking tsuna to add more bricks and stuff and try to keep the solutions as simple as possible. Tsuna already gave the solution, a flat pipe, and I think it's enough for now. The whole 6way / tank issue was due to some lack of information... maybe it would be interesting to edit the pipes descriptions inside the game. and as Kyna remembered, fuel consumption is the real problem atm, since it impacts the gameplay.

Fuel consumption is absolutely the pressing issue, glad it's got the attention it needs. I also agree with not adding unnecessary bricks and keeping it as simple as possible, which is why I'm against the Flat Pipe. It's fixing a problem that could be changed by altering the 6 way to work like a pipe rather than a tank, as it's pretty unintuitive atm which is partly why this thread exists.

The hoses are the best solution to CE - CE transfer imo, but I don't think they're a good substitute for 100% of fuel transfers. You're gonna need both for different situations.

I absolutely concur with your thoughts on the flat pipe. Hoses can certainly work in conjunction with standard pipes (and would need to for pipes to act as outputs) but I believe that the way pipe networks are built and handled right now is flawed. While I imagine Tsuna's fuel network is robust, the amount of work that must go into determining if compatible pipe blocks and touch across the same grid cannot be trivial.

or you can set the hinges/rotators/pistons as pipes too, to transfer fuel between entities...

That opens a nasty can of worms. How do you handle:

Uncle-Ulty commented 2 years ago

"It's fixing a problem that could be changed by altering the 6 way to work like a pipe rather than a tank"

the 6way connector can't be dealt with the same way a normal pipe does.

My guess is: the pipe code considers only two sides for the flowing code and Conservation of mass, It's prbly a Control volume. The pipe has the inlet flow, the outlet flow, and the quantity of fuel inside. This way tsuna can modify the pipe lenght dimension, but he can keep the same code for any type of straight pipe. For a 6way pipe this is different, cuz he would have to change the code to consider flow for 6 sides instead of only two. That's why I think he just reskinned the fuel tank, that prbly already considers inlet and outlet flow from several sources...

IMO the hose has some problems, 1- It's a new thing to develop. A new code, appearance, and so on 2-people will exploit it and use it for everything

The only way I can imagine a hose is to add a new brick, with the same appearance of a thin pipe, in a way that you must place two pipes on differents objects with a max distance between them. The fuel would flow between these two bricks.

Or use rotators/hinges/pistons/sliders as ways of transmitting fuel

pinesh commented 2 years ago

"It's fixing a problem that could be changed by altering the 6 way to work like a pipe rather than a tank"

the 6way connector can't be dealt with the same way a normal pipe does.

My guess is: the pipe code considers only two sides for the flowing code and Conservation of mass, It's prbly a Control volume. The pipe has the inlet flow, the outlet flow, and the quantity of fuel inside. This way tsuna can modify the pipe lenght dimension, but he can keep the same code for any type of straight pipe. For a 6way pipe this is different, cuz he would have to change the code to consider flow for 6 sides instead of only two. That's why I think he just reskinned the fuel tank, that prbly already considers inlet and outlet flow from several sources...

IMO the hose has some problems, 1- It's a new thing to develop. A new code, appearance, and so on 2-people will exploit it and use it for everything

The only way I can imagine a hose is to add a new brick, with the same appearance of a thin pipe, in a way that you must place two pipes on differents objects with a max distance between them. The fuel would flow between these two bricks.

Or use rotators/hinges/pistons/sliders as ways of transmitting fuel

it's certainly a new thing to develop, but we're talking about a tube here. much of the actual mechanics are already present in-game in some form or another.

How do you exploit a tube? A hose would still have some sort of cost to it depending on length. Using it for everything would be better. by not relying on determining 3d brick positions for fuel network availability, hoses would be far more efficient.

Adding a brick for the hose repeats the same problem that the current pipes have. Determine link state through contact and location is proving to be unreliable in-game. Building a hose that depends on that would be no better than a pipe.

Using mechanisms to transfer fuel has the potential issues I mentioned earlier.

Uncle-Ulty commented 2 years ago

IMO pipes require physic form. if your pipes are hit, it's game over for you. A hose would be invincible to incoming damage, cuz only the ends would be vulnerable, which I don't like. A Mechanism surface could work the same way a tank does, and, the problem is solved. Connect the base to a pipe and the movable part to another pipe. If the person wants to make crazy shapes, floating entities, ghost entities, and so on, plan ahead or don't put reactors and tanks on those entities.

I think it's an important thing to think about pipes as vulnerable parts of your ship that you must protect! That's why a hose could be used as an exploit way to defend the fuel flow.

pinesh commented 2 years ago

Hoses might very well still be vulnerable to destruction, I'm not sure where you've derived that assumption from. In addition, with current fuel flow (oh god please no). you'd have 20 odd seperate pipes all feeding the same system. Frankly, in cases where being shot in the pipe is a genuine threat, you're just as likely to be shot in the system it's feeding.

How does the 0 length pipe fare here? can it be used to create an invisible layer of armor??

Again, setting mechanisms as tanks creates problems. Should the child entity require more fuel than the surface of the mechanism can output (again, a guarantee in current consumption issue). It's all but useless. It can't handle multiple networks and It wouldn't be able to handle item transfers.

Uncle-Ulty commented 2 years ago

cuz the hose wouldn't be a brick, and the dmg and HP system is totally based on bricks, that's why. This is the reason why I said IF the hose would be implemented, it would be VERY handicapped, for very short distances, just enough to connect two close entities.

the 0 length doesn't add distance and can't be exploited, it would be used to connect two adjacent entities that would be hit first from any angle that you shoot.

and about mechanisms, they already have a mass limit, and I don't see any problem to set a fuel limit. Fuel flow problem? Use a bigger mechanism.

pinesh commented 2 years ago

cuz the hose wouldn't be a brick, and the dmg and HP system is totally based on bricks, that's why. This is the reason why I said IF the hose would be implemented, it would be VERY handicapped, for very short distances, just enough to connect two close entities.

the 0 length doesn't add distance and can't be exploited, it would be used to connect two adjacent entities that would be hit first from any angle that you shot.

having 0-length is arbitrary as it's still a brick, it still has a position in space and unless it had distinct placing restrictions, it can go anywhere no? The damage system has moved away from a brick/voxel system nice neovox. So long as it has some physical representation, I don't see why it can't be shot at, much in the same way that a player can be despite not being a brick.

bigger mechanisms aren't a great solution. in every scenario with the exception of the hinge. you're expecting builders to quadruple the size of their mechanism each time they hit a flow cap that scales across the surface area, not volume, and would thus only double,

Uncle-Ulty commented 2 years ago

-0-length is a way of solving a problem, you don't need to add mass, hp or anything on it, since it's just a way to connect two tanks. Even because it would be a 2D object... that wouldn't make any sense to add mass, hp, or anything.

-a hose would be a visible representation of something that doesn't exist as a brick. Only the two end of the hose would be bricks.

-brick is different from voxel...

-as I said, mechanism problems? plan it better.

pinesh commented 2 years ago

Bricks are different from voxels but again, they aren't the only things that can take damage in Starship Evo.

Again, you're interpreting a hose as a visual entity that doesn't have a receptive physical form which again, doesn't have to be the case. They follow a path, they can have collision points much in the same way that pipes do.

0-length is an empty addition, it represents a stopgap measure to an underlying framework issue. it serves to complicate matters as peach has already said.

As for your mechanism rebuttal; Why is fuel consumption an issue? Just make bigger pipes bro. Just plan it better.

Uncle-Ulty commented 2 years ago

"they follow a path, they can have collision points much in the same way that pipes do."

do you want a curved object that can assume any form and any shape, connecting two points, with collision points and everything? Talk about super complicated and computational performance trouble... I'd ask tsuna if the proposed object is viable.

fuel consumption is one thing, max flow capacity is another totally different thing.

pinesh commented 2 years ago

We abandoned fixed point shapes with no vox. Collisions along a curved object are no worse than that of a normal block if handled competently. They're just arcs.

performance-friendly collision points on a complex pipe are as simple as interpreting the arc as a series of straight pieces, the accuracy is up to tsuna image

The example image involves a shape that unless child entitied-ed, would be infeasible anyway.

Fuel consumption and flow capacity are directly tied together. As the initial pictures in this thread showed, when consumption is high, capacity needs to be high to meet that consumption. And it's why reducing consumption helps with reducing pipe spam.

Uncle-Ulty commented 2 years ago

I'd love to see an object with dynamically created collision points based on the child entity position. Imagine, to connect a hose to an elevator or any mechanism that runs for 100 m. every new tic the object would have a different shape/size, and the game would have to adjust its collisions points, increasing it as needed.

Uncle-Ulty commented 2 years ago

As for your mechanism rebuttal; Why is fuel consumption an issue? Just make bigger pipes bro. Just plan it better.

so your answer for everybody's concern about fuel consumption and autonomy and the 4,2l/s for a car-sized hovercraft is... to plan it better? It seems you have a solution, which I believe everybody here wants to listen.

pinesh commented 2 years ago

Then just don't give it collisions while in motion.

As for visual rendering, that's exactly what the link tool does right now, dynamic curves and all. Give Tsuna some credit here!

pinesh commented 2 years ago

As for your mechanism rebuttal; Why is fuel consumption an issue? Just make bigger pipes bro. Just plan it better.

so your answer for everybody's concern about fuel consumption and autonomy and the 4,2l/s for a car-sized hovercraft is... to plan it better? It seems you have a solution, which I believe everybody here wants to listen.

You've completely misinterpreted that, I had compared your mechanism argument of just plan better to the present fuel struggle to demonstrate the problems with that thinking, I'd appreciate it if you took more care in reading my messages before jumping to attack.

ProPeach commented 2 years ago

This is fascinating, but the debate has gotten pretty cyclic. Let's leave this to Tsuna, who I'm sure has a pretty good handle on the performance weight of the hoses seeing as he's implemented a version of them once before

Regnion commented 2 years ago

Right now, the fuel rate needs to be significantly reduced. Not just cut in half, because even 126 liters / 33 gallons per minute is still utterly ridiculous and completely unacceptable. 0.5 gallons per minute is still too much, but closer to comfortable. That should be where we start, at a minimum.

This is not a Saturn rocket. It's a car-sized hovercraft. It should operate like a car.

piotmetans commented 2 years ago

All this doesn't even take into account the cost to refill that 1-2 minutes of flight time. Talk about inflated fuel prices!

image

tsunamayo commented 2 years ago

Right now, the fuel rate needs to be significantly reduced. Not just cut in half, because even 126 liters / 33 gallons per minute is still utterly ridiculous and completely unacceptable. 0.5 gallons per minute is still too much, but closer to comfortable. That should be where we start, at a minimum.

This is not a Saturn rocket. It's a car-sized hovercraft. It should operate like a car.

Yeah, this is why I said we should do more efficient than a rocket... I am still willing to get my hand on a few blueprints with some piping done. If you worked on some stuff and had trouble because of consumption too large or flow too small, please send it my way...

I havent read all on the hoses, while I would like to get hose back I dont think they are the solution. That would be time consuming to develop, and also visually would be not pleasing in many cases.

@pinesh If there are case where pipe are not working, please send them and the blueprint my way, I will fix it! I cant just ditch a system because there are bugs, otherwise I am good to ditch the game altogether ^^

For the 6 way and tank/tank connections if that is a big deal I will see what I can do... Cheers

ProPeach commented 2 years ago

Here's a bp of the Mistral, I've built the reactor and fuel elements on the outside of the ship for easy access although they do fit inside - Mistral - Fuel Test.zip image

The tanks hold 10,000L of fuel, the Reactors hold 4,000L Reactors consume 70 litres/s, so it only ends up with about 200 seconds of fuel to fly

I think this size of ship with this size of tank should fly for at least 30 minutes on one tank, so that's around a 10 times difference to how it is now. I've asked on Discord for people to post their blueprints too so you can get as varied a pool of test vehicles as possible

Uncle-Ulty commented 2 years ago

To work for about 30 min, Mistral would require this volume of fuel tank

image

image

Uncle-Ulty commented 2 years ago

This container ship runs for 230 s with these 4 pink tanks

image

to work for 30 min, it would require this volume of tanks

image

This shuttle requires this much to work for 30 min

image

ULTYBUS 48.zip