00:08:35 <06m​umra> I feel like, since summons give full XP, a lot of the logic for do i / don't i get XP from a kill is kinda superfluous. If a hostile monster dies, the player probably caused it. Maybe the only abusable thing that should be prevented is neutral monsters getting kills? Maybe only deaths that happen in player LOS should actually get kills 00:22:27 there may be a lot of cruft left over from the half-HP days? 01:30:52 Impy (L17 TrFi) ERROR: range check error (27000 / 702) (Swamp:2) 01:37:46 Gargoyl (L16 GrBe) ERROR: range check error (27000 / 702) (Swamp:2) 01:47:22 <06m​umra> Yeah and also probably when there might have been a lot more ways for monsters to suicide in exploity ways (clouds, traps, changing terrain like in volcano) 02:00:36 Colgate (L16 MiFi) ERROR: range check error (27000 / 702) (Swamp:2) 03:32:43 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-5208-geafff8c3b6 03:59:56 Engwar (L11 DgCj) ERROR: range check error (27000 / 702) (Lair:2) 04:14:18 Colgate (L16 MiFi) ERROR: range check error (27000 / 702) (Swamp:3) 05:07:06 <06m​umra> Thinking that is something to do with summons changes (27000 is NON_MONSTER so it's a bit suspicious) 05:17:36 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 05:30:47 Unstable branch on crawl.akrasiac.org updated to: 0.33-a0-199-g6c11467 (34) 06:06:22 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 06:15:51 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 06:55:06 <04d​racoomega> That is almost certainly the already-fixed bug from last night. Just servers don't all have it. 06:56:20 <04d​racoomega> There's also lots of reasons for the player to get XP for kills out of their LoS (poison, Discord, tail end of explosions, etc.) and reasons for them not to get XP from kills that are in their line of sight (cloud generators, for one thing) 06:56:30 <04d​racoomega> And yes, neutral monsters 07:15:28 <04d​racoomega> (The other crash is something to do with blastmotes, which I have now fixed locally) 07:15:36 <04d​racoomega> Just testing another reported bug before pushing 07:18:13 Archog (L12 DEFE) Crash caused by signal #6: Aborted (Lair:3) 07:20:56 Archog (L12 DEFE) Crash caused by signal #6: Aborted (Lair:3) 07:48:34 discipleofbeogh (L7 DEFE) Crash caused by signal #6: Aborted (D (Sprint)) 07:49:13 discipleofbeogh (L7 DEFE) Crash caused by signal #6: Aborted (D (Sprint)) 07:53:33 discipleofbeogh (L4 DEFE) Crash caused by signal #6: Aborted (D (Sprint)) 08:00:44 <04d​racoomega> I could maybe use a hand with https://github.com/crawl/crawl/issues/4068 which turns out to have the dumbest cause. The bug is only in webtiles (local tiles is fine) and is occurring because the new description of Infernal Mark's cost, combined with the text of the ability itself, comes to exactly 80 characters in length. Which means that there is no space between Makhleb will allow you to brand your body with an infernal mark... 08:00:44 once. and (Injury) in the string exported to javascript. If the description were longer, spaces would be inserted (this is true of Kiku's capstone), but it happens to be exactly 80, which results in the regex the UI javascript uses to parse the cost from the description to not split the string properly. But here's the regex in question, which just makes my eyes glaze over: var re = /^(<[a-z]*>)?(.*\.) *( \(.*\))?$/; 08:01:40 <04d​racoomega> It would be quicker to just add a character somewhere, but that feels like a band-aid solution 08:04:04 <04d​racoomega> We never use parentheses in the actual god power descriptions here anyway, so it seems like it could just split on that and not care about spaces 08:04:20 <04d​racoomega> (If I really understood how) 08:09:35 <08n​icolae> what if you rephrased the ability to be shorter. "Makhleb will let you..." or even just "Makhleb will brand you..." 08:11:06 <04d​racoomega> I mean, as I said, a band-aid is easy, but it seems bad to leave a landmine for the future here 08:11:28 <04d​racoomega> If any god ever somehow gets a combination of ability text and cost that will break the UI again 08:11:48 <04d​racoomega> And someone has to figure it out again ^^; 08:12:02 <08n​icolae> gonna be honest, my first thought is "why are the description and the cost in the same string" 08:12:51 <08n​icolae> like you can just add them together later after you put a space in, right 08:13:16 <04d​racoomega> Because that's how it's rendered, and to be honest, the UI often has very little semantic information by the time it's getting strings to display, and webtiles sometimes has even less by the time they see it 08:13:38 <04d​racoomega> I am not saying this is good, but improving this is a much taller order than the project I spent the last 2 weeks on, I'm afraid 08:13:50 <04d​racoomega> So I'd rather just fix the regex 😛 08:14:15 <08n​icolae> hrm. but surely even the javascript UI has enough juice that you can be like "here are two strings, see if they need a space, and then put them together and display them", right 08:14:21 <08n​icolae> or is it really Just That Bare-Bones 08:15:19 <08n​icolae> is the first part the whatever that displays what letter you push to make the magic happen? 08:15:24 there's a reason someeone was working on a revamped JS UI 08:15:37 <08n​icolae> i have seen that display a billion times and now when i need to think about it i have no idea of its actual details 08:16:55 <08n​icolae> okay. so. it's been a billion years since i have had to care about a regex, but i THINK: var re = /^(<[a-z]*>)?(.*\.) *( \(.*\))?$/; if you drop out the space before the actually-escaped open paren var re = /^(<[a-z]*>)?(.*\.) *(\(.*\))?$/; it will parse the last group as the final group of parens without assuming there's a space there 08:17:31 <04d​racoomega> Honestly, even core Crawl code itself has issues with this. I wanted to rewrap item ego descriptions to be nicer for long egos in the item description menu once, and gave up after over an hour at the problem. The way the UI is written, it seems fundamentally impossible to have any semantic information on anything by the time we get to the part of code that knows how many characters wide the window is - it's just a big blob of text. 08:17:35 <04d​racoomega> And changing that looked very, very hard 08:17:41 03nlavsky02 07* 0.33-a0-200-g550cd92e2e: fix: don't transit all banished low HD monsters to the Abyss 10(9 minutes ago, 1 file, 2+ 2-) 13https://github.com/crawl/crawl/commit/550cd92e2e6a 08:17:42 <04d​racoomega> Was frustrating, tbh 08:18:36 <08n​icolae> wait, it's greedy, isn't it, so it might take (.*\.) to be Everything if there's no spaces at all 08:18:47 <08n​icolae> do any descriptions use parens 08:18:53 <04d​racoomega> No 08:18:58 <04d​racoomega> (I double-checked) 08:19:04 <04d​racoomega> But it feels like it would be weird to use them, anyway 08:19:11 <04d​racoomega> If we're already using () to visually indicate cost 08:19:35 <08n​icolae> (.*\.) looks like it's going for "any number of characters that ends with a period", now that i reread it 08:19:37 <04d​racoomega> So I am fine with just giving the () an explicitly special meaning in these strings 08:19:38 <08n​icolae> so it's probably fine 08:19:55 <08n​icolae> since the period is the delimiter and not the open paren 08:20:17 <08n​icolae> note: i am at work and cannot test this myself, but having thought about it for a minute, i THINK dropping that one space i mentioned earlier will work 08:20:18 <04d​racoomega> That does seem to work, thanks 08:20:23 <08n​icolae> yay! 08:20:24 <08n​icolae> i helped 08:20:35 <04d​racoomega> (My understanding of regex is like... 'skeletal' is probably too generous) 08:20:47 <04d​racoomega> "If I need to do anything, I just look up someone who already wrote a regex for that" 08:20:50 <08n​icolae> lol 08:20:57 <08n​icolae> honestly i kind of surprised myself with how much i remembered 08:21:09 <08n​icolae> it was like jason bourne realizing he can kill a guy 08:21:14 <08n​icolae> except much much less cool 08:23:54 <04d​racoomega> Gosh darnit. Webtiles hasn't been getting the unrewarding icon 08:23:58 <04d​racoomega> Because of course it hasn't 08:24:10 <04d​racoomega> Will I ever remember I have to do something extra for webtiles icons? 08:24:39 <04d​racoomega> It's just complete coincidence that I am adding a new icon right now and happen to have a webtiles build going (so that I could fix this bug we've been talking about) 08:27:39 <08n​icolae> everything i've ever read about the crawl ui code has made me marvel that it is possible to see a game of crawl at all in any medium or format 08:36:03 03DracoOmega02 07* 0.33-a0-201-g4194ddcd66: Fix crash with blastmotes clouds exploding 10(87 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/4194ddcd6649 08:36:03 03DracoOmega02 07* 0.33-a0-202-gdf8c4cf9b9: Fix Makhleb god description not rending on webtiles 10(2 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/df8c4cf9b973 08:36:03 03DracoOmega02 07* 0.33-a0-203-gbb4998b30b: Use a different color dot for non-abjurable summons 10(65 seconds ago, 11 files, 18+ 5-) 13https://github.com/crawl/crawl/commit/bb4998b30b00 08:46:17 <09g​ammafunk> The first level of ascension is to remember that WebTiles exists and has its own implementation. The next level of ascension is to remember that console exists and has its own implementation 08:47:15 <04d​racoomega> Console I actually remember somewhat more easily. It's the parts of webtiles that look the exact same as local tiles but aren't that I sometimes slip up on >.> 08:47:31 <08n​icolae> while i'm here: i was thinking about fixing up the shops in grated_community. the mutation shop can probably stay as-is, even with the greed:50, since some people want mutation potions, by the time you need a bunch you probably have some spare change anyway, and also "expensive but you still want it" isn't bad, per se, just inconvenient. imo at least. but i'm not sure what to do about the legendary smithy. the base types are decent but 08:47:32 they're damaged and also greed:40 is a bit much. lightly-used armoury works because it shows up early. but the grated_community doesn't show up till depths. so it's pretty much always a nothing shop, which i am on record as being against. my first thought is to touch it up to be randart armours but with negative pluses but i am open to ideas. there's also a comment about what to replace a removed food shop with. maybe purple scrolls? 08:47:54 <08n​icolae> https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/des/variable/grated_community.des#L63 09:06:36 onwiheg (L4 DEFE) Crash caused by signal #6: Aborted (D:3) 09:07:43 onwiheg (L4 DEFE) Crash caused by signal #6: Aborted (D:3) 11:27:17 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 12:21:35 Xavori (L9 DjCK) Crash caused by signal #6: Aborted (D:8) 12:22:01 Xavori (L9 DjCK) Crash caused by signal #6: Aborted (D:8) 12:22:46 Xavori (L9 DjCK) Crash caused by signal #6: Aborted (D:8) 12:36:47 <09g​ammafunk> !crashlog 12:36:57 <04C​erebot> 28906. Xavori, XL9 DjCK, T:11860 (milestone): https://cbro.berotato.org/morgue/Xavori/crash-Xavori-20241003-192239.txt 12:37:23 <09g​ammafunk> ah, probably fixed by the commit I see above 13:25:29 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 14:03:10 robertstho (L11 DjFE) Crash caused by signal #6: Aborted (Lair:1) 14:25:38 <06m​umra> At least some of these should be possible to do something about. The trivial mappings of enchantments to icons really shouldn't need that duplication at least... 14:27:07 <04d​racoomega> In theory, sure. However, I am definitely not the person to do any significant work on the webtiles rendering code ^^l 14:29:42 <06m​umra> i know, i am just putting it in my mental backlog to have a look at one day (webtiles code is perilous tho) 14:31:19 <06m​umra> what about a dwarven theme, since new dwarf design; various randart weapons/armours plus a bunch of very expensive enchant scrolls 14:32:46 <08n​icolae> possible, though you can't pick out individual items to jack up the price. i guess with greed:40-60 they'd still be pricey scrolls 14:33:45 <02M​onkooky> Man I still vaguely want to unify egos/intrinsic resists/ring types 15:36:01 -!- TAS-2012v is now known as TAS_2012v 15:39:54 Unstable branch on underhound.eu updated to: 0.33-a0-203-gbb4998b30b (34) 15:47:02 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 15:48:37 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 15:52:56 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 15:55:16 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 15:56:40 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 16:11:35 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 16:11:47 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 17:00:37 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 17:05:39 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:1) 17:09:14 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:2) 17:18:12 PriceMaster (L3 DjFE) Crash caused by signal #6: Aborted (D:2) 17:19:42 PriceMaster (L4 DjFE) Crash caused by signal #6: Aborted (D:3) 17:59:25 anonymouscript (L3 DjFE) Crash caused by signal #6: Aborted (D:2) 18:06:04 03DracoOmega02 07* 0.33-a0-204-g4bb16c9eb9: Fix summons not looking like summons during timeout (Colgate, Darby) 10(6 minutes ago, 1 file, 6+ 3-) 13https://github.com/crawl/crawl/commit/4bb16c9eb9c7 18:06:04 03DracoOmega02 07* 0.33-a0-205-g2442f177b0: Fix a handful of monsters not counting as true summons 10(5 minutes ago, 6 files, 11+ 6-) 13https://github.com/crawl/crawl/commit/2442f177b015 18:06:04 03DracoOmega02 07* 0.33-a0-206-g52868c5510: Fix Boris's timeout speech 10(4 minutes ago, 2 files, 3+ 3-) 13https://github.com/crawl/crawl/commit/52868c5510ab 20:03:07 03regret-index02 07* 0.33-a0-207-gb7d3b0a02a: Revise creeping infernos and tweak stokers 10(6 hours ago, 5 files, 12+ 13-) 13https://github.com/crawl/crawl/commit/b7d3b0a02a45 20:03:07 03regret-index02 07* 0.33-a0-208-g3a15ca111d: New creeping inferno tile (pianoman523) 10(4 hours ago, 5 files, 3+ 1-) 13https://github.com/crawl/crawl/commit/3a15ca111d42 20:03:07 03regret-index02 07* 0.33-a0-209-g40db0d2193: Fiddle with Hells stair -> fountain replacements 10(75 minutes ago, 1 file, 7+ 3-) 13https://github.com/crawl/crawl/commit/40db0d2193d9 20:03:07 03regret-index02 07* 0.33-a0-210-gfb316f7f2e: Name removed spells when failing to learn or cast them 10(50 minutes ago, 2 files, 2+ 2-) 13https://github.com/crawl/crawl/commit/fb316f7f2e89 20:03:07 03regret-index02 07* 0.33-a0-211-gf9cddea6ec: Teach searing wretches to swim across lava 10(45 minutes ago, 1 file, 1+ 0-) 13https://github.com/crawl/crawl/commit/f9cddea6ec9c 20:03:07 03regret-index02 07* 0.33-a0-212-g6d1de5a75f: Tweak confusion's interaction with tension 10(58 seconds ago, 1 file, 9+ 1-) 13https://github.com/crawl/crawl/commit/6d1de5a75f5d 22:00:53 PinaCollateral (L6 DEWr) Crash caused by signal #6: Aborted (Ossuary) 22:03:09 PinaCollateral (L6 DEWr) Crash caused by signal #6: Aborted (Ossuary) 22:04:26 PinaCollateral (L6 DEWr) Crash caused by signal #6: Aborted (Ossuary) 22:11:31 PinaCollateral (L7 DEWr) Crash caused by signal #6: Aborted (D:4) 22:12:05 PinaCollateral (L7 DEWr) Crash caused by signal #6: Aborted (D:4) 22:15:12 PinaCollateral (L8 DEWr) Crash caused by signal #6: Aborted (D:5) 22:19:36 anonymouscript (L9 DjFE) Crash caused by signal #6: Aborted (D:5) 22:35:35 Unstable branch on crawl.develz.org updated to: 0.33-a0-212-g6d1de5a75f (34) 22:59:17 Windows builds of master branch on crawl.develz.org updated to: 0.33-a0-212-g6d1de5a75f 23:30:00 Unstable branch on cbro.berotato.org updated to: 0.33-a0-212-g6d1de5a75f (34) 23:55:35 Monster database of master branch on crawl.develz.org updated to: 0.33-a0-212-g6d1de5a75f