I was thinking about trying to implement or create a build anywhere feature for my mod a few days ago haha.. Cool work! (ill probably still do so since i use the il2cpp version so far)
go for it! I will say this took probably well over 8+ hours over 2 days to get to the (semi) functional state its in. I have all the logic for default item pick up and to spawn items endlessly I was thinking a creative mode type thing since all the pieces are there.
so... i succeeded... kinda. I ran into the same issues as you (getting stuck in some station UI's which i just could NOT fix(lab ovens are the main culprit for me), and built objects not saving if outside properties which i dont really feel like trying to even look at right now...) and have decided to just live with the bugs and consider them features. i mean, if i can fix the saving bit that would be insane but i really doubt it'd be simple. It took me well over 15 hours to convert from mono to Il2Cpp and get it working this far WITH HELP. Without the groundwork you laid? I'd have gotten nowhere. You are a genius :)
have you been able to figure out how to maintain interactability of the objects/fix the ui's yet? I can use items I place outside during runtime, but since the code I use to rebuild/load the built items upon saving its functionally entirely different to the code I'm using to override the Place() method, the items placed via loading a save cant be interacted with and only serve visual purposes (with collision ofc)
Hey, just to let you know right clicking glitches out when enabling outside placement, its like if instead of holding right click it clicks when pressing it and when releasing it
Same issue here. MelonLoader says: 'ModMenu' is missing the following dependencies: - 'FishNet.Runtime' v0.0.0.0 Not running the Beta either, just standard game. Also seeing lots of errors in the melonloader console for this mod: [18:52:27.085] [ModMenu] System.TypeLoadException: Could not load type 'ScheduleOne.Building.BuildUpdate_Grid' from assembly 'Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'. at System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, RuntimeType type, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs) at System.Reflection.CustomAttribute.CreateCaObject(RuntimeModule module, RuntimeType type, IRuntimeMethodInfo ctor, IntPtr& blob, IntPtr blobEnd, Int32& namedArgs) at System.Reflection.CustomAttribute.AddCustomAttributes(ListBuilder`1& attributes, RuntimeModule decoratedModule, Int32 decoratedMetadataToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, ListBuilder`1 derivedAttributes) at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit) at System.RuntimeType.GetCustomAttributes(Boolean inherit) at HarmonyLib.HarmonyMethodExtensions.GetFromType(Type type) at HarmonyLib.PatchClassProcessor..ctor(Harmony instance, Type type, Boolean allowUnannotatedType) at HarmonyLib.PatchClassProcessor..ctor(Harmony instance, Type type) at HarmonyLib.Harmony.CreateClassProcessor(Type type) at HarmonyLib.Harmony.<PatchAll>b__11_0(Type type) at HarmonyLib.CollectionExtensions.Do[T](IEnumerable`1 sequence, Action`1 action) at HarmonyLib.Harmony.PatchAll(Assembly assembly) at MelonLoader.MelonMod.HarmonyInit() in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\MelonMod.cs:line 40 at MelonLoader.MelonEvent.<>c.<Invoke>b__1_0(LemonAction x) in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\Events\MelonEvent.cs:line 174 at MelonLoader.MelonEventBase`1.Invoke(Action`1 delegateInvoker) in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\Events\MelonEvent.cs:line 143
you gotta use the beta version of the game labeled "Alternate" in the Betas tab in steam for this mod to work. The one labeled "Alternate Beta" may work as well but the normal version of the game is Il2Cpp and the Alternate versions are Mono (this mod specifically is built for Mono)
9 comments
'ModMenu' is missing the following dependencies:
- 'FishNet.Runtime' v0.0.0.0
Not running the Beta either, just standard game. Also seeing lots of errors in the melonloader console for this mod:
[18:52:27.085] [ModMenu] System.TypeLoadException: Could not load type 'ScheduleOne.Building.BuildUpdate_Grid' from assembly 'Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
at System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, RuntimeType type, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs)
at System.Reflection.CustomAttribute.CreateCaObject(RuntimeModule module, RuntimeType type, IRuntimeMethodInfo ctor, IntPtr& blob, IntPtr blobEnd, Int32& namedArgs)
at System.Reflection.CustomAttribute.AddCustomAttributes(ListBuilder`1& attributes, RuntimeModule decoratedModule, Int32 decoratedMetadataToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, ListBuilder`1 derivedAttributes)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit)
at System.RuntimeType.GetCustomAttributes(Boolean inherit)
at HarmonyLib.HarmonyMethodExtensions.GetFromType(Type type)
at HarmonyLib.PatchClassProcessor..ctor(Harmony instance, Type type, Boolean allowUnannotatedType)
at HarmonyLib.PatchClassProcessor..ctor(Harmony instance, Type type)
at HarmonyLib.Harmony.CreateClassProcessor(Type type)
at HarmonyLib.Harmony.<PatchAll>b__11_0(Type type)
at HarmonyLib.CollectionExtensions.Do[T](IEnumerable`1 sequence, Action`1 action)
at HarmonyLib.Harmony.PatchAll(Assembly assembly)
at MelonLoader.MelonMod.HarmonyInit() in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\MelonMod.cs:line 40
at MelonLoader.MelonEvent.<>c.<Invoke>b__1_0(LemonAction x) in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\Events\MelonEvent.cs:line 174
at MelonLoader.MelonEventBase`1.Invoke(Action`1 delegateInvoker) in D:\a\MelonLoader\MelonLoader\MelonLoader\Melons\Events\MelonEvent.cs:line 143