Commit Graph

122 Commits

Author SHA1 Message Date
Evil Factory
3d51abc56b Semi-working Lua scripts 2026-02-07 20:11:06 -05:00
Maplewheels
0a9c673753 - Removed unused settings
- Added Settings.xml
2026-02-07 20:11:06 -05:00
MapleWheels
6e66a3114a - Made Package loading conditional on resources being available.
- Made States registration use named parameters.
- Changed IPluginManagementService interface to better suit expected return results.
2026-02-07 20:10:55 -05:00
MapleWheels
15e0a2bd10 Disabled LuaCsConfig until ModConfig.xml and ISettingEntry<T> are completed. 2026-02-07 20:10:55 -05:00
MapleWheels
09faa8403a Fixed StatemMachine State delegate assignment being backwards. 2026-02-07 20:10:55 -05:00
MapleWheels
7e0e671539 - ConfigService.cs alpha testing. 2026-02-07 20:10:54 -05:00
MapleWheels
cc07db941f - Fixed the "deadlock" (tasks not started). 2026-02-07 20:10:54 -05:00
Maplewheels
6a21255a38 - IT BUILDS!!2:BARO BOOGALOO 2026-02-07 20:10:54 -05:00
MapleWheels
6362a9c34f - Work on LuaCs system state machine. 2026-02-07 20:10:54 -05:00
MapleWheels
055a508901 - Deleted unused service IPackageListRetrievalService.cs
- Added caching function to LuaScriptLoader.cs
- Added sample async code to LuaScriptManagementService.cs
- Removed most of the State functions in LuaCsSetup.cs (requires rewrite).
- Fixed CsEnabled check.
- Moved IsRunningWorkshop check to client-only project.
2026-02-07 20:10:54 -05:00
MapleWheels
0bfceacaf3 - Completed most of PackageManagementService.cs
- Some areas of code need to be rewritten for the simplified loading and execution process.
2026-02-07 20:10:54 -05:00
MapleWheels
3e81e27160 [Save/Sync] In-Progress ModConfigXml loading rewrite.
+ Fixed async operations lock for Dispose() pattern in working files.
+ Rewrote StorageService.cs:
--- Now uses ContentPath instead of raw strings where possible.
--- Now throws exceptions for developer errors and critical program states.
+ Rewrote ModConfigService.cs:
--- All functions are now completely async.
+ Removed ConfigProfilesResources completely as they exist in common Config xml files.
+ Somewhat simplified package data and processes.
2026-02-07 20:10:54 -05:00
Maplewheels
595470ccfb [Save/Sync] In-Progress rewrite of ConfigService and ModConfigService 2026-02-07 20:10:53 -05:00
MapleWheels
7d39c092c6 [Save/Sync] Big If tru Rewrite in progress.
- Removed IProcessors
- Removed old ModConfigService format.
- Converting to ContentPath from absolute paths where possible.
- Added: Microsoft.Toolkit.Diagnostics package.
2026-02-07 20:10:53 -05:00
Evil Factory
1daf68dea1 Oops 2026-02-07 20:10:53 -05:00
Evil Factory
d70885711b Fix some runstate if checks 2026-02-07 20:10:53 -05:00
MapleWheels
569e14f50f - Removed generic exception from LuaCsSetup.cs services retrival, replaced with exception propagation.
- Fixed `PerScopeLifetime` and `Transient` lifetimes for container services.
2026-02-07 20:10:53 -05:00
Maplewheels
26b657a96f [In-Progress] Plugin system rewrite.
Game starts up, runs until unimplemented functions are reached without errors.
2026-02-07 20:10:52 -05:00
Evil Factory
4d97a427f9 WIP Lua script management service 2026-02-07 20:10:52 -05:00
MapleWheels
c6713f37bb IT BUILDS!!!
- Removed LocalizationServices and other sus things.
- Rewrote AssemblyLoader
[In Progress] SafeStorageService
[In Progress] LuaScriptLoader
2026-02-07 20:10:52 -05:00
MapleWheels
52d920d969 [Milestone] PackageManagementService completed.
- ContentPackageInfoLookup Service completed.
- Implemented ModConfigService.cs
- Implemented some of the resource processors.
2026-02-07 20:10:45 -05:00
EvilFactory
cb88d215fa LuaGame legacy service 2026-02-07 20:10:39 -05:00
MapleWheels
7436ea3e8c - Finished most of LuaCsSetup top-level functionality.
- Removed some unneeded interface definitions.
- Clean-slated some Services that need to be re-written.
2026-02-07 20:10:39 -05:00
MapleWheels
d2b9ca4c1b [Refactor-Minor]
- Refactored interface definition.
- Plugin Loading System Refactor (incomplete).
2026-02-07 20:10:39 -05:00
MapleWheels
6880e5e9ee [Milestone] AssemblyLoader completed.
Details:
- Assembly Mgmt Service for loading now a separate interface, not intended for normal use.
- Assembly Loader work; implemented custom dictionary key and table.
- Assembly loading work.
- EventService completed.
- Moved assembly extensions to ModUtils.cs
- Work to event service.
NetworkService work
- Added ImpromptuInterfaces package.
- Networking Service work to support NetVars
- Event Service
- Added assemblies references package for script compilation. Updated Roslyn version for compatibility.
- Package Loading work.
Swap Harmony to HarmonyX
- More refactor conversion to FluentResults.
- Updated StylesService to return Results.
- Refactor of PackageService partially complete.
- Made IService.Reset() required to return a Result.
- Moved plugin/assembly related code to their own folder (same namespace).
- Updated interfaces to reflect the use of Result<T>.
- Partial refactor, incomplete.
- Added 'FluentResults' so we can stop using cursed Exception-based flow control in loading code.
- Added 'OneOf' nuget package: https://github.com/mcintyre321/OneOf
for the implementation of the Optional<T> pattern and complex discrete return types instead of cursed enums (see current AssemblyManager.cs).
- Reapplied old branch changes.
2026-02-07 20:10:26 -05:00
MapleWheels
01cc1d331b -- Squash:
- In progress implementation of services model.
2026-02-07 20:10:04 -05:00
Evil Factory
9f1c3fa823 Move UserData checks out of Lua 2026-01-31 17:44:36 -03:00
EvilFactory
6ab0e7bee4 Fixed IsRunningInsideWorkshop check being inverted 2024-10-29 18:18:19 -03:00
EvilFactory
3e4b649162 Update moonsharp and move extension methods to register Lua file 2024-10-07 19:22:24 -03:00
EvilFactory
757a7a1c37 Treat forced mods as normal is true by default 2024-05-23 13:07:58 -03:00
EvilFactory
3f014660cc Pass in a copy of the config instead 2024-04-02 12:49:04 -03:00
EvilFactory
ee337e4f18 Fixed config not saving 2024-03-28 23:39:29 -03:00
EvilFactory
06a226a26e Fixed wrong xml attribute name 2024-03-28 21:20:02 -03:00
EvilFactory
a55b165d9e Added new assemblies to CI 2024-03-28 16:39:43 -03:00
EvilFactory
bf34934e9c Merge fixes 2024-03-28 16:19:53 -03:00
EvilFactory
b3ac01cb22 Remove all uses of the Cs Package now that we don't need it anymore
LuaCs Settings no longer uses LuaCsConfig
Cs Package is no longer is used for enabling CSharp Scripting (except for dedicated server, to not make those people confused)
Added popups for when you have CSharp mods enabled but don't have CSharp enabled when going to singleplayer/multiplayer
2024-03-19 19:03:32 -03:00
EvilFactory
2043f6411c Set TreatForcedModsAsNormal to true by default 2023-12-17 14:58:13 -03:00
EvilFactory
a0044d03c2 Fixed Lua dispose method not being called if you reload manually 2023-12-17 12:34:30 -03:00
EvilFactory
c7b8cda902 Hide host machine UserName when displaying error logs 2023-12-10 12:26:38 -03:00
EvilFactory
eeb7e3080f Potential fix for #158 2023-11-10 10:59:03 -03:00
EvilFactory
46a841b5c1 Potential fix for the wrong publicized folder being loaded 2023-11-02 19:40:36 -03:00
MapleWheels
09ed9d60fb - saving changes before repo reset. 2023-10-26 17:43:37 -04:00
MapleWheels
9e48dda739 Scriptloading overhaul (#163)
* - Added option to RunConfig.cs for mods to compile with non-publicized assemblies.
- Added default values attrib to RunConfig.cs
- Added thread sleeping to CsPackageManager.Dispose() to give time before generating a strong-ref to check acl unload status.

* - Added PrintWarning to ModUtils.cs
- Made previously unloaded ACLs warning only.
- Made plugins unload after lua script disposal.
- Small code cleanups.
- Cleared acl record references on unloading.
- Made ACL unload run via event hook.

* Made non-pub asm compilation name the same long-a** name in XML, as per Evil's request.
2023-10-24 18:51:48 -03:00
MapleWheels
414d46b33e Assembly and Script Loading Overhauled. 2023-10-06 12:06:42 -03:00
EvilFactory
8e6f8cc5e6 Added support for workshop install for other platforms (MacOS is likely still borked, but I don't have a Mac to test it) 2023-05-03 12:38:29 -03:00
EvilFactory
8df9f7798e Implemented a custom PlatformAccessor and re-added the rest of the io and os libraries 2023-05-01 13:24:18 -03:00
EvilFactory
5de8d0293f Registered MathUtils and XMLExtensions as extension types, moved GetType to a better place 2023-04-25 21:27:11 -03:00
EvilFactory
4303cf3111 Added support for MoonSharp's VsCodeDebugger 2023-03-27 15:20:14 -03:00
EvilFactory
9dc87c34f3 Fixed error "Attempt to perform operations with resources owned by different script" that would sometimes happen when reloading lua 2023-03-23 12:30:20 -03:00
EvilFactory
ba543aef2c Improved Networking
Network messages are now sent through a 2-byte Id to minimize overhead of using strings.
2023-01-29 13:21:19 -03:00