- Deleted `moonsharp-lua-integration.md` as it is no longer relevant.
- Removed `scripting-language-support.md` to streamline documentation.
- Eliminated `game_assembly_analysis.md` to avoid confusion with current architecture.
- Cleared `README.md` in `lib/references` to prevent outdated instructions.
- Removed `modding_core_architecture_summary.md` to simplify the documentation structure.
- Deleted `CHANGELOG.md` in `publish_full` to maintain a clean repository.
- Cleared `README.md` in `publish_full` to remove obsolete information.
Update project structure and versioning
- Updated `gregCore.csproj` to version `1.0.0.40-pre`.
- Modified `gregCore.sln` to include new project structure with multiple components.
- Implemented TechnicianHiring class to register and manage extra technician employees.
- Defined a struct TechDef to encapsulate technician properties such as ID, name, description, salary, and required reputation.
- Added methods for initializing technicians, handling hiring and firing events, and restoring technicians on load.
- Included logging for tracking registration, hiring, firing, and restoration processes.
- Created a new solution file `gregCore.sln` for the project.
- Added projects for core functionality, plugins, templates, and tests.
- Configured solution for multiple build configurations (Debug and Release) across different platforms (Any CPU, x64, x86).
- Implemented UiExtensionBridge to manage UI features such as web replacement, UI modernization, and settings menu integration.
- Added event hooks for community plugins to extend UI functionalities.
- Introduced methods for registering and unregistering web and UI handlers.
feat: Introduce UiModernizer for UI styling enhancements
- Created UiModernizer to apply a lightweight visual refresh to Unity UI elements.
- Implemented styling adjustments for text, selectables, and panel images to improve readability and aesthetics.
feat: Develop GregCompatBridge for legacy hook resolution
- Added GregCompatBridge to resolve deprecated hook names to their canonical forms.
- Integrated loading of mappings from a JSON configuration file for flexibility.
feat: Establish GregDomain and GregEventDispatcher for event handling
- Defined GregDomain enum for categorizing hook names.
- Implemented GregEventDispatcher as a central event bus for managing hook subscriptions and emissions.
feat: Create GregHookName and GregNativeEventHooks for standardized hook naming
- Developed GregHookName utility for constructing canonical hook strings.
- Established GregNativeEventHooks for defining native event hooks used in the framework.
feat: Introduce GregPayload for payload handling in event dispatching
- Added GregPayload to facilitate the extraction and logging of payload data passed through events.
docs: Add README for harmony script generation
- Included instructions for generating Harmony stubs for Greg hooks from Il2Cpp dumps.
- Implemented Generate-GregHooksFromMergedCode.ps1 to parse MergedCode.md and generate greg_hooks.json.
- Created parse_merged_code.py to handle the parsing logic and hook generation.
- Developed Generate-GregHookCatalog.ps1 to regenerate the greg hooks catalog from HookNames.cs and EventIds.cs.
- Introduced greg-hook-scanner tool to read greg_hooks.json and generate Docusaurus documentation.
- Added TypeScript support for the scanner with initial setup and placeholder functions.
- Established mapping for legacy Game2Framework identifiers to new greg hook names.