Fast Emulation of ComputerCraft
CraftOS-PC is a native ComputerCraft emulator written in C++. It uses the official Lua 5.1 source code to run CraftOS, which gets rid of many bugs that plague the Java implementation of Lua used in ComputerCraft. Using C++ also allows CraftOS-PC to run quicker than any other Java implementation of ComputerCraft, performing up to 90% faster than CCEmuX and CC: Tweaked in Minecraft.
Full Peripheral Support with Directory Mounting
CraftOS-PC supports many of the peripherals available in ComputerCraft, including monitors, speakers, disk drives, modems, and more. You can connect and disconnect peripherals using the attach and detach commands from the shell. The
periphemuAPI can also be used to manipulate peripherals from Lua. In addition, the mount and unmount commands and the
mounterAPI allow mounting real directories inside the CraftOS environment.
Support for Multiple Computers
CraftOS-PC can run multiple emulated computers that are completely separated from each other. Each computer gets its own filesystem and local configuration using an ID number, just like ComputerCraft. Computers can be created and attached just like any other peripheral, using either the attach command or the
All-New Graphics Mode
CraftOS-PC introduces a new graphics mode that allows bitmapped pixel access to the terminal with up to 256 colors available to use. When in graphics mode, the screen has a resolution 6 times wider and 9 times taller than the text size of the terminal. This allows a base resolution of 306x171 pixels on a standard sized terminal.
Built-In Screenshots & GIF Recorder
CraftOS-PC includes a built-in screenshot and GIF recording tool. No longer do you need to open Snipping Tool or use recgif; CraftOS-PC can do it for you. You can press F2 to take a screenshot or F3 to toggle GIF recording, which will be saved to the screenshots directory in the CraftOS-PC save folder. Or you can use F12 to copy the screenshot directly to your clipboard. GIFs are restricted to a maximum length of 15 seconds by default to save memory usage, but this can be modified in the configuration.
CraftOS-PC allows you to configure every part of the ComputerCraft experience. The config command and API allow access to the configuration directly from inside CraftOS. The configuration is stored as plain JSON, so it's easily editable even outside the ComputerCraft environment.
CraftOS-PC features a plugin API, allowing extending the functionality of CraftOS through the use of C++ code. One example of a plugin available is a compatibility layer for CCEmuX: it emulates the
ccemuxAPI, allowing programs designed for it to work with CraftOS-PC. It may also be possible for some C Lua libraries to work with CraftOS-PC. See the documentation for more details.
CraftOS-PC v2.2 introduces the debugger peripheral, which allows you to set breakpoints, step through programs, and print messages to the debug console without modifying the main computer's screen. This can be extremely useful for finding that one little problem in your program. For more information on how to use it, see the full documentation for the debugger.
With the release of CraftOS-PC v2.3 comes CraftOS-PC Online, a version of CraftOS-PC that runs directly in your browser. It runs in an IDE similar to Visual Studio Code, and supports file browsing and editing, opening multiple windows, screenshots, downloading & uploading files, and more. It works in most modern browsers with WebAssembly and shared memory support. You can access CraftOS-PC Online at https://www.craftos-pc.cc/online/.
CraftOS-PC Accelerated is a fork of CraftOS-PC that uses the LuaJIT engine to increase speeds even further, with up to 100x faster execution (depending on the workload). It uses the same data locations as standard CraftOS-PC, and can be installed alongside it without issues. Please note that not every program is compatible with CraftOS-PC Accelerated, and support is not guaranteed.