110 Commits

Author SHA1 Message Date
Marvin 7a8cb80a8b Merge branch 'main' of ssh://git.datacentermods.com:2222/teamGreg/gregCore
gregCore CI / build (push) Has been cancelled
2026-04-25 02:47:33 +02:00
Marvin 944f6e1cc8 Remove outdated documentation and references
- 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.
2026-04-25 02:46:52 +02:00
Marvin 5282adecfb Updated GregCore to PreRelease 40
gregCore CI / build (push) Has been cancelled
2026-04-24 21:52:53 +02:00
Marvin 3595b3e40b feat: Disable IMGUI rendering in GregPlacementController and GregWallPlacementController
gregCore CI / build (push) Has been cancelled
2026-04-24 17:57:19 +02:00
Marvin 07bc596c77 Refactor and enhance gregCore framework
gregCore CI / build (push) Has been cancelled
- Disabled IMGUI drawing in Core.cs for Unity 6 stability.
- Consolidated GregCoreMod and DataCenterModLoaderMod into a single GregCoreMod class for better organization and clarity.
- Updated GregBootstrapper to use a boolean flag for hook integration.
- Simplified HookIntegration class by removing unnecessary fields and methods, focusing on essential functionality.
- Updated PlayerPatch and ShopPatch to emit hooks using string representation for better compatibility.
- Introduced ModMenu and GregHardwareID classes for centralized mod configuration and unique object identification.
- Enhanced GregDevConsole for improved logging and UI management.
- Added legacy shims for backward compatibility with older mods.
- Improved UI management with CanvasGroup for better input handling.
- Updated QoL settings to allow for a range in slider values.
2026-04-24 15:45:10 +02:00
Marvin a615023271 chore: Update binary files for gregCore.dll and gregCore.pdb
gregCore CI / build (push) Has been cancelled
2026-04-23 22:11:32 +02:00
Marvin 2d5befcafb feat: Introduce GregUI framework to replace IMGUI, enhancing UI stability and performance
gregCore CI / build (push) Has been cancelled
2026-04-23 21:42:37 +02:00
Marvin 8634792e2b feat(CableRemoval): Implement mass cable removal feature with user hints and settings
gregCore CI / build (push) Has been cancelled
feat(CommonShop): Add custom shop item registration and checkout handling
feat(CommonShop): Create CustomShopItem class for better item management
feat(CommonShop): Develop ShopAPI for injecting custom items into the shop
feat(FasterSFP): Introduce faster SFP modules with custom speeds and prices
feat(NoMoreEOL): Add patch to control visibility of error warning signs
feat(QoL): Implement various quality of life improvements including shop layout fixes and item deletion
refactor(Sdk): Create legacy event dispatcher for backward compatibility
2026-04-23 21:05:49 +02:00
Marvin 84fb3ad4fd feat: Implement Hardware ID Persistence and Legacy ID Mapping
- Added HardwareIdPersistencePatch to manage unique IDs for NetworkSwitch, PatchPanel, and Server.
- Introduced CleanId method to sanitize device IDs and prevent duplicates.
- Implemented legacy ID mapping in MapDataHealing to update old IDs to new formats.
- Created OverlayManager for centralized control of UI overlays and raycast blocking.
- Developed NoMoreEOL module to prevent servers and switches from reaching end-of-life, with auto-repair features.
- Integrated in-game configuration options for user customization.
2026-04-23 13:56:03 +02:00
Marvin 8ef5bfbe21 Add TechnicianHiring module for managing additional technicians
- 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.
2026-04-21 22:20:33 +02:00
Marvin 9f8164ba59 updating gregcore to newer version.
Sponsor Tier Sync / sync (push) Failing after 34s
gregCore CI / build (push) Has been cancelled
2026-04-21 08:11:36 +02:00
Marvin 39ee14d6f3 publ.: Adding Packs to publish
SDK: adding SDKs to give the user more Opportunities to create mods.
2026-04-21 07:41:28 +02:00
Marvin 8bd4f348e2 Add patches for shop checkout and lifecycle day updates
Sponsor Tier Sync / sync (push) Failing after 33s
gregCore CI / build (push) Has been cancelled
- Implemented ShopPatch to emit a checkout event when the checkout button is pressed.
- Created TimePatch to track and emit events when a game day ends, including both canonical and legacy event emissions.
2026-04-21 06:39:20 +02:00
Marvin 4fe23b041f feat: Implement GregEventDispatcher for event handling
- Added GregEventDispatcher class for managing event subscriptions and emissions.
- Integrated event bus functionality for mod communication.

feat: Introduce GregCoreConfig for configuration management

- Created GregCoreConfig class to manage application-wide settings, including debug mode.

feat: Develop WallRack mod with initialization and logging

- Implemented Main class for WallRack mod with initialization and shutdown logging.
- Integrated logging functionality for various mod events.

feat: Enhance logging capabilities with GregLogger and GregModLogger

- Developed GregLogger for general logging and GregModLogger for mod-specific logging.
- Added structured logging methods for different log levels and actions.

feat: Create WallRack integration for wall management

- Implemented GregWallRegistry for managing wall grids and devices.
- Developed GregWallGrid and GregWallSlot for grid and slot management.
- Added GregWallDevice for device representation and mounting logic.

feat: Implement undo/redo functionality for wall actions

- Created GregWallUndoRedoService to manage undo and redo actions for wall modifications.
- Defined action records for mounting, unmounting, and swapping devices.

feat: Integrate wall placement controller for user interactions

- Developed GregWallPlacementController to handle wall build mode and user interactions.
- Implemented methods for mounting, unmounting, and swapping devices in the wall grid.

feat: Add save/load functionality for wall state

- Implemented WallSaveIntegration for saving and loading wall states using LiteDB.
- Created data models for wall and mounted device states.

feat: Enhance UI settings for WallRack mod

- Developed GregSettingsHubWallRackTab for managing mod settings and user preferences.
- Integrated feature guards to disable settings based on game state.

fix: Address various bugs and improve stability

- Fixed issues related to device mounting and grid management.
- Improved error handling and logging for better debugging.
2026-04-21 04:53:10 +02:00
Marvin c8d7f45550 feat: add comprehensive documentation for F8 Settings Hub, Grid Placement, Save Engine, and Vanilla Save Compatibility 2026-04-21 03:51:26 +02:00
Marvin c9706de622 chore: update to latest game version
docs: removed redundant docs
deps: updated dependencies to be implemented.
feat: started implementation of new GridBuild Feature
2026-04-21 03:39:08 +02:00
Marvin 5930e5d160 feat(examples): add hook subscription to example mods
Sponsor Tier Sync / sync (push) Failing after 33s
gregCore CI / build (push) Has been cancelled
- JavaScript example now subscribes to greg.PLAYER.CoinChanged hook
- Python example simplified and updated to use hook system
- Go example restructured with proper hook callback implementation
- Rust example extended with on_hook API usage and cleanup functions
- All examples now demonstrate bidirectional communication with the core system
2026-04-20 14:57:51 +02:00
Marvin 9819687e9f docs: add hook API tutorials for Lua, Python, Go, and Rust
Add comprehensive documentation for mod developers using the gregCore Hook API. The tutorials cover subscribing to and firing hooks for each supported language (Lua, Python, Go, and Rust), including code examples and troubleshooting guidance.
2026-04-20 14:50:38 +02:00
Marvin 84b6f56a50 chore: add DataCenter-RustBridge submodule
Initialize the DataCenter-RustBridge submodule to integrate the Rust bridge plugin for the DataCenter project. This enables using the external Rust-based components as a git submodule.
2026-04-20 14:48:52 +02:00
Marvin 49b3b472f6 fix: remap dev console toggle key to F8
Sponsor Tier Sync / sync (push) Failing after 47s
gregCore CI / build (push) Has been cancelled
- Replaced 'P' keybind with 'F8' to avoid conflicts with the default pause menu functionality in the game.

💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 07:05:23 +02:00
Marvin 21bc37f692 fix: workaround IL2CPP unstripping error in dev console
- Replaced `GUILayout.TextField` with `GUI.TextField` combined with `GUILayoutUtility.GetRect` to avoid stripped method overload exceptions in Unity 6 IL2CPP builds.

💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 06:50:29 +02:00
Marvin b9356207f0 docs: add documentation for economy player hooks
- Created `economy` category in hooks library docs
- Added pages for `greg.economy.PlayerCoinUpdated`, `greg.economy.PlayerXpUpdated`, and `greg.economy.PlayerReputationUpdated`

💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 06:48:42 +02:00
Marvin 6b0c0559f1 feat: implement additional economy hooks for player xp and reputation
- Copied new greg_hooks.json from gregExtractor to assets
- Implemented `OnXpUpdated` and `OnReputationUpdated` patches in `PlayerPatch.cs`
- Registered new harmony patches in `HookIntegration.cs`

💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 06:42:42 +02:00
Marvin f8aec26a0a fix: resolve Harmony patch error and missing hook registry
- Update PlayerPatch.cs parameters to match Harmony naming conventions (`__instance`, `_coinChhangeAmount`)
- Update Deploy-Release-ToWorkshop.ps1 to copy `greg_hooks.json` to the framework's output folder

💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 06:39:00 +02:00
Marvin 658bf080a1 fix: migrate input handling to new Unity InputSystem
💘 Generated with Crush

Assisted-by: Gemini 3.1 Pro (Optimized for Coding Agents) via Crush <crush@charm.land>
2026-04-20 06:35:27 +02:00
Marvin 1fd8938f2b fix: improve CI build robustness with better stubs and paths 2026-04-20 06:23:58 +02:00
Marvin 524eaacbd5 fix: resolve AccessViolationException by removing problematic interface patch and using native game state management 2026-04-20 06:21:56 +02:00
Marvin 8d309f2162 feat: enhance hook patching with improved error handling and remove InputPausePatch
Sponsor Tier Sync / sync (push) Failing after 39s
gregCore CI / build (push) Has been cancelled
2026-04-20 06:20:50 +02:00
Marvin 0360bfb09a chore: update gregCore v1.0.0.33 release assets
Sponsor Tier Sync / sync (push) Failing after 33s
gregCore CI / build (push) Has been cancelled
2026-04-20 05:54:56 +02:00
Marvin ad01b974cd fix: enforce .NET 6 in workflows and remove extractor
gregCore CI / build (push) Has been cancelled
gregFramework Release / build (push) Has been cancelled
v1.0.0.34
2026-04-20 05:49:10 +02:00
Marvin 932a72fa88 feat: Implement hook registry and related interfaces for dynamic hook management 2026-04-20 05:41:52 +02:00
Marvin a11caa1175 feat: Add comprehensive Agent Guide documentation 2026-04-20 05:38:24 +02:00
Marvin bd01bdec59 chore: update release assets path for net6.0 2026-04-20 05:33:01 +02:00
Marvin f6bf6b6801 fix: downgrade to .NET 6.0 for MelonLoader compatibility 2026-04-20 05:32:31 +02:00
Marvin 81a6034055 Refactor code structure for improved readability and maintainability
gregCore CI / build (push) Has been cancelled
2026-04-20 05:19:01 +02:00
Marvin d454cd8a28 feat: Enhance DevConsole functionality and integrate pause menu blocking 2026-04-20 05:10:41 +02:00
Marvin abbd440bf1 feat: Implement core performance and automation modules
Sponsor Tier Sync / sync (push) Failing after 34s
gregCore CI / build (push) Has been cancelled
- Added RepairEngine for device repair automation.
- Introduced GregFrameRateLimiter to manage frame rates based on performance profiles.
- Implemented GregMemoryPressureHandler to handle memory pressure events and optimize garbage collection.
- Created GregOperationQueue for managing and throttling operations with priority.
- Developed GregPerformanceGovernor to oversee performance management and resource monitoring.
- Added GregRequestThrottler to limit concurrent operations and requests.
- Implemented GregResourceMonitor to track system resource usage and publish metrics.
- Introduced IAssemblyScanner interface for plugin assembly scanning.
- Added various public API modules including GregAutomationModule, GregEconomyModule, GregFacilityModule, GregNetworkModule, GregNpcModule, GregPerformanceModule, GregPlayerModule, GregSaveModule, GregServerModule, GregTimeModule, and GregUIModule for enhanced game functionality.
- Created event handling and resource snapshot types for better event management and performance tracking.
2026-04-20 04:25:54 +02:00
Marvin 9e6f25c54a chore: sync gregCore workspace updates
Sponsor Tier Sync / sync (push) Failing after 34s
gregCore CI / build (push) Has been cancelled
v1.0.0.31-pre
2026-04-20 03:02:39 +02:00
Marvin 3772ed13a3 docs: update roadmap with Phase 4.5 (gregUI & v1.0.0.30-pre release)
gregCore CI / build (push) Has been cancelled
Sponsor Tier Sync / sync (push) Failing after 1m13s
2026-04-15 22:12:22 +02:00
Marvin c22a8916a5 chore: consolidated HexViewer and ResetSwitch into unified gregCore build; implemented save bug diagnostic tool (v1.0.0.30-pre) 2026-04-15 22:08:55 +02:00
Marvin 8f5eb610bb build: add gregCore 1.0.0.30-pre release dlls 2026-04-15 22:03:00 +02:00
Marvin 0cee20b3bf chore: bump version to 1.0.0.30-pre 2026-04-15 22:01:57 +02:00
Marvin 8fa17cddd7 Initial import of gregCore 2026-04-15 21:59:53 +02:00
Marvin 0eae356a0b docs: add gregCore framework modularization analysis 2026-04-15 04:37:20 +02:00
Marvin c8e51a2389 feat: add Cohousing service and patch for artificial demand and external capacity 2026-04-15 03:11:28 +02:00
Marvin 308792cb0e perf: only log server discovery count when it changes 2026-04-15 00:43:01 +02:00
Marvin 551f9a0b53 feat: implement custom UI replacements for main menu, pause menu, and shop via Harmony patching 2026-04-14 23:57:31 +02:00
Marvin ee6a14d46f ci: modernize workflow to .NET 9.0 and enable auto-prerelease 2026-04-14 19:01:59 +02:00
Marvin 675344e5b1 chore: final release prep 1.0.0.30-pre 2026-04-14 15:48:58 +02:00
Marvin afc2e21efc chore: add compiled assembly for gregCore in release configuration 2026-04-14 13:38:29 +02:00