Caves of Qud

Caves of Qud

Gigantism Plus
 This topic has been pinned, so it's probably important
hyd-n-plyn-syt  [developer] 6 Feb @ 8:26am
Bug Reports
Feel free to dump bug reports here. :qudeyes:
< >
Showing 1-15 of 50 comments
UnderDoug  [developer] 6 Feb @ 6:13pm 
Hey, so I found this bug in the marshes, like 3 strata deep, but he was friendly, so I water-ritualled him and we were friends, but then he died when I took him to a goatfolk village.
Last edited by UnderDoug; 6 Feb @ 6:42pm
Mawootad 13 Feb @ 10:33am 
There's some sort of bizarre interaction here with the brainwraith mod where it looks like your attacks are getting the -10 penalty for being immobilized, making it effectively possible to land attacks.
hyd-n-plyn-syt  [developer] 13 Feb @ 11:09am 
Originally posted by Mawootad:
There's some sort of bizarre interaction here with the brainwraith mod where it looks like your attacks are getting the -10 penalty for being immobilized, making it effectively possible to land attacks.
That mod is wildly outdated, my friend. I can take a look but even on it's last comments in 2023, it says it's broken. Plus we don't touch Genotypes, or anything besides the ModGigantic and it's interactions with objects, in vanilla. Can you give me a list of specific mutations you're using so I can check it out?
Last edited by hyd-n-plyn-syt; 13 Feb @ 11:23am
Mawootad 13 Feb @ 12:43pm 
Originally posted by hyd-n-plyn-syt:
Originally posted by Mawootad:
There's some sort of bizarre interaction here with the brainwraith mod where it looks like your attacks are getting the -10 penalty for being immobilized, making it effectively possible to land attacks.
That mod is wildly outdated, my friend. I can take a look but even on it's last comments in 2023, it says it's broken. Plus we don't touch Genotypes, or anything besides the ModGigantic and it's interactions with objects, in vanilla. Can you give me a list of specific mutations you're using so I can check it out?
Ah, hadn't realized, I've been subbed to it for a very long time and it's still towards the topped of the most subbed mods so I never checked. As for mutations, just picking it and gigantism with nothing else and trying to melee stuff will show you consistent negative to-hit rolls even with 20 Agi and level 2 gigantism (so effective +0 to-hit). That said, I don't think it's actually the immobilized penalty but something else, as with 6 agi and level 1 gigantism in testing I was able to roll between -10 and 7 on the to-hit (while the min should be -7 with that setup if my understanding on to-hit rolls is correct). If the game offered an in-depth debug option on to-hit rolls I'd just post that but unfortunately it doesn't seem to for whatever reason. Also if you know of a C# wish I could use to print any info that might be helpful lmk, would be happy to test things. Or like if it's too much of a hassle I might just try taking a crack at updating the Brainwraith mod, I remember Qud modding being fairly straightforward as far as modding goes when I last tried it a couple of years ago.
Mawootad 13 Feb @ 1:44pm 
Okay, so I have an actual bug report from doing some digging into how the hit bonus on your fists gets set, but if you rapid advance it seems that the to-hit bonus isn't necessarily updated. Specifically I set a logging statement when updating GiantFistWeapon.HitBonus and wished for 10000 exp and at the resulting level 8 the HitBonus was only updated to -2 instead of the correct -1. I think this happens because the mod level doesn't change between 5 (when it's effectively 3) and when it increases to 4 later due to levelups removing the cap. Unsure if there's a way to hook into a change in effective level or to react to an event when you make an attack/damage roll, but that might be the hook you actually want. The GiantFistWeapon hit bonus is also not directly set on initial character creation as far as I can tell, but I'm unsure if that actually causes problems or not as the fists definitely seem to get assigned and I can't find the actual implementation of them. Also possible that that may be the cause of why Brainwraiths specifically have issues, as if the weapon template is loaded implicitly and Brainwraiths just have a messed up template on account of being old and buggy they may load random garbage instead of the real fist values.
UnderDoug  [developer] 13 Feb @ 4:17pm 
Originally posted by Mawootad:
[...]

The GiantFistWeapon hit bonus is also not directly set on initial character creation as far as I can tell, but I'm unsure if that actually causes problems or not as the fists definitely seem to get assigned and I can't find the actual implementation of them.

[...]

I don't have it open in front of me, so I'm going off some mental snapshots here, but when the Mutate() method is called it calls ChangeLevel() and they both call their base methods, one of which calls an UpdateBody() method that includes in it calling OnRegenerateDefaultEquipment(), which in combination should build the fists, allocate stats to them, and allocate them at some point after the mutation is added to the GameObject but before the chain of method calls ends.

The current build we might have a little bit of redundancy going on, adding incomplete fists and allocating them then building complete ones and allocating those over the top, but only to ensure that the fists are getting added. The base fist item should have a complete set of Level 1 stats attached to it in its blueprint.
I just checked, it does not, in fact, have its level 1 stats in the Items.xml, I'll go through and make sure each one has at least that, though it won't solve the broader issue you're having.

The current `To Hit` bonus formula should be
-3 + (Level / 2)
where Level is the mutation level.

At mutation level 8, that should be a +1 To Hit with the fists given
-3 + (8 / 2) = -3 + 4 = 1

As far as I can tell, the base rapid advancement method should still be telling the targeted mutation to call its ChangeLevel() method, albeit in an indirect way (there's a call to it in the RapidLevel() method that it calls).

How do the fists perform when GigantismPlus is the only mod, or at least when the brainwraiths mod isn't active?

Originally posted by Mawootad:
Originally posted by hyd-n-plyn-syt:
[...]
[...]

Also if you know of a C# wish I could use to print any info that might be helpful lmk, would be happy to test things.

[...]
We have a set of debugging options in the the Debug options category to turn on increasingly verbose debugging messages. Not all of the mod is currently set up with logging, and on the maximum setting it's very "loud", but I use it to trace the different parts of the mod that I'm working on, so if you do end up sending through a player.log file, make sure those options are set before you start your run (you can skip the "print to message queue" option if you want to avoid your in-game message log being absolutely strangled).

We're working on getting a little more of the mod filled out with debug entries, but for the stuff that's been long-working, we haven't bothered to retro-fit it, perhaps to our detriment.
Last edited by UnderDoug; 13 Feb @ 4:17pm
Mawootad 13 Feb @ 5:04pm 
So I looked into this one more time and I'm pretty sure my understanding of accuracy rolls are incorrect, as I was able to reproduce the same low accuracy roll on a mutated human with low agility as well, so it's not specific to brainwraiths. I think at this point that either there's some hidden factor probably unrelated to this mod that's likely causing the low rolls, probably some sort of undocumented to-hit penalty for natural weapons or for the base gigantic fist template the mod uses.

As for the rapid advancement I think you misunderstand. I added a logging statement to ChangeLevel where you assign a new base damage according to the mutation level. If you follow the given steps you'll advance to character level 8 with the Gigantism mutation at level 4, however the logging statement reveals that the actual fist modifiers are set when it rapid advances at character level 5 and does not update at character level 6 when the mutation becomes level 4, thus only having the benefits of rank 3 instead of rank 4. You can actually directly see this if you level to 14 with 8 points in gigantism, level to 15 and rapid advance it, and then level again to 16 as your fists will only have 2d5 damage in the equipment screen instead of the 2d6 damage they should have in the mutation tooltip.
Mawootad 13 Feb @ 5:31pm 
Oh, I guess maybe this is really just a bug with Caves of Qud itself. I'll probably go try to file a bug report for them.
UnderDoug  [developer] 13 Feb @ 5:57pm 
Originally posted by Mawootad:
[...]

As for the rapid advancement I think you misunderstand.

[...]
I had misunderstood but I'm also a dumbass. I'm returning true on the before and after level events instead of returning base.HandleEvent(E) which could be skipping some really important Level-up related methods from being called.

It was one of my earliest contributions to the project, and I don't actually "know" C# if that makes sense, so I've learned tons since.

I'll try adjusting that on my local copy and see if it fixes it that bit specifically.
Mawootad 16 Feb @ 8:15am 
Nah, the rapid advance bug you can just wait for the Qud devs to fix. It also breaks some vanilla mutations like carapace.

That said, I did find some really weird behavior with Gigantism tinkering. I had the default make gigantic items more common for player and allow player to tinker gigantism options set and somehow I ended up in a state that I couldn't learn the gigantism tinker (I even wished for smartass and it wasn't there). I switched to everyone can tinker gigantism and that fixed things temporarily, but then at some point later all items ended up as not being valid targets for gigantism. I think the first bug might've been related to performing a wish swap back and forth at one point, and possibly could be fixed by just removing the "only player can tinker gigantism" option since there's still some utility for players without gigantism in the form of tinkering gigantic silver/gold nuggets. Second Idk, might've been some sort of strange mod interaction. And if you need any assistance on anything particular lmk, I don't have too much experience with Qud modding but a lot of experience with C#.
hyd-n-plyn-syt  [developer] 16 Feb @ 8:33am 
Originally posted by Mawootad:
Nah, the rapid advance bug you can just wait for the Qud devs to fix. It also breaks some vanilla mutations like carapace.

That said, I did find some really weird behavior with Gigantism tinkering. I had the default make gigantic items more common for player and allow player to tinker gigantism options set and somehow I ended up in a state that I couldn't learn the gigantism tinker (I even wished for smartass and it wasn't there). I switched to everyone can tinker gigantism and that fixed things temporarily, but then at some point later all items ended up as not being valid targets for gigantism. I think the first bug might've been related to performing a wish swap back and forth at one point, and possibly could be fixed by just removing the "only player can tinker gigantism" option since there's still some utility for players without gigantism in the form of tinkering gigantic silver/gold nuggets. Second Idk, might've been some sort of strange mod interaction. And if you need any assistance on anything particular lmk, I don't have too much experience with Qud modding but a lot of experience with C#.
@UnderDoug's fix for the tinkering is incoming after I get done testing it. It looks good though. Within the next hour or two look for an update. It was only injecting on creation of the character, and not on loaded saves or a reload of the game. This should fix it, and make it to where you can actually just reload the game after you change the options now(besides the one that enables Gigantism in general, that needs a reload), and it should take effect. And you're always welcome to take a look at the public repos I have posted on github[github.com], and tinker with it. I have a couple of fun ones in the works too. I however, am not an excellent coder, or experienced in many languages, but I do like to tinker pretty hard.
UnderDoug  [developer] 16 Feb @ 7:33pm 
Originally posted by hyd-n-plyn-syt:
Originally posted by Mawootad:
[...]

And if you need any assistance on anything particular lmk, I don't have too much experience with Qud modding but a lot of experience with C#.

[...]
[...]

And you're always welcome to take a look at the public repos I have posted on github[github.com], and tinker with it. I have a couple of fun ones in the works too. I however, am not an excellent coder, or experienced in many languages, but I do like to tinker pretty hard.
Love a good tinker too.

Absolutely any help or guidance is welcome as far as I'm concerned, too.

I'm pretty constantly butting up against the limit of my very narrow band of programming experience and even narrower band of experience with C#.

Any opportunity to learn more.
=== Gigantism Plus 0.2.6 Errors ===
<...>/steamapps/workshop/content/333640/3418224643/HarmonyPatches.cs(165,51): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/HarmonyPatches.cs(170,81): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/HarmonyPatches.cs(169,30): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/ElongatedPaws.cs(149,71): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/ElongatedPaws.cs(176,72): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/GigantismPlus.cs(516,71): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
<...>/steamapps/workshop/content/333640/3418224643/GigantismPlus.cs(543,72): error CS0433: The type 'BurrowingClaws' exists in both '1207623704.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Assembly-CSharp, Version=2.0.209.43, Culture=neutral, PublicKeyToken=null'
== Warnings ==
None
UnderDoug  [developer] 17 Feb @ 4:31am 
Originally posted by bing bong:
=== Gigantism Plus 0.2.6 Errors ===
[...]
== Warnings ==
None
That's the Improved Mutations mod (1207623704.dll), which I believe does a whole-sale copy of the mutations it wants to extend. Really not great for compatibility with other mods.

There's not a lot we can do about compatibility with it when it, especially considering the mod hasn't been updated since before Qud's own 1.0 release.

I can give it a look, but we're barely touching Burrowing Claws except for a Harmony Patch for additional natural weapons, and checking a few times if the GameObject has it from other mutation.
Last edited by UnderDoug; 17 Feb @ 4:31am
guessed as much from reading it, i'll also try and see if i can remove the claw lines or something
< >
Showing 1-15 of 50 comments
Per page: 1530 50