All
- Fixed: Don't crash game if server sends invalid huffman tables
- Fixed: Don't crash game if encounter an invalid huffman code in fast decoding
- Fixed: Classic pause menu still showing empty quit game button
- Added: maxspeed= to MOTD to allow specifying a maximum horizontal speed
- Improved: Always recreate gfx resources instead of just creating, should prevent resources ever leaking
- Fixed: Launcher servers table behaves properly now when cursor goes outside window
- Improved: Only save the one keybind that changed instead of all keybinds
- Added: Undocumented option to turn off https
- Fixed: Speed: 5X getting stuck shown if you had ctrl pressed before opening chat
- Fixed: Opening chat input shouldn't cause 'speed: X' to immediately vanish
- Improved: Change from grass to glass in default hotbar to match classic
- Improved: Avoid useless vsync setting at startup (e.g. avoid a pointless context loss with direct3d9)
- Improved: Add smooth camera option to Graphics Options
- Improved: Defer creating maps/plugins directory until necessary
- Improved: Documentation for C++ plugins
- Added: Option to use custom login server
- Improved: Report intended next position instead of current position to server
Windows:
- Fixed: If you pressed on a control but still held down left mouse for a bit, the game would set the control binding to LeftMouse
- Fixed: (Direct3D9) Fix crash if device cannot be created initially and you tried to join multiplayer
- Fixed: (Direct3D9) Workaround buggy hook plugins by avoiding resetting device at startup
- Improved: Remember session cookie to bypass MFA when logging in from same device
- Fixed: Only include symbol name in backtrace if it is also not empty
- Fixed: Crash handling code rarely crashing on 32 bit windows
- Improved: Now works on Windows98 without needing KernelEX
- Added: Option to disable raw mouse input to workaround buggy mice
- Fixed: (Direct3D9) Try to avoid depth precision problems with higher FOV
macOS:
- Improved: Remember session cookie to bypass MFA when logging in from same device
- Fixed: Quit/Hide in dockbar not working with 64 bit client
Linux:
- Improved: Log backtrace for unhandled X errors
- Improved: Try to workaround rare corner cases where XI_RawMotion returns absolute coordinates
- Improved: Show vram/HW acceleration in /client gpu when using MESA
- Improved: Remember session cookie to bypass MFA when logging in from same device
- Fixed: Game never getting focused when focus follows pointer root
Mobile
- Improved: Make jump button slightly bigger
- Improved: Move 'Chat' and 'Fog' into main touch menu instead of touch controls
- Added: Allow scaling touch controls
- Added: Delete/pick/place as on-screen controls
- Added: Hotbar switching as an on-screen control
- Fixed: Softlock if speed is on and you open inventory
- Fixed: Softlock in touch controls menu
- Improved: Holding jump should still move camera around
Webclient:
- Improved: Make /client res [width] [height] actually wok properly
- Fixed: Skins/texture packs not downloading in firefox private browsing mode
- Fixed: Get 'download size for texture packs' to work in firefox
- Fixed: Non vsync fps limit not applying at startup
- Improved: Show actual error instead of '404' when texture pack denied by website / website doesn't exist
- Fixed: Being unable to change controls in some browser versions
- Fixed: Don't pointlessly create screenshots directory
- Fixed: Also show 'default.zip missing' warning
Mobile webclient:
- Fixed: Not working on some old iPad devices
- Fixed: iPad >= iOS 13 not showing touch controls by default
- Fixed: Touch coords being wrong with ipad in desktop mode
- Improved: Set placeholder text for on-screen keyboard in some places
- Fixed: Buttons not showing on recent iPad (iOS 13+)
iOS:
- Improved: Can be compiled for, even though it's completely unimplemented