Awesome
<!--lint disable double-link--> <!-- SPDX-FileCopyrightText: 2024 awesome-computercraft contributors SPDX-License-Identifier: CC-BY-SA-4.0 --> <!--lint enable double-link--> <!--lint ignore-->Awesome ComputerCraft
<img src="assets/cc-tweaked-logo.png" align="right" width="100">
Useful programs, libraries, literature, and mods for ComputerCraft and its forks.
ComputerCraft is a mod for Minecraft which adds computers which are programmable with the Lua programming language. ComputerCraft: Tweaked is a fork of the mod for newer Minecraft versions.
This project lives on GitHub and might not render correctly on third-party websites.
If you think something should be added to the list, please reach out.
If you want to contribute, see CONTRIBUTING.md. If you have other questions, see the FAQ.
A note on abbreviations: CC
is ComputerCraft, CC:T
is ComputerCraft: Tweaked, and CC:R
is ComputerCraft: Restitched.
Contents
<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->Mods
ComputerCraft mods
- ComputerCraft: Tweaked - A fork of the original ComputerCraft for modern versions of Minecraft.
- ComputerCraft: Restitched - A set of patches for CC:T that allow running it on Fabric.
- ComputerCraft - A mod which adds computers to allow execution of Lua programs.
Add-on mods
- Advanced Peripherals - A mod which adds various peripherals and APIs for interacting with other mods.
- Computronics - A mod which adds various peripherals, notably for detecting events in the world and for manipulation of sound.
- Plethora - A mod which adds peripherals and allows many blocks to be accessed as such. In addition, it also allows for manipulation of the player as a peripheral.
- Plethora Fabric - A 1.19+ port of Plethora to Fabric.
- CC:C Bridge - A mod that adds compatibility between ComputerCraft and Create.
- sc-peripherals - A mod that adds 3D printers which allow creating custom blocks and posters.
- Turtlematic - A mod which expands the applications of turtles, making them extremely powerful.
- UnlimitedPeripheralWorks - A mod which adds various peripherals to extend CC:T capabilities. Also adds a lot of peripherals for other mods.
- Roadworks - A mod that adds traffic lights controllable by ComputerCraft.
Resource packs
- ComputerCreate - A resource pack which adds texture packs in the style of the Create mod.
Lua programs
Utility
- ComputerCraft Advanced Shell (cash) - A Bourne-compatible shell for ComputerCraft.
- Consult - A text editor emphasizing ease of use and compatibility with many systems.
- Consult: Recrafted - A fork of Consult for Recrafted systems.
- GEMU - CraftOS-PC graphics mode emulator based on Pixelbox.
gist
- A GitHub Gist download/upload program which aims to extend the built-inpastebin
program, but for Gists.- Howl - A build system for CC and CC:T.
- LuaIDE - A full-fledged IDE for editing Lua files in-game.
- Mildly Better Shell (MBS) - An improved shell that includes scrollback and improved resolution of completions.
- ModemShark - Modem packet sniffer with a simple UI.
- netshell - Access a computer's shell from another computer.
- OrangeBox - Virtualization support for ComputerCraft computers.
- rawshell - A modern alternative to netshell supporting CraftOS-PC's "raw mode" format, with file transfers, encryption, passwords, WebSockets, and more.
- ShrekPrint - Printing software with full color and book support.
- ShrekWord - Word-like document editor.
- unicornpkg - Modern package management that doesn't suck.
- FSEncrypt - Transparent filesystem encryption.
Library
- Acidity - A simple procedual world generation-oriented noise generation library.
- Anavrins' ChaCha20 - Implementation of ChaCha20. <!-- FIXME: Broken link -->
- Anavrins' hashing libraries:
- AUKit - The quintessential audio processing and conversion library for ComputerCraft.
- Basalt - A GUI library emphasizing the user experience.
- Bigfont - A library that makes writing something in different font sizes easy.
- C3D - An advanced 3D rendering API.
- CC-Archive - Various libraries for archiving and unarchiving files.
- dbprotect - A protection wrapper over the
debug
API, allowing restricting access to upvalues in protected functions. ecc.lua
- Implements elliptic-curve cryptography. <!-- FIXME: Broken link -->- ecnet - Secure network communications in ComputerCraft.
- GuiH - A powerful GUI and graphics library.
- IsometriH - An isometric rendering engine.
- Luz - An extremely light compression algorithm for Lua files.
- Milo - A crafting and inventory management system. Note that this depends on OpusOS and Plethora.
- Pine3D - A 3D rendering engine designed to be fast.
- PngLua - PNG parsing library designed for ComputerCraft.
Pixelbox Lite
- A very fast and flexible teletext 2D rendering library for ComputerCraft.- RedRun - A small library for running processes in the background of CraftOS after exiting the program, similar to DOS TSRs.
- Tamperer - A library allowing easy creation of settings menus.
- Tampl - A Lua tokenization and parsing library designed for dynamic code generation and injecting code into existing programs.
- Telem - A telemetry library for peripherals, facilitating in-game and cloud-based monitoring dashboards for storage, energy, and machinery.
- VeriCode - Provides simple code signing functions for safely transferring code over modems.
Fun
- AUKit austream - Based on AUKit, a simple audio player supporting WAV, DFPWM, AIFF, AU, and FLAC.
- battleship - An implementation of the popular two-player game Battleship.
- CCDoom - The Doom shooter ported to ComputerCraft using Pine3D.
- CC-Minecraft - Minecraft ported to ComputerCraft using Pine3D.
- LuaGB - A port of a Game Boy (Color) emulator for ComputerCraft. Works best in CraftOS-PC.
- lunatic86 - A port of an 8086 PC emulator for ComputerCraft.
- Musicify - A lightweight client for playing music on ComputerCraft: Tweaked.
- tracc - An XM module tracker/player for ComputerCraft, supporting 8 channel polyphony in-game.
- YahtCC - An implementation of the Yahtzee dice game.
- YouCube - Access YouTube and other services in ComputerCraft.
- YTP2CCP - Convert commented YouTube piano notes and play them in CC:T.
Operating systems
- LevelOS - A modern GUI operating system intended to mimic Windows.
- Opus - An OS which includes a GUI, an app store, and many system-related APIs.
- Phoenix - An OS which emphasizes modularity. It implements its own kernel.
- Phoenix is currently in alpha.
- Recrafted - A rewrite of CraftOS aiming for full feature parity while maintaining "saner API design."
- UnBIOS - A program to "undo" CraftOS, returning the system to the same state it was in before running the BIOS. Useful for OS development.
- cOS - The NixOS inspired configurable ComputerCraft OS.
Economy
colorful.kst
- A Krist store which sells colorful blocks, coloring them on demand.- Kristify - Software for highly customizable Krist shops in modern versions of ComputerCraft, powered by Basalt.
- LP - A Krist shop which dynamically adjusts buy and sell prices based on supply and demand.
- msks - A modern, simple shop for the Krist virtual currency.
- printshop - A Krist shop which sells 3D prints and posters, also allowing players to print their own designs.
Mod-specific programs
Note: This section contains programs which are exclusive to a mod and would not make sense in the Utilities section.
- DraconicControl - Allows controlling Draconic Evolution's Draconic Reactor from a computer.
- ReactorControl and TurbineControl - Automatic management of reactors and turbines in Big Reactors.
- ReactorControl patched - The preceeding program uses the
parallel
API recursively, which could cause it to break. A patch has been developed to fix this.
- ReactorControl patched - The preceeding program uses the
cc-mek-scada
- Configurable control system for Mekanism fission reactors.
Non-Lua programs
Note: This section is for programs that are not mods or Lua programs and directly relate to the subject of this list.
Bridging
<!-- vale Google.WordList = NO -->Note: This subsection is for programs which allow ComputerCraft things to be accessed out of the game, primarily through the Internet.
- Cloud Catcher - A program which enables interaction with computers outside of the game.
- Krist Server - A server for the Krist virtual currency, intended for use with CC and CC:T.
- KristForge - A miner for the Krist virtual currency.
- KristWeb2 - A web wallet for Krist, written in React.
- Netmount - Configurable WebSocket and WebDAV remote storage solution.
- Ultron Control - A program which exposes a web API for controlling turtles.
Emulators
- CCEmuX - A CC and CC:T emulator which executes the mods directly.
- Copy Cat - A CC:T emulator that runs in a web browser.
- CraftOS-PC - A CC:T emulator written in C++ with the intention of speed.
Plugins
- CraftOS-PC for VS Code - Extension for manipulating and running programs via CraftOS-PC in VSCode.
craftos2-plugins
- A collection of small plugins for CraftOS-PC, maintained by the creator.- VSCode Extensions for ComputerCraft - Self-explanatory. Contains autocomplete for CC and CC:T functions, as well as a Lua language server.
Tools
- ComputerCraft Music Converter - A web app to convert various sound formats to DFPWM (ComputerCraft's sound format).
- BIMG-Generator - A Java program to convert images to the BIMG format.
cc-tstl-template
- A template for the TypeScriptToLua compiler that allows writing ComputerCraft programs in TypeScript.- sanjuuni - A program to quickly convert image and video files into various formats for playback and streaming in ComputerCraft.
Literature
Essays
- JackMacWindows's essay on ComputerCraft OSes - Contains suggestions, discouragement, and encouragement for building a proper operating system.
- JackMacWindows's essay on sane APIs - Has suggestions for making your APIs easy to use.
Tutorials
Basics
- Direwolf20's tutorials - A series of videos explaining the basics of ComputerCraft programming.
- Sethbling's tutorials - Another series of videos explaining ComputerCraft programming.
- Lyqyd's Computer Basics series (1, 2, 3) - Though a bit dated, they are excellent for the beginnings of your journey.
- The FTB Wiki's Getting Started guide for ComputerCraft - A useful all-around resource for getting started.
Moderate or advanced
- Bomb Bloke's Guide to Coroutines - Explains why you should not use coroutines, and includes tutorials on using them.
Charts, tables, and calculators
- JackMacWindows's coroutine flow chart - Demonstrates how coroutines work. Each column represents one coroutine's code flow.
- KingOfGamesYami's event flow chart - Demonstrates the flow of events when a program runs.
- Wojbie's decimal font chart and Cake's hex font chart - Contains decimal and hex mappings to ComputerCraft font characters.
- Emma's ComputerCraft compatibility chart - Shows compatibility across emulators and in-game mods.
- MasonGulu's monitor size calculator - An online gadget which calculates how many characters and pixels will fit onto a monitor.
Other lists
- Awesome Lua - An Awesome list specific to the Lua programming language.
- Awesome SwitchCraft - An Awesome list specific to the SwitchCraft server.
- Hengestone's list of languages which compile to Lua - A list of languages which compile to Lua.
Resources
tweaked.cc
documentation - Contains documentation for most methods in CC and CC:T.- CC's forums - An extremely valuable resource, filled with tutorials and programs. <!-- FIXME: Broken link -->
- CC:T's forums - Also extremely valuable, but is newer.
- Minecraft Computer Mods Discord - A Discord server for getting help with programming in CC and CC:T.
- ComputerCraft's subreddit - A subreddit for showing off your ComputerCraft creations, as well as getting help.
- Lua's manual - Contains documentation on methods not covered in
Tweaked.cc
. Sections 5 (Auxillary Library) and 6 (Standard Library) are of particular interest.