Closed ST-DDT closed 2 months ago
Describe what you want the mod to be able to do
I would like to use the Multiplayer Mod with Update 6.
Describe alternatives you've considered
Patiently waiting on multiplayer support.
Additional context
Please don't feel pressured by this feature request. This is only intended as a thing I can subscribe to get notified once it is ready. Thanks for your awesome mod.
The update for update 6 is in progress, but will not solve multiplayer mod. This is because TimberApi will be very different and the multiplayer mod might not need TimberApi anymore with the buildin features.
@ST-DDT Thanks for letting me know you're excited about this working in Update 6! I am too - I think it'd be a hit in the workshop. But... it will require a bit of an overhaul (with the shift to steam workshop), plus all the usual changes for a new major update, so I don't have a timeline right now (other projects are taking priority).
Hey, turns out it was less work than I thought. I've put up a first-draft port on the Update 6 workshop: https://steamcommunity.com/sharedfiles/filedetails/?id=3293380223 (You have to join the group to see it, I believe, but let me know if you can't. Just follow the instructions after clicked "Mods -> Download Mods" on the main menu.)
There are definitely some Update 6 specific desync issues I've encountered and haven't had time to track down and fix, but I'd certainly appreciate testing just to see if it works at all for others, and if you can get it working using the workshop. I haven't updated the documentation, but it should be fairly plug-and-play at this point if you've already set up port forwarding.
How can I install BepInEx via Steam Workshop (or otherwise)? (A hint regarding that dependency would be nice)
v0.6.3.0-e4753ef-xsw
TypeLoadException: Could not load type of field 'BeaverBuddies.Plugin:logger' (3) due to: Could not load file or assembly 'BepInEx, Version=5.4.20.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
System.RuntimeTypeHandle.CanCastTo (System.RuntimeType type, System.RuntimeType target) (at <21f453231f9b419fb92653c858b2eaf6>:0)
System.RuntimeType.IsAssignableFrom (System.Type c) (at <21f453231f9b419fb92653c858b2eaf6>:0)
Timberborn.ModManagerScene.ModCodeStarter+<>c__DisplayClass6_0.<GetModStarters>b__1 (System.Type type) (at <789c05d7af744b0b95ae79c83b547ce1>:0)
System.Linq.Enumerable+WhereEnumerableIterator`1[TSource].MoveNext () (at <436abc9601df435fa9ad097ad527da9d>:0)
Timberborn.ModManagerScene.ModCodeStarter.StartMods () (at <789c05d7af744b0b95ae79c83b547ce1>:0)
Timberborn.ModManagerScene.ModCodeStarter.Start () (at <789c05d7af744b0b95ae79c83b547ce1>:0)
Timberborn.ModManagerSceneUI.ModManagerScenePanel.LoadModsAndStartGame () (at <656d9d04cd494067b692b40d0f9bf311>:0)
Timberborn.ModManagerSceneUI.ModManagerScenePanel.<InitializeModManagerPanel>b__11_0 (UnityEngine.UIElements.ClickEvent _) (at <656d9d04cd494067b692b40d0f9bf311>:0)
UnityEngine.UIElements.EventCallbackFunctor`1[TEventType].Invoke (UnityEngine.UIElements.EventBase evt) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventCallbackRegistry+DynamicCallbackList.Invoke (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement target) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatchUtilities.HandleEventAcrossPropagationPath (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement target, System.Boolean isCapturingTarget) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatchUtilities.DispatchToCachedElementUnderPointerOrPanelRoot (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, System.Int32 pointerId, UnityEngine.Vector2 position) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatchUtilities.DispatchToCapturingElementOrElementUnderPointer (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, System.Int32 pointerId, UnityEngine.Vector2 position) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.PointerEventBase`1[T].Dispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEventQueue () (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcher.OpenGate () (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcherGate.Dispose () (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.EventDispatcher.Dispatch (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.DispatchMode dispatchMode) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.BaseVisualElementPanel.SendEvent (UnityEngine.UIElements.EventBase e, UnityEngine.UIElements.DispatchMode dispatchMode) (at <40aa036fdcfe4396873350accf8ff004>:0)
UnityEngine.UIElements.PanelEventHandler.SendEvent (UnityEngine.UIElements.EventBase e, UnityEngine.EventSystems.BaseEventData sourceEventData) (at <80989b9abe4c41e3a14ffc8656da333e>:0)
UnityEngine.UIElements.PanelEventHandler.OnPointerUp (UnityEngine.EventSystems.PointerEventData eventData) (at <80989b9abe4c41e3a14ffc8656da333e>:0)
UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerUpHandler handler, UnityEngine.EventSystems.BaseEventData eventData) (at <80989b9abe4c41e3a14ffc8656da333e>:0)
UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) (at <80989b9abe4c41e3a14ffc8656da333e>:0)
UnityEngine.EventSystems.EventSystem:Update()
Ah shoot, I forgot to disable BepInEx for deployment (it's just for logging, not necessary) - thanks for the note. You should already have BepInEx installed if you were using this mod with Update 5. Did you uninstall BepInEx? Either way I will try to post an update next week that removes the dependency.
I haven't used this mod with update 5 before. I have tried downloading BepInEx with the mod.io ModLoader, but neither version worked for me. (it might be incompatible with Update 6 yet, or it has to be installed independently from the mod loader)
Thanks for your hard work.
What's the compatibility status? I don't understand why it's published to the workshop (that's a U6 specific feature) if it's not compatible 🤔
@FezVrasta If you have an error, report to Tomas your error.
Q: How do I file a bug report, make a feature request, or ask a question?
Note: If making a bug report: Don't restart either Host or Client's game, since that will delete the logs that can help us diagnose the bug.
Make a GitHub account and post and issue here. Follow the instructions in the "Bug Report" template. This may help us fix your issue.
I was just asking if it's compatible or not. Reading this thread it looks like it's not?
Update 6 is an experimental branch of the game, so this mod, too. If you want to help, test, and report any problems you encounter.
That still doesn't answer the question. Is it intended to be compatible or not? That's not clear, if it's supposed to be compatible why is this issue open?
Because Update 6 is not again released.
Just to clarify: BeaverBuddies has a version that currently runs on Update 6. You can find it on the Steam workshop. However, there are still many desync issues to work out that are specific to Update 6 before I would call it an "official" release. Desyncs are hard to debug and fix, so I don't have a specific timeline. Also Update 6 isn't officially released yet, so any new change to it could make the mod break again.
V6 support is pretty stable now, and I plan to support it until the official release of Timberborn Update 6, so I'm going to mark this resolved.
Describe what you want the mod to be able to do
I would like to use the Multiplayer Mod with Update 6.
Describe alternatives you've considered
Patiently waiting on multiplayer support.
Additional context
Please don't feel pressured by this feature request. This is only intended as a thing I can subscribe to get notified once it is ready. Thanks for your awesome mod.