Skip to content

CraftOS-PC v2.3.4

Choose a tag to compare

@MCJack123 MCJack123 released this 29 Jun 08:59
· 998 commits to master since this release

CraftOS-PC v2.3.4 includes a huge number of bugfixes relating to CC: Tweaked compatibility. The CC:T tests are now checked with every build of CraftOS-PC, so there should be a higher degree of accuracy and compatibility with the canonical version of CC:T. There are also some fixes that were made independently of the CC:T tests. Finally, a bunch of changes have been made to make CraftOS-PC more compatible with CCEmuX. These factors combine to make this version the most accurate version of CraftOS-PC 2 ever.

  • Updated CC:T version to 1.89.1
    • This includes full testing on the CC:T test set
    • CraftOS-PC now fully passes all CC:T tests
  • Added an error dialog when an error occurs reading the configuration files
    • The dialog includes a message describing where the JSON parsing error occurred
    • If an error occurs, the defaults will be used, and no changes will be saved
  • Added proper ingame locale for os.day/time/epoch
    • This is based on a 20-minute clock that starts when the computer boots
    • This change is to improve compatibility with CCEmuX/CC:T
  • Added CCEmuX command-line flags
    • --assets-dir, --computers-dir, --start-dir, --data-dir (alias of --directory), --plugin, --renderer
    • The --start-dir flag only affects the initial computer (specified by --id)
  • Headless mode now reports a color terminal (for advanced testing)
  • os.time now properly parses tables returned by os.date("*t")
  • CraftOS-PC now reports its real version and CC version in HTTP User-Agent strings
  • fs.delete no longer errors when deleting a non-existent file
  • Fixed io.open creating a directory instead of opening a file in write mode (#116)
  • Fixed fs.getDrive returning the wrong results
  • Fixed a whole bunch of warnings
  • fs.getSize now returns 0 when used on a directory instead of erroring
  • Fixed a bug causing audio glitches when playing low notes through the speaker
  • Fixed an error when writing nil or a number to a file (#118)
  • Fixed a crash when an invalid format string is passed to os.date
  • Fixed missing cc.completion and cc.shell.completion modules
  • Fixed programs getting the path to the program in arg[0] instead of the command as it was run
  • Raised maximum Lua call depth to 32768 (from 256)
  • loadstring now automatically adds an = sign to the chunk name
  • Fixed debug.getlocal not returning function parameter names
    • This fixes the cc.pretty module's parameter detection function
  • Fixed vulnerability in io library
  • Fixed io.lines() with no arguments
  • Fixed missing *L option for io.read/file:read
  • Fixed io.write/file:write not returning file handle
  • Fixed string.format erroring when using nil as a string parameter
  • fs.copy can now copy folders as expected
  • Fixed fs.find("/") returning an empty table
  • Fixed fs.attributes having the wrong name
  • Fixed fs.makeDir not erroring when it tries to create a directory where a file is already present
  • Fixed a boatload of string differences to comply with CC: Tweaked
  • Fixed a bunch more small inconsistencies
  • Fixed io.open not creating all parent directories if they're missing
  • Added support for custom options to io.lines
  • Fixed support for '+' modes in io.open
  • Fixed errors in Lua prompt showing [string "lua"]: instead of lua:
  • Windows: Changed ROM directory to the path where the executable is located
    • This means you can now change the installation directory

If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776. Feel free to ping me if you need anything.

The non-CC:T Mac build has been updated to fix an issue with the auto-updater. Please install this version manually, since previous versions are still affected.

The Mac builds have been updated to reduce file size.

The Windows installer has been updated to support running as a standard user. If not run as admin, the default install location is %LOCALAPPDATA%\CraftOS-PC. The Visual Studio 2019 redistributable will still need administrator privileges if it's not installed.