CC SYNAXIS VIRTUAL COMS
Virtual serial ports for Synaxis Cimulink circuit boards, bridging Minecraft, CC:Tweaked computers and out-of-game Python programs over a local TCP socket on 127.0.0.1:25585.
THE BLOCK
Virtual Serial Port Board - the mod adds a single block (and its item), found in its own creative tab.
- Mounts on any block face, like other Synaxis boards.
- Right-click with an empty hand to open the configuration screen. Holding any item right-clicks the item instead, so the Synaxis tool gun still works normally for wiring the board into a circuit.
- Add and remove ports, switch a port's type between real, boolean, vec3 and quad, and switch its direction between in and out.
- The list shows each port's current value and who last wrote it.
- Registers as the Cimulink component cc_virtual_coms:serial_board.
PORT DIRECTION
out - The circuit READS this port. Write to it from Python to drive the circuit.
in - The circuit DRIVES this port. Read it from Python to observe the circuit.
Read and write are not restricted by direction. If a port is being driven by the circuit, a value you write will be overwritten on the next game tick.
PYTHON API
A single stdlib-only module, Python 3.8+.
from cc_virtual_coms import Coms
coms = Coms() # connects to 127.0.0.1:25585
coms.send("throttle", 0.75) # pack + send
coms.send("target", [1.0, 64.0, 2.0]) # vec3, type inferred
print(coms.get("altitude")) # latest value, non-blocking
for port, ptype, value in coms: # stream incoming values
print(port, ptype, value)
Port types come from the game; if you send a mismatched type the library reports it clearly and you can override with port_type=.
LUA API (CC:TWEAKED)
local coms = peripheral.find("cc_virtual_coms")
coms.writePort("throttle", 0.75)
print(coms.readPort("altitude"))
for _, p in ipairs(coms.listPorts()) do
print(p.name, p.type, p.direction, p.value)
end
Configuration is available too: addPort, removePort, setPortType, setPortDirection, setComPort, clearPorts.
REQUIREMENTS
This mod is a bridge layer, not a standalone experience. It will NOT work without the mods below. Install every one of them, matching Minecraft 1.21.1 / NeoForge.
IMPORTANT: most of these are NOT hosted on CurseForge (see the second list), so they will NOT be downloaded automatically when you install this mod. Installing them manually is mandatory, otherwise the game will crash on startup with a missing-dependency error.
Available as CurseForge dependencies (download automatically):
- Create - the kinetic and engineering foundation everything else builds on
- CC: Tweaked - the in-game computers and the Lua peripheral API this mod exposes
Must be installed manually (not on CurseForge):
- Synaxis 1.4.3+ - the Cimulink circuit system this mod plugs into; the circuit board is a Synaxis component. See the Synaxis author's page.
- Sable 1.1.3+ - moving block structures and sub-levels. GitHub: ryanhcode/sable
- Sable Schematic API 0.2.6+ - schematic capture and restore. GitHub: Rew1nd-dev/sable-schematic-api
- LDLib2 (LowDragLib2) 2.2.17+ - UI and rendering library used by the circuit screens. GitHub: Low-Drag-MC/LDLib2
- Create Aeronautics 1.3.0+ - aeronautics parts for Create. See the author's page.
Version requirements:
- Minecraft 1.21.1
- NeoForge 21.1
- Java 21
- CC: Tweaked 1.118.0
- Synaxis 1.3.4
- Sable 1.1.3
- Sable Schematic API 0.2.6
- LDLib2 2.2.17
- Create 6.0.10
- Create Aeronautics 1.3.0
CREDITS
- Model and textures are derived from Synaxis by Rew1nd.
- Built on Synaxis, CC: Tweaked and Create. All credit for those projects belongs to their respective authors.
SOURCE