This object is in archive! 

Mods Not updated from workshop! Server/Client issue.

Yuri shared this bug 3 years ago
Solved

Hi,

We have found that in latest game build (1.197.170) there is issue to update mods from steam,

Some mods not getting updated, only way is to delete MOD folder and then server/client is forced to download mod as it's not exist.


After some checks in code, we have found that MyWorkshopItem.IsUpToDate

It's broken, and not working as expected.

We have created patch for our server that check steam mod update time vs local mod update time, and if different then download steam version.


This works for server, but for clients it's not! this is major problem right now.


Please correct the code.

Thanks.

Replies (5)

photo
1

Hello Yuri!


Thank you for your report. Could you please provide us a list of mods that are not getting updated? We haven't been able to reproduce this issue yet. Thank you.


Kind Regards

Keen Software House: QA Department

photo
1

Here is a list of mod IDs (steam workshop), my server uses. None of them currently gets pulled on startup without manual interaction, thought some of them were updated recently:


  • 1391907091
  • 2200194803
  • 857053359
  • 758597413
  • 1135662696
  • 514062285
  • 2385905429
  • 500818376
  • 1469072169
  • 2098118471
  • 1682356734
  • 806331071
  • 1547180265
  • 2229713368
  • 2364362178
  • 2308085590
  • 657749341
  • 1359618037
  • 1365616918
  • 2342379244
  • 1680232335
  • 1354870812
  • 544032930

photo
3

Exactly the same issue has already been posted here:

https://support.keenswh.com/spaceengineers/pc/topic/mods-are-not-updated

photo
2

Upvoted both :D

photo
1

Hi,

It's random and right now an issue!

please look at code with MyWorkshopItem.IsUpToDate

the IsUpToDate is used wrong and not detecting the changes in mods!


To fix the issue we have used custom plugin on boot in server to check and get mods.

We cant force player to use such plugin.

``````````

using HarmonyLib;

using VRage.GameServices;


namespace DePatch.GamePatches

{

[HarmonyPatch(typeof(MyWorkshopItem))]

[HarmonyPatch("IsUpToDate")]

class ModUpdatePatch

{

static void Postfix(MyWorkshopItem __instance, ref bool __result)

{

if (__instance.TimeUpdated > __instance.LocalTimeUpdated)

{

__result = false;

}

}

}

}

````

photo
1

Hello Yuri!


Thank you for your mod list and for more information. I reported this issue and forwarded it to our programmers to fix it.


Kind Regards

Keen Software House: QA Department

photo
1

Hello!


This issue was fixed in version 197.180.


Kind Regards

Keen Software House: QA Department

Replies have been locked on this page!