Skip to content
jacksonmj edited this page Dec 11, 2011 · 13 revisions

Some things on this page might wait until TPT++, because they're a bit messy to do in plain C, or would need a massive rewrite anyway

  • Neut/phot flood fill
  • Element specific functions for create, delete, HUD?

Gravity

  • (probably not needed, now there is FFT grav) Force complete recalc after a certain number of difference only calculations?
  • Only memcpy gravx+gravy if changed
  • Only do bilinear_interpolation if changed
  • Pointer swap for putting th_gravmap in th_ogravmap. Also, we don't need to memset th_gravmap - will get completely overwritten by memcpy in main thread

Small tasks

  • Fix H2 reaction with DESL under high pressure
  • Vertical flip?
  • Make electrolysis of watr/sltw easier?

Medium tasks

  • Precalculate single pixel steps for gravity (to make liquids in radial grav run faster)?
  • Fix heat convection in liquids in radial gravity
  • clipboard_pull_text
  • Shared stamp clipboard
  • Infinite stamps
  • Order of elements in menus (configurable? also allow creating more menus with lua?)
  • Update legacy_mode reactions (and make loads of things unmeltable in legacy mode)
  • Fix off-by-one error in fillrect (need to check all boxes are still drawn with the right size/position after fixing)
  • Random number generation - on Linux, rand calls random which locks a mutex and calls random_r. Only about half the cycles are spent actually generating the number.
  • Bounds checking in update functions. All particles within 4px of the edge are killed, but update functions still check whether surrounding coordinates are within bounds.

Big tasks

  • Rationalise number of properties used to describe state - currently have three
  • Translations. Will probably involve unicode support and lots of new characters
  • Configurable keyboard shortcuts (some work done on this already, not currently on github)
  • Element property brush

Hard tasks

  • Particle drawing order - e.g. stickman in water is sometimes hidden
  • Fix edge direction detection (does not work at all angles, photons sometimes erroneously killed)
  • Better fluid dynamics for liquids
  • Thermodynamics in air
  • Air vorticity

Stickman

  • Draw head rotated in radial grav
  • Temperature transfer between feet and head
  • More homeostasis? Currently just warms up head
  • Head currently behaves as a gas (walls)

Misc

  • Stickman undo bug
Clone this wiki locally