jinxOAO / DSPmod_MoreMegaStructures

Add more megastructures.
6 stars 2 forks source link

Nebula Multiplayer Mod issue #2

Closed SGFgit closed 1 year ago

SGFgit commented 2 years ago

So my friend is hosting, and when a mega structure is created and I rejoin the megastructure changes back to Dyson Sphere instead the Science Nexus or Matter Decompressor. But for the host the rocket still launch and the mega structure still builds. In short the the mega structure doesn't sync in multiplayer. Here's the link to the API: https://github.com/hubastard/nebula/tree/master/NebulaAPI

jinxOAO commented 2 years ago

I don't have the conditions for testing multiplayer mode right now, so this mod doesn't support multiplayer at the moment. I will try to use nebula to add multiplayer support in the future when possible.

SGFgit commented 2 years ago

If you need or want someone to test a multiplayer branch please let me know.

jinxOAO commented 2 years ago

Thanks. I will.

jinxOAO commented 2 years ago

Hey, as I said I'm not be able to test multiplayer, so I might need your help. It's not in a hurry so you can test this with your friend when you have free time. Please know that this version is based on the sample provided by the nebula wiki, I don't know if it works, so you may need back up the archive before using it. And please be prepared that it can't work. (both client and host need to install this version of dll and keep the original "mmstabicon" file) https://github.com/jinxOAO/DSPmod_MoreMegaStructures/releases/tag/MmsMP0.0.1

It should do these things: when host or client click the button and change the megastructure type successfully, this change will be applied to all players. when a new player joins a game, the new client will request all galaxy megastructure types from the host and apply them.

SGFgit commented 2 years ago

So far without they come from the void the game does no launch with the new version. Get these errors: Error1: An error has occurred! Game version 0.9.25.12077 Mods use: [LDBTool2.0.5] [DSP Mod Save1.1.4] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [Bottleneck1.0.10] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [AddAmountOfRecipePer1min1.2.4] [IlLine1.0.0] [BulletTime1.2.5] [ReorderTechQueue1.1.1] [com.Valoneu.FactoryOverclock1.1.5] [UncoverFoundationedOceans0.0.3] [Common API Nebula Compatibility1.5.1.0] [TelePotter1.2.3] [MMSBattle1.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] [PersonalLogistics2.9.3] NullReferenceException: Object reference not set to an instance of an object

RFRTempPatch.RFRTempPatch.Start ();(at <08b8a58d1a7f4dc18d0641590573628f>:IL_0016) Error2: An error has occurred! Game version 0.9.25.12077 Mods use: [LDBTool2.0.5] [DSP Mod Save1.1.4] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [Bottleneck1.0.10] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [AddAmountOfRecipePer1min1.2.4] [IlLine1.0.0] [BulletTime1.2.5] [ReorderTechQueue1.1.1] [com.Valoneu.FactoryOverclock1.1.5] [UncoverFoundationedOceans0.0.3] [Common API Nebula Compatibility1.5.1.0] [TelePotter1.2.3] [MMSBattle1.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] [PersonalLogistics2.9.3] NullReferenceException: Object reference not set to an instance of an object

DSP_Battle.EnemyShips.IntoOtherSave ();(at <87e483b626ea4ef494d0927d90cb91a1>:IL_0001) DSP_Battle.DspBattlePlugin.IntoOtherSave ();(at <87e483b626ea4ef494d0927d90cb91a1>:IL_0007) crecheng.DSPModSave.Patches.LoadCurrentGame (System.Boolean __result, System.String saveName);(at :IL_006B) GameSave.LoadCurrentGame (System.String saveName);(at <192758684e944be3b703e707f5f46edf>:IL_021D) GameSave.LoadCurrentGameInResource (System.Int32 index);(at <192758684e944be3b703e707f5f46edf>:IL_007A) GameMain.Start ();(at <192758684e944be3b703e707f5f46edf>:IL_0066) Error3: An error has occurred! Game version 0.9.25.12077 Mods use: [LDBTool2.0.5] [DSP Mod Save1.1.4] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [Bottleneck1.0.10] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [AddAmountOfRecipePer1min1.2.4] [IlLine1.0.0] [BulletTime1.2.5] [ReorderTechQueue1.1.1] [com.Valoneu.FactoryOverclock1.1.5] [UncoverFoundationedOceans0.0.3] [Common API Nebula Compatibility1.5.1.0] [TelePotter1.2.3] [MMSBattle1.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] [PersonalLogistics2.9.3] NullReferenceException: Object reference not set to an instance of an object

GameMain.Update ();(at <192758684e944be3b703e707f5f46edf>:IL_0013)

After installing they come from the void the game launches.

Host still shows correct Megastructures but joined players still do not see the correct mega structure. Client output_log.txt Host output_log.txt

jinxOAO commented 2 years ago

I don't know why the game did not launch, but I managed to test this new version. Please try this, remember to keep the original "mmstabicon" file with the new dll together in the same folder. The client should sync the megastructure data 30 seconds after joining the game.

https://github.com/jinxOAO/DSPmod_MoreMegaStructures/releases/tag/MmsMP0.0.2

And you said without they come from the void you get 3 errors, but the error2 is the error came from mod theycomefromvoid. All the errors told me that you've installed the mod theycomefromvoid ([DSP_Battle2.0.0] is that mod). Seems you might have the wrong version. The old version might cause errors.

SGFgit commented 2 years ago

Finally got around to testing it. Still requires they came from the void. Not sure why, but I think it has something to do with the star cannon. (100% hunch) but everything works. Mega structures synced. I see how many hashes our science nexus makes and that it is a science nexus planned, along with our matter decompressor.

Errors launching the game without they came from the void: Error1: An error has occurred! Game version 0.9.25.12077 Mods use: [DSP Mod Save1.1.4] [LDBTool2.0.5] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [IlLine1.0.0] [BulletTime1.2.5] [Common API Nebula Compatibility1.5.1.0] [MMSBattle1.0] [MMSMultiPlayer1.0.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] NullReferenceException: Object reference not set to an instance of an object

RFRTempPatch.RFRTempPatch.Start ();(at <08b8a58d1a7f4dc18d0641590573628f>:IL_0016)

Error2: An error has occurred! Game version 0.9.25.12077 Mods use: [DSP Mod Save1.1.4] [LDBTool2.0.5] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [IlLine1.0.0] [BulletTime1.2.5] [Common API Nebula Compatibility1.5.1.0] [MMSBattle1.0] [MMSMultiPlayer1.0.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] NullReferenceException: Object reference not set to an instance of an object

DSP_Battle.EnemyShips.IntoOtherSave ();(at <87e483b626ea4ef494d0927d90cb91a1>:IL_0001) DSP_Battle.DspBattlePlugin.IntoOtherSave ();(at <87e483b626ea4ef494d0927d90cb91a1>:IL_0007) crecheng.DSPModSave.Patches.LoadCurrentGame (System.Boolean __result, System.String saveName);(at :IL_006B) GameSave.LoadCurrentGame (System.String saveName);(at <192758684e944be3b703e707f5f46edf>:IL_021D) GameSave.LoadCurrentGameInResource (System.Int32 index);(at <192758684e944be3b703e707f5f46edf>:IL_007A) GameMain.Start ();(at <192758684e944be3b703e707f5f46edf>:IL_0066)

Error3: An error has occurred! Game version 0.9.25.12077 Mods use: [DSP Mod Save1.1.4] [LDBTool2.0.5] [DSP Common API1.5.1.0] [NebulaMultiplayerMod0.8.6.2] [NebulaMultiplayerModApi1.2.0.5] [MoreMegaStructure1.0] [DSP_Battle2.0.0] [IlLine1.0.0] [BulletTime1.2.5] [Common API Nebula Compatibility1.5.1.0] [MMSBattle1.0] [MMSMultiPlayer1.0.0] [RecyclableFuelRod1.1] [RFRTP1.0] [SmelterMiner1.6] [SuperCollectors1.0] [WaterElectrolysis1.0] [Giga Stations Nebula Compatibility2.3.0] [GigaStationsUpdated2.3.0] NullReferenceException: Object reference not set to an instance of an object

GameMain.Update ();(at <192758684e944be3b703e707f5f46edf>:IL_0013)

Outputlog: output_log.txt

Would you still like an output log for normal multiplayer working?