Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Mega Bugs] Temperature/Gas Bugs #240

Open
7 tasks
BraedonWooding opened this issue Feb 25, 2019 · 6 comments
Open
7 tasks

[Mega Bugs] Temperature/Gas Bugs #240

BraedonWooding opened this issue Feb 25, 2019 · 6 comments
Labels

Comments

@BraedonWooding
Copy link
Member

BraedonWooding commented Feb 25, 2019

There are a lot of bugs to do with temperature and gases and other systems related to just temperature movement, I want to document them here before I go around changing things since they are all connected it is hard to fix them in isolation and see a change.

  • The default save file (for map generation) hard codes (and actually increases in the case of walls) the thermal diffusivity of walls, air pumps and the heat generation for RTGs (this only affects the initial walls any new ones use the real values). Fixes to default save area #241
  • The default save file (for map generation) uses air pumps when it meant to use vents (air pumps are just one way) Fixes to default save area #241
  • The code to calculate thermal diffusivity between two rooms is way too complicated, it is a complicated concept and hard not to double up but still is way too complicated
  • Thermal diffusivity between rooms isn't calculated well if the rooms are east/west only if they are north/south
  • Thermal diffusivity between walls is sometimes much higher than it should be
  • The map can be rebuilt way too often per frame (impacting performance slightly)
  • The furniture.lua file uses != for neq comparisons rather than ~= which is incorrect. Fixed neq comparisons (!= to ~=) in Furniture.lua #242

I'm going to start by fixing some of the smaller things on the list (each item will get a single PR though I'll group the save file ones) but since they are all related it makes sense to put them in a single issue.

@koosemose
Copy link
Contributor

Default save file used air pumps when it meant to use air pumps. Vents just even out pressure and gasses, while pumps actually pump it from one room to another.

@BraedonWooding
Copy link
Member Author

but don’t we want the gas equalised? Otherwise the middle top and middle bottom end up with no gas? It all gets pumped into the right top/right bottom rooms

@koosemose
Copy link
Contributor

koosemose commented Feb 25, 2019

the actual bug is that the rooms aren't set as Airlocks, so the airpumps aren't controlled as they should be.

edit: and also that apparently roombehaviors aren't assignable anymore...

@BraedonWooding
Copy link
Member Author

Airpumps always pump from one to another though, that is how the lua is coded.

How should they be controlled?

@koosemose
Copy link
Contributor

They should be controlled by the room behavior. And also note that they can also be manually toggled (not that that makes a huge difference here.

As soon as I sort out the room behaviors not being assignable, I'll give you a bit of json to add in the appropriate section that will get that part functional and get those rooms working as intended

@koosemose
Copy link
Contributor

Replace

  "RoomBehaviors": []

with

  "RoomBehaviors": [
    {
      "Room": 2,
      "Behavior": "airlock"
    },
    {
      "Room": 4,
      "Behavior": "airlock"
    }
  ],

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants