00:36:55 <03w​heals> at a certain piety jiyva could let you absorb the knowledge from spellbooks that jellies eat 00:59:25 -!- indigaz27 is now known as indigaz2 03:32:57 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-5261-gd9800d219b 06:26:31 <08w​ormsofcan> if we're adding scrolls it makes sense to have books be artefact versions of scrolls 06:26:43 <08w​ormsofcan> er, parchments 13:35:12 @dracooomega re: tiles/layers, looking thru that code recently to see how rampage indicators could be added in console, perhaps saw some of that sort of thing, split between view.cc and tileview.cc. you.rampage_hints being only in tileview. I was thinking about what sort of indication for console would be a desired solution or option 13:37:14 for the items, is there any sort of way the scrolls will have differing views in console? from your screenshot it looks like the parchments get spell icons based on what they have? can understand it being tricky to composite 16:51:38 InStahlgewittern (L26 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:1) 16:55:35 InStahlgewittern (L26 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:3) 16:55:57 InStahlgewittern (L26 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:3) 16:56:32 InStahlgewittern (L26 FeFi) ERROR in 'god-companions.cc' at line 868: apostle something not found (Zot:3) 16:58:26 InStahlgewittern (L26 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:3) 17:00:55 InStahlgewittern (L27 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:4) 17:05:02 InStahlgewittern (L27 FeFi) ERROR in 'god-companions.cc' at line 868: apostle something not found (Zot:5) 17:06:32 InStahlgewittern (L27 FeFi) ERROR in 'god-companions.cc' at line 868: apostle Ugrim not found (Zot:5) 17:43:25 <09g​ammafunk> apostle something, my old friend 18:20:37 !lg InStahlgewittern xl>26 char=FeFi -log 18:20:38 1. InStahlgewittern, XL27 FeFi, T:74080: https://underhound.eu/crawl/morgue/InStahlgewittern/morgue-InStahlgewittern-20250701-001235.txt 18:32:56 @gammafunk it looks like remove_companion is the culprit, would moving it above 3361 (same indent level) mon-death.cc clear this up? https://github.com/crawl/crawl/blob/d01ceb9fa2b574c388f1e532e5336244169c13af/crawl-ref/source/mon-death.cc#L3345 18:34:53 if monster is divine companion and its a real death, check whether it's hepl or beogh, then delete it, instead of deleting it first before checking? 18:37:33 dracoomega is probably the one to ask about that? 18:46:48 https://github.com/crawl/crawl/blob/26465baa12ca1a4af394713bb5497ccac636c081/crawl-ref/source/mon-death.cc#L3315 corrected permalink. cv=0.34-a 18:51:21 so new line numbers, moving 3315 to above 3331 20:02:13 <04d​racoomega> I don't actually think that's the issue. The problem is that (somehow* Ugrim's apostle data got lost, so anything that tries to read it will fail. Notice how the crashes are always for that one, rather than any other apostle (some of whom also died in these logs). The data it's trying to look up isn't dependent on them being alive (and, in fact, is specifically used to do bookkeeping while they're not alive.) Unfortunately, 20:02:14 it's hard to tell what caused this to break, since the real culprit is usually in the past. There were more of these issues in past, which I fixed, but apparently it's still possible somehow to get that data messed up. 20:03:23 <04d​racoomega> But once their data gets lost, it will crash whenever they die, no matter how you order those calls. 20:04:08 <04d​racoomega> (It might be nice if it could be handled more gracefully than that, though not immediately sure how. Even if that assert wasn't there, the data doesn't exist to bring them back in a proper state either.) 20:07:27 <04d​racoomega> (Incidentally, I have done a bunch of massaging of parchment numbers with objstat and I think they're in a pretty solid place now, when compared with live. Waiting on Index to provide new base tiles so that low/mid/high-level parchments can also look visibly different from each other, and then I can push all this stuff to the branch. Which I think will make it basically trunky-worthy, aside from squashing and such?) 20:16:47 what could cause it to get lost, other than the only references that call that? memory corruption? tracing it back, there seemed only a few functions that could lead to that code branch 20:17:15 or like an off by one maybe somewhere 20:17:17 <04d​racoomega> Previous bugs involved the entry getting overwritten by something else 20:17:31 <04d​racoomega> So you'd end up with a 'ghost' apostle that has no data 20:17:42 hm. ok that sounds more race condition-y 20:17:44 <04d​racoomega> (Some saves managed to have 4 apostles, and the 4th was buggy) 20:18:32 <04d​racoomega> I mean, this is single-threaded, so it doesn't involve race conditions. But there may still be rarer circumstances where data is written to the wrong place somehow. 20:19:15 <04d​racoomega> (It might help a bunch if I had this person's save file, tbh) 20:19:52 does that have to be done before game ends? 20:20:42 hadn't considered it, save/load could play into stuff like this as well. hm. fun 20:23:16 <04d​racoomega> So, was this your game? 20:24:13 lol i wish. no, just curious 20:25:11 !lm InStahlgewittern xl>26 char=FeFi -3 -tv 20:25:12 4/6. InStahlgewittern, XL27 FeFi, T:72887 (milestone) requested for FooTV: telnet://termcast.shalott.org or https://termcast.shalott.org. 20:25:55 well somehow they have 4 apostles... 20:26:14 <04d​racoomega> Okay, that's actually somewhat reassuring 20:26:29 <04d​racoomega> I mean, that's a bug, but at least the proximal cause of the crash is the same as before 20:27:11 <04d​racoomega> So '4 apostles' results in this crash and the question is 'How is it still possible to end up with 4?' (since I fixed some of those situations, and it's certainly been much less common since then) 20:29:34 on 0.33 recently I tried to recruit a 4th and it properly disallowed me 20:29:46 this cv=0.34-a thoug 20:34:43 <04d​racoomega> I mean, nothing relevant has changed recetly. (And the bug was never as easy as just using the recruit menu on the 4th) 20:35:18 <04d​racoomega> I think it often involved a dismissed one on a previous floor still being recallable 20:42:22 ah yes, there's a comment on 0.34 in god-companions about that 819-822 20:44:31 <04d​racoomega> It looks like it may be still possible to dismiss an apostle without removing them from the companion list if the data thinks they're in a connected branch, but the excursion there fails to find them 20:44:46 <09h​ellmonk> any opinions on the skill titles in #4601? I'm doing some title stuff and can merge part or all of that today 20:45:10 <04d​racoomega> (I am not sure how the excursion could fail to find them, since that implies that some earlier tracking has also failed) 20:45:46 <04d​racoomega> But possibly it should manually remove them from the companion list anyway, just in case. (Since whatever the other bug is, it seems likely less serious.) 20:47:24 <04d​racoomega> I wonder if 'Thief of Immortality' is a reference to something I don't get, since I'm not really sure why that's a demigod stealth title 20:53:19 <04d​racoomega> I like Abyssopelagic and Siren, am slightly uncertain about Leviathan as an evil god title (both because even the original sources would be only loosely related and also because of its one current in-game use), am more or less neutral on Ascendant and Death Knight (why only human? I guess hell knight also is, but it almost feels like it could be species-agnostic). Kraken possibly does make 'more sense' than Crusher, even if I was 20:53:20 around for the original reference (so probably I am mildly positive towards it?). Slightly negative on Lord of the Labyrinth as an Ash title, even if a title connecting minotaurs to labyrinths does make some sense. Does Ash feel relevant to owning one, though? 20:55:21 <04d​racoomega> Now, in terms of titles I don't like, I've really wanted to replace Brimstone Smiter and Titancaster for a while, the former of which doesn't feel forgecrafty at all to me, and the latter feels... questionable as an oni title (not all tall people are the same!). But struggled to think of something good in that specific slot (I actually did some research on myths connecting oni to blacksmithing stuff, but didn't find anything 20:55:21 usable.) Though perhaps they could just be replaced by oni titles for something else altogether. 20:56:35 <06r​egret-⸸nde※> (I wonder if Crusher could still stick around as the second-highest Unarmed title for octopodes over, uh, Wrestler and Sensei.) 20:57:56 <04d​racoomega> Oh, perhaps 21:04:59 <09h​ellmonk> hmm, not being able to directly reference player stats is kinda annoying. guess I will add a bajillion more variables to the function 21:05:20 <04d​racoomega> I mean, there's no reason you can't directly reference them? 21:05:35 <09h​ellmonk> it's used in describe.cc for player ghosts 21:05:53 <04d​racoomega> Oh 21:06:04 <04d​racoomega> Okay, then yes, more arguments it is, I guess >.> 21:06:34 <04d​racoomega> (I mean, if you're passing stats, then you can get rid of the 'dex better' argument) 21:06:44 <04d​racoomega> Since you can just compare them 21:06:51 <09h​ellmonk> yeah, I guess I can do that. just pass all three 21:07:09 <09h​ellmonk> I want to do that and form for crab title 21:08:53 <04d​racoomega> Sure. (Index talked about form-specific titles a while back, but the issue I always had with them is that it feels slightly off to me that you can just enter or exit a title on demand, and someone can pick it up at the very end regardless of anything they did that game. That isn't, like, a dealbreaker, but it felt unfortunate to me.) 21:09:26 <09h​ellmonk> I only want to add one (pinnacle of evolution, for crabform) 21:09:26 <06r​egret-⸸nde※> It... could at least care about having enough Shapeshifting for it?.... 21:09:36 <09h​ellmonk> would require max sh ofc 21:10:16 <09h​ellmonk> or at least sh highest 21:10:18 <04d​racoomega> Yeah, I'm not really opposed. (At the time me and her talked about it, I wondered about like... somehow tracking how much of the game one did in a particular form, but it seemed somewhat unclear how to do this in a reasonable way.) 21:10:36 <04d​racoomega> Now: that would actually be interesting info for sequell to be able to query also, of course 21:10:39 <09h​ellmonk> I don't think it's any worse than cheesing a title by dumping a bunch of depths xp into it 21:10:43 <09h​ellmonk> fwiw 21:10:50 <04d​racoomega> It might not be 21:10:52 <09h​ellmonk> or doing like ru sacrifice stuff 21:12:02 <04d​racoomega> I am less worried about 'sanctity of title' or whatever and more like... I dunno, it feels like that at least takes some active effort compared to 'equip item at the end'? But it's funny and harmless, so I'm hardly going to tell you not to do it. 21:12:39 <04d​racoomega> (Being able to get a sense of how long various characters use various forms would be interesting stats to be able to query) 21:12:45 <04d​racoomega> Independent of this 21:12:47 <09h​ellmonk> yeah, that would be nice 21:15:37 <04d​racoomega> I wonder what's a sane way to track that? Log what percentage of the XP gained during each XL was gained while in a particular form? And then be able to say that, like 100% of XL 6-10 and 55% of XL 11 was in rime yak form? That's probably not actually that tricky. 21:15:54 <04d​racoomega> Could go in a table akin to action counts 21:16:17 <04d​racoomega> (That doesn't make it sequell-queryable on its own, of course, but one can at least look at logs) 21:17:59 <04d​racoomega> I'm rather less familiar on that end of things, and I understand we're actually somewhat space-limited in terms of what we can bundle to the logfile for sequell 21:21:13 <09h​ellmonk> wondering how to handle ghost stats (which are not tracked) 21:21:44 <09h​ellmonk> I suppose I can toss in some bullshit numbers and just accept that you will occasionally get a ghost with the wrong title, just as you do now 21:22:48 <04d​racoomega> I guess this means the str/dex UC titles are often wrong even now? 21:22:58 <09h​ellmonk> it checks species::has_low_str(gspecies) 21:23:07 <09h​ellmonk> so makes a plausible guess 21:23:19 <04d​racoomega> Ah. Well, probably a similar method can be used to simulate appropriate stats 21:23:27 <06d​olorous_84348> The only one I can think of offhand is Sun Wukong/the Monkey King's becoming immortal a bunch of different ways, some of which involve stealth (e.g. the immortality pills he stumbled across). Although he's supposed to be a god and not a demigod; I'm grasping at straws here. 21:23:51 <04d​racoomega> 'Just multiply starting stats by some factor' 21:23:58 <04d​racoomega> Simple and probably 'good enough' 21:24:02 <09h​ellmonk> sure 21:32:22 <09h​ellmonk> if this gets more complicated and we don't care about ghosts, we could add a bool for "track conducts" or something and then do whatever weird shit in another function 21:36:10 <09h​ellmonk> oh, ghost titles currently use your piety and not the piety of the character that died so probably some god titles are also wrong 21:36:38 <04d​racoomega> Oh, they do?? 21:37:02 <09h​ellmonk> i'm actually going to retain this I think, because it scales naturally through the game 21:38:20 <04d​racoomega> I mean, it could also just be a factor of the ghost's XL, probably 21:39:42 <09h​ellmonk> ah fine, thats more work though 21:40:26 <04d​racoomega> I mean, I think this is all pretty low impact regardless 21:40:40 <09h​ellmonk> fr: every ghost title becomes "dead" 21:40:43 <04d​racoomega> More accuracy is possibly 'better', but it matters very little 21:42:59 <09h​ellmonk> this crab title is too long 21:43:02 <09h​ellmonk> gotta rethink it 21:43:19 <09h​ellmonk> gets cut on mountain dwarf to pinnacle of ev, which is a pretty funny joke 21:43:30 <09h​ellmonk> "fully evolved" maybe? 21:48:19 <09h​ellmonk> I guess other titles get cut off in wizmode too, hmm 21:48:21 <09h​ellmonk> a bit annoying 21:51:21 <04d​racoomega> I mean, don't factor the wizmode indicator into available space here 21:51:33 <04d​racoomega> That's just allowed to cover stuff 21:51:41 <09h​ellmonk> seems like we actually cut into player name if the title is overly long 21:51:48 <09h​ellmonk> so will keep the original idea 22:03:48 03hellmonk02 07* 0.34-a0-166-g0397c6d773: Minor skill title refactor and two new titles. 10(10 minutes ago, 3 files, 26+ 8-) 13https://github.com/crawl/crawl/commit/0397c6d773c2 22:06:50 <09h​ellmonk> will get the other title pr in the morning 22:30:42 @dracoomega I took a look at the ttyrec, 2025-06-30.21_29_08 ~~ 2:20:30, in V:4 they defeated Benkei, dismissed Ugrim, recruited Benkei. Ugrim, Berold, Marbaugh were dead before the Beogh challenge. Then some more wandering in V:4, recall apostles used (ability screen properly shows dismiss options for berold marbaugh and benkei) 22:30:57 then it says Berold is recalled Ugrim is recalled Marbaugh is recalled. 22:31:38 <04d​racoomega> Oh! Maybe this is if you dismiss a dead apostle who died on a previous floor? 22:31:47 could be 22:31:54 <04d​racoomega> You'd think this would happen more often if this was the case 22:32:12 he went to abyss via portal or whatever it's called, then came back, and the apostles weren't there 22:32:25 do the apostles move in other branches when you're in abyss? 22:32:57 they grabbed abyss rune and returned, didn't see any aspostles in that time 22:34:22 is that an easy wizmode check? get 3 apostles, get them killed, go to new level, cause beogh challenge? 22:35:23 Unstable branch on crawl.develz.org updated to: 0.34-a0-166-g0397c6d773 (34) 22:37:51 <04d​racoomega> No levels the player is not on do anything at all. They're all basically frozen in stasis while you're not around. 22:39:07 <04d​racoomega> (Anyway, it wouldn't be hard for me to look into this specific angle when I have time. Still staring at spreadsheets and debating spell weighting functions ^^; ) 22:54:43 fun. I didn't know this existed, https://dcss-ttyrec-player.pages.dev has a microsecond / frame by frame player, that was helping me scrub/search for the events. seems like a really cool project. 22:57:46 Windows builds of master branch on crawl.develz.org updated to: 0.34-a0-166-g0397c6d773 23:00:31 T:80072.7 enters abyss with 3 orcs left behind, T:80370.6 returns to Depths:4 with orcs not where they were before. 23:00:46 no worries, it was a fun thing to look into. o/ 23:19:31 Unstable branch on cbro.berotato.org updated to: 0.34-a0-166-g0397c6d773 (34) 23:55:08 Monster database of master branch on crawl.develz.org updated to: 0.34-a0-166-g0397c6d773