KOLTOLABS home

Site settings

Display

Motion follows your system setting.

Sound

Choose music
Set tempo

Tempo changes apply to the generated score.

Remember visits

Keys

Show keyboard shortcuts

Releases

Pulled from github.com/kolto-labs · updated

Released

  • kotor-formatsused by 1 project

    Status: Releasedv0.1.0

    Readers and writers for the Odyssey engine file formats used by Knights of the Old Republic I and II.

    Language
    Rust
    Stars
    0
    Last push

    Three tools were each carrying their own copy of the KotOR I and II byte layouts, free to drift apart. These Rust crates are the one copy they all read from. Small on purpose, so each tool takes only what it needs: kotor-ncs-isa (the NCS instruction set as data), kotor-ncs (NCS read/write plus a decompiler built on the DeNCS algorithm), kotor-formats (GFF, 2DA, TLK, SSF, ERF/RIM) and kotor-diff (structural comparison).

    Features

    • Byte-exact round trips: type tags, field widths, raw labels and padding are preserved, not normalised
    • Lossless text: a total Latin-1 mapping, so encode(decode(x)) == x for all 256 byte values
    • Strict by default, accepting what TSLPatcher accepted; opt-in leniency for read-only tools
    • Errors in the (GFF-1) / (2DA-8) form mod authors already know from install logs
    • Early: the API is not stable yet, so depend on a git tag

    Install

    • cargocargo add kotor-formats --git https://github.com/kolto-labs/kotor-formats

    Built on kotor-formats

    • Status: Releasedv0.3.0

      kq

      Query a Knights of the Old Republic installation like it was plain text.

      Language
      Rust
      Stars
      1
      Last push

      kq treats a KotOR or TSL game folder as structured, searchable data. It reads the archives in place, so nothing gets extracted first. Questions work the way rg works on a source tree and jq works on JSON. Start with kq which: every copy of a resource in engine resolve order, with a star on the copy the game actually loads.

      Features
      • which: every copy of a resource in engine resolve order (Override, modules, BIFs), with the loaded copy starred
      • cat: GFF, 2DA, TLK, SSF, NCS (decompiled to NSS), MDL, walkmeshes and more as an outline, gron lines, JSON or raw bytes
      • grep: regex search over decoded contents; hits are field paths, not byte offsets
      • delta, patch and merge: structural diffs and three-way merges of decoded resources
      • graph: an inventory of used, unused and overshadowed resources in an install
      • JSON and JSONL output plus stable exit codes, so scripts can branch on results
      • Works on a full install, a single module, or a folder of loose files
      Install
      • cargocargo install --git https://github.com/kolto-labs/kq --locked
      • macOS / Linuxcurl -LsSf https://github.com/kolto-labs/kq/releases/download/v0.3.0/install.sh | KQ_REPO=kolto-labs/kq sh
      • Windowspowershell -ExecutionPolicy ByPass -c "Set-Item Env:KQ_REPO kolto-labs/kq; irm https://github.com/kolto-labs/kq/releases/download/v0.3.0/install.ps1 | iex"

Watch the lab: not public yet

  • Status: In development

    Hyperstim

    A script extender for KotOR and TSL.

    Language
    TBD
    Source
    Not public yet
  • Status: In development

    Adrenal

    Scripting for KotOR and TSL mods.

    Language
    TBD
    Source
    Not public yet
  • Status: In development

    Kolto Tank

    A test bench for mods.

    Language
    TBD
    Source
    Not public yet

    You bring your own copy of the game.

  • Status: Planned

    Hrakert

    A long-term project.

    Language
    TBD
    Source
    Not public yet
  • Status: Planned

    Ahto

    The Kolto Labs docs hub.

    Language
    TBD
    Source
    Not public yet

    This website is its first room.