Jump to content

Modding Tools

64 files

  1. Rakata ModInstaller

    Easily manage, install, and revert loose-file mods.
     
    Features:
    Opens a mod as the zip, 7z or rar it downloaded as, or as a folder you already unpacked. No unpacking first. Works out which files are actually game content. Readmes, screenshots and packaging are left behind, and a mod shipping alternate versions of the same file asks you to pick one. Every install is recorded and can be taken back later. Uninstall leaves a file alone if something has changed it since, so it will not step on a patcher mod's work or on a later mod's. Finds duplicates already sitting in your Override. A name capitalised two ways, or one texture shipped as both a TPC and a TGA. Only one of each is ever loaded, and the game picks it arbitrarily. Shows what every layer of the game holds for a given file, so you can see a loose file quietly shadowing a copy inside a module archive. Finds your installation on its own. Steam, GOG and retail, on Windows, Linux and macOS, for both KotOR 1 and KotOR 2.
    If you play on Linux or a Steam Deck, this fixes something quiet
    Mod builds are ordered lists, and later mods are meant to overwrite parts of earlier ones. On Windows that happens by itself, because the filesystem does not care whether a file is called `Appearance.2da` or `appearance.2da`. On Linux it does care. Both files end up in Override, the game loads whichever one it reaches first, and the overwrite prompt the build guide told you to expect never appears. Your install order silently did not happen.
    This installs by name with a common lowercase filename, so the overwrite you meant is the one you get.
     
    What it does not do (yet)
    TSLPatcher mods. Those do not copy files into place. They merge rows into 2DA files that are already there, add entries to the talk table and write inside module archives. This recognises them and says so instead of half-installing them. Keep using HoloPatcher for those. (for now)
     
    Tested against
    The loose-file mods from the community build lists, and a full modded install.
    Additionally tested on Linux by @Leilukin and on macOS by @FTD Thanks for your help testing!
     
    Requirements
    The window fits a 1280x800 screen, so it works on a Steam Deck without too much squeezing.

    On Windows: Windows 10+ 64-bit
    On macOS: macOS 10.12+ for Intel Macs and 11.0+ for Apple Silicon Macs
    On Linux: Any recent Linux distro with glibc 2.35+
     
    About Rakata
    Rakata is a clean-room Rust workspace for reading, writing and validating KotOR game data, written from scratch against notes taken from the engine rather than from anybody else's code. This installer is one tool built on top of it. It is free and open-source under GPL-3.0, and the source along with the format documentation is at https://codeberg.org/Synchro/rakata
     
    LLM Disclosure
    This project made use of an LLM during development, in the following capacities:
    Brainstorming: exploring possible approaches and design directions Decompilation assistance: help interpreting reverse-engineered code Code comments: refining and clarifying existing comments Skeletons and fixes: generating initial code scaffolding and minor fixes. All LLM-assisted output was modified and reviewed by a human before being committed.

    6 downloads

       (0 reviews)

    2 comments

    Updated

  2. NeoSSF - A Simple Modern SSF Editor

    NeoSSF opens and saves the three SSF layouts currently used by the supported games:   - KotOR / KotOR II `SSF V1.1` StrRef-only tables. - Neverwinter Nights / NWN EE `SSF V1.0` sound ResRef + StrRef tables with 16-byte sound ResRefs. - Neverwinter Nights 2 /NWN2 EE `SSF V1.1` sound ResRef + StrRef tables with 32-byte sound ResRefs.   Loading a TLK is optional. Without a TLK, StrRefs remain editable as numbers and NWN/NWN2 direct `SoundFile` ResRefs remain visible and editable. Loading a TLK only fills the preview text/sound columns.

    27 downloads

       (0 reviews)

    0 comments

    Updated

  3. NeoTLK - A Simple Modern TLK Editor

    Supported TLK families and text encodings
    NeoTLK opens, edits, and saves these native TLK families without converting the file to another layout:
    Classic BioWare TLK V3.0 files, including dense StrRef tables with classic sound metadata.
    Jade Empire TLK V4.0 files, whose compact records use numeric sound IDs.
    Dragon Age GFF V4.0 / TLK V0.2 files, whose string IDs are sparse and whose records contain text rather than classic TLK sound/language metadata.
    All text is normalized to UTF-8 while it is being edited. Classic V3.0 files are decoded per entry as UTF-8, Windows-1252, or Windows-1250, including mixed-encoding tables encountered in the field. On save, NeoTLK writes each classic entry back using its detected original encoding. An edit containing a character that cannot be represented by that entry's original Windows code page is rejected rather than silently replaced or corrupted.
    For Dragon Age V0.2 files, NeoTLK preserves sparse string IDs and the native GFF-backed TLK structure. Language and sound controls that are not represented by that format are disabled. Adding a record prompts for its string ID, and deleting one does not renumber the remaining records.
    The open dialog accepts both .tlk and uppercase .TLK filenames.
    Tabular import/export
    neotlk-cli supports CSV, TSV, XML, and JSON export/import for TLK entries. CSV and TSV are table-style interchange paths and carry StorageFormat, LanguageId, and per-entry TextEncoding metadata alongside the text and sound fields. JSON and XML are complete semantic documents: they retain the native TLK family, language where applicable, sparse StrRefs, flags, text encoding, and all sound metadata supported by that family. XML uses <tlk storageFormat="..." language="..."> with complete <string ...> children.
    CSV/TSV imports merge rows by StrRef into the current/native table, while XML/JSON imports replace the complete semantic document. Structured XML/JSON export is never filtered, because a partial file could be mistaken for a complete importable TLK. Use CSV or TSV to export the currently visible filtered rows. A Dragon Age GFF-backed TLK can be imported into an already-open native Dragon Age TLK, preserving its backing structure, but NeoTLK will not synthesize that native GFF structure from a standalone interchange document.
    The GUI provides matching Import and Export menus, filter/search terms, and copy/paste of entry text or pasted table rows.
    TSLPatcher/HoloPatcher output
    NeoTLK can generate a tslpatchdata package directly from the active in-memory TLK and a clean original baseline. In the GUI, use:
    Export -> Export TSLPatcher Package...
    Export -> Export HoloPatcher Package...
    The stock TSLPatcher mode is append-only. New entries after the original TLK count are written to append.tlk, and changes.ini receives matching StrRefN=N entries in [TLKList]. Existing-entry edits, deletions, language changes, and truncation are rejected because stock TSLPatcher cannot merge those operations safely.
    The HoloPatcher mode also supports edits to existing StrRefs. Those entries are written to replace.tlk, with ReplaceFile0=replace.tlk in [TLKList] and an accompanying [replace.tlk] map from destination StrRef to replacement-file index. This replacement extension is HoloPatcher-specific; a package containing replace.tlk is not compatible with the original TSLPatcher executable. Appended entries still use the stock-compatible append.tlk path.

    32 downloads

       (0 reviews)

    0 comments

    Updated

  4. Neo2DA - A 2DA Editor

    A new 2DA Editor with a few modern improvements:
     
    Import/Export from csv/tsv Creation of TSLPatcher/HoloPatcher data Filtering Copy/Paste Dark mode Add columns, not just rows.

    78 downloads

       (0 reviews)

    5 comments

    Updated

  5. NeoERF - A Simple Modern ERF Extractor & Editor

    ERF-family game support
    NeoERF supports legacy ResRef/type-keyed archives and the filename/hash-keyed Dragon Age containers:
    KotOR/KotOR II and Jade Empire ERF/RIM/MOD-family archives remain the default behavior. Jade Empire has several resource-type names that differ from KotOR for the same numeric type IDs. NeoERF keeps KotOR names as the default and adds a Jade Empire profile for listing, extraction, deletion, and authoring: View > Resource Profile. Use the Jade Empire profile when working with Jade Empire archives so resources such as .itm, .cre, .mat, .mab, .ndb, .xwb, .xsb, .bip, .ttc, and .sac are rendered and authored with the names used by the Jade Empire engine.
    Neverwinter Nights and Neverwinter Nights: Enhanced Edition use the NWN resource-name profile with ERF V1.0 containers such as .erf, .mod, .hak, and .nwm.
    Neverwinter Nights 2 uses the NWN2 profile with ERF V1.1 32-byte ResRefs. Existing NWN2 .mod and .hak archives preserve V1.1 on save; newly created archives use V1.1 when --game nwn2 is selected. The NWN2 profile includes .trx terrain resources.
    The Witcher 1 .mod archives use the Witcher resource profile while keeping the ERF V1.0 container layout.
    Dragon Age: Origins ERF V2.0 archives use UTF-16LE filenames in the table of contents instead of ResRef/type keys. This includes DAO files with .erf and .rim extensions when the on-disk header is ERF V2.0. Add/extract/delete operations address these resources by full leaf filename, for example 2da_base.gda.
    Dragon Age: Origins ERF V2.2 archives use the same UTF-16LE filename key shape plus archive flags and packed/unpacked TOC sizes. Unencrypted compressed payloads using scheme 1 (BioWare zlib wrapper byte plus raw DEFLATE) and scheme 7 (headerless raw DEFLATE) are readable/extractable. Saving a compressed V2.2 archive recompresses inserted/replaced resources and preserves scheme 1 vs scheme 7. --type DAO22/ERF22 creates compressed V2.2; --type DAO22U/ERF22U creates uncompressed V2.2.
    Dragon Age II ERF V3.0 archives use FNV name/type hashes and optional string-table names. This includes DA2 .erf, .rim, .rimp, .crf, and GPU .rim containers. Compressed scheme-1 and scheme-7 payloads are decompressed on extraction and are rewritten as uncompressed V3.0 payloads; stripped-name entries are exposed through their hashes such as: hash_905e15b30a2028fb.dds.

    TSLPatcher/HoloPatcher resource packages
    For KotOR/KotOR II ERF V1 and RIM V1 archives, NeoERF can compare a clean archive with a modified archive and create a complete stock-compatible [InstallList] package:
    New resources are emitted as InstallN; changed resources are emitted as ReplaceN, with each payload extracted beside changes.ini. The GUI exposes the same workflow under Export > Export TSLPatcher/HoloPatcher Resource Package....

    36 downloads

       (0 reviews)

    0 comments

    Updated

  6. KOTORganizer MO2 Plugin

    ## Quick Setup 1. Download the Latest Archive version of **Mod Organizer 2 Beta 2.5.3** from the MO2 Discord and extract it somewhere with plenty of free space. 2. Download the **KOTORganizer plugin** and extract it into your MO2 folder. 3. Launch MO2 and complete the first-time setup: * Choose **KOTOR** or **KOTOR 2** as the game. * Choose **portable instance**. * Login to your nexus account, in the settings. 4. Open the **Sync** tab on the right side of MO2. 5. Click **Refresh** to pull the latest mod build instructions. 6. Click **Download All** and wait for the downloads to finish. * Some downloads will open in your browser and require you to click the download button manually. 7. Once all downloads are finished, click **Refresh** again to validate the files. * If any files are missing or mismatched, download them again. 8. When all files are validated, click **Sync** to install the mod list. * This may take some time. * The process is complete when the patcher window shows the final error and warning count. 9. Click **Run** to start the game. NOTE: The following are not included and will need to be patched/installed manually: - Widescreen Patches for KOTOR - 4GB patches for both games - 3C-FD Patcher for KOTOR2 - Upscaled Movies for KOTOR and KOTOR2 KOTORganizer MO2 Plugin
    KOTORganizer extends Mod Organizer 2 for both STAR WARS Knights of the Old Republic and STAR WARS Knights of the Old Republic II: The Sith Lords.
    Why Mod Organizer 2?
    Mod Organizer 2 already provides a stable foundation for mod management across many games. Extending it for Star Wars: Knights of the Old Republic and Star Wars: Knights of the Old Republic II: The Sith Lords gives KOTOR modding access to MO2’s biggest strength: the virtual file system.
    With MO2, the game sees modded files as if they are in the game directory, while the real game folder stays untouched. This keeps the base install closer to vanilla, makes mods easier to enable or disable, and gives better visibility into how files overlap or conflict.
    MO2 does have a learning curve, but for advanced KOTOR/KOTOR2 builds, the extra structure is worth it.
    Who Is This For?
    This plugin is mainly intended for larger KOTOR/KOTOR2 mod builds, repeatable installs, and users who want better insight into file conflicts.
    An auto downloader and installer is included to easily deply the Mod Builds from https://kotor.neocities.org/
    If you only install a few simple loose-file mods, this may be more tool than you need. If you are building a large mod list with many TSLPatcher mods, texture overrides, and compatibility concerns, MO2 provides a much cleaner workflow.
    Installing
    Mod Organizer 2.5.3 Beta is required. The current unreleased beta builds include features that KOTOR support depends on.
    A beta build can be acquired from the Mod Organizer 2 Discord in the dev-build channel. Development has been more active recently, so an official release should be available soon.
    Once you download and extract MO2, download and extract KOTORganizer to the MO2 directory. Launch ModOrganizer.exe and you can verify the plugin is loaded by opening the Info tab on the right.
    The sync tab can download and install the mod builds from https://kotor.neocities.org/
    Texture Management
    KOTOR uses several texture-related file types, including .tpc, .tga, .dds, and .txi. MO2 normally only detects exact filename conflicts, but KOTOR has additional texture priority rules that can cause problems even when the extensions differ.
    The texture management tab helps bridge that gap. It detects conflicts across supported texture formats and highlights them by severity. The highest-severity conflicts are cases that may cause hard crashes in-game. Lower-severity warnings include cases where a .tpc takes priority over a .tga or .dds unexpectedly.
    An Auto Fix button is included to resolve supported texture conflicts based on the current MO2 mod priority order.
    TSLPatcher Management
    Many KOTOR mods use TSLPatcher-style installers instead of simple loose-file installs. The patcher tab lists enabled mods that contain a tslpatchdata folder and can consolidate their patched output into a single MO2-managed mod.
    Double-clicking a patcher mod shows more detail, including:
    the changes.ini parsed human-readable install actions detected conflicting patch actions the latest install log A test tab is also available for simulating or testing a single mod install before running the full patcher process.
    When the patcher process is run, enabled patcher-style mods are processed in priority order and consolidated into a [PATCHER FILES] mod in MO2’s left panel.
    Automatic Mod Deployment
    The sync tab is designed to help download, validate, and install mod builds that follow the instructions from the KOTOR Mod Builds site.
    The Refresh button pulls the latest instruction set and checks for missing files. Download All starts downloading missing mods in sequence.
    Nexus Mods downloads require logging in with a Nexus account inside MO2. Deadly Stream mods can be downloaded automatically when supported. Mods from other sources open in an Edge browser window, where the user only needs to click the download button. The browser window closes automatically after the download completes.
    Downloads can still fail. Servers can be slow, unavailable, or inconsistent, and some files may need to be retried manually.
    Once all files are validated through Refresh, the Sync button becomes available. Sync extracts the downloaded files, runs the multi-patcher, and applies supported texture conflict fixes. When the patcher summary appears with the number of errors and warnings, the process is complete.
    Manual Mod Installing
    KOTOR mods are often packed inconsistently. The plugin includes a KOTOR-specific mod data checker that recognizes common archive layouts and can fix many of them automatically.
    This is especially useful for loose-file mods and patcher-style archives that would otherwise require manual cleanup before MO2 can install them correctly.
    Steam Workshop Warning
    If the game is installed through Steam and Workshop content is detected, the plugin warns the user.
    The intended workflow is MO2-managed content, not a mixed MO2 plus Steam Workshop setup. Mixing both can make conflicts harder to understand and can lead to unexpected file priority issues.
    Save Support
    The plugin integrates the game’s saves folder into MO2. Save entries can show timestamps, basic metadata, and screenshot previews.
    Profile-specific saves can also be enabled through MO2 settings.
    Limitations
    This plugin is meant to reduce repetitive setup work, improve conflict visibility, and make large KOTOR/KOTOR2 builds easier to manage. It does not remove the need to read mod instructions.
    Mods with unusual installers, custom compatibility patches, manual edit requirements, or unsupported archive layouts may still require manual review.

    313 downloads

       (2 reviews)

    0 comments

    Updated

  7. Kotor AutoTranslate Tool

    Translate an entire mod or KOTOR install to 80 languages using Google Translate!
    This is a very powerful tool that can modify TLK strings and CExoLocStrings in GFFs in bulk quickly. Simply follow the prompts, point it to the GFF/TLK/Kotor directory/whatever and have it automatically translated to the language of your choice!
    This tool can also create those bitmap 'font packs' that users have been using to play the game in non-released languages (Many thanks to Drazgar and DarthParametric for providing the insight into the TXI files). This means the in game text will show the correct characters when playing the game.
    How to use:
    Simply run the executable. It'll ask you many things. There are 3 actions you can do with this:
    Set all dialog unskippable       sets all dialog found in dlgs, at the chosen path, to unskippable. Includes every node. Not recommended lol
    Translate                                     Will translate All CExoLocStrings (localized strings) and TLK entries at the path to the language(s) of your choice
    Create Fonts                               Will create fonts of the chosen languages to your current directory in a folder named after the language. Just drag and drop these files to your Override folder once it completes.
    If you point PATH1 to a KOTOR install, it will ONLY patch the Override folder, the Modules folder, the rims folder (if exists), and the dialog.tlk file. This was a design choice to improve how long the patcher takes to finish. This includes any subfolders within the aforementioned folder names.
    The patched files will be in the same directory as the original files with the appended language suffixed to the end of the file. For example, 'dialog_de.tlk'. You will need to rename them as their original filenames to activate them.
    Supported filetypes/formats:
    TalkTable files (TLK) Any GFF file (DLG, UTC, etc) TGA/TXI (non-translateable obviously) Any capsule (ERF, MOD, etc)  
    DBCS languages such as Japanese/Korean/Chinese are not currently supported.
    This program is in beta. Please report any bugs you encounter.
     
    Source code:
    https://github.com/NickHugi/PyKotor/tree/master/Tools/BatchPatcher
     
    Credit:
    @Cortisol for creating the PyKotor library
    @DarthParametric for extensive testing and feature recommendations.
    @Drazgar for providing a ton of knowledge in regard to the TXI/TGA font packs
    The project would not be possible without these awesome modders.
    K1-translated dialog files:
     

    997 downloads

       (4 reviews)

    2 comments

    Updated

  8. Holocron Toolset

    This modding toolset is a work in progress and I carry no responsibility to any damage done to your game files or lost work that may occur. Some antiviruses will flag a false positive and prevent you from opening the application. If this happens you will need to configure your antivirus to allow the program to run.
    Holocron Toolset is a collection of modding tools packaged in a single application aimed at streamlining modding development for KotOR/TSL, drawing inspiration from Kotor Tool and the NWN Aurora Toolset. There are editors available for nearly every file type used by the game. Also included with it is a 3D module editor and a "Map Builder" which the user can use to create new maps by rearranging existing models already used in the game.
    Discord for suggestions + bug reports: https://discord.com/invite/3ME278a9tQ
    If you are running Windows 7 or 8 and get a missing DLL error when opening the program you will need to download the Visual C++ Redist from Microsoft.
    Toolset source
     

    3,684 downloads

       (12 reviews)

    20 comments

    Updated

  9. Texture Conflict Checker

    Texture conflict checker for K1 and K2. Place in your game directory and open it. It will list all conflicting textures, in the override folder, and allow you to choose which version to keep. Unwanted textures are moved to a texture_duplicates folder and can be restored through the tool.

    Source: https://github.com/J0-o/kotormods/tree/main/Texture Conflict Checker

    122 downloads

       (1 review)

    0 comments

    Updated

  10. KotorBlender for Blender 3.6 and 4.2

    Blender addon for working with KotOR assets.
    Features:
    Import & export MDL models, including animations and walkmeshes Import & export LYT files Import & export PTH files Lightmap texture baking Area minimap rendering For installation and usage guides, see README in the GitHub repository.

    4,208 downloads

       (4 reviews)

    1 comment

    Updated

  11. Colour Code Executable Patcher for SWKotOR2

    Relish in the fact that you can now make the dialog text and highlight text colours whatever you want them to be!
    With just the press of a button this tool will update the hard coded values within the executable for you!
    Limitations imposed upon the Aspyr version of the game are that the Red value for the dialog text must lie between 8 & 31.
    But there is no issue when updating the legacy versions of the game, provided you use the editable executable as I don't support editing the executable that comes with LegacyPC Steam or the Disc version of the game as they are slightly different, but the editable executable is essentially identical.
     
    I made this tool to automate updating the hard coded colour codes contained in the executable for SWKotOR2.
    Requires .NET 8.0!
    Just put it in the game folder, next to the swkotor2.exe file and it will detect which version of the game you have when you click patch.
    It detects what version of the game you have by checking for certain files, check the source code if you want to know more.
     
    I advise against patching all the colours at once, but I provided an option just in-case anyone wanted to do this.
     
    I also suggest looking at my written documentation, some values such as text highlight effect one another and the various different versions of the game are all slightly different, it's also possible that I have things slightly wrong here and there, feel free to let me know if you find out more.
    More information on patching the values manually can be found in my tutorials here : https://deadlystream.com/topic/6886-tutorial-kotor-modding-tutorial-series/
    In Tutorial : "24 - [ADVANCED] - Hard Coded GUI Elements"
     
    For Steam LegacyPC users and users of the original Disc version of the game, please use the editable executable which can be found here : https://deadlystream.com/files/file/1321-kotor-2-editable-executable/
    I released a new version on GitHub, functionally it is practically identical, I just removed the "Patch All" option and made a slight improvement to the way it detects the version of the game, there's no real need for me to update the version here as it is just an improvement to the code for the program.
    Source code for the tool can be found here : https://github.com/Thor110/HexColourSlider
     
    Thor110
     

    68 downloads

       (0 reviews)

    0 comments

    Updated

  12. SotOR Save Editor

    SotOR: Saves of the Old Republic
    A new save editor for KotOR 1 and 2
    Warning
    SotOR is a pathway to many abilities some consider to be unnatural, and generally lacks sanity checks, potentially allowing you to break the save. Also there are bugs, probably.
    It creates a zip with the previous version of the save in it's directory, but you may still want to back it up manually.
    May or may not work with saves from non-English versions of the game. Use at your own risk.
    Differences from KSE
    Aims to provide the same features and more. Currently WIP. Runs natively on Windows, Linux and in the browser (experimental, using wasm). Mac version should work, but pre-built releases won't be available here. Uses a built-in game database, allowing it to work wihout the game installed. Still capable of loading provided game files for your modding needs. Provided releases assume KotOR 1 Community patch and KotOR2 TSLRCM. Support for the updated steam version of TSL, including workshop. Does NOT support xbox and switch saves. See "Contributing" section. Contributing
    If you encounter a bug or have a suggestion, please open an issue on github.
    I would like to add support for the console versions, but I don't own any of them. If you're willing to provide save files and help with testing, please open an issue.
    Thanks
    Thanks to KSE , NWN Wiki, KotOR.js and xoreos projects for providing references on where and how to get the required game data.
     

    1,080 downloads

       (0 reviews)

    0 comments

    Updated

  13. Lightweight GUI Patcher

    A very simple CLI-based tool that'll take a folder of GUIs made for one resolution and patch them to work for another resolution. Please report any bugs.
    Simply input the path to the GUI file (or folder of GUI files) and the output location, your desired resolution, and let it work.
    GUI Resizer CLI Tool
    Overview
    This is a simple command-line interface (CLI) tool designed to adjust and scale GUI (Graphical User Interface) files based on different screen resolutions. The tool reads `.gui` files from the popular game Star Wars: Knights of the Old Republic and adjusts the layout to fit various resolutions and aspect ratios. It supports multiple resolutions and can handle batch processing of files.
    Features
    Multi-Resolution Support: The tool can adjust GUI files to fit several resolutions across different aspect ratios, such as 16:9, 16:10, 4:3, 5:4, 21:9, 3:2, and 1:1. Batch Processing: You can process multiple GUI files at once, making it easy to adjust a whole directory of files. Logging: Outputs logs to track the processing of files, including which resolutions were processed and where the output files are saved. Cross-Platform: Works on Windows, Linux, and macOS with Python 3.8+. Usage
    Basic Command
    To run the tool, use the following command:
    python3 gui_resizer.py --input <input-path> --output <output-path> --resolution <resolution> Parameters
    --input: The path to the `.gui` file(s) you want to process. You can specify a single file or a directory containing multiple `.gui` files.
    --output: The directory where the processed files will be saved.
    --resolution: The target resolution(s). Use the format `WIDTHxHEIGHT` (e.g., `1920x1080`). You can also specify `ALL` to process all common resolutions.
    Example
    To convert all `.gui` files in the directory `input_files/` to fit a 1920x1080 resolution and save them to the `output_files/` directory, run:
    python3 gui_resizer.py --input input_files/ --output output_files/ --resolution 1920x1080 Logging
    If logging is enabled, a log file named `output.log` will be created in the specified output directory. This file will contain details of the processing operations performed.
    How It Works
    1. Input Handling: The tool takes in `.gui` files or directories containing these files and reads them using the `pykotor` library.
      
    2. Resolution Scaling: The tool scales the GUI elements based on the specified target resolution(s). It calculates scale factors based on the original dimensions of the GUI and applies these factors to resize elements accordingly.
    3. Output Generation: The processed GUI files are then saved to the specified output directory, organized by resolution.
     
    Credit:
    Cortisol for PyKotor (90% of the code)
    DarthParametric for testing and brainstorming the idea

    152 downloads

       (1 review)

    0 comments

    Updated

  14. Knights of the Old Republic Character Generator

    A program to generate a character at random to play with in Kotor 1 and Kotor 2
     
    Also available in Browser https://animal31.itch.io/kotorgenerator

    1,992 downloads

       (3 reviews)

    0 comments

    Updated

  15. HoloPatcher

    HoloPatcher is replacement for the old TSLPatcher tool. HoloPatcher offers an alternative that makes installing mods faster and is backwards compatible with any previous mods using TSLPatcher.
    For more inforrmation see:
    Installing mods with HoloPatcher Information for mod developers HoloPatcher is open sourc and can be found on GitHub.
     

    20,060 downloads

       (3 reviews)

    7 comments

    Updated

  16. reone toolkit

    toolkit is a GUI application that can be used to preview, extract, edit and create KotOR and TSL resources. Part of reone engine project.
    ## Features
    Extract BIF, RIM and ERF archives Create RIM, ERF or MOD archive from directory Preview and export almost every resource type, including 3D models, images and audio files Export TPC as TGA / TXI Export encoded WAV as regular WAV / MP3 Visually edit 2DA, GFF, TLK, LIP, SSF, NCS and plaintext files Decompile NCS to NSS-like pseudocode Compose LIP files from text and audio files https://github.com/seedhartha/reone/wiki/Tooling

    832 downloads

       (2 reviews)

    0 comments

    Updated

  17. KotOR II Switch modding framework

    For full details, usage instructions, and bug reports — please use the GitHub project associated with this file.
                                       
    This project is a group of tools to make modding the Nintendo Switch version of Star Wars: Knights of the Old Republic II (aka. KotOR II) easier, less confusing, and less cumbersome.
    With these tools, we can now finally enjoy mods like The Sith Lords: Restored Content Mod (and others) on Nintendo Switch!
    These scripts are by no means necessary, but they will help prevent common issues that can occur, especially when dealing with Aspyr's odd file structure in their port, the port's built-in .tpc override files, and the localized folder structure on the Nintendo Switch.
    Based on and inspired by jacqylfrost's work! Appreciate your insight as I worked through this.
    NOTE: these modding tools will ONLY work for modded Nintendo Switches.

    510 downloads

       (0 reviews)

    0 comments

    Updated

  18. knsscomp

    The knsscomp application is intended to be a cross-platform alternative to the various versions of nwnnsscomp that support compiling scripts for KotOR.
    If you are using Windows, I would recommend sticking with nwnnsscomp as that is the far more tested and stable solution for compiling script files. That is unless you wish to aid in the development, then continually using knsscomp will help find out bugs and make it stabler program overall.
    If you do encounter an issue with a compiled (such as the script not working the way intended in-game) and you have access to nwnnsscomp, then it is recommended to see if it works correctly if compiled with that program instead. If you believe the issue is with knsscomp itself, send the script file to Cortisol on Deadlystream or Discord and he will investigate.
    This compiler has the include scripts and nwscript data embedded within the program and so it is not necessary to bundle them in the app folder. You can, however, include nwscript with the knsscomp as a way of the program automatically determining what game version.
    The optimize flag currently does nothing and is there as a placeholder for future versions to use.
     

    86 downloads

       (0 reviews)

    1 comment

    Updated

  19. SithCodec

    Introduction
    The audio files of Star Wars: Knights of the Old Republic and Star Wars: Knights of the Old Republic II – The Sith Lords (KOTOR) contain extra headers of what seem to be superfluous data that obfuscate access to the original audio outside of the video games. Most audio software will refuse to open the files, or interpret the extra bytes as audio data, leading to glitches. It has also been observed anecdotally that files lacking an appropriate header may fail to playback in certain releases of the games.
    SithCodec is an application that can automatically detect and remove an extraneous header from a KOTOR audio file, or alternatively prepend a KOTOR header to a standard audio file and allow for the introduction of new audio content to these games.
    Running SithCodec
    SithCodec requires Windows (32-bit or 64-bit). Make sure to extract SithCodec to a folder where you have read & write permission. The code is not signed (because code signing costs an extortionate amount of money) so your firewall may warn you about running an unrecognized application. Commands
    Commands in SithCodec are executed by combining keywords into certain command sequences that the application recognizes. Input may be passed as command-line arguments when SithCodec is launched, or entered manually through a command- line interface if the application is launched without any command-line arguments.
    Keywords may be entered in short form (dash followed by a single letter) or long form (double dash followed by a full word).
    SithCodec keywords are not case sensitive, but—depending on your operating system—other data that you input may be, such as the names of files.
    Help Screen
    Entering -h or --help will display the help screen, showing a list of all keywords and their function.
    -d, --decode decode audio -e, --encode encode audio -f, --format set output audio format -m, --music streammusic format -s, --sfx streamsounds format -v, --vo streamwaves/streamvoice format -a, --all all files -l, --list list files & formats -i, --in input path -o, --out output path -h, --help display this menu -c, --commands display list of commands -x, --examples display example commands -q, --quit exit application Commands Screen
    Entering -c or --commands will display a screen with the list of all valid commands.
    -d -i=[input path] -d -i=[input path] -o=[output path] -d -a -d -a -i=[input path] -d -a -o=[output path] -d -a -i=[input path] -o=[output path] -e -f -[format] -i=[input path] -e -f -[format] -i=[input path] -o=[output path] -e -a -f -[format] -e -a -f -[format] -i=[input path] -e -a -f -[format] -o=[output path] -e -a -f -[format] -i=[input path] -o=[output path] -l -l -i=[input path] -l -o=[output path] -l -i=[input path] -o=[output path] Examples Screen
    Entering -x or --examples will display some example commands.
    Encode all files in SFX format from the input path, to the output path:
    -e --all -f --sfx- -i=in_folder -o=out_folder  Decode a file, outputting to a new file:
    -d -i=oldfile.old -o=newfile.new Decode a file without specifying output, possibly overwriting the original:
    -d -i=file.wav List all files & formats in a given directory, printing to the console:
    -l -i=my_folder List all files & formats in the current directory, printing to a file:
    -l -o=file.txt Batch Files
    SithCodec comes with batch files that are set up with commands for some common operations.
    decode.bat
    This file will decode all files located in a folder called "in" (no matter what their format) and save the new files in a folder called "decoded".
    encode_music.bat
    This file will encode all files located in a folder called "in" and save the new files in a folder called "music".
    encode_sfx.bat
    This file will encode all files located in a folder called "in" and save the new files in a folder called "sfx".
    encode_vo.bat
    This file will encode all files located in a folder called "in" and save the new files in a folder called "vo".
    Copyright
    SithCodec is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
    SithCodec is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
    You should have received a copy of the GNU General Public License along with SithCodec. If not, see https://www.gnu.org/licenses/.
    All trademarks (including logos and icons) are used for identification purposes only and are the property of their respective owners.
    Star Wars and related items are trademarks and/or copyrights of Lucasfilm Ltd. SithCodec is not affiliated with or endorsed by Lucasfilm Ltd., their subsidiaries, associates, or employees, or any Star Wars license holder.
    Donations
    If you enjoy my mods and would like to show your support in a monetary manner, you may do so via PayPal with this donation link.
    For various legal and ethical reasons, this is entirely optional and is not a requirement to downloading or using any of my mods. I also do not create specific mods for hire.
    I make mods as a hobby and will most likely do so regardless of any donations or lack thereof, but modding does take up a lot of my time and every bit helps.

    1,302 downloads

       (8 reviews)

    0 comments

    Updated

  20. SaberMaker for KotOR and TSL

    This is a simple Python utility that lets you create new lightsaber textures for KotOR and TSL. Note that (especially in KotOR) creating a new lightsaber colour requires more steps than this - a future project will make this a one-click process for users, but for now I'm releasing this as a standalone tool for mod developers.
    Installation
    You should have Python 3 installed. There are no other dependencies. Just download and unzip the zip archive from this page, and you should be good to go!
    I'll be releasing a Windows .exe version at some point. If you're not comfortable using the Python script, either wait for that or ask me (or one of the many helpful people on DeadlyStream) to make your lightsaber textures for you.
    Usage
    Run the script editor.py using Python, with a command like
    "python editor.py".
    This will open up the editor. You can choose the glow and core colours for the saber texture, and then save it using one of the bottom two buttons. The texture will then be saved in the current directory.
    Bugs
    There might be some bugs, but it's a pretty simple script and it seems to work fine.
    FAQ
    The lightsaber looks dark in-game!
    For a bright lightsaber, you should select a colour with both Saturation and Brightness parameters set to 100% (in the second tab in the colour picker). Then you can use the Hue slider to choose a colour.
    Can I use this for my mod?
    Sure, feel free to use the textures for your own mods! I'd appreciate it if you credit this tool for helping create the lightsaber textures.
    Can I redistribute this program in its entirety (with or without attribution)?
    Please don't redistribute this program elsewhere on the internet. I will keep it here, so you can point people to it.
    How do I take this texture and put it straight in the game (not as part of a mod)?
    I'm working (along with others on DeadlyStream) to make an "end-user version" of this tool, as part of a larger modding project. Stay tuned!
    The lightsaber core looks weird!
    You should probably leave the "Core" colour to its default value (pure white) to get lightsabers that look like the ones from the base game. But if you want to experiment, the option to change the core colour is there!

    238 downloads

       (1 review)

    1 comment

    Updated

  21. KotOR Scripting Tool - 2021

    About Kotor Scripting Tool
     
    Kotor Scripting Tool is my attempt at a scripting interface for nwnnsscomp.exe.
    I originally designed this tool to aid me in my scripting efforts back in the day. My desire was to create a scripting tool with some of the creature comforts that today's coders have come to expect. The core features that were important for me were the ability to have NWScript function name Auto Completion and Syntax Highlighting. If anyone is interested in helping to extend its functionality be sure to check out the link to the GItHub repo below.
    Anyways that's enough rambling for now!
    Happy Modding!
     
    Features include:
    Compile .nss Scripts
    Syntax highlighting
    AutoComplete Suggestions (Beta)
    Tabbed Text Editor
    Advanced Find & Replace
    Browsable nwscript function list
    Browsable nwscript constants list
     
    Zip Archive
    Download and extract the zip file. Once extracted navigate to the directory and run Kotor Scripting Tool.exe
     
    This program was compiled in C# with version 4.0 of the .NET Framework if you do not already have it downloaded you will need to download it [here].
     
    The source code has been released on my GitHub account https://github.com/KobaltBlu/KotOR-Scripting-Tool.
     

    3,649 downloads

       (6 reviews)

    2 comments

    Updated

  22. tga2tpc

    tga2tpc
    Author: ndix UR
    Release: Sep 2020
    Version: 4.0.0
    Convert TGA images to TPC format for use in KotOR and TSL.
    TPC files contain the information from a TXI file (so the TXI file is no longer needed when a TPC file is used), and can be uncompressed or compressed with either DXT1 or DXT5.
    Advanced features like animation and cubemap layering are initiated by the presence of specific TXI directives like cube 1 and proceduretype cycle.
    For some reason, the game really wants normal maps to be in TPC format. This will let you create and use full 32-bit color normal maps without having to make them into simple height maps by using indexed color.
    The tool is free, open source, and cross-platform. Code is available at https://github.com/ndixUR/tga2tpc
    The app is written in javascript, built on Electron using three.js, jquery, bootstrap. It includes a ported version of the AMD/GPUOpen Compressonator image compression library.
    ============================================================
    How do I set it up?
    Windows: unzip the package, run tga2tpc.exe
    Mac: unzip the package, move tga2tpc.app to /Applications, run it
    * This is not a signed application, so you have to do whatever is required to run non-MAS applications on your MacOS version.
    ============================================================
    How do I use it?
    Drag files in and hit start. There shouldn't be much more to it than that. Using power-of-2 sized textures is always required for optimal quality, TXI information is optional, and the settings are pretty much self-explanatory. The nature of TPC alpha blending is not necessarily intuitive so you may need to seek information to use it properly.
    Compressor settings:
    Super Fast - the lowest quality setting, uses the pre-4.0.0 image compressor that includes the 'compression failure' error for long conversion queues Fast - Bare bones setting Normal - Runs two profiles and selects the best result, adaptive color weighting Slow - Deeper refinement of the color palette for each 4x4 pixel block Ultra - 3D refinement of the color palette for each 4x4 pixel block How Automatic encoding mode selects encoding for each texture in the queue:
    24bpp TGA = DXT1 32bpp TGA = DXT5 8bpp TGA = 8bpp uncompressed isbumpmap1 or compresstexture 0 in TXI data = 24 or 32bpp uncompressed ============================================================
    Features
    Create cubemaps Create animated textures Automatic compression selection based on trends from the vanilla game High quality DXT1/5 compression engine using custom ported version of AMD/GPUOpen Compressonator Multi-core image compression on systems with 4 or more cores Horizontal/Vertical flip, for those pesky wrongly oriented TGA files Bicubic downsampling for mipmaps (precomputed lower detail versions of the texture, part of the TPC format) Control texture alpha blending setting (part of TPC format), can be loaded from TXI file comments of the form: "# alphablending 0.67"
    Known Issues
    Cannot create uncompressed animated textures. Super Fast compressor has a memory leak issue, leading to errors for long conversion queues Using 4:1 and wider size ratios for individual frames of animated textures seem to crash the game. 2:1 is fine, 1:4 is fine, etc. Only for converting from TGA to TPC. For TPC to TGA, use Kotor Tool, xoreos-tools, tpcview, etc. Progress bar doesn't update as often as you might want. The package size is large. This is the cost of easy cross-platform GUI support. All electron applications are large like this. You are likely to have problems trying to read TGAs from folders containing markup entities/encoded characters (like ') ============================================================
    Thanks
    DarthParametric for inciting the creation of this tool, and doing the testing.
    DrMcCoy and all the contributors to xoreos, whose TPC decoding implementation provided the basis for the TPC library herein.
    bead-v for moral support.

    2,676 downloads

       (4 reviews)

    6 comments

    Updated

  23. CSLU Toolkit (No Online Licensing)

    Previous versions of the CSLU Toolkit could not be installed without an active licensing server. This was unavailable for almost two years. This program has been modified by myself and the original authors to allow for an installation without CSLU's servers being active.
    This program is required to create .phn files used for new .lip files.
     
    Instructions
    ------------
    1. Copy "CSLU Toolkit" folder to the following destination: "C:\Program Files (x86)\"
    2. Open command prompt as administrator!
    3. Change directory to "C:\Program Files (x86)\CSLU Toolkit" (command is: "CD C:\Program Files (x86)\CSLU Toolkit")
    4. Run setup.bat (command is "setup.bat")
     

    365 downloads

       (1 review)

    0 comments

    Updated

  24. 2DA Editor Alpha

    Just a little 2DA Editor I've been working on for a few months. Has a few neat features that the Kotor Tool one doesn't have like:
    - copying/pasting cells
    - search/filter
    - backup format in case of catastrophic file write failure
     
    Credit to @JCarter426 for an awesome logo 👍

    4,920 downloads

       (2 reviews)

    3 comments

    Updated

  25. KOTOR Dialog Editor

    This is a visual dialog editor for KOTOR and TSL. It's currently in alpha, so if you're planning to use it for your mods just be aware that there might be (i.e. will be) bugs.
    COMPATIBILITY
    I am unaware of any compatibility issues with the DLGs created by this editor, but that doesn't mean there aren't any because this is an early alpha release. Please let me know if you experience any issues.
    INSTALLATION STEPS
    1. Download the ZIP file, and unzip it into a folder (it doesn't create one on its own - I hate it when zips do that ).
    2. Copy your "dialog.tlk" into the folder alongside the file "app.exe" - I included the "dialog.tlk" file for KOTOR (as "kotor.tlk"), and for TSL (as "tsl.tlk"), but if you're using any mods which edit "dialog.tlk" for the game you're working on (e.g. using TSLRCM), you'll need to replace it with your own copy. You can find the "dialog.tlk" file in the same folder as the base executable for your KOTOR/TSL installation. If it's for KOTOR 1, rename the copy of "dialog.tlk" you put into your app folder to "kotor.tlk". If it's for TSL, rename your "dialog.tlk" to "tsl.tlk". Don't change the name of dialog.tlk inside your actual KOTOR/TSL installation, as that will break the game. Only change the name of the version you copied into the KotOR Dialog Editor install directory (alongside "app.exe").
    34 Run "app.exe"
    UNINSTALLATION
    Delete all the downloaded files.
    USAGE INSTRUCTIONS
    General Usage
     - Create a new dialog file (for KOTOR 1) by pressing the "New" button, or open an existing DLG file using "Open"
     - Save dialog files using the "Save" button (there's no auto-save, nor does ctrl-s work - I'll make it work eventually)
     - Once you open a dialog file, you'll see some panels:
         - The top-left panel contains the "actions" list, which is a set of actions you can currently take.
         - The bottom-left panel contains "link" information when you select a response which is linked to the current response.
         - The top-middle panel contains NPC dialog (entries)
         - The bottom-middle panel contains player dialog (replies)
         - The right panel contains metadata for the selected response (strref, text, script, etc.)
    Some Important Terminology
    To understand what the actions do, you'll need to know the following terminology (some of which I made up, so please read this even if you're a pro):
     - Response: A line of dialog, spoken either by an NPC or the player (I sometimes call this a "node" too)
     - Entry: A line of NPC dialog
     - Reply: A line of player dialog
     - Start: A possible entry point for the dialog (always points to an entry, never a reply)
     - Link: Responses are linked to one another through "links"
     - Metadata: The general dialog data (things like the script that should run when the dialog ends, etc,.)
     - Selected response: The response which is highlighted in orange - this is preserved when navigating (until you select something else)
     - Current response: The response you last navigated into.
     - Copied response: The response you last selected "Copy Selected Node" on.
    Actions:
    The panel in the top-left corner contains a list of actions you can perform to edit your dialog. I'll try to describe the actions as well as I can here, but honestly the best way to learn the software is just to try it out:
     - Back To Start: Go back to the start of the dialog you're currently in
     - New Response: Create a new response (either an entry or a reply, depending on context)
     - Unlink Response: Removes the link between the selected response and the current response
     - Copy Selected: Sets the selected response as the copied response
     - Paste Into Start: If you have an entry as your copied response, and have selected a start response, it makes the start response point to the copied response
     - Paste As Link (Link): Adds a link from the current response to the copied response
     - Move Selected Up/Down: Moves the selected response up or down (respectively) by one level in the dialog evaluation order (for player dialog, this changes the order of the dialog lines they can choose from; for NPCs, the first line in the evaluation order whose "Active" script is either blank or returns TRUE is selected as the NPC's line)
     - Step Back/Forward: Move back/forwards in your dialog history (so you can easily go in/out of replies without restarting the dialog)
    FAQ
    I did x and it crashed/broke my DLG/set my PC on fire
    Yeah, this is alpha software and I need some people to test it out. Please let me know what broke the software so I can fix it.
    I'm clicking responses but nothing's happening
    You need to select responses for both the player (the bottom screen) and the NPCs they're talking to (the top screen). If this info doesn't fix your problem, let me know so I can look into it.
    I can navigate through the dialog, but how do I edit things?
    You left click on dialog lines to navigate through them, or right click on them to "select" them. Once a line is selected, you can edit it in the window to the right, edit the link between it and the current dialog node on the bottom-left panel, or copy it to another node by navigating to that node and pressing "Paste Into Current (Link)".
    The navigation seems to work, but I can't see the actual dialog text
    Make sure you have the correct "dialog.tlk" file in the same folder as "app.exe". If this doesn't solve the problem, please let me know so I can look into it.
    Cool app. Ugly, though...
    Yeah, I'm working on it, and I'm open to suggestions for making the UI cleaner/better/easier to use.
    DLGEdit's faster to use/better in some other way
    This isn't meant to be a replacement for DLGEdit - DLGEdit's power comes from the ease at which you can change an existing DLG into exactly what you want. Although this tool can do that too, it's designed for easily/naturally building DLGs from scratch rather than doing minor edits in existing DLGs, while having to actually run the dialog in KOTOR/TSL as little as possible (to avoid the time it takes to load the games and get to the conversation).
    FUTURE FEATURES
     - Flow chart view
     - Animation selection
     - More testing, bug fixes, etc.
    KNOWN ISSUES
     - If you create a link from node A to node B, and node A already has a link to node B, the dialog editor doesn't know which one you want to select when you right click and does weird things (e.g. always selecting the bottom-most copy, even when you right click on another copy). Will fix this asap.
    INCLUSION IN OTHER MODS
    Anyone who wants to use this in their mod is free to do so, with appropriate attribution.
    CREDITS
    This mod is created by me (lachjames). Thanks to Thor110 for helping me test it out.
    Thanks to the Xoreos team for allowing us to include xoreos-tools with this mod. We use the gff2xml and xml2gff tools from xoreos-tools to read and write the DLG files. Xoreos-tools is licensed under the terms of the GNU General Public License v3; more information can be found here.

    1,140 downloads

       (0 reviews)

    0 comments

    Updated


×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines.