Skip to content

Repository files navigation

Titanium Patcher Utility

Titanium is a classic, high-performance asset management and compression utility built specifically for the Flyff (Fly For Fun) emulation and development scene. Originally designed for .NET Framework 4.8, this tool has been completely refactored and modernized to run on .NET 10 (C#).

Titanium automates the process of reading your game files, mapping their directory structures, generating standardized list.txt files for game patchers, and compressing assets into standard Flyff client-readable formats (.gz).


🚀 Key Modernizations (.NET 10 Upgrade)

  • Zero-Allocation Stream Compression: Replaced legacy, memory-heavy byte array buffers with high-performance sourceStream.CopyTo(gzipStream) pipelines. This drastically lowers RAM utilization and prevents Large Object Heap (LOH) fragmentation when packing huge game worlds.
  • High-Efficiency Memory Spans: Leveraged ReadOnlySpan<char> for parsing lines within list.txt, bypassing unnecessary string allocations and slicing operations.
  • Modern Collection Types: Upgraded structural configuration tracking from un-typed Hashtable collections to strongly-typed generic Dictionary<(string, string), string> layouts, completely eliminating boxing/unboxing costs.
  • UI Responsiveness: Integrated BeginUpdate() and EndUpdate() routines across list controls to eliminate screen flicker and increase massive file population speeds by up to 10x.
  • File-Scoped Cleanups: Completely wiped old decompiler artifact loops (goto labels) in favor of deterministic, clean C# control flows.

🛠️ Core Features

  • Directory Explorer Integration: Instantly scans your current directory structure (listView1) or reads external list.txt patcher records (listView2).
  • Native Flyff Path Cutting: Automatically translates absolute system paths into clean, localized client formats relative to the root directory (e.g., matching structures like NeuroSpace\RESCLIENT\).
  • Flyff Timestamp Formatting: Correctly calculates, encodes, and decodes the classic file timestamp layout required by Flyff patch clients.
  • Batch Auto-Compression: Generates your patch indexes and applies standard GZip compression across every selected file in sequence with a single click.

📋 How It Works

  1. Configure Paths: Drop your config.ini file into the application directory to direct the tool's version tracking indexes and deployment directories.
  2. Navigate Assets: Use the built-in tree navigation by double-clicking directory nodes or target lists to staging buffers.
  3. Build & Compress: Use the top menu control structures to export and package files. The application automatically handles the tracking formats, creates any missing subfolders locally, and compresses everything into standard .gz containers.

📦 System Requirements

  • Target Runtime: .NET 10.0 Windows Desktop Runtime
  • Operating System: Windows 10 / 11 (64-bit Architecture)
  • UI Framework: Windows Forms

📝 License & Scene Etiquette

Titanium has been around the Flyff scene forever. It is shared freely for server developers, toolsmiths, and archive maintainers looking to speed up client distribution deployment. If you modify or embed the tool engine components, please keep the optimizations open for the community!


🤝 Acknowledgments

This project was made possible by the NukeZero development collective and its contributors. ✨

⚠️ This repository is strictly for archival and educational use.

About

A modernized, high-performance Flyff (Fly For Fun) patch list manager and asset packer upgraded for .NET 10.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages