explaingit

nesbox/tic-80

5,967CAudience · developerComplexity · 2/5LicenseSetup · easy

TLDR

A free open-source fantasy game console with built-in code, sprite, map, and sound editors for making tiny retro-style games, shareable as single-file cartridges on all platforms.

Mindmap

mindmap
  root((repo))
    What it does
      Make retro games
      Self-contained environment
    Built-in tools
      Code editor
      Sprite editor
      Map and sound editors
    Constraints
      240x136 pixels
      16 color palette
      4 channel audio
    Languages
      Lua JavaScript
      Python Ruby
    Platforms
      Windows macOS Linux
      Mobile and browser
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Build and share a small retro game entirely within TIC-80 without installing any other tools

USE CASE 2

Share your game as a single cartridge file that anyone can play in a web browser

USE CASE 3

Learn game programming in Lua or JavaScript in a constrained beginner-friendly environment

USE CASE 4

Browse and play community-made games on tic80.com to get ideas and inspiration

Tech stack

CLuaJavaScriptPythonRubySDL2

Getting it running

Difficulty · easy Time to first run · 5min
MIT license, use, modify, and share freely for any purpose including commercial projects.

In plain English

TIC-80 is a free, open-source fantasy computer designed for making and sharing tiny retro-style games. A fantasy computer is a self-contained creative environment that behaves like an imaginary piece of old hardware, complete with intentional limitations that give your game a consistent look and feel. TIC-80 imposes a 240x136 pixel display, a 16-color palette, 256 small sprites, and 4-channel audio, which are the kinds of constraints you would have found on home computers from the 1980s. Everything you need to make a game is built into the application itself. There is a code editor, a sprite editor, a world map editor, and sound and music editors, so you can sit down and start creating without installing anything else. Finished games are saved as cartridge files, a single file format that can be shared with anyone and played on any device TIC-80 supports, including Windows, macOS, Linux, Android, and iOS. You can also play games made by others directly in a web browser. For writing code, TIC-80 supports a wide range of programming languages including Lua, JavaScript, Ruby, Python, and several others. You can pick whichever language feels most comfortable. Games accept keyboard, mouse, and up to four game controllers as input. A paid Pro version is available on itch.io and adds a few practical extras: the ability to save and load cartridges as plain text files (which works well with version control), eight memory banks instead of one, and the ability to export a game without the editors bundled in, which makes it easier to publish to app stores. Anyone who cannot afford the Pro version can compile it themselves from the source code at no cost. The tic80.com website hosts a community library where people upload and share games, tools, and music made with the system. There is also a wiki with documentation, code examples, and game development tutorials.

Copy-paste prompts

Prompt 1
Write a top-down shooter in Lua for TIC-80 that uses the sprite editor and supports 4-directional movement with the arrow keys. Keep it under 256 lines.
Prompt 2
I have a TIC-80 cartridge and want to export it as a standalone HTML file for itch.io. Walk me through the Pro version export process.
Prompt 3
Create a TIC-80 demo in Lua that plays a simple melody on the 4-channel audio API while displaying a scrolling starfield background.
Open on GitHub → Explain another repo

← nesbox on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.