Changes since version 1:

From build 100:
CRAY wall checking fix (potential crash?)
Autoexpand stamp when particles are translated out of boundaries (arrow keys)
Translate wall grids when shifting stamps by more than 4 pixels

From build 99:
Fix buffer overflow in luasocket library
Fix illuminati symbols appearing when rescanning stamps
Remove 'r' record shortcut
Add tpt.record function
Recordings now go into recordings//, where timestamp is the time the recording was started. is returned by the tpt.record function. Each new recording starts the filenames over at 0 again.
Now uses luajit, which gives a 10-40% speed boost when running lua scripts.
Fix issue with molten STKM that could break the simulation and cause crashes
Change version number to 92.5

From build 98:
Fix crash with BOMB explosion
Add sim.takeSnapshot lua function

From build 97:
Use official DNS again
Fix undoing while unpaused setting .life incorrectly, breaking some saves

From build 96:
Change version number to 92.1
Use ip address instead of DNS temporarily

From build 95:
Fix newtonian gravity state transitions flashing

From build 94:
Fix pressure in HUD
'enter' closes SaveIDMessage interface after uploading a save

From build 93:
Ensure air doesn't "leak" out of TTAN containers when loading stamps and saves
Hold shift when saving or loading stamps to not save / load pressure

From build 92:
Fix lack of circle EMBR in BOMB explosion
Fix RFRG description typo (use more common spelling)
Hide .tmp in HUD for RFRG and RFGL

From build 91:
Remove useless debug print in !set
Authors fixes: fix duplication on loading/saving local saves that can cause saves to be slow to open
Attempt to fix crash when zooming in on signs
Fix ctrl+f shortcut not working with particle debugging enabled

From build 90:
Turned off HSWC acts as insulator for HEAC
Fix FIGH spawning glitch: id:2165807
Fix -nan RFRG glitch

From build 89:
Change version number to 92.0
Ctrl+a shortcut is now moderator only
Ensure DMG turns WOOD to SAWD
Fix HEAC conducting to HSWC which is turned off
"Failed to x" messages in save browser are no longer arbitrarily yellow

From build 88:
Undo authors changes on ctrl+z, prevent excessive nesting, other authors fixes
Add new PhotonReflectWavelengths property, add reflection color for POLO
sim.signs.delete() api function
tpt.parts: only prevent writing to dead particles, not reading

From build 87:
Fix tpt.parts issue that could read/write values from dead particles
Fix typo in PLUT description
POLO can now be made from PROT acceleration reaction
Source code refactoring: #include dependencies

From build 86:
Add logging inside saves which remembers which other saves material was taken from
Temporary ctrl+a shortcut for debugging this feature
Fix crash when attempting to save certain invalid signs

From build 85:
{aheat} signs now in Celcius
BCOL + NEUT -> SAWD (matches existing COAL + NEUT reaction)
Differentiate between created date / updated date in save preview
Workaround for incorrect 404 save

From build 84:
Add PROP_LIFE_DEC back to GLOW, fixes GLOW+PHOT reaction

From build 83:
Fix POLO not bring marked as a powder
Fix deco colors being 1 R/G/B value less than they should be
Fixes to palette in saves (ensures lua elements get the proper ID based on identifier)
CRAY can create FILT with .tmp already set
GAS+CAUS+pressure = RFRG
Move HEAC to solids menu

From build 82:
Make sure STKM / other particle graphics aren't drawn over the menus
HEAC now checks for insulators

From build 81:
Remove PROP_LIFE_DEC from some elements that don't need it
HEAC is now meltable via LIGH
Fix HEAC being dissolved by ACID
Fix BOMB explosions being able to delete energy particles
Minor VIBR heat releasing fix
RFRG+NEUT = GAS/CAUS

From build 80:
Add warning messages when certain words are found in comments ("stolen", asking for votes, swearing)
Add error message when attempting to login using an email address
Sign justification is now called pointer alignment, new sign icons

From build 79:
Rename E180 to HEAC (Rapid heat conductor)
HEAC now also conducts heat to photons
Rename E181 to SAWD (sawdust)
SAWD is created by high velocity particles hitting WOOD
Rename E182 to POLO (Polonium)
Add new POLO+PROT->PLUT reaction, POLO now melts at 253.8C
Make Mrprocom's name blue in comments

From build 78:
Proper ctrl+backspace support (doesn't delete entire textbox)
Fix QRTZ killing life=0 PHOT
Add sim.TOOL_MIX to Lua API
Fix PHOT/PLSM not following the correct heat scale in heat view

From build 77:
Fix ambient heat being reset when creating saves

From build 76:
Save ambient heat in saves
CRAY(LIGH) defaults to LIGH with .life 30
Fix high hexadecimal numbers working when setting type with PROP tool (can cause crashes)
Misc code cleanup

From build 75:
C5 shows PHOT colors in debug HUD
Pressure and air velocity are now saved in saves
Redo RFGL and RFRG to be simpler and more realistic
New element: LSNS (life sensor)

From build 74:
Make FRAY and INVS customizable via .tmp

From build 73:
Fix photon refraction on windows
Fix some piston bugs that could cause it to not push as far as it can
Add optional sizeX, sizeY, brushID arguments to sim.brush
Fix cache value from lua graphics function being ignored

From build 72:
Changes by Skylark:
Double the preciseness of photon refracting
CRMC now slightly scatters photons when reflecting
BGLA now scatters photons
PQRT scatters photons like QRTZ does
C5 frequency doubling, id:2087410
Make GRAV prettier

From build 71:
Fix favorites being able to be added multiple times
Fix debug portal lines to the highest ID particle not working

From build 70:
Fix subframe WIFI cooldown issue

From build 69:
Fix typo, Gasses -> Gases
Change README to markdown
Fix a few potential memory leaks
Take history snapshot before loading save
Fix downvote button not being reset when opening a local save

From build 68:
Fix issue with air sim that could cause massive lag after leaving TPT idle for 20 minutes

From build 67:
Fix crash when doing Textbox.new()
Fix ctrl+z crash if there was no undo history
Move UndoHistoryLimit preference location, update default to 5

From build 66:
Reduce ctrl+z memory usage
Add ctrl+shift+z as alternative shortcut for ctrl+y
Fix two blank undo states always being created at startup

From build 65:
Fix false positive virus detection in Avast

From build 64:
Add multiple undo and redo support - edit powder.pref to control the amount of undos (default: 1)

From build 63:
Fix issue where non-scrollable menus are stuck "scrolled"
Fix particle debugging issue with particle #0
Add sim.brush lua function, an iterator which returns a list of brush locations
Add two new FILT modes, red/blue shift based only on ctype

From build 62:
Fix icon
Support windows XP again, probably

From build 61:
Now compiled with the Microsoft Visual Studio Compiler (MSVC)
This should improve FPS by a noticeable amount (10-20%), and decrease the size by 40%

From build 60:
Disable STKM controls when pasting saves

From build 59:
Fix potential crash when SPRK with no ctype is killed by PROT

From build 58:
Fix crash with really high speed photons
Fix particle debug when unpaused
Some internal loop edge mode fixes
Fix bug with conservation of energy in RFGL

From build 57:
Fix floating point celcius in console: !set temp all 0.8C
CRAY copies own .life to the particles it creates
New elements by cxi: RFRG and RFGL. Some kind of refrigerant, see id:2038399 for an example

From build 56:
Prevent exit() in save data parsing library with certain invalid saves
Fix typo in BRMT's description
Fix unpausing while in the middle of particle debugging
Enable Simon's new test element: E182 (some kind of nuclear fuel)

From build 55:
Two experimental elements by Simon - one which conducts heat rapidly, and another which floats on top of water
Allow snapshots to continue to publish saves as long as they don't use new elements/features

From build 54:
Prevent diffusion of stored water between GEL and SPNG if no water is stored
Fix PIPE with STKM being invisible
Allow changing WHOL strengh with .tmp (like BHOL)
Fix not being able to undo stamp placement
Saves using RPEL with ctype require 91.4 and saves using WHOL tmp require 91.5
Minor text fixes
Change version number to 91.5 build 330

From build 53:
Fix crash when using custom lua elements and the favorites menu at the same time
Allow favoriting elements from the search UI
Hidden elements now show up in the favorites menu
Heart icon now shows on selected favorited elements
I compiled this snapshot two days ago but forgot to release it. Releasing it now, although 91.5 is out and I will do snapshot 54 in a few moments

From build 52:
RPEL's ctype sets the element it repels
Another fix for lua key events
MIX won't mix together elements with different states now
Add help text to favorite's menu tooltip when the list is empty
Allow using C/F for temperature in PROP tool
Fix LIFE tool sampling
Change version number to 91.4 build 329

From build 51:
New favorites menu icons

From build 50:
Limit MERC to valid .tmp range
Extra sanity check in STKM (could fix crash under extreme gravity)

From build 49:
Fix double screen dialog fail

From build 48:
Fix blank screen when hitting "Cancel" on double screen dialog
Minor performance increase
Make MIX tool work with liquids and gasses too

From build 47:
Less scary report message
Fix not being able to turn off FIND tool when a life element is selected
New Lua functions: tpt.num_menus and tpt.menu_enabled (allows hiding menusections)
Changes to allow mods to support the starcatcher build & update server (PM jacob1 for details)

From build 46:
Don't reset edge mode when saving local saves

From build 45:
Add favorites menu, by Me4502 (ctrl+shift+left/right click to add/remove)

From build 44:
Remove debugging thing that broke left ctrl

From build 43:
Fix first argument to lua keydown events when holding ctrl

From build 42:
Force a stacking check when undoing
Fix gravity field appearing after ctrl+z even if gravity is off
Update a few element descriptions

From build 41:
Update .life properly when using particle debug shortcuts
Change setting description, "3d glasses" -> "3D anaglyph"
Download now packaged with readme.txt and license.txt!

From build 40:
Fix 'n' toggle also resetting air
Fix first argument to keyup lua events
Fix ctrl/shift strength modifiers for MIX tool

From build 39:
Add MIX tool by Simon, mixes powders around, for landscapes

From build 38:
Add red/cyan 3D setting in options
THDR is no longer an energy particle
Some fixes to how edge mode / double scale mode are saved to powder.pref

From build 37:
Rewrite threading / http requests in save preview, should fix random crashes
Compile with -O3 again to fix false positive in AVG

From build 36:
Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience

From build 35:
Fix progress bar disappearing on hover in local save browser
Loop edge mode: allow particles to have velocities greater than the size of the screen
Stickman now has terminal velocity in loop edge mode
Fix PBCN(LIGH)
Don't remder AMTR as a gas

From build 33:
Compiled with -O2 instead of -O3

From build 32:
Remove beta flag, these snapshots will now match current tpt development while allowing you to upload saves

From build 31:
Prevent errors being printed to stderr when opening saves
New debug mode: tpt.setdebug(0x8). Enables subframe particle debugging. Alt+f will advance simulation by one particle, Shift+f will advance it to the particle under the mouse.

From build 30:
Change the first argument passed to lua keypress function, so that scripts can properly support alternate keyboard layouts
On first run, show a prompt when it automatically selects double screen size

From build 28:
Replace cajun (library used to parse json) with jsoncpp (a better library)
Note: some settings (render modes, deco color, window position) will be reset

From build 25:
Make jacobot / boxmein have blue nicks in save comments

From build 24:
Fix LIGH not defaulting to life of 30 with clones / console (separate t and v argument in create_part)

From build 23:
Fix FIRE still being able to go through powder wall (+ some other elements)
Prevent *all* Newtonian Gravity sources when inside a grav wall zone (lua + gravity tools)
Add ctrl+f shortcut to easily locate elements
Fix selected deco color being reset to 0x00000000 when loading a lua element

From build 22:
Change CRMC creation reaction from BREL + LAVA(CLST) to LAVA(QRTZ) + LAVA(CLST)

From build 21:
Newtonian Gravity sources inside of a no gravity grav wall zone no longer generate gravity
PHOT going through turned off GPMP turns into GRVT (GRVT .tmp depends on the GPMP temp)

From build 20:
Fix NTCT / PTCT / INWR triggering EMP blasts ...

From build 19:
Fix being unable to set floating point values in element.property (broke scripts)
Fix STKM being unable to pick up most energy particles, or LOLZ/LOVE (broken in previous snapshot)
Redo EMP triggering to fix all lag when multiple EMP go off at once
Reduce ETRD lag (prevents most ETRD lag bombs)
Make sure ETRD can't conduct to particles before their .life cooldown period runs out

From build 18:
Ctrl+a support in labels
Change AMTR and MORT to TYPE_GAS, and THDR to TYPE_ENERGY
Use .Properties instead of .Falldown to determine if an element can move through walls
Revert FIRE, SMKE, and CO2 to a a .Falldown of 1, to fix movement in some saves
Remove all usage of .State
Make sure old lua scripts that still set .State still work properly

From build 17:
Fix crash when doing simulation = nil in console
Fix 'large screen' description
Overwriting a local save updates the reload button save now
Add "Saved Successfully" message when overwriting a local save

From build 16:
Readd "Unspecified Error" (removing it didn't help)

From build 15:
Fix flood fill delete on normal particles also deleting photons
Change shift+wind tool to not always act like alt was pressed
Remove "Unspecified Error"

From build 14:
Completely new build server
Now compiled with SSE2 (if you get a crash on startup, delete powder.pref and report it)
Fix a potential crash when messing with SOAP in the console

From build 13:
don't add extra newlines when downloading scripts via tpt.getscript
Only show wavelengths in HUD if there is at least one valid wavelength

From build 12:
Fix compatibility with stacked PSTN in older saves
Add LCRY, BUBW, TSNS, DTEC, and PSTN to .tmp2 HUD list

From build 11:
.tmp2 shows in the HUD for elements which use it

From build 10:
Fix really fast particles moving through EHOLE

From build 9:
Fix DLAY and CRAY with .tmp or .tmp2 set not loading correctly

From build 8:
Fix 'Prev' button placement (off by 1 pixel)
Fix liquids moving through walls with streamlines under them
CONV tmp value can now be used to set an element to be converted, no other elements will be(will break saves saved in previous snapshots with CONV(LIFE))
Warning here that since these are snapshots, saves you make in them may not load currectly in future versions

From build 7:
Fix json library failing to parse some json with invalid save titles
Fix edge mode not loading properly in saves
Fix options menu to show the edge mode the current save uses instead of the global one
Everything in snapshot 6:
New sim.gspeed function to set GoL speed
Fix empty save searches returning "Unspecified Error"
Show cursor when drawing even if mouse is out of bounds
Fix wall brush displaying incorrectly when drawing ctrl-boxes
Update last active tool & ctrl/shift state on mouse down
Reupload -> Re-upload

From build 5:
Fix DEUT absorption rate (broken in last snapshot)
More cracker64 efficiency improvements to FWRK, GLAS, PUMP, SING, URAN, and TTAN

From build 4:
Add minimumVersion flag to saves which has the minimum version a save is openable with
Show error message when opening corrupted stamps
cracker64 did a bunch of minor efficiency improvements to these elements: ARAY, BIZR, BOYL, BREC, CBNW, CLST =(, COAL, CRMC, DCEL, DEUT, EMP, QRTZ, SOAP

From build 3:
No longer error when opening saves from a newer version
No longer allow opening corrupted saves and voting on them
Adding a comment updates the total number of pages
Prevent element buttons from glitching out when names are longer than 7 characters
Support longer changelogs

From build 2:
Fix DRAY not working if the first space was empty
Improve / Fix DRAY .ctype
Fix creating WIND from Lua, fix crash with sim.floodWalls(1,1,4,0)

From build 1:
Initial version