29 lines
1.1 KiB
Markdown
29 lines
1.1 KiB
Markdown
# ADR 0001: Target ComputerCraft
|
|
|
|
## Status
|
|
|
|
Accepted
|
|
|
|
## Date
|
|
|
|
2026-06-07
|
|
|
|
## Context
|
|
|
|
This repository exists to build APIs, servers, and programs for ComputerCraft / CC:Tweaked inside Minecraft.
|
|
|
|
The code is Lua, but the runtime is not generic local Lua. The real environment provides ComputerCraft APIs such as `os.pullEvent`, `peripheral`, modems, timers, labels, computer IDs, and the CraftOS filesystem.
|
|
|
|
## Decision
|
|
|
|
This repo targets ComputerCraft / CC:Tweaked first.
|
|
|
|
Local Lua compatibility is not a goal by itself. Code can assume the ComputerCraft runtime and use ComputerCraft conventions when they make the in-game code clearer.
|
|
|
|
## Consequences
|
|
|
|
- Prefer ComputerCraft-style absolute `require` paths, such as `require('/apis/net')()` (most API modules return factories — call the result once to get the API).
|
|
- Local checks are useful, but runtime behavior should be validated in-game or with CraftOS-PC when needed.
|
|
- Avoid adding a local Lua harness unless there is a clear reason.
|
|
- Keep the repository practical: this is for playing Minecraft, not designing a general Lua framework.
|