Skip to content

OpenKotOR/SSFEdit

Repository files navigation

SSFEdit

SSFEdit is a Delphi 7 VCL desktop utility for inspecting and editing KotOR/TSL soundset definition files (.ssf). Each .ssf entry points to a StrRef in dialog.tlk, and the application resolves that reference to both the spoken sound resource name and the display text shown in the grid.

The source of truth in this repository is the Pascal code, not the current VS Code tasks. Some developer worktrees may contain ignored Windows executables and binary form/resource artifacts, but the canonical source entrypoint is USSFEdit.dpr.

User manual

The non-technical user manual lives in the GitHub wiki.

In a local clone, that same manual is checked out through the top-level wiki/ submodule.

What the app does

  • Opens an existing .ssf file or starts a new blank one.
  • Prompts for a dialog.tlk file before SSF editing begins.
  • Displays the fixed set of 40 soundset slots used by the game.
  • Lets the user replace a slot's StrRef directly.
  • Lets the user append a brand-new TLK entry and assign that new StrRef to the selected slot.
  • Saves modified TLK data first, then writes the updated SSF file.

Repo map

  • USSFEdit.dpr: application startup and optional CLI autoload of a .ssf path.
  • USSFFile.pas: SSF v1.1 serializer/deserializer.
  • UTLKFile.pas: TLK v3.0 serializer/deserializer.
  • UST_Common.pas, StoffeUtils.pas: legacy helper utilities.
  • docs/workflows.md: user-visible workflow map for the legacy UI behavior.

Documentation index

Current repo state

  • The repo surface is small and self-contained. There is no automated test suite, but the repo now has focused root docs plus deeper workflow, validation, and knowledgebase companion docs.
  • The checked-in .vscode tasks, launch configs, file nesting patterns, and extension recommendations are aligned to the SSFEdit project surface.
  • .gitignore currently excludes several artifact types that are nevertheless present in the working tree, including .exe, .cfg, .dfm, and .res. Be explicit when intentionally changing those files.

For deeper operational detail, use the topic docs under docs/ rather than expanding the root files as ad hoc catch-alls.

Quick start

Windows

  1. Open USSFEdit.dpr in Delphi 7.
  2. Build the project.
  3. Launch the resulting executable, optionally with a .ssf path as the first argument.

Linux or macOS

There is no native build path in the current repo. If Wine is available, you can run an existing Windows build from the workspace root, for example:

wine ./USSFEdit.exe

or:

wine ./SSFEdit.exe

At runtime the app will still prompt for dialog.tlk before it can load or create SSF content.

About

Delphi 7 SSF editor for KOTOR SSF files

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages