03:04:28 <12a​sciiphilia> I have created a script for operating a containerized public server based on sentei's dgamelaunch-dcss-forks-server project. Although there are still a few things to refine, it seems to work quite well. By running just one line of the script on a system with Docker installed, you can set up stable versions from 0.11 to 0.31, trunk, and 9 forks in a playable form via WebTiles and DGL. Game data can be accessed via Apache or Nginx. 03:04:28 Including the time to download pre-built binaries, the server can be up and running in under 5 minutes. Thanks to the help of many people here, I was able to make it work well. Thank you all. For those interested, please feel free to use it! https://github.com/refracta/dcss-server 03:33:19 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-5208-geafff8c3b6 05:31:19 Unstable branch on crawl.akrasiac.org updated to: 0.32-a0-1434-gd50b3fb (34) 09:19:53 <04d​racoomega> So, I wanted to adjust Piledriver's damage formula (to make long-distance, high-committal uses of it less likely to wiff) and that meant refactoring actor::collide somewhat. Currently, since all collision damage in the game is routed through that, there's an extra layer of 'map Piledriver power into a collision power number that is sent through collide's own damage formula' that is less flexible than I want. But while I was at it, I 09:19:54 decided to review literally every use of this function (directly or indirectly) currently in the game. And there's a handful of things I'd like to change and/or simplify. The most common usage is through knockback_actor, used by a number of beam effects. The collision damage there is sort of 'ad hoc' in that it is based directly on the spellpower of the beam and not any other property. This means, for instance, that grey draconian Mud Breath (which 09:19:54 uses xl for power) does a whopping 2d3 collision damage at xl 27. I could manually set ench_power to something more sane for this, but I'm actually tempted to remove collision damage (and maybe knockback) from it and primal wave entirely. For comparison, collision damage from Bai Suzhen's Primal Wave is a whopping 2d25 (that also isn't indicated anywhere in the UI), which can be a very nasty surprise in relatively rare circumstances. 09:20:02 <04d​racoomega> The thing is, I think players are actually relatively unlikely to take collision damage from this spell at all. It never moves you more than 1 tile, has a ~30-50% chance to not move you at all, and is most commonly used in the most open zone in the game where half the melee threats have reaching and thus won't opt to stand next to you anyway. It just doesn't feel like an important component of what the spell does enough to warrant 09:20:02 'you have a 70% chance to take 40% more damage if you stand in this specific wrong spot'. Could just make it do no collision damage (or Index suggests removing the knockback entirely, which is probably mechanically fine though I wonder if the flavor feels weirder?) Another weird one (to me) is Wind Blast, which evidently can do 2d11 damage if it knocks you into things, though I'm not sure this has ever felt relevant? The wind blast from ?butterflies 09:20:03 deliberately does no damage, and while the knockback damage from Storm card is relevant (and can be higher), it's folded directly into being blasted by lightning in a way that makes it somewhat invisible - and besides, stuff is virtually certain to take the damage there. Wind Blast already does enough by displacing the player, so maybe it doesn't need to do any collision damage at all. Finally, Force Lance uses a power-scaling formula for knockback 09:20:03 chance and knockback distance (unique from other effects) yet is currently used only on monsters with virtually identical HD, so I was thinking of flattening that. 09:20:28 <04d​racoomega> Just wondering if anyone has objections to removing collision/knockback from primal wave and collision damage from wind blast? (Which would leave Force Lance as the main way for monsters to do this, and it could be explicit about how much in the spell description) 09:26:35 <06p​leasingfungus> i guess without the knockback, primal wave is just a pool of water generator? that seems fine, probably. 09:26:47 <06p​leasingfungus> sort of funny to have it in shoals, since there's plenty of water there already, but it is thematic. 09:26:57 <06p​leasingfungus> anyway, both changes sound fine to me. 09:29:10 <13q​wqwqwqwqwqwqw> I think the damage on wind blast is pretty important 09:29:26 <13q​wqwqwqwqwqwqw> otherwise it just does nothing when you are up against a wall 09:29:36 <13q​wqwqwqwqwqwqw> has definitely felt relevant to me in shoals before 09:29:38 <04d​racoomega> Hmmm 09:30:24 <04d​racoomega> I guess it was a combination of 'number feels low' and 'I don't remember this ever doing anything relevant' when I said that. But of course, number can be indicated (or even be slightly higher, etc.) 09:30:34 <04d​racoomega> It's worth noting that it's very loud, so it's basically also warning cry 09:31:00 <13q​wqwqwqwqwqwqw> primal wave also does impact damage, right? or am I confused 09:31:08 <04d​racoomega> Yes, it does a bunch of impact damage 09:31:37 <04d​racoomega> (Like, Bai Suzhen's does 3d26. But then an extra invisible 2d25 if you happen to be standing near a wall at the wrong angle, ~70% of the time) 09:32:01 <13q​wqwqwqwqwqwqw> I do think removing the knockback there is a nerf to aquamancers, independent of removing the collision damage 09:32:05 <04d​racoomega> (Whether or not you'll hit something on a semi-diagonal is a little hard to guess sometimes, too) 09:32:07 <13q​wqwqwqwqwqwqw> since like, they are ranged monsters 09:32:26 <13q​wqwqwqwqwqwqw> some players are trying to melee them 09:32:45 <04d​racoomega> Do you think it would be weird to keep the knockback and not do collision damage in this fashion? 09:33:16 <04d​racoomega> (Really, a bunch of places that do collision damage feel kind of ad hoc in how much they do) 09:33:16 <13q​wqwqwqwqwqwqw> not for primal wave specifically because it already does impact damage and makes water 09:33:50 <04d​racoomega> (I realize this is my fault, but apparently Brom's Barreling Boulder does an additional ~2d2 damage if it pushes a monster into a wall >.>) 09:33:57 <04d​racoomega> Which is quite silly 09:34:02 <13q​wqwqwqwqwqwqw> I don't necessarily mind removing it though, just something to keep in mind that I do think 1 square knockback without doing damage can still be fairly relevant 09:35:01 <04d​racoomega> (I had actually thought I would remove just the damage first, and Index said that maybe it would be more intuitive to lose the knockback entirely. So I was curious to see what others would say. I'm fine with no collision damage and keeping knockback - perhaps even raising chance slightly, in this context) 09:52:03 Primal Wave inflicting major undocumented collision damage in rare circumstances does feel deserving of change, although the knockback's anti-stairdancing implications are relevant since the water doesn't cover stairs (it's okay if this is a straight buff to stairdancing, but worthy of note). Wind Blast collision damage, on the other hand, often 09:52:03 feels relevant to me when meeting wind drakes in Lair vaults (often enough I had to check mon-pick-data just now to make sure they weren't a Lair spawn) since Wind Blast can already play inconsistently with Airstrike. Anecdotally, Force Lance collision damage always feels startlingly high and is the usual culprit when much of my health bar 09:52:04 disappears around Force Lance casters. Being able to document it would be an unambiguous improvement. 10:01:25 <04d​racoomega> The collision damage from Force Lance is about ~62% of the damage of the base hit, for the record 10:04:31 huh, not much worse than an irresistible Throw Icicle (that checks AC twice) but that's why I had to note it as an anecdotal (if frequent) impression 10:06:20 (or bolt of cold/magma, just compared deep elf knights first as one of its more common casters) 10:15:32 <04d​racoomega> Unrelated, but should someone do something about https://github.com/crawl/crawl/pull/3857 ? Doing things with git keeps reporting security warnings related to this and presumably this is a good idea (but it's webserver/backend-related and I don't usually touch that, so I don't know if there's some relevant reason not to) 10:21:59 <05i​coson> That should be fine to merge though if server admins need to act on it that would be separate 10:23:24 <04d​racoomega> Yeah, like I assumed it should be fine, but I know there's been talk in past about version updates that would break things, so I know I lack knowledge in that area to always tell 12:47:40 horredbonez (L11 VSMo) Crash caused by signal #6: Aborted (D:10) 13:00:29 <04d​racoomega> // TODO: deduplicate with the same-named function in spl-cast.cc static dice_def _spell_damage(spell_type spell, int hd) As I put stuff in the wrong place again, I am sorely tempted to look into this (and probably discover why it's an even larger headache than it seems it would be >.> 13:07:30 <06p​leasingfungus> i suspect it's not that bad, honestly 13:07:32 <04d​racoomega> Argh, the full/terse description thing I used to show collision damage for IMB only works for player spell descriptions -.- 13:07:34 <06p​leasingfungus> i just hadn't done it 13:07:51 <06p​leasingfungus> btw there's also a third place (util/monster) 13:08:11 <04d​racoomega> Hrmm 13:12:16 <04d​racoomega> Okay, so the full description of monster spells doesn't list damage below them in a way that player spells do (which lets it show a longer damage string, used to indicate collision damage) and there's just plain not enough room to put it there in the small place that it does list damage 13:12:34 <06p​leasingfungus> time to implement my monster spell description reform??? 13:12:40 <06p​leasingfungus> i forget where i put the mockup. 13:13:17 <04d​racoomega> Oh? What other changes would this involve? 13:14:19 New branch created: pull/3864 (4 commits) 13https://github.com/crawl/crawl/pull/3864 13:14:21 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1412-gff1b00b86b: Don't imply melee-only buffs affect ranged weapon damage on x-v 10(2 days ago, 1 file, 11+ 7-) 13https://github.com/crawl/crawl/commit/ff1b00b86bcc 13:14:21 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1413-ge2a888cbeb: Treat ghost/pan lord brands like other brands on x-v 10(2 days ago, 1 file, 9+ 34-) 13https://github.com/crawl/crawl/commit/e2a888cbebe2 13:14:21 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1414-g309ac2795c: Split up and clean up _monster_attacks_description 10(46 minutes ago, 1 file, 310+ 278-) 13https://github.com/crawl/crawl/commit/309ac2795c23 13:14:21 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1415-gb10daf46ca: Add x-v row showing damage/flavour of melee attack for ranged monsters 10(28 minutes ago, 1 file, 45+ 29-) 13https://github.com/crawl/crawl/commit/b10daf46cabb 13:15:40 <04d​racoomega> Okay, seemingly this just barely fits if I don't indicate what the number in parentheses actually means. (The spell description can at least note that it does additional damage if you hit something - which currently it does not!) 13:15:50 <04d​racoomega> (But this still seems an improvement on the status quo) 13:15:51 <04d​racoomega> https://cdn.discordapp.com/attachments/747522859361894521/1250906499623030794/image.png?ex=666ca4f6&is=666b5376&hm=ec47d82f82f2a9723675b6d1ee0fd0b6f30d96eadbdbe490020475a861efef0d& 13:26:12 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1414-g63246d76b0: Split up and clean up _monster_attacks_description 10(58 minutes ago, 1 file, 310+ 278-) 13https://github.com/crawl/crawl/commit/63246d76b06e 13:26:12 03NormalPerson702 07https://github.com/crawl/crawl/pull/3864 * 0.32-a0-1415-g18c7912a09: Add x-v row showing primary melee damage/flavour for ranged monsters 10(2 minutes ago, 1 file, 44+ 28-) 13https://github.com/crawl/crawl/commit/18c7912a093c 13:41:45 <06p​leasingfungus> https://discord.com/channels/735056636644687913/747522859361894521/1176636373378277396 right, here we go. i can't remember if there's anything that checks both EV and Will... 13:42:52 <06p​leasingfungus> it was an ambitious pitch. un-splitting different spell blocks (magic / natural / etc) and adding a column for type, adding more information inline 13:42:52 <06p​leasingfungus> https://cdn.discordapp.com/attachments/747522859361894521/1250913301429485720/wip_dcss_monster_desc_-_spells_first.png?ex=666cab4b&is=666b59cb&hm=8c74f70fa65fca7aa9a648a3ac5798174a5d933ccbc704731232b4f9f69dbf19& 13:43:26 <06p​leasingfungus> also i really liked the idea of having those little dividers, at least in tiles. ui code is impossible, though 13:46:10 <04d​racoomega> Quite ambitious 13:46:28 <06p​leasingfungus> tbf, i did like half of this 13:46:44 <04d​racoomega> Was this before a bunch of semi-recent UI improvements existed? 13:47:15 <06p​leasingfungus> this was a few years ago, before i did the big monster description revamp that added speed display, etc 13:47:17 <04d​racoomega> (I have some immediate concerns that areas that are given less space here than they have now will have a handful of things that needed that space and wouldn't fit properly) 13:47:24 <04d​racoomega> Ah 13:47:43 <06p​leasingfungus> i think spell changes are the only big thing i'd still want to change here, other than having shiny gold dividers 13:48:07 <06p​leasingfungus> i gave up on trying to have multiple things in one horizontal section (as with that attack / resist split) because it's a nightmare in various respects 13:48:57 <04d​racoomega> Yeah, I can see the formatting being a huge pain, even if the space needed wasn't 13:49:15 <06p​leasingfungus> it'd be easy if we simply switched crawl to running in Godot, 13:49:41 <06p​leasingfungus> Godot even has c++ interop! bada bing bada boom, so easy 13:49:43 and rewrite the game in Perl 13:49:53 <06p​leasingfungus> hm, i was thinking Prolog 13:50:01 <04d​racoomega> That is more cosmic horror than the Abyss has ever inflicted on anyone in the game's history 13:50:22 <09h​ellmonk> Malbogecrawl 13:50:32 <06p​leasingfungus> anyway, very unclear that my proposed change would actually help with displaying knockback damage 😛 13:50:43 <06p​leasingfungus> but maybe it's food for thought 13:50:43 <04d​racoomega> Doesn't feel like extra space there, no ^^; 13:51:14 <04d​racoomega> I do think I'd like to take a stab at de-duplicating at least some of the spell description code, though, at some point in the not-so-distant future. Not going to attempt it for this refactoring today. 13:51:25 <06p​leasingfungus> you might get some extra space if you have the little emojis for misc stuff? not sure how console folks would feel about being emoji-bound, though. (and i assume you'd need a legend for the emoji below.) 13:52:28 <04d​racoomega> There's a handful of those things that have been accumulating. (I wanted to refactor some monster death stuff too - which is useful, but also a little more spooky) 13:54:39 PF: by the way I got a crash a week or so from a fulminant prism so er thanks for making exploding monsters a fineff, wish I'd taken it earlier. 14:04:33 <04d​racoomega> If you just cherry-picked that in, I feel compelled to point out 14:04:34 <04d​racoomega> %git 10a096165b8dc30e2a897c0210fbf363e9dedc2d 14:04:34 <04C​erebot> DracoOmega * 0.32-a0-1080-g10a096165b: Properly ascribe blame for deaths due to exploding monsters (5 weeks ago, 7 files, 29+ 3-) https://github.com/crawl/crawl/commit/10a096165b8d 14:04:48 <04d​racoomega> (Since that got broken at the same time) 14:22:25 I got that, yes, and one or two later fixes - but thanks, rather be told things I do know than not be told things I don't. 15:03:01 -!- robin_ is now known as robin 15:37:13 Unstable branch on underhound.eu updated to: 0.32-a0-1434-gd50b3fb463 (34) 20:06:35 03DracoOmega02 07* 0.32-a0-1435-ge112003704: Let Harpoon Shot pull monsters 10(7 hours ago, 1 file, 1+ 0-) 13https://github.com/crawl/crawl/commit/e1120037047a 20:06:35 03DracoOmega02 07* 0.32-a0-1436-g860313677f: Refactor collision damage and adjust several things about it. 10(6 hours ago, 15 files, 79+ 44-) 13https://github.com/crawl/crawl/commit/860313677fc9 20:06:35 03DracoOmega02 07* 0.32-a0-1437-ga58bd73f9f: Change Piledriver damage formula 10(3 hours ago, 3 files, 9+ 8-) 13https://github.com/crawl/crawl/commit/a58bd73f9f0a 20:06:35 03DracoOmega02 07* 0.32-a0-1438-ge42ff28ed4: Alert monsters hit by enchantments *after* the enchantment effect 10(2 hours ago, 1 file, 11+ 8-) 13https://github.com/crawl/crawl/commit/e42ff28ed44e 20:06:35 03DracoOmega02 07* 0.32-a0-1439-g74f68ee730: Let coglin melee shadows attack with both weapons 10(72 minutes ago, 3 files, 49+ 16-) 13https://github.com/crawl/crawl/commit/74f68ee73051 20:06:35 03DracoOmega02 07* 0.32-a0-1440-gec5035c421: Give Coglin ranged mimics a shot with their offhand weapon 10(36 minutes ago, 1 file, 11+ 0-) 13https://github.com/crawl/crawl/commit/ec5035c42114 20:06:35 03DracoOmega02 07* 0.32-a0-1441-g50798860ff: Make coglin shadow mimics wield weapons in random hands 10(33 minutes ago, 1 file, 6+ 0-) 13https://github.com/crawl/crawl/commit/50798860ff2b 20:06:35 03DracoOmega02 07* 0.32-a0-1442-gcabffc2860: Remove beam code left over from lamps of fire 10(32 minutes ago, 1 file, 0+ 3-) 13https://github.com/crawl/crawl/commit/cabffc286073 20:06:35 03DracoOmega02 07* 0.32-a0-1443-g6e0f240ce6: Let ranged bump attack work with sight range 0 (elliptic) 10(4 minutes ago, 2 files, 26+ 3-) 13https://github.com/crawl/crawl/commit/6e0f240ce670 20:20:07 04Build failed for 08master @ 6e0f240c 06https://github.com/crawl/crawl/actions/runs/9509993685 20:44:04 <04d​racoomega> What's going on there, I wonder? 21:02:05 03DracoOmega02 07* 0.32-a0-1444-g23b81e505f: Fix a possible crash 10(29 seconds ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/23b81e505f3d 21:21:15 03dolorous02 07* 0.32-a0-1445-ga2480ef707: Update mut_species.lua test for current species. 10(13 minutes ago, 1 file, 4+ 4-) 13https://github.com/crawl/crawl/commit/a2480ef707bb 22:35:33 Unstable branch on crawl.develz.org updated to: 0.32-a0-1445-ga2480ef707 (34) 22:46:29 03DracoOmega02 07* 0.32-a0-1446-geb6dff901a: Fix Charming breaking immediately (Undo) 10(20 seconds ago, 1 file, 3+ 1-) 13https://github.com/crawl/crawl/commit/eb6dff901aca 22:58:58 Windows builds of master branch on crawl.develz.org updated to: 0.32-a0-1445-ga2480ef707 23:31:09 Unstable branch on cbro.berotato.org updated to: 0.32-a0-1446-geb6dff901a (34) 23:42:20 hardcoding (L2 GnCA) Crash caused by signal #6: Aborted (D:1) 23:55:33 Monster database of master branch on crawl.develz.org updated to: 0.32-a0-1446-geb6dff901a