Skip to content

Repository files navigation

GitHub Release VS Code Version Open VSX Downloads

Stationeers Toolkit

📚 Read the full Stationeers Toolkit documentation

Stationeers Toolkit extension icon

Fast, offline IC10 language support for Stationeers, powered by a native Rust language server and deterministic simulator.

The extension provides context-aware completion, hover documentation, signature help, navigation, document symbols, and diagnostics while you edit .ic10 programs. The language server and generated reference data are bundled, so users do not need Python, a Stationeers installation, or a separate server.

Lua editing is also supported without the StationeersLua extension through a lightweight bundled metadata library. Installing both extensions is recommended for Lua-heavy projects: Toolkit automatically uses the current StationeersLua library for the latest Lua API knowledge while retaining only its own Toolkit specific additions. This is optional and does not affect IC10-only work.

When both extensions are installed, use only one extension's live network, chip-editor, or source synchronisation tools for a game session. For projects using IC10 simulation, scenario testing, topology, or debugging, Stationeers Toolkit should be the live integration owner.

This is an independent community project. It is not affiliated with, endorsed by, or sponsored by RocketWerkz.

Installation

Visual Studio Code 1.107 or newer is required.

  • Visual Studio Code: open Extensions, search for Stationeers Toolkit, and install the extension published by shaneyu.
  • Antigravity and other Open VSX editors: search the Extensions view for Stationeers Toolkit.
  • Manual installation: download the VSIX matching your operating system and architecture from GitHub Releases, then choose Extensions: Install from VSIX....

Marketplace links will become active with the first public release:

Quick start

  1. Install the extension.
  2. Open or create a file ending in .ic10.
  3. Start typing an instruction or hover an existing symbol.
define Solar HASH("StructureSolarPanel")
alias sensor d0

start:
  l r0 sensor Horizontal
  yield
  j start

Language features activate automatically for .ic10 files.

Features

  • Syntax highlighting for instructions, labels, registers, devices, macros, constants, enum values, numbers, and comments.
  • Context-aware completion for instructions, operands, registers, device pins, constants, enums, labels, prefab hashes, and HASH/STR literal macros.
  • Hover help for instructions, registers, devices, constants, enums, symbols, reagent hashes, packed display strings, prefab names, and numeric hashes.
  • Signature help generated from IC10 command syntax.
  • Go to definition, references, highlights, rename, and document/workspace symbols for labels, defines, and aliases.
  • Typed operand validation and conservative control-flow/value diagnostics, including subtle unused/dead-code hints.
  • Semantic tokens, label folding, inlay hints, safe quick fixes, formatting, and a live official line/operations budget.
  • A visual, source-controlled simulation environment for devices, labeller names, numbered connections, pins, logic fields, slots, registers, and stack values.
  • Native VS Code debugging for single- and multi-IC systems, with breakpoints, editable variables, watches, instruction stepping, and coordinated world ticks.
  • Shared cable-network channels and separate data/power network topology.
  • Native Test Explorer scenario tests plus the headless ic10 CLI with deterministic human, JSON, and JUnit results.
  • Deterministic deployment builds with safe branch rewriting, compact previews, clipboard/file output, source maps, and reproducibility reports.

The parser is intentionally tolerant of incomplete lines, so editor assistance continues to work while a program is being written.

Commands and settings

Name Purpose
IC10: Restart Language Server Restarts the bundled language server.
IC10: Create Simulation Environment Creates and opens a visual *.icsim scenario.
IC10: Step World Tick Runs every eligible simulated IC for one game tick.
IC10: Build for Game Writes deployable code and JSON sidecars without editing source.
IC10: Copy Deployable Code Copies the identical in-memory build without writing files.
ic10 build <source.ic10> Builds deployable code and sidecars under build/ beside the source; use --stdout for write-free output.
ic10.server.path Uses a custom ic10-lsp executable instead of the bundled server.
ic10.debugAdapter.path Uses a custom ic10-dap executable instead of the bundled adapter.
ic10.cli.path Uses a custom ic10 command-line executable instead of the bundled CLI.
ic10.testing.rerunOnSave Re-runs affected scenario tests after a referenced file is saved.
ic10.diagnostics.unused Controls unused/dead-code diagnostics as off, hint, or warning.
ic10.trace.server Logs LSP messages for troubleshooting.

See the extension usage guide for troubleshooting and platform details. See the simulator guide for the environment format, multi-IC debugger model, and current fidelity, and the generated compatibility report for the evidence-backed instruction status. See scenario testing for *.ictest, Test Explorer, and CI usage. The supported workspace filenames and future compatibility policy are described in workspace formats. Test Explorer labels pure Lua modules, full Lua-chip scenarios, and mixed IC10/Lua scenarios separately; the latter two report an explicit local unsupported runner/debug path. Deployment options, safety rules, sidecars, and headless integration are documented in the deployment build guide.

Privacy

The extension runs locally. It does not include telemetry and does not send source code or Stationeers data to an external service.

Contributing

Bug reports and feature requests are welcome in GitHub Issues. See CONTRIBUTING.md to build the monorepo, run the test suite, or refresh generated Stationpedia data.

Contributors record user-facing changes under Unreleased; maintainers follow the release guide for versioning, signed tags, and publication.

The design is documented in docs/architecture.md. The ordered, implementation-ready product roadmap lives in backlog/README.md.

License and attribution

Project source code is available under the MIT License. Stationeers names, reference material, and images remain the property of RocketWerkz and its licensors; see THIRD_PARTY_NOTICES.md.

About

An extension for Visual Studio Code that provides syntax highlighting, auto completion etc for IC10 programming.

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages