JRLEditor is a Delphi 7 Windows GUI for opening KotOR-style global.jrl journal files and resolving quest text through a dialog.tlk talk table.
The current codebase is best described as a journal inspector with unfinished editing UI. The form can load a TLK file, open a .jrl, list quests, and display quest and stage data. The form also exposes Save, New, Delete, and Search controls, but those code paths are not implemented in UMainForm.pas yet.
- Loads the TLK path from
jrlsettings.ininext to the executable. - Prompts for
dialog.tlkwhen no valid path is configured. - Opens a selected
global.jrlfile. - Reads the
Categorieslist from the GFF root and lists quest tags. - Displays quest metadata such as name, comment, tag, planet, priority, and plot index.
- Displays quest stages and resolves localized text through TLK
StrRefvalues when available.
File -> Save<< Newstage button<< Deletestage button- All search modes in the search dropdown
JRLEditor.dpr: application entrypoint.UMainForm.pas: main form, runtime orchestration, file-open flow, quest/stage display logic.UGFFFile.pas: custom GFF v3.2 parser and writer.UTLKFile.pas: custom TLK v3.0 parser and writer.UST_Common.pas: dialogs, file helpers, conversion helpers, shell helpers.UStrTok.pas: simple delimiter tokenizer used by the GFF helper layer.
- docs/knowledgebase/00-intent/current-state.md
- docs/knowledgebase/10-architecture-runtime/runtime-flow.md
- docs/knowledgebase/20-domain-theory/gff-and-tlk-boundaries.md
- docs/knowledgebase/30-product-ux/journal-inspector-surface.md
- docs/knowledgebase/40-operational-risk/workspace-drift.md
- docs/knowledgebase/50-execution/validation.md
- Building from source is a Windows-host Delphi 7 workflow. The
.dpr,.dof, and.cfgfiles present in this tree are Delphi-era project artifacts. - The
.vscodefiles in this tree are now JRLEditor-specific, but they remain convenience metadata rather than the source of truth for the Windows Delphi 7 build boundary. - The
jrlsettings.inifile present in this tree points at a local Windows installation path and should be treated as an example, not a portable default. .gitignoreexcludes several file types that matter to Delphi UI work, including.dfm,.ddp,.res, and.cfg. Review that before assuming UI or resource edits will show up in diffs.