00:05:42 <09g​ammafunk> will have to check that out 01:22:50 <09g​ammafunk> @nicolae NAME: nicolae_shoals_nautilus_by_nature ..wow, really 01:34:36 Unstable branch on crawl.develz.org updated to: 0.27-a0-1245-g940ed4fa31 (34) 01:55:30 Windows builds of master branch on crawl.develz.org updated to: 0.27-a0-1245-g940ed4fa31 02:14:44 <08n​icolae> :) 02:23:33 <09g​ammafunk> @nicolae I'm replacing whitewater elementals with elemental wellsprings 02:24:38 <09g​ammafunk> it's kind of a cute idea idea, but I don't think it quite justifies itself 02:51:09 Unstable branch on cbro.berotato.org updated to: 0.27-a0-1245-g940ed4fa31 (34) 02:53:49 Monster database of master branch on crawl.develz.org updated to: 0.27-a0-1245-g940ed4fa31 04:25:33 New branch created: pull/1979 (1 commit) 13https://github.com/crawl/crawl/pull/1979 04:25:33 03dilly02 07https://github.com/crawl/crawl/pull/1979 * 0.27-a0-1246-g08c2d0c: Remove -Wiz from blade hand form 10(3 minutes ago, 2 files, 2+ 3-) 13https://github.com/crawl/crawl/commit/08c2d0c9631f 10:10:50 <08n​icolae> aw dang 😔 10:11:17 -!- Discord|1 is now known as Discord| 10:17:10 <06a​dvil> !vault nicolae_snake_gridmaze_tees 10:17:11 <04C​erebot> Can't find nicolae_snake_gridmaze_tees. 10:17:43 <08n​icolae> oh dear, what happened with the vault 10:17:57 <06a​dvil> it's still there, sequell is just not always finding stuff lately 10:18:04 <08n​icolae> no, i mean, why are you looking it up 10:18:19 <08n​icolae> i assume not because you just want to appreciate its aesthetic qualities 10:18:44 <06a​dvil> @nicolae one thing I've been trying to do is clean up vaults that rely on vetoing, which this one does quite a bit (the shuffles have a lot of options that lead to isolated zones) -- any suggestions on how to place this vault without doing this? 10:19:31 <08n​icolae> it doesn't intentionally rely on vetoing, so if it is vetoing it means i dropped the ball on making sure the shuffles didn't veto it, so what i need to do is go back to the drawing board on the shuffles 10:20:18 <06a​dvil> ah ok, it's not obvious to me how to do that on this design because shuffles are independent, as an example if all the shuffles flip, it creates an internal isolated area 10:21:23 <08n​icolae> i'll think of something 10:21:54 <06a​dvil> here's an example of that result from my script: https://pastebin.com/9VUz5QXw 10:22:39 <08n​icolae> ugh! i can't bear to look... how could i have let this one slip by... 10:22:44 <06a​dvil> haha 10:23:16 <06a​dvil> this is something that has come up before when dealing with shuffles like this which really need to be done non-independently, and in the past I've never found any good solution by e.g. making more complicated shuffles, if you weren't around I'd probably mercilessly just cut some holes in the walls (or at least, that's what I've done on the past) 😉 10:24:17 <08n​icolae> in the other gridmaze vaults i used the random lua functions like coinflip to do sets of shuffles, dunno why i forgot about that for this one. i will assume that i added the shuffles to this one at like 12am 10:24:37 <06a​dvil> this one really needs something like if HF swap then don't swap LM, and so on 10:24:43 <06a​dvil> ahh I see, yes of course lua would work 10:24:55 <06a​dvil> for doing stuff like this 10:25:36 <08n​icolae> i used to not use lua, i was like... "i can do this just with shuffles if i'm clever enough!" and then when i came back to vaultmaking i was like "that's stupid. nicolae you were stupid" 10:30:56 <06a​dvil> I might just add something along the lines of what nicolae_snake_gridmaze_squiggle does and let you adjust as needed 10:34:26 <08n​icolae> oh, i think i know what needs to be fixed, i'll whip up something a bit later and submit it mantiswise 10:34:58 <06a​dvil> ah, if you might get to it soon then I'll hold off 10:37:48 <06a​dvil> it's hard to see how to evenly balance all the valid path possibilities 10:37:48 <08n​icolae> https://crawl.develz.org/mantis/view.php?id=12590 10:38:15 <08n​icolae> tbh i don't worry about the various probabilities but in this case i think the fix is just "make sure all the options don't switch at the same time" 10:39:19 <08n​icolae> there's four places where the layout can shuffle away from the "underlying" pattern and as long as one of them stays in that underlying arrangement then i think it can't get shut off 10:40:00 <06a​dvil> ah that's very straightforward, maybe I don't appreciate the / enough 10:40:01 <06a​dvil> that one validates, thanks! 10:40:30 <06a​dvil> the vault is otherwise the same, right? 10:40:49 <08n​icolae> yep, the only change is in the shuffles 10:43:59 <08n​icolae> i have restored my honor 10:44:08 <08n​icolae> now to actually get to work on my work 10:57:30 <06a​dvil> haha 10:57:42 <06a​dvil> I guess I shouldn't mention hilbert zone then 😄 10:59:53 <08n​icolae> dammit i thought i had hilbert zone under control too, i went through pages and pages of graph paper 11:01:32 <06a​dvil> it might just be this one instance 11:01:43 <08n​icolae> goddamn instances 😡 11:01:55 <06a​dvil> ime the stuff this automated testing finds is nightmarish to notice by hand 11:02:09 <06a​dvil> especially with subvaults 11:02:45 <06a​dvil> and it's usually very rare 11:03:12 <08n​icolae> i can't believe i was betrayed like this by my own vaults 😔 11:03:17 <06a​dvil> haha 11:03:19 <08n​icolae> i trusted you, hilbert zone 11:14:37 <08n​icolae> anyway, what's the error? lay it on me... 11:14:49 <06a​dvil> trying to gather info one sec 11:14:55 <06a​dvil> also I don't actually want to keep you from working 11:15:18 <08n​icolae> eh, it's a slow day, and it's not like there aren't a zillion other ways i could distract myself 11:16:08 <06a​dvil> so I'm getting occasional isolated zones in nicolae_spider_hilbert_zone_5 and nicolae_spider_hilbert_zone_6. Here's an example paste of nicolae_spider_hilbert_zone_5 with an isolated area, there is no hurry at all (but this one has so far defeated my skills at matching up des to output) https://pastebin.com/pbJfs7VH 11:16:57 <06a​dvil> I've generated one in game also for that vault and the specific isolated region I generate overlaps with nicolae_spider_hilbert_2_sides_1_open, some walls with 31, and space that is in the main vault 11:17:27 <06a​dvil> (may have missed some details) 11:17:30 <06a​dvil> it didn't take too many tries to generate in game with &L 11:17:44 <08n​icolae> all right 11:18:11 <06a​dvil> kinda want to write a wizmode command that empties out the level like the placement script does 11:20:14 <06a​dvil> I tested all the hilbert zone maps with a reasonable number of iterations and those were the only two that errored 11:20:51 <08n​icolae> makes sense, these were the last two i made and i might have put less effort into manually verifying their situations 11:21:45 <08n​icolae> bah, the fuzzing effect to roughen up the walls looks good in spider but it makes it a pain in the ass to reverse engineer what the hell happened 11:23:48 <06a​dvil> haha yeah 11:24:10 <06a​dvil> I had to fix some cases like this for the_grid without minmay being around to ask questions, that was fun 11:24:27 <06a​dvil> well, "had to" is possibly an overstatement 11:28:07 <08n​icolae> can you give me an example of an isolated zone with hilbert 6? 11:28:40 <08n​icolae> looking at the des i'm not even sure how that would be possible 11:29:54 <08n​icolae> hilbert 7 i can believe would give errors though 11:32:53 <08n​icolae> okay, for hilbert 5 the simplest fix is to ditch the K and L _21 subvaults 11:33:01 <08n​icolae> which i have done 11:33:10 <06a​dvil> one sec I didn't save 6, running some unrelated tests now 11:34:56 <06a​dvil> hm, this stuff isn't in CI because it takes a long time to run on all vaults, but I wonder if I could rig up some way to run only on recently changes des files 11:39:30 <06a​dvil> @nicolae ah 6 looks like a rare 1-square closet: https://pastebin.com/MP9NwA8f 11:39:40 <06a​dvil> in the lower right 11:39:51 <08n​icolae> oh, yep, let me look at that 11:40:10 <08n​icolae> took two seconds to fix once i realized what i'd done 11:40:34 <08n​icolae> i got too overzealous putting - in the corners of passageways 11:41:08 <08n​icolae> enjoy https://pastebin.com/VAyZ2eJb 11:48:57 <06a​dvil> thanks! 11:54:48 <08n​icolae> let me know if anything else needs lookin' at 12:27:29 03advil02 07* 0.27-a0-1246-g9baf572: fix: some vault opacity fixes from nicolae 10(35 minutes ago, 2 files, 5+ 7-) 13https://github.com/crawl/crawl/commit/9baf572ecc60 12:27:29 03advil02 07* 0.27-a0-1247-g7e0d850: fix: a batch of vault opacity fixes 10(3 minutes ago, 6 files, 35+ 23-) 13https://github.com/crawl/crawl/commit/7e0d850643ae 12:27:29 03advil02 07* 0.27-a0-1248-g57ac2eb: feat: options for resuming placement.lua in the middle 10(2 minutes ago, 1 file, 39+ 6-) 13https://github.com/crawl/crawl/commit/57ac2eb73c58 12:29:44 <06a​dvil> that fixes everything I found in this pass that I could fix 12:30:05 <08n​icolae> noice 12:30:12 <06a​dvil> I did change a nicolae vault yesterda, but that was just removing the transparent tag from nicolae_wu_jian_glorious_leap 12:30:55 <08n​icolae> i thought transparent was okay as long as each internal region was connected to a way in or out 12:30:56 <06a​dvil> it has stairs in the isolated region but some of the level checks happen independently of stair connectivity 12:30:59 <08n​icolae> ah 12:31:11 <06a​dvil> I couldn't swear that that one wouldn't ever place 12:31:11 <08n​icolae> good 2 know 12:31:46 <06a​dvil> it doesn't need no_tele_into given the stairs, that I do know 12:31:58 <06a​dvil> oh hm 12:32:14 <06a​dvil> there was an opaque mask in that vault too, that should have worked 12:32:47 <08n​icolae> well, i suppose it doesn't super need transparent anyway, iirc that vault only has one possible entrance anyway 12:33:19 <06a​dvil> yeah 12:33:19 <06a​dvil> though before a commit yesterday it was better to have vaults without an @ as transparent, but I think I've sorted that out 12:33:24 <08n​icolae> transparent, iirc, is mostly "it is possible for this vault to be the only connection between two parts of the level" 12:34:02 <08n​icolae> at least from my standpoint, i assume there are many more details to be considered 12:34:42 <06a​dvil> I would think of it is, the level generator does a floodfill to try to detect isolated regions resulting from placing a vault, and opaque squares are considered walls for those purposes, transparent squares are tested for connectivity 12:34:55 <06a​dvil> transparent vaults get internally tested too 12:35:16 <08n​icolae> got it 12:36:28 <06a​dvil> aha I bet this opaque mask didn't work because it misses the + inside the isolated area 12:36:33 <08n​icolae> yeah, i do know transparent chokes on isolated internal regions, what i mean is, from my standpoint, i only need to specify something transparent in the first place if i want it to possibly be the only connection in a level 12:36:44 <08n​icolae> lol that's probably a holdover from when the isolated area didn't have a door 12:37:04 <06a​dvil> I would say that everything should be transparent unless there's a reason otherwise 12:37:20 <06a​dvil> because it makes it easier to find issues with automated testing 12:37:28 <08n​icolae> oh, hunh. well, i can do that then 12:38:01 <06a​dvil> if I had the required level of focus, I would invert the defaults so that there's an opaque tag and everything not marked is transparent by default 12:38:55 <06a​dvil> I guess to me "opaque" really means "I know better than the levelgen algorithm about connectivity needs" (which is often true!) 12:40:19 <06a​dvil> also the failure mode of a transparent vault with an unnoticed isolated region is a veto, for an opaque vault with an unnoticed isolated region it's a tele closet 12:40:33 <08n​icolae> good point, there 12:41:43 <06a​dvil> hm, while I'm working on levelgen, wasn't there a des syntax error that someone recently mentioned as crashing the game on startup? 12:50:46 <06a​dvil> ok I found it, it was this, but I can't replicate it, so I must be misunderstanding the issue 12:53:15 <08n​icolae> i think it's when you do something like short sword / pair of gloves \ kite shield / homemade jorts instead of remembering to do short sword / pair of gloves \ / kite shield / homemade jorts 12:54:36 <08n​icolae> or short sword / pair of gloves / kite shield / homemade jorts, forgetting the \ 12:55:24 <06a​dvil> when I've tried that with monsters I've just gotten errors 12:57:30 <06a​dvil> yeah, I get an error on des parsing, either "unexpected character sequence" if there is / and no \, or "Bad item name: pair of gloves kite shield" if there is a \ and no / 12:59:17 <06a​dvil> I guess this should also be @gammafunk 13:07:25 Unstable branch on crawl.akrasiac.org updated to: 0.27-a0-1248-g57ac2eb (34) 13:15:34 <05k​ate> i think you can get the case where it doesn't throw an error on des parsing when you've defined your loot as part of a lua function, maybe? 13:17:05 <05k​ate> and then it does do the thing where it'll parse successfully but error when it tries to place the vault, i know that's definitely come up with various removed items where they get left in a vault but there's no error until someone comes across it in-game 13:32:31 <06a​dvil> huh 13:32:49 <06a​dvil> maybe in that case nothing triggers reparsing if the des doesn't get edited 13:32:55 <06a​dvil> do you know if that got through CI? 13:37:05 <06a​dvil> I can get parsing to defer with lua at least, though I'm not sure this will crash either 13:37:26 <06a​dvil> (didn't try full lua, just using conditionals so the bad ITEM lines won't parse on startup) 14:28:14 -!- swebb_ is now known as swebb 16:16:07 <06a​dvil> non-wizard teleport doesn't ever displace monsters, right? 16:19:56 <10P​leasingFungus> honestly not sure 16:21:09 <06a​dvil> reading the code it looks like not 16:21:15 <06a​dvil> !vault pf_just_have_faith 16:21:16 <04C​erebot> Can't find pf_just_have_faith. 16:21:21 <06a​dvil> I don't think lava mimics work any more 16:21:34 <06a​dvil> like !vault 😦 16:22:20 <06a​dvil> the statue mimic doesn't do much either afaict 16:23:11 <06a​dvil> that vault is sadly mostly just a tele closet now 16:31:18 <06a​dvil> not sure why I didn't expect that writing code to detect tele closets would lead to anything other than a million tele closets 16:31:29 <06a​dvil> *expected 16:31:51 <06a​dvil> and of course false positives because detecting tele closets is hard 16:32:06 <10P​leasingFungus> what! who broke them 16:32:14 <06a​dvil> (I'm pretty sure that there's no way to displace monsters with normal tele, maybe with shafting it can be?) 16:32:20 <06a​dvil> haha no idea, what did they even do? 16:32:24 <10P​leasingFungus> they work for me 16:32:27 <06a​dvil> did it vanish when you stepped next to it? 16:32:34 <10P​leasingFungus> imo just run the vault 16:32:39 <06a​dvil> when I place that vault the lava seemed real 16:32:44 <10P​leasingFungus> did you walk next to it 16:32:46 <06a​dvil> yes 16:32:53 <09h​ellmonk> Its all in your mind 16:32:54 <10P​leasingFungus> https://cdn.discordapp.com/attachments/747522859361894521/852284143156985866/unknown.png 16:33:03 <10P​leasingFungus> works 100% fine for me 16:33:36 <10P​leasingFungus> i can reproduce nothing happening if i wizard teleport there (since that takes no time) 16:34:08 <10P​leasingFungus> is that what you were doing? 16:34:08 <06a​dvil> do I need to place it in some weird way? 16:34:08 <06a​dvil> no 16:34:08 <10P​leasingFungus> I just did &Ppf_just_have_faith 16:34:12 <10P​leasingFungus> which seems pretty straightforward 16:34:23 <06a​dvil> ah, it does not work with &L for some reason 16:34:31 <10P​leasingFungus> oh, i never use &L 16:34:39 <10P​leasingFungus> since i vaguely remember it breaking things 🙂 16:41:34 <06a​dvil> no idea why that doesn't work but it also doesn't correctly place the mimics with lua dungeon place code 16:42:35 <10P​leasingFungus> weird 16:43:15 <06a​dvil> I'm just going to add that one to my force-skip list 16:56:27 <09g​ammafunk> @advil I've gotten a crash upon placement based on there being a bad line continuation, yeah, I think your described cases cover that, though; it might be for MONS statements instead of ITEM 16:56:39 <09g​ammafunk> it might also be tied to using KITEM instead of ITEM, etc 16:56:52 <06a​dvil> if you have a chance could you try to replicate it so I can get a MWE of some kind? 16:56:59 <09g​ammafunk> I can try in a bit, yeah 16:59:12 Discord makes enemies neutral. 13https://crawl.develz.org/mantis/view.php?id=12599 by Khashishi 17:00:36 <10P​leasingFungus> hm 17:00:46 <10P​leasingFungus> isn’t that the entire point of the spell? 17:03:23 <09g​ammafunk> perhaps they're referring to the Discord chat application and the calming effects that thoughtful discussions can have on people who were formerly bitter rivals 17:30:15 <08n​icolae> "This means that several gods will prohibit you from attacking them. Meanwhile, they will continue to attack you. This seems broken to me." 17:38:18 Several? Which ones? 17:38:34 <09h​ellmonk> all of the good gods, at least 17:39:22 maybe they should allow it in certain cases, like if they're frenzy or have some other status effect causing them to attack you? 17:46:11 <09g​ammafunk> @advil ok, I got a crash with this modification to hellmonk_guarded_unrand_dark_maul: diff diff --git a/crawl-ref/source/dat/des/variable/mini_monsters.des b/crawl-ref/source/dat/des/variable/mini_monsters.des index 20b62caf16..b4aecdc937 100644 --- a/crawl-ref/source/dat/des/variable/mini_monsters.des +++ b/crawl-ref/source/dat/des/variable/mini_monsters.des @@ -7517,7 +7517,7 @@ SUBST: D = 222. 17:46:12 : elseif you.in_branch("Orc") then MONS: two-headed ogre ; dark maul . dire flail ego:vorpal MONS: two-headed ogre / cyclops / orc knight / orc warlord w:2 \ - / stone giant w:2 / ettin w:2 + stone giant w:2 / ettin w:2 SUBST: D = 2.. # D:8-12 : elseif you.depth() < 13 then 17:47:14 <09g​ammafunk> when placing it with &P in orc, that is 17:47:28 <06a​dvil> ah maybe it requires something more complex than just monster names 17:47:47 <09g​ammafunk> yeah, I tried to recall which vault last got me the error, it may have been this one 17:48:00 <09g​ammafunk> or maybe I got lucky, but I ran into this crash with this batch of vaults for sure 17:54:43 -!- zureal_ is now known as ZureaL 18:23:22 Unstable branch on underhound.eu updated to: 0.27-a0-1248-g57ac2eb73c (34) 19:35:29 <08n​icolae> question: why is it necessary for the elf:3 loot vaults to have the no_rotate tag 19:35:41 <08n​icolae> there's a function elf_setup and all it does is add the no_rotate tag 19:38:39 <10P​leasingFungus> lol 19:39:02 <09h​ellmonk> do you ever just... r o t a t e 19:45:39 <08n​icolae> i rotate all the dang time 20:45:38 03advil02 07* 0.27-a0-1249-g1d930f0: fix: a batch of tele closet fixes 10(3 minutes ago, 10 files, 30+ 19-) 13https://github.com/crawl/crawl/commit/1d930f0793d6 20:45:38 03advil02 07* 0.27-a0-1250-ga17f9a2: feat: add basic tele closet detection to placement.lua 10(2 minutes ago, 5 files, 75+ 7-) 13https://github.com/crawl/crawl/commit/a17f9a2f5c1b 21:17:16 <06a​dvil> it's sort of an interesting question what should happen here because the original map is already gone 21:20:15 <09g​ammafunk> well, wouldn't it simply fail to parse? 21:20:32 <09g​ammafunk> or do you mean in some general case of failiing to place a map for any reason? 21:28:58 <06a​dvil> the parsing failure happens basically in the middle of levelgen 21:29:45 <06a​dvil> so for &P in particular, the old level is cleared and the new one may even be semi-generated (if there are vetos) 21:32:31 <09g​ammafunk> ah, and there's no way to make that parsing failure happen at builddb time/start? 21:32:53 <06a​dvil> no, because it's wrapped in : elseif you.in_branch("Orc") then 21:33:00 <09g​ammafunk> aha 21:33:04 <06a​dvil> which was the case kate suggested also 21:33:29 <09g​ammafunk> hrm, I suppose parsing relative to every possible location isn't very viable 21:33:34 <06a​dvil> (so that was what was needed to replicate this, and trying with &P) 21:34:37 <06a​dvil> I could maybe imagine, when parsing the KITEM itself, test running the item spec? 21:35:14 <06a​dvil> it doesn't do that though, the existing "parsing" checks for itemspecs etc are because the lua code generated by the parser is actually run during builddb 21:35:14 <09g​ammafunk> yeah, I guess likewise for mons specs 21:36:33 <09g​ammafunk> it's a shame we can't catch these errors at startup, but I guess there are some pretty intractable issues there 21:38:29 <09g​ammafunk> we can't even do something cute like having these conditionals always evaluate to true somehow, since that could in theory cause vaults to have issues 21:38:39 <09g​ammafunk> although maybe not in terms of just parsing 21:39:05 <06a​dvil> well, it would still entail only running one branch of an if/then conditional 21:39:18 <09g​ammafunk> right, true 21:40:43 <06a​dvil> if KITEM: blah is supposed to have blah be a valid item spec, it does seem like it should work to try to parse blah right then in there (as opposed to converting it to a string and letting it be handled later) 21:41:04 <06a​dvil> I'm not sure my yacc skills are up to that though 21:41:06 <09g​ammafunk> and that also applies to KMONS? 21:41:10 <06a​dvil> yeah 21:41:38 <09g​ammafunk> I guess there's also a question over lua-defined kitem/kmons 21:41:46 <09g​ammafunk> I don't know if those are another wrinkle 21:41:52 <06a​dvil> yes, this would not handle that case at all 21:41:58 <06a​dvil> that one is probably intractable 21:43:53 <09g​ammafunk> maybe some special builddb mode for CI/vault makers that can run through a builddb based on every location in the game 21:44:15 <09g​ammafunk> were its setting the place 21:44:58 <09g​ammafunk> obviously it's also up to vault makers to actually test their placements 22:09:28 <06a​dvil> one problem here is that this crash happens after 50 retries of running the same broken levelgen process 22:12:41 <08n​icolae> what the, this is tyranny 22:25:14 03PleasingFungus02 07* 0.27-a0-1251-g4220d81: Move Freezing Cloud to level 5 10(35 hours ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/4220d81b6a1b 22:25:14 03PleasingFungus02 07* 0.27-a0-1252-g7141f64: Shift: Tornado (L9 Air) -> Polar Vortex (L9 Ice) 10(44 minutes ago, 58 files, 670+ 652-) 13https://github.com/crawl/crawl/commit/7141f643d0e3 22:25:14 03PleasingFungus02 07* 0.27-a0-1253-gff5298d: Move Chain Lightning to level 9 10(29 minutes ago, 19 files, 270+ 108-) 13https://github.com/crawl/crawl/commit/ff5298d5c3c0 22:25:14 03PleasingFungus02 07* 0.27-a0-1254-g64d3596: Remove Absolute Zero 10(24 minutes ago, 12 files, 9+ 140-) 13https://github.com/crawl/crawl/commit/64d35965e295 22:25:14 03PleasingFungus02 07* 0.27-a0-1255-g0aef527: Storm Form tweaks 10(6 minutes ago, 2 files, 3+ 2-) 13https://github.com/crawl/crawl/commit/0aef527cbc5f 22:25:14 03PleasingFungus02 07* 0.27-a0-1256-gced786f: Don't claim Okawaru cares about your friends (Ge0ff) 10(61 seconds ago, 1 file, 0+ 1-) 13https://github.com/crawl/crawl/commit/ced786f65e39 22:46:49 04Build failed for 08master @ ced786f6 06https://github.com/crawl/crawl/actions/runs/923700643