Official Game Feedback

  • jacob1
    17th Feb 2019 Developer 19 Permalink
    New thread, because even moderators are affected by post size limits.

    This thread is for posting bugs, issues in the game, or any other minor improvements you would like to report. Do not post suggestions for new elements or features here, those should go in the feedback forum.

    You might also consider reporting bugs on github, so that they don't get lost.

    For more complete changelogs, see the snapshot changelogs or the Github commit history

    Current Release Version: 96.1

    96.1 (Build 349) 2021-07-18
    • Make LITH->GLAS reaction easier
    • LITH explodes when overcharged
    • Improve graphics when LITH is charged
    • Show GLOW and LITH ctype as number
    • Don't show ctype for elements which use it as data storage (such as PHOT or PRTI)
    • Don't let GLOW ctype go negative
    • Disallow CGOL with duplicate rulestrings or names > 7 chars
    • Disallow GOL rulesets with no B states
    • Make Lua prints fade out better
    • Fix GOL showing up where it shouldn't
    • Fix "B12345678/S012345678/17" appearing in HUD for ctype 78
    • Preserve GoL deco in older saves
    • Deco on builtin GoL no longer renders when decorations are off
    • Fix find mode not always succeeding in darkening particles
    • Fix custom brush loading
    • Fix elem.allocate corrupting LuaScriptInterface and causing crashes when running out of IDs
    • Fix element identifiers for newly allocated elements not being immediately valid
    • Win32: Fix certain Lua APIs mangling integers
    • Linux: support Ubuntu 18.04 and other distros with glibc 2.27
    • Default drawfrequency to 0, because of frame drop issues

    96.0 (Build 348) 2021-07-10
    • ROCK can form under pressure from plain LAVA, not just molten STNE
    • LITH's burn timer when exploding from water is now longer
    • LITH's .tmp2 now shows in HUD

    Beta 96.0 (Build 347) 2021-07-04
    • Fix local saves and data migration process not working on Windows
    • Make ROCK more resistant to DEST (similar to CNCT)
    • Adjust LITH's color

    Beta 96.0 (Build 346) 2021-07-03
    • New element: SLCN (silicon). Sparkles, conducts electricity like GOLD, and has many reactions while in molten form
    • New element: PTNM (platinum). A catalyst in many reactions
    • New element: ROCK (rock, a solid). Melts into a lot of different materials at higher pressures, and is eroded by WATR
    • New element: LITH (lithium). Reactive element that explodes on contact with water
    • New element: VSNS (velocity sensor). Similar to LSNS
    • Add CUST (custom game of life). Custom GoL types can now be created with any rulestring and colors
    • Add reaction to produce BCOL: WOOD at high temperature and low pressure
    • Add Latin-1, Latin Extended-A, Cyrillic, and Hangul characters to the font. Add Composition support
    • Non-ascii characters will be deleted by the website inside comments, save titles, and signs; and replaced with question marks in save descriptions. This will be fixed on the website in a future release.
    • By default, all data and settings are now stored in an OS-specific user data directory. This is "%APPDATA%/The Powder Toy" on Windows and "~/.local/share/The Powder Toy" on Linux
    • Add button in options menu to migrate data to the shared directory
    • Windows: Add shortcut to start menu when installing. Press ctrl+i to reinstall TPT and add the shortcut
    • 64-bit Windows builds are now available, users on 32-bit Windows will still remain on the 32-bit version unless tpt is manually redownloaded from the website
    • 32-bit Linux builds were dropped. If you still need this, you can compile from source
    • Ctrl+u shortcut resets ambient heat
    • Ctrl+a shortcut to select/deselect all saves in save browser
    • Save ambient air temperature and make it configurable in options menu
    • Add ren.showBrush Lua api to hide the brush
    • Add Lua functions to interact with composition: interface.grabTextInput, interface.dropTextInput, interface.textInputRect. Also, new "textediting" event
    • Redo and add type parameter to sim.neighbors
    • Make GLOW element glow under pressure
    • BRAY .life can be customized when firing from ARAY by setting ARAY's .life
    • Remove .life delay feature of ARAY/DRAY as this was historically not possible to use
    • SPRK / METL no longer deleted when inside detector wall, and solid elements can no longer be drawn on detector wall
    • Stasis walls now keep dying GOL cells in stasis
    • LSNS and HSWC can now interact with energy particles
    • Show NONE in {ctype} signs instead of 0 when an element has no ctype
    • Take undo snapshot when using ctrl+x
    • Improve stack pasting behavior
    • Prioritize favorited elements in element search
    • Remove gaps between lines of selected text in multiline textboxes
    • Make username case-insensitive when logging in
    • Replace luasocket with a new socket API backed by libcurl
    • Rewrite tpt.set_wallmap, it can now set FAN wall velocity
    • Return version (aka history index) from sim.getSaveID
    • Make sim.clearSim clear active save information too
    • Return a reason for failure from sim.loadStamp
    • When framerate is uncapped or higher than your monitor's refresh rate, frame drawing will now be skipped. This can be controlled via tpt.setdrawcap
    • Write powder.pref immediately every time a setting is changed
    • Move IRC channel from to in the intro text
    • Fix LSNS being unable to deserialize in all directions at once
    • Fix single-pixel PIPE / PPIP breaking on rotation
    • Fix QRTZ/GLAS/TUNG breaking on load (again), for cases when pressure is negative
    • Fix air being able to go through walls for a frame after undoing
    • Fix GoL sometimes not working for a short time after undo
    • Fix infinite spark loops in photoelectric effect
    • Fix line tool deletion bug when WIND is selected (id:2554353)
    • Fix a bug which caused a line of particles to sometimes be drawn between the cursor and the top left corner at startup
    • Fix typo in "change resolution" option description
    • Fix text glitch in console when writing multiple spaces in a row
    • Fix many crashes triggerable by Lua API functions
    • Lua: Make custom can_move settings persistent
    • Fix 612 SSL errors experienced by some Windows users when using online features
    • Fix icons in Windows Explorer on .cps and .stm files (requires reinstall)

    Version 95.0 (Build 345) 2020-02-26
    • Fix https requests on MacOS
    • Add "Perfect Circle Brush" option (on by default) to allow using the old circle brush
    • Fix replace mode simply changing type, instead of resetting properties back to default as intended
    • Fix crash when failing to remove tag
    • Fix crash when overwriting existing local saves
    • Fix fighters sometimes loading from saves with no element
    • Fix bug where deco renders on EMBR in save thumbnails
    • Fix text prompt interface (rarely used, only for some Lua scripts)
    • Restrict saved version to 95.0 if 95.0 features are present - signs with macros, LSNS .with .tmp

    Beta 95.0 (Build 344) 2020-01-28
    • All web traffic to the TPT server now uses https. This prevents others from intercepting or modifying network traffic
    • Thumbnails (both local and online) now load significantly faster
    • Fix stamp and local save thumbnails being stretched
    • Use current render mode when rendering stamps
    • Circle brush now has smooth edges
    • Keep brush radius consistent between shapes
    • Add .life serialization support to lsns
    • Make water equalization fill in areas slightly more naturally
    • Fix potential stack overflow with water when water eqalization is enabled
    • PIPE with lava now shows in HUD as "PIPE with molten [ctype]"
    • Add new sign types: {type}, {ctype}, {life}, {tmp}, {tmp2}
    • Search signs now drawn in purple instead of blue
    • Forum thread signs now drawn in red instead of blue
    • Smudge tool is now smudgier
    • Options for controller color space of smudge tool in simulation settings
    • Add option to change menu selection from hovering to click
    • Add option to control whether pressure is included in saves and stamps
    • Fix replace mode not affecting energy particles
    • Fix replace mode not working with Lua elements
    • Fix pressure / ambient heat being saved as 0 instead of not at all when holding shift
    • Fix GLAS, TUNG and QRTZ breaking on load when saved at high pressures
    • Fix STK2 rocket boots not saving in saves
    • Increase local browser UI size
    • Remember unsubmitted commands in console even after scrolling through history
    • Element search ui can now search by description
    • "Rescan Stamps" now sorts stamps by time created
    • Add Lua api to handle default element properties
    • Add Lua apis to recieve callbacks on element creation or deletion, and on ctype draw
    • Add Lua api to control zoom windows: ren.zoomEnabled, ren.zoomWindow, ren.zoomScope
    • Add Lua api to make https requests
    • Add various Lua constants to sim. for handling state transitions
    • Add sim.CELL Lua constant
    • Fix tpt.eltransition
    • Fix unsigned integer properties being returned as signed integers from certain Lua functions
    • Add NewtonianGravity property to elements, controls how strongly newtonian gravity affects the element
    • Allow unicode in element names (useful for Lua scripts)
    • Add file drop handler, you can now drop .cps and .stm files onto the window
    • Fix saving/loading window position on 2nd monitor
    • Guess best window scale on startup at first run instead of offering only double scale mode
    • Add disable-network command line argument
    • Add command line option "redirect" to redirect output to stdout.txt / stderr.txt
    • Fix an issue where one character in words that wrapped over two lines disappeared
    • Fix "Error loading save" stamps appearing when using tptmp
    • Fix some memory leaks
    • Major refactors to many components, including thumbnail rendering, multithreaded task handling, http requests (libcurl), Lua api handling, element creation and event handling, and the structure of c++ element files (:crab: is gone! :crab:). Special thanks to LBPHacker for contributing many of these things.

    Version 94.1 (Build 343) 2019-02-20
    • Add "Force Integer Scaling" option for fullscreen. This makes "Change Resolution" mode work as intended, and also forces normal fullscreen to an integer scale (black borders will be placed around the edges)
    • Recreate the window when enabling resizable window (Fixes some issues on Windows)
    • Recreate the window when toggling fullscreen, to work around some bugs where the window is sized incorrectly or the mouse position doesn't match where the cursor is
    • Fix issues when disabling resizable window while window is maximized
    • Keyboard shortcuts are now based on en-US layout again, regardless of actual layout. This fixes things like 'y' and 'z' being reversed on QWERTZ lauouts, and fixes non-letter shortcuts on many other layouts
    • Fix stasis wall not affecting GoL elements

    Version 94.0 (Build 342) 2019-02-17
    • Fix issues sampling GoL elements
    • Fix FIND tool finding all GoL types instead of just the one you had selected
    • Fix uncaught exception in console when trying to parse invalid numbers

    Version 94.0 Beta (Build 341) 2019-02-10
    • Add Stasis wall (by moonheart08), elements inside don't move / update until powered. Stasis wall must be powered via another powered wall
    • New element: LDTC (Linear detector), by mark2222 and moonheart08
    • Add unicode support. latin-1 and Cyrillic characters will be added later
    • Upgrade to SDL2. This changes all the keyboard, mouse, and video handling. It also greatly improves fps in double scale mode.
    • Add "resizable window" option and alternate fullscreen mode. These may appear odd because a pixelated game isn't meant to be stretched
    • New event api for Lua scripts. Replaces tpt.register_ functions. A temporary compatibility layer is provided
    • Add inverted mode for TSNS and PSNS with .tmp = 2
    • Make cyclone tool faster
    • Use faster random number generator
    • FPS updates less often in the HUD
    • Change time format for old dates to include day of the month
    • Rewrite rules to be be clearer and more comprehensive
    • Fix single pixel pipe
    • Fix single-particle PSTN bug
    • Fix memory leaks when saving stamps (fixes "bad allocation" crash)
    • Fix gravity sometimes persisting a frame after undoing or clearing the sim
    • Fix sim.brush using diameter instead of radius
    • Mac version updator will now open the website to download the new version from a browser

    Previous feedback threads:
    Version 91.0 - Version 93.3
    Version 88.0 - Version 90.2
    Version 83.7 (first tpt++ release) - Version 87.2
    Version 78.1 - Version 83.0 (tpt), Version 82.0 (tpt++ beta) - Version 83.7 (tpt++ beta)
    Version 53.1 - Version 77.0 (incomplete changelogs)
    Edited 22 times by jacob1. Last: 18th July
  • coryman
    17th Feb 2019 Member 3 Permalink

    I know it's not a new bug, but it's definitely become more common since the update- around half of the saves sorted by date don't have a thumbnail until I click on them. Most of the saves seem to have the new wall or the new sensor, but some don't have either, so it might pipes too

  • jacob1
    17th Feb 2019 Developer 4 Permalink
    @coryman (View Post)
    Yeah ... I'll hopefully have a solution for this by tomorrow.

    The problem is that Simon never updates the renderer. It's an application that runs on the server and renders saves. It doesn't know how to render the new element or wall, so doesn't give it a thumbnail. This problem happened during the 93.0 update too. What I did there was I released a new update, where every save said it was openable in 92.0. This made the renderer happy. At the same time, I updated the renderer code to just make it render everything, no matter what version it was from.

    So I released this update, thinking the renderer wouldn't care. I was expecting that it wouldn't be able to render stasis wall of LDTC, they would just be blank in thumbnails but everything else would show. What actually happened is, the renderer is so old it's still version 92.5. Simon hasn't updated it in over a year, maybe 2 years.

    I'll email Simon. But when I'll probably end up doing is having tpt server ask my server to render the saves.

    Edit: Finished all the code required to have the TPT server request save thumbnails from my server. Will deploy it tomorrow. The path goes like this: User asks for thumbnail -> TPT server sees that no thumbnail exists -> TPT server contacts my server, asking for thumbnail -> My server downloads save from TPT server -> My server renders the save, and sends back the thumbnail. Sounds crazy but seemed to work in my testing. Unsure how much slower it will be. I hate the hacks I have to do just because I can't update one file on the server ... this is the same thing I had to do for the email server (TPT server now asks my server to send out emails in its behalf)

    Edit2: Should be in place now. I'm trying to figure out if I can invalidate all the thumbnails from the last day, but there seems to be a cache on the server or something that's preventing me from regenerating them.
    Edited 3 times by jacob1. Last: 18th Feb 2019
  • Will_Rocks1
    18th Feb 2019 Member 1 Permalink

    I love the game, but I don't like how when I wanted to remove the older version (Because I had to get an entirely new .dmg because I'm on mac) it wouldn't let me because my permissions were Read Only, even when signed in on the admin account.

  • jacob1
    18th Feb 2019 Developer 0 Permalink
    @Will_Rocks1 (View Post)
    Yeah, I don't know why it does that. I was getting *really* annoyed with macOS for doing things like that to me. I also had the problem where it required admin permissions to delete my own file.

    I think the problem is that it's not supported on macs to download apps from outside the app store. This is unfortunate because I'm not going to put the app there and have it go through the approval process every time. If I had a real mac I might consider it, but I don't.

    Anyway I don't know how to fix that problem, it will probably stay. Unless a mac developer comes along and offers to fix the numerous issues with TPT (including some new issues with the mac version added in the 94.0 update).

    If the problems with the mac version get any worse I may drop support. But for now, it's technically playable.
    Edited once by jacob1. Last: 18th Feb 2019
  • Matera_the_Mad
    18th Feb 2019 Member 0 Permalink

    Script alert! RCA's HUD XV Update is broken in the new version. It misses or mis-detects elements, and is completely blind to all walls. owoo I tested quite a few scripts in the beta, but missed this one. I'm running Linux Mint, but I just tested the Windows version in a virtual machine - same sad story. Drat.

  • jacob1
    18th Feb 2019 Developer 1 Permalink
    @Matera_the_Mad (View Post)
    Works fine for me. But it sounds like some bugs other users reported where the coordinates are off. Can you tell me whether these 4 settings are on or off: Window scale factor, Resizable window, Fullscreen, Change resolution.

    Also a screenshot would be nice, if possible.

    As for walls, did it ever support that? I'm guessing not.
    Edited once by jacob1. Last: 18th Feb 2019
  • Paulo_fofis
    18th Feb 2019 Member 0 Permalink

    when will tpt mobile update to 94.0?

  • jacob1
    18th Feb 2019 Developer 1 Permalink
    @Paulo_fofis (View Post)
    It already has. It was approved by Google a few hours ago. Should appear soon if it hasn't already.
  • Paulo_fofis
    18th Feb 2019 Member 0 Permalink

    Now apear to me. Lol


    edit: I can not believe now it has a little noise.

    Edited once by Paulo_fofis. Last: 18th Feb 2019