tsunamayo / Starship-EVO

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

[suggestion] Heat system overhaul #2995

Open AlienXtream opened 4 years ago

AlienXtream commented 4 years ago

i propose one simple change that would spur a whole range of other immersive features. overheating does not stop things. rather the thing that is overheating can cause a fire (either on the block itself or nearby). fire would require an atmosphere (when its implemented) and would not only damage players and NPCs like crew or even pets if that becomes a feature but the ships tiles themselves. if a fire CANT start (totally encased reactor with no valid nearby places for a fire or when there is not atmosphere. again, once implemented) it will keep heating up the part and damaging it until it fails.

additional things to accompany this:

CaptainKronos commented 4 years ago

Going off of that, weapons that deal damage in heating a ship up should start to "melt" the ship once it exceeds 100% heat. Now when I say melt, I simply mean in addition to dealing some of their own hull damage, the heat damage dealt should just be converted into hull damage entirely as it would destroy blocks. Like what was said above, if a fire can't start, heat builds up damaging the part until it fails.

Hecateus commented 4 years ago

Seconded on Hull fires. Many things are abstracted into Hull Blocks&Bricks, including environmental connections, notably pressure. So these are not simply metal chunks.
I have added heat related suggestions. Including Cryogenic tanks, which supply coolant throughout the hull allowing heat transfer, no coolant, no heat transfer. I had suggested that these could be used to emergency flush heat away. Your comment suggests that CryoCoolant could be used to put out fires, if heat gets out of hand. I like this.

separately, the other heat management things I suggested are:

Molten Salt Tanks...which are hot and increase base hull heat levels, and require power, but prevent heat spikes from reactors, engines, and certain weapons as they are the opposite to Power Capacitors. ...very dangerous if punctured though.

Heat Emissive bricks or paint. aka Radiators IRL. Easily damaged, but removes heat from hull as long as CryoCoolant is available.

tsunamayo commented 4 years ago

Is your suggestion based on wanting those features? Yes for sure I would want to add fire at one point, but I would need Air Tightness and crew first. I might make heat non lethal, but that would be decision based on gameplay feedback (ie heat is being too punitive...) Cheers

ZachZent commented 4 years ago

I think this may be jumping the gun so ill put in my two cents.

Fire: Yes please, systems overloading and a flamethrower weapon would be great in game. Perhaps a ship weapon that melts armor, but is very short range. This would be a powerful weapon for fighters who can get in close, but less so for larger ships. That being said implementing them, especially hull fires, is way too early. Still need some sort of life support, pressurization or pseudo-pressurization (different convo), shipboard activity, etc. Something to add to the idea book, but not for quite awhile. giphy

Coolant: As a trade item or some basic process in factory building and gameplay sure, but past that I feel it goes past the point of acceptable complexity. When flying, I don't want to have to worry about a realistic balancing act of heat and power. How we have it now, you have power and is distributed to the ship, doesn't need to be more complex. I don't want to worry about constantly needing to refilling many tanks and vats. Besides adding something that changes the cooling which isn't build related is something I don't want - see below

Radiator: I am not a fan of blocks which shortcut a building process. I like that people build extensions to surface area as a physical radiator. Adding a radiator block just gives a quick shortcut and would be another unnecessary thing to balance. Heat define by design

AlienXtream commented 4 years ago

@tsunamayo this idea is for sure something for down the pipeline. i was in a HUGE rush when writing it cos i had to head out so i did not really get a chance to elaborate.

my idea was more about making the effects of heat tangible rather than some arbitrary number you have to contend with. reducing the limitation of it but also making ignoring it all together a big risk. nothing overly punishing like your ship becoming a fireball and getting destroyed but more along the lines of functional things become inoperable till repaired. "heat" itself would not damage players or NPCs for sake of gameplay but fire entities themselves would.

additionally i was going to suggest a couple more things but as i said i was in a rush. the biggest would be a new cooling method. active cooling. this would basically amount to being able to put a consumable coolant into things to reduce their base heat generation by some amount (automatable with logistics when that eventually happens). it would be easy enough to get to make it viable but wouldn't really be practical for early game as it would be somewhat expensive and would really be geared towards weapon cooling (bonus cooling effect on child grid turrets) and end game power generation like fusion reactors (think mini star. not tokumack style. thats my personal design preference at least, you can do something else if you add fusion :P). passive cooling would more a less be as it is now with a few changes to make it more important. first of all heat would dissipate and increase slower but not outright prevent things operating (unless the player sets up their own cut off via the "ship heat sensor" or a "fire sensor"). so for instance a ship whose thrusters are overheating the thrusters would still work BUT if they stay too hot for too long they start taking "system damage" (a new form of damage that does not damage blocks structurally but makes them perform worse and worse until they cant work at all). in the case of thrusters this be visually represented a "sputtering" effect and them flickering out. i think that this would also enable some really nice cinematic moments where a big ship uses heat based weapons (lasers, napalm, whatever) to overheat a small ships engines and it having to limp away to some station or planet to make repairs.

another source of heat would be "reentry" into planetary atmospheres. now, i know this is going to be a but if a debated concept and its not directly relevant to this but planets would basically have "atmospheric pressure" this would be nothing like real pressure though. basically a planet would have an "air pressure" statistic that players can view on scanners or whatever. this value would basically just be a "max speed" (after some math to make it seem more like a reasonable air pressure. i.e the speed of sound at 1 atmo on earth being the baseline, 1.1 atmo would have a slower max speed. dont know how the math works out but im sure there are equations to work out the speed of sound for any given density which can then be converted to atmospheric pressure or something) that things can go when in atmo and larger planets would have "denser" atmospheres (lower max speed). going faster would cause some reentry effect and heating up. a slight variation of this system could be used for gas giants where the deeper in you go (proportionate to the distance from the "surface" of the core) the higher the "pressure". go too deep and your ship and you start to get "crushed".

another advantage of making heat work this way would be that you could make things like generators, engines and weapons have variable levels. so, i could hook my my thrusters up to a slider and sequencer (which should really be called something else) to set the min-max levels of the analogue output to something greater than %100 and the thrusters would (try) to run at that "overclocked" level. the catch is that the thrust gain would be linear but the heat generated would be exponential. so at %200 thrust the heat gen would be more like %500. too high and the engines would just explode instantly.

basically i dont think heat should be a limiting factor but a calculated risk to ignore. plenty of tools and methods to manage it but you can make a ship that ignores it all together if you want. this would also help with missiles and "kamikaze" fighters as you don't really care if it gets a bit too hot, it's going to blow up anyway :P

Hecateus commented 4 years ago

@ZachZent The intent of a radiator block is not to hide surface area heat emission, but to enhance it at the cost of being more vulnerable. RL radiators need surface area to work. I think what you are imagining are Heat Sinks, which would still need to be hooked to a radiator; heatsinks designed for atmospheres usually incorporate a convection heat dissipation system. I was assuming Hull already incorporated heat sinks into their abstraction...and suggested CryoCoolant as a means to game emergency cooling (and a gameloop resource consideration), and part of heat dissipation system via external Radiators. Is it too much for a game? maybe

tsunamayo commented 4 years ago

Yeah a lot of cool idea of here, but they will be for later depending on gameplay feedback. Also yes I would want heat during planetary entry, but also close the stars ect. Cheers