TIS-3D: Low-tech Computing for Minecraft
TIS-3D is a Minecraft mod inspired by the brilliant game TIS-100 (buy it, seriously). It takes the concept of minimal, programmable nodes (called "modules" in the mod) and expands it to the third dimension. This allows building multi-block computers from different modules in a super-flexible manner. Some generally useful modules include the executable module, which can be programmed in an ASM dialect (as introduced by TIS-100 but with a few more quality-of-life instructions), and the redstone module, which allows reading and writing redstone signals, enabling basic interaction with the world. More specialized modules include the stack module, providing a small data storage, the infrared module, allowing for wireless transmission of data between TIS-3D computers, and the terminal module, providing rudimentary text in- and output. And there's plenty more.

Getting Started
To get started, craft a controller and a few casings. For looking up recipes I strongly recommend grabbing JEI. To get a copy of the in-game manual, use a book on a placed controller (i.e. right click the block with vanilla book in hand). You should find all further information you require in the manual.

Programming TIS-3D Computers
To program a TIS-3D computer, you can either use a vanilla Book & Quill or the TIS-3D Code Bible. To install a program from one of the two onto an execution module, simply use the book on the installed module (i.e. right-click it while holding the book in hand). When using the Book & Quill, each book will be treated as one long program, i.e. all pages will be concatenated when the program is installed on an execution module. When using the Code Bible, each page is treated as an individual program, and the program on the currently selected page will be installed on the module. You can also copy programs from execution modules back into the Code Bible by using it on an execution module while sneaking.

What now?
So what do you actually do with the mod? Have fun with it! Use it as a means of automating things you'd otherwise automate using complicated redstone circuitry. Create a music machine. Design a machine-code interpreter and run even larger programs (programmed into a ROM module). Go nuts!
Anyway. Here's a short video explaining some of the basics if you don't like reading. It's from an early development stage, but the core concepts still apply.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Added: casing rotation, e.g. for schematics or other mods that can rotate blocks. Modules in the casing will rotate with it. Closes #153. Finally.
- Changed: comments, defines, continuation macro no longer consume line budget. Closes #211.
- Changed: locked casings are also locked for automation (e.g. hopper module insertion/extraction).
- [BREAKING] Changed: made
ANYoperations more consistent, regardless of which face a module is installed on. Order of preferred port is no longer world face dependent but local port order based. - Fixed: queue and stack module could stall writers when filled.
- Fixed: ROM modules could be written with the right timing. Fixes #176.
- Fixed: removing a facade module could leave rendering broken until another change refreshed it. Fixes #202.
- Added: casing rotation, e.g. for schematics or other mods that can rotate blocks. Modules in the casing will rotate with it. Closes #153. Finally.
- Changed: comments, defines, continuation macro no longer consume line budget. Closes #211.
- Changed: locked casings are also locked for automation (e.g. hopper module insertion/extraction).
- [BREAKING] Changed: made
ANYoperations more consistent, regardless of which face a module is installed on. Order of preferred port is no longer world face dependent but local port order based. - Fixed: queue and stack module could stall writers when filled.
- Fixed: ROM modules could be written with the right timing. Fixes #176.
- Fixed: removing a facade module could leave rendering broken until another change refreshed it. Fixes #202.
- Added: casing rotation, e.g. for schematics or other mods that can rotate blocks. Modules in the casing will rotate with it. Closes #153. Finally.
- Changed: comments, defines, continuation macro no longer consume line budget. Closes #211.
- Changed: locked casings are also locked for automation (e.g. hopper module insertion/extraction).
- [BREAKING] Changed: made
ANYoperations more consistent, regardless of which face a module is installed on. Order of preferred port is no longer world face dependent but local port order based. - Fixed: queue and stack module could stall writers when filled.
- Fixed: ROM modules could be written with the right timing. Fixes #176.
- Fixed: removing a facade module could leave rendering broken until another change refreshed it. Fixes #202.
- Added: casing rotation, e.g. for schematics or other mods that can rotate blocks. Modules in the casing will rotate with it. Closes #153. Finally.
- Changed: comments, defines, continuation macro no longer consume line budget. Closes #211.
- Changed: locked casings are also locked for automation (e.g. hopper module insertion/extraction).
- [BREAKING] Changed: made
ANYoperations more consistent, regardless of which face a module is installed on. Order of preferred port is no longer world face dependent but local port order based. - Fixed: queue and stack module could stall writers when filled.
- Fixed: ROM modules could be written with the right timing. Fixes #176.
- Fixed: removing a facade module could leave rendering broken until another change refreshed it. Fixes #202.
- Updated to MC 1.20.4 and added NeoForge support.
- Updated to MC 1.20.4 and added NeoForge support.
- Updated to MC 1.20.4 and added NeoForge support.
- Add JAB instruction and support for getting label addresses via MOV (@UQuark).
- Add JAB instruction and support for getting label addresses via MOV (@UQuark).
- Update Fabric loader version and Markdown Manual dependencies (@UQuark).
- Update Fabric loader version and Markdown Manual dependencies (@UQuark).
- Fixed various potential issues where module save state may be lost.
- Fixed various client synchronization issues, where modules on the client may show/hold incorrect info.
- Fixed various potential issues where module save state may be lost.
- Fixed various client synchronization issues, where modules on the client may show/hold incorrect info.
- Add
MODinstruction (@TimovVeen). - Potential fix for locale issue when generating network message names.
- Add
MODinstruction (@TimovVeen). - Potential fix for locale issue when generating network message names.
- Add
MODinstruction (@TimovVeen). - Potential fix for locale issue when generating network message names.
- Add
MODinstruction (@TimovVeen). - Potential fix for locale issue when generating network message names.
- Added Russian translation for the ingame manual (Grenland38).
- Fixed sending module data to multiple players in multiplayer.
- Fixed redstone module not correctly reading initial non-zero state after reboot.
- Fixed advancements unlocking recipes not working as intended in all cases.
Thanks to @ihatecsv for the backport!
- Added Russian translation for the ingame manual (Grenland38).
- Fixed sending module data to multiple players in multiplayer.
- Fixed redstone module not correctly reading initial non-zero state after reboot.
- Fixed advancements unlocking recipes not working as intended in all cases.
Thanks to @ihatecsv for the backport!
- Added Russian translation for the ingame manual (Grenland38).
- Fixed sending module data to multiple players in multiplayer.
- Fixed redstone module not correctly reading initial non-zero state after reboot.
- Fixed advancements unlocking recipes not working as intended in all cases.
- Added Russian translation for the ingame manual (Grenland38).
- Fixed sending module data to multiple players in multiplayer.
- Fixed redstone module not correctly reading initial non-zero state after reboot.
- Fixed advancements unlocking recipes not working as intended in all cases.
- [Fabric] Disable Facade Module when Sodium is installed because it disables Fabric's custom block model system.