Caves of Qud

Caves of Qud

Sundry Cybernetics
YASD 29 Nov, 2023 @ 2:27pm
11/29/2023 load error
There was a hotfix pushed today that broke some mods. Sundry Cybernetics gave this error message on the mod menu:
=== Sundry Cybernetics 0.2.6 Errors ===
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsFlankVents.cs(100,79): error CS1739: The best overload for 'DirectMoveTo' does not have a parameter named 'forced'
== Warnings ==
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsStructuralCompositor.cs(25,67): warning CS0618: 'GameObject.validate(GameObject)' is obsolete: 'use Validate(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsStructuralCompositor.cs(25,99): warning CS0618: 'GameObject.validate(GameObject)' is obsolete: 'use Validate(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsOrganRack.cs(90,36): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsExoskin.cs(78,36): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsCranialDock.cs(82,35): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsMissileLauncher.cs(78,46): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsThickArm.cs(79,40): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsSpinalMount.cs(93,35): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsStructuralCompositor.cs(32,48): warning CS0618: 'GameObject.validate(GameObject)' is obsolete: 'use Validate(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsFaceReplacement.cs(54,44): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsOrganRack.cs(147,36): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsRadioAntenna.cs(90,162): warning CS0612: 'IBaseJournalEntry.text' is obsolete
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsRadioAntenna.cs(90,238): warning CS0612: 'IBaseJournalEntry.text' is obsolete
<...>\steamapps\workshop\content\333640\3028242334\CS\CyberneticsStructuralCompositor.cs(195,45): warning CS0618: 'GameObject.create(string)' is obsolete: 'use Create(), will be removed after Q1 2024'
< >
Showing 1-8 of 8 comments
Yossarian 29 Nov, 2023 @ 3:04pm 
Should be an easy fix, it is just a parameter that does not seem to be right anymore.

Did a makeshift fix by editing the last line of CyberneticsFlankVents.cs to be like this:

gameObjectList[gasIndex].DirectMoveTo(targetCell)

It can even be done with notepad.
Sardoin 29 Nov, 2023 @ 4:02pm 
As Yossarian mentioned, the only thing you need to fix the mod is change the line in CyberneticsFlankVents.cs
You can also keep the force behaviour like this:
"gameObjectList[gasIndex].DirectMoveTo(targetCell, forced: true);"

into

"gameObjectList[gasIndex].DirectMoveTo(targetCell, Forced: true);"

(Literally just capitalize the 'F')
Space Gandhi 30 Nov, 2023 @ 1:30am 
Where are you guys finding the CyberneticsFlankVents.cs file? I've checked in my caves of qud instillation folder and the applow freehold games folder and i cant find anything named CyberneticsFlankVents.cs.
Harry Hamburger 30 Nov, 2023 @ 1:37am 
Originally posted by Space Gandhi:
Where are you guys finding the CyberneticsFlankVents.cs file? I've checked in my caves of qud instillation folder and the applow freehold games folder and i cant find anything named CyberneticsFlankVents.cs.

\steamapps\workshop\content\333640\3028242334\CS\CyberneticsFlankVents.cs
Flahhh Personson 30 Nov, 2023 @ 1:38am 
Gandhi: it's in your Steam Workshop mods!

C:/Program Files (x86)/Steam/steamapps/workshop/content/333640 (the ID for Caves of Qud)/3028242334 (the ID for Sundry Cybernetics)/CS (the folder within the mod)


Everyone else: how did you know what to change here? A lot of mods have been breaking in ways like this lately and I'd like to get in on the fun of providing fixes. The relevant part of the error log was "The best overload for 'DirectMoveTo' does not have a parameter named 'forced'", but I'm having trouble seeing how that points to needing to capitalize or remove 'forced'. Apologies for the denseness!
Sardoin 30 Nov, 2023 @ 5:26am 
The wiki has some tips on decompiling the game files.

After that, it's digging through them, finding any relevant functions and looking for differences.
Really helpful when making your own mods as well.

Here's the wiki page: https://wiki.cavesofqud.com/wiki/Modding:C_Sharp_Scripting
YASD 30 Nov, 2023 @ 10:48am 
Thank you for the fix and decompile advice!
MAFT  [developer] 30 Nov, 2023 @ 12:00pm 
Should be fixed now!
< >
Showing 1-8 of 8 comments
Per page: 1530 50