01:14:58 -!- raskol_ is now known as raskol 02:10:16 Windows builds of master branch on crawl.develz.org updated to: 0.25-a0-766-g0ecfff5982 02:45:05 Monster database of master branch on crawl.develz.org updated to: 0.25-a0-651-g8c222c7a2b 03:24:13 Unstable branch on crawl.beRotato.org updated to: 0.25-a0-766-g0ecfff5 (34) 03:53:50 Fork (bcadrencrawl) on crawl.kelbi.org updated to: 0.22.1-2576-g2bcd4b577a 05:15:00 Is it just oversight that timeout_terrain_changes and timeout_malign_gateways aren't called when returning to a floor after time away or is there a reason they shouldn't be timed out while the player is away? 08:57:19 03ebering02 07* 0.25-a0-767-ga8ac3e9: Fix an arena crash 10(2 hours ago, 1 file, 3+ 0-) 13https://github.com/crawl/crawl/commit/a8ac3e9bb09e 08:57:19 03ebering02 07* 0.25-a0-768-g6f2fc6e: Nameless horror tile (CanOfWorms) 10(34 seconds ago, 3 files, 2+ 1-) 13https://github.com/crawl/crawl/commit/6f2fc6eb8cf2 09:15:23 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-768-g6f2fc6eb8c (34) 09:18:57 Arena in windows offline tiles doesn't work 13https://crawl.develz.org/mantis/view.php?id=12238 by Goratrix 10:23:25 03Aidan Holm02 07* 0.25-a0-769-g34829ab: Fix another arena crash (#11894, #12238) 10(2 minutes ago, 1 file, 6+ 0-) 13https://github.com/crawl/crawl/commit/34829ab59be5 10:32:44 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-769-g34829ab59b (34) 11:06:16 The build is still failing. (master - 34829ab #13020 : Aidan Holm): https://travis-ci.org/crawl/crawl/builds/674433989 11:11:15 hmm, not sure what's happening there 11:15:23 looks like it's on arena `miscasts 5 pandemonium lord v 20 20-headed hydra delay:0 t:10`, it's probably replicable locally 11:16:32 oh, it is 11:18:05 pan lords at it again 11:18:05 I'm not immediately sure why the alive check at the beginning of miscast_effect didn't catch this though 11:51:40 03Aidan Holm02 07* 0.25-a0-770-g53dc336: Fix bugged acquirement menu (#12234) 10(2 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/53dc3366b14c 12:02:51 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-770-g53dc3366b1 (34) 13:31:12 Unstable branch on crawl.akrasiac.org updated to: 0.25-a0-770-g53dc336 (34) 16:11:14 03kate-02 07* 0.25-a0-771-ga3f3f81: Use BASELINE_DELAY for some enchantment durations 10(3 hours ago, 2 files, 3+ 2-) 13https://github.com/crawl/crawl/commit/a3f3f815865d 16:11:14 03kate-02 07* 0.25-a0-772-gf7929f5: Give the plutonium sword a chance to polymorph monsters again 10(3 hours ago, 1 file, 8+ 3-) 13https://github.com/crawl/crawl/commit/f7929f599a5c 16:11:14 03kate-02 07* 0.25-a0-773-g43196ba: Don't print auto item slot adjustments on turn 0 10(4 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/43196ba69759 16:18:50 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-773-g43196ba697 (34) 16:26:37 03kate-02 07* 0.25-a0-774-g40ae2d4: Add details to the "Beogh" status light description 10(2 minutes ago, 1 file, 1+ 0-) 13https://github.com/crawl/crawl/commit/40ae2d4f9023 16:33:04 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-774-g40ae2d4f90 (34) 16:54:08 The build is still failing. (master - 43196ba #13022 : Kate): https://travis-ci.org/crawl/crawl/builds/674573363 16:57:59 -!- Amnesiac_ is now known as Amnesiac 17:17:08 -!- jfcaron_ is now known as jfcaron 17:20:17 The build is still failing. (master - 40ae2d4 #13023 : Kate): https://travis-ci.org/crawl/crawl/builds/674578563 17:54:09 well, this crash might be a deeper bug: mons_adjust_flavoured with BEAM_NEG calls drain_exp on the target, which applies random negative damage and can kill the monster (with cleanup). But mons_adjust_flavoured also returns a damage value for resist-adjusted damage, which is then used by most callers to apply some damage? 17:54:38 so the immediate bug is that it's wrong to assume that mons_adjust_flavoured can't kill the monster (I think this bug was latent, but the relevant beam types weren't used for miscasts before) 17:55:00 but it seems like in this particular case like mons_adjust_flavoured with BEAM_NEG does extra damage against monsters 17:57:49 so for exemple in bolt::affect_monster, there's also a mons_adjust_flavoured call followed by a hurt call (in this case correctly handling the dead monster case), which should do double duty for negative damage if I'm understanding this code right 18:12:30 yeah, re mons_adjust_flavored, I've learned from e.g. god conducts that those need to be applied before calling that function 18:12:45 drain xp was the culprit in those crashes as well 18:19:22 03gammafunk02 07* 0.25-a0-775-gd9a95f1: Remove a no longer relevant Donald line 10(25 seconds ago, 1 file, 0+ 2-) 13https://github.com/crawl/crawl/commit/d9a95f1d30d0 18:22:52 Unstable branch on underhound.eu updated to: 0.25-a0-774-g40ae2d4f90 (34) 18:24:57 03riverfiend02 {GitHub} 07https://github.com/crawl/crawl/pull/1352 * 0.25-a0-750-g7afe695: Improved map, replaced unnecessary tags 10(4 minutes ago, 1 file, 26+ 20-) 13https://github.com/crawl/crawl/commit/7afe69516451 18:32:50 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-775-gd9a95f1d30 (34) 18:40:05 doesn't it seem incorrect that mons_adjust_flavoured should return a non-zero damage value if drain_exp has been called though? 18:42:06 or at least weird 18:43:57 you mean specifically when it's killed the monster? 18:44:02 in either case 18:44:19 oh, since no actual damage was done in addition? 18:44:31 iirc the value returned is the adjusted damage 18:44:41 mons_adjust_flavoured does damage by way of calling drain_exp, and then the value returned is usually used for a hurt call 18:45:03 the value returned in that case is rolled independently of drain_exp, I think 18:46:12 `hurted = resist_adjust_damage(mons, pbolt.flavour, hurted);`, and then separately, `mons->drain_exp(pbolt.agent());` 18:46:40 03riverfiend02 {GitHub} 07https://github.com/crawl/crawl/pull/1352 * 0.25-a0-751-g14eb6dd: removed spaces 10(4 minutes ago, 1 file, 16+ 16-) 13https://github.com/crawl/crawl/commit/14eb6ddf9f30 18:49:02 yeah, the damage from drain_exp is just a small randomized damage value 18:49:34 2 + random2(3) 18:49:40 oh, I see 18:49:46 this is meant to be applied in addition to any main damage 18:49:50 so it's basically a token value so some damage is done 18:50:06 I suppose so, yeah 18:50:21 or sort of like how acid damage does two damage components 18:50:25 the main acid damage and the splash 18:50:49 yeah, I noticed that for acid damage too 18:51:43 whatever the case, this way of managing monster damage is very error prone 18:51:52 03advil02 07* 0.25-a0-776-gbf642f8: Fix a miscast crash 10(4 minutes ago, 1 file, 10+ 4-) 13https://github.com/crawl/crawl/commit/bf642f89ba69 18:52:17 I tried to centralize monster damage from play in spl-damage.cc with _player_hurt_monster() for this reason 18:52:27 but I wasn't able to move all logic fully into that 18:52:39 partly because of the mons_adjust_flavored stuff 18:52:53 s/from play/from player/ 18:53:29 but then there are just all these other cases of spells doing damage and having to manage that carefully outside of that file 18:56:15 for this case I suppose one simple way to reduce issues could be for mons_adjust_flavoured (and by extension stuff like drain_exp) to commit to never killing the monster 18:56:36 possible, yeah 18:56:52 just have to look at all the calls to it and refactor them (there are a lot) 18:56:56 I'm still not sure I understand why drain_exp needs to do 2+rnadom2(3) damage in the first place, I wonder if it was originally to trigger various other code 18:57:03 like annoy the monster 18:57:11 heh, maybe yeah 18:57:26 03riverfiend02 {GitHub} 07https://github.com/crawl/crawl/pull/1352 * 0.25-a0-752-g1c6c22b: Update overflow.des 10(5 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/1c6c22b9b1b7 18:57:37 trying to think if anything can apply beam_neg without damage 18:57:51 yred's drain life specifically uses beam_neg *without* the secondary effects 18:58:05 but I can't think of anything that does drain only without the usual extra damage component 18:58:12 hrm, phantom mirror? 18:58:16 probably not 18:58:51 once upon a time that was hurt(agent, 2 + random2(pow), ...) 18:59:03 %git e250b60d2c 18:59:03 07DracoOmega02 * 0.13-a0-2280-ge250b60: Revamp player xp draining 10(7 years ago, 13 files, 60+ 78-) 13https://github.com/crawl/crawl/commit/e250b60d2c6a 18:59:19 change to random2(3) there, but there's not really an explanation 18:59:43 "For the time-being, draining still works the same against monsters as it always has." 19:03:03 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-776-gbf642f89ba (34) 19:03:42 he lied to us.... 19:04:02 The build is still failing. (master - d9a95f1 #13024 : gammafunk): https://travis-ci.org/crawl/crawl/builds/674621231 19:05:27 well, it looks like before that pow had a default value 3 and that param wasn't used much 19:06:24 and in that commit he started using it for player draining 19:08:18 03riverfiend02 {GitHub} 07https://github.com/crawl/crawl/pull/1352 * 0.25-a0-753-gd1a0de2: Update overflow.des 10(49 seconds ago, 1 file, 14+ 15-) 13https://github.com/crawl/crawl/commit/d1a0de22bb34 19:14:10 wow, just noticed we're doing macOS builds in travis now 19:36:07 and github actions! 19:42:25 seems that macoS doesn't support the nproc command 19:42:55 first line of the make -j$(nproc) recipe is it failing to find nproc 19:54:23 The build was fixed. (master - bf642f8 #13027 : advil): https://travis-ci.org/crawl/crawl/builds/674630425 20:05:32 sysctl -n hw.ncpu 20:08:14 mac doesn't provide gnu stuff; I have nproc via the macports coreutils package, and there's probably a similar homebrew package 20:09:05 the thing that alexjurkiewicz just pasted is how you answer the same question with builtin mac tools 20:12:44 elliptic: watched the ttyrec of your CeTm, hope you enjoyed that worm tunnel vault in Swamp 20:13:29 New branch created: pull/1353 (1 commit) 13https://github.com/crawl/crawl/pull/1353 20:13:29 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1353 * 0.25-a0-748-g0884ee9: Fix CPU detection on macOS 10(6 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/0884ee954e83 20:13:40 advil: yeah, I'll leave it to the travis experts to update the macOS recipe for that, if that's a thing we can do 20:13:40 just happened to notice it when reading the build log 20:16:05 another thing I found somewhat confusing was how the one action is labeled "Installing submodules (for crosscompilation)" yet it doesn't seem to actually be crosscompilation? 20:17:01 maybe it is, but I don't see where it's specifying a crosscompiler (usual way is with a make arg) 20:17:44 yeah, not sure what "runs-on: macos-latest" actually does 20:18:34 I bet that's just a copy & paste 20:18:40 probably, yeah 20:19:21 runs-on specifies the base os 20:19:27 it's like `os: linux` in .travis.yml 20:19:40 here's the reference for workflow files https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions 20:20:42 and yeah, that (for crosscompile) is a copy paste error 20:23:55 and for the record, github actions and travis are unrelated. Unless you're trying to say "all CI looks the same to me" 20:24:20 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1353 * 0.25-a0-749-g6f30059: Correct a step name 10(2 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/6f300594afa3 20:25:34 yeah I'm familiar with the general concept of github actions; we use it on the roguelikes Discord to print commits in channel as they are made 20:26:37 actually I don't think I commented about github actions vs travis 20:27:31 oh the "travis experts" thing; I assume that this is still considered "travis" 20:27:37 as its the one reporting the build results etc 20:30:42 ah -- the github actions results aren't reported by the bot in here at all 20:31:51 right, I see now 20:31:58 how did I actually find that macOS thing... 20:32:41 ahh, the email 20:32:56 if you look at the status checks of any build (click the green tick / yellow circle / red cross) in github UI, there are five million github actions checks and one travis check. One of the github ones will be the macos build 20:33:03 or that! 20:33:21 yeah makes more sense now, thanks 20:33:50 FWIW, github actions has no integrated way to report to IRC. I started writing some code to add support, if you wanted to deprecate travis and migrate to github actions, I can finish it off and submit as a PR 20:34:22 I believe the github actions checks are now a superset of what travis does, and lack of IRC reporting is the only missing feature 20:34:50 but officially deprecating might be more a question of when youse are all comfortable with the github actions UX 20:39:02 looks like we're doing crosscompile twice, once in travis and once in github actions 20:39:51 ah I see 20:39:55 one is zips, one is installer 20:42:31 i figured they were equivalent. if you want, I can configure github actions to run both targets 20:44:38 in travis iirc it generates both zips and installer 20:44:45 in one target 20:45:12 eventually I do want to get all the relevant actions to produce products, so I will mess with that whenever I get to it 20:45:56 03Alex Jurkiewicz02 {advil} 07* 0.25-a0-777-g713ffed: Fix CPU detection on macOS 10(39 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/713ffed48a15 20:45:56 03Alex Jurkiewicz02 {advil} 07* 0.25-a0-778-g357ffb7: Correct a step name 10(23 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/357ffb74ea0d 20:51:11 advil: produce those artifacts for every build, or just releases? 20:51:23 I'll implement the latter for you now, if you'd like 20:52:12 probably every build? the windows one (if it's like travis, I haven't looked closely) may already be producing at least one of the relevant targets 20:52:12 so it's just a matter of exporting the product 20:52:19 sure...I think you may need to do something about the version issue we discussed though 20:52:31 so that the files can be named correctly 20:53:07 yes. For every commit, you can upload images to artifact storage. Which is unlimited and free, but expires after 90 days 20:53:29 for releases, you can upload builds as release attachments, which is also unlimited and free but never expires 20:53:39 sounds good 20:54:10 I looked into doing this in travis once upon a time but never got round to finalizing it, and travis doesn't have its own storage...but it looked really straightforward to set this up with actions 20:54:27 the windows targets in particular would be helpful in terms of moving things off of CDO 20:54:33 is the goal here is to provide trunk builds for players to use? 20:54:52 yeah, that was my immediate goal...though if it automates release packaging too, that's gravy! 20:54:59 also trunk builds for mac 20:55:08 i suppose it's good for branches to, because then you can easily share experimental builds 20:57:27 03riverfiend02 {GitHub} 07https://github.com/crawl/crawl/pull/1352 * 0.25-a0-754-gf9d65e7: fixed spacing 10(5 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/f9d65e712f13 20:58:21 github hosts the tournament 20:58:31 scores calculated via github actions 20:59:20 maybe github actions can join the devteam 20:59:37 you could do that... it has a "run action on cron schedule" task trigger 21:03:03 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-778-g357ffb74ea (34) 21:06:54 03Alex Jurkiewicz02 {advil} 07* 0.25-a0-779-g398c232: Example webtiles systemd unit file 10(26 hours ago, 1 file, 15+ 0-) 13https://github.com/crawl/crawl/commit/398c232eb95e 21:07:16 i wonder if it's worth making linux trunk builds :D 21:07:44 cdo does already do that 21:07:48 it's nearly free so might as well. But would have to set up a makefile target to zip them up. So maybe not for now, until someone complains 21:07:48 makes debs, of course 21:08:14 you probably would make debs, not zips; this is linux, after all 21:08:36 cdo just makes debs and puts them in our repo 21:09:43 maybe the `make package-source` result (which is needed for release anyways) 21:10:04 wonder if that person asking about flatpack would contribute a makefile target for it... 21:12:13 we still need debs for release (and currently rely on someone else to keep an outside yum repository of rpms) 21:12:39 I'm sure some people are using github to make debs if they're doing all this other stuff 21:12:54 but we'd probably need to have a fixed repository location(s) 21:14:19 like we do now on CDO, I mean 21:16:59 huh, on a mac crawl ignores SIGQUIT 21:17:13 is that true on linux too? 21:17:35 let's see 21:17:39 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-779-g398c232eb9 (34) 21:18:27 advil: does for me 21:18:34 ignores it, that is 21:18:50 well, I guess that is one answer to my question to alexjurkiewicz of "why not SIGQUIT" 21:19:14 gammafunk while you're at it can you confirm that SIGABRT behaves like TERM? 21:19:18 on linux 21:19:43 yeah, I get a crash in the usual SIGTERM way 21:19:43 it does on mac 21:20:04 ok...makes sense in that we do regularly see ABORT crashes in this channel (since libc uses that signal) 21:20:20 right, it says "Aborted" instead of "Terminated" 21:21:26 fwiw, I think ABRT fits better than QUIT anyway, because "abort program" sounds more abnormal than "quit program" (as per the signal meaning from signal(3)) 21:22:05 well, I was originally inclined the other way because SIGQUIT is conventionally supposed to mean "crash and dump core" whereas SIGABRT is more "weirds glibc error to do with malloc" 21:22:11 however, if you really prefer QUIT... once you can add it to the crash handler in crash.cc it should do what you want 21:22:28 *weird 21:22:41 I think it would be good to update dgamelaunch-config to use QUIT rathe rhtan ABRT though, which then means needing to update both every webtiles server and every dgamelaunch server 21:23:30 (imagine whoever hacked this together ten years ago discovering the path dependency leading to where we are today) 21:25:14 re the dgl-config precedent, I'm a bit confused as to why it's using abort and need to double check what webtiles server even does (if anything) on that signal 21:25:35 well, the script works to shut down webtiles 21:25:40 it might be crashing it though 21:29:07 03Alex Jurkiewicz02 {advil} 07* 0.25-a0-780-g622e69b: Send DCSS processes SIGABRT rather than SIGTERM 10(26 hours ago, 1 file, 4+ 4-) 13https://github.com/crawl/crawl/commit/622e69b31f54 21:29:57 webtiles server doesn't have special handling for abort. It looks like if you ABRT a python interpreter it crashes 21:30:07 yeah, that's what I was figuring 21:30:13 not sure what happens to the child processes 21:30:30 might vary somehow 21:30:45 I *think* that script should be sending TERM 21:30:52 why are you interested in this? Does dgl-config send ABRT to webtiles server? 21:31:02 I thought that script was purely killing crawl processes 21:31:11 that script you linked there sends ABRT to the webtiles server, not to crawl processes 21:32:05 it's an /etc/init.d script that is used to start and stop the server 21:32:42 oh! heh 21:32:42 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-780-g622e69b31f (34) 21:33:07 I'm interested partly because I've been working on dgl-config, and noticed this during that 21:33:20 so effectively that script is an init.d counterpart to the systemd contrib thing you did 21:34:51 hm, it's weird that the mac Makefile build process has one target to build tiles and one to build console, while windows has a single target to build both 21:35:52 don't think it does have a target to do that? 21:35:54 which target? 21:36:03 unless you mean package-windows 21:36:12 that one, and package-windows-zips 21:36:18 what package-windows makes is the installer, so yeah it has to 21:36:31 oh, there's one installer with both games inside? 21:36:32 it's not just doing those builds, it's packaging them into an EXE installer 21:36:34 right 21:36:42 for zips they are standalone 21:36:47 but also yeah building both, I guess 21:36:58 I'm not sure that's really necessary but the mac build process for actually doing releases historically has been somewhat finicky, and there are some parts that exist only in notes that I inherited that involve fairly carefully cleaning between those two targets 21:36:58 this is just because we use this target for the release 21:37:16 it might have mattered more when someone was signing the releases 21:37:28 yeah, I remember when geekosaur was going through all that 21:37:32 was a true nightmare apparently 21:43:04 yeah. i know with the mac targets you need to explicitly make clean between them 21:46:51 for all I know the windows targets do that between builds as well 21:48:01 seems not between builds, but they do have an extra make clean as an initial step 22:28:25 advil: github artifact storage is limited to 500mb, once you reach that limit further artifact uploads will fail. I was thinking about three approaches here: 1) don't create trunk builds with GA yet 2) Create them and upload to external storage (eg S3) 3) Create them and have a manual script to trim all but the most recent 20 builds (or so) 22:28:28 thoughts? 22:37:19 gammafunk: the first time I saw that vault it didn't have any monsters, it made a lot more sense with swamp worms... 22:41:58 elliptic: oh no, I was outdone by spriggan druids and their convoking, I guess 22:47:52 I wonder if we could just make those convoking things just not pull stuff from vaults in general 22:48:27 <|amethyst> gammafunk: Would V:5 convokers even work then? 22:48:37 <|amethyst> since isn't everything a vault? 22:48:55 |amethyst: presumably we'd have to distinguish vault from layout properly, and yeah that might not be trivial in all cases 22:49:22 probably a sign more that convoking could use a bit of reworking as a concept, but I'm not sure how to fix it 22:50:19 I wonder if more of a doom hound approach would be better 22:50:53 <|amethyst> hm, could the patrolling flag be used here? 22:50:53 <|amethyst> i.e. don't convoke things that are patrolling 22:50:55 well, I suppose in the case of vaults that wouldn't influence AI in an adverse way, yeah 22:51:11 since if you want them to not get sucked out of a vault, they're probably fine to patrol 22:51:29 actually, now that I think about it 22:51:45 it's not going to work so hot since patrolling will keep non-sealed monsters in the vault 22:52:04 I guess this *could* be a solution for runed door/transporter vaults specifically 22:52:15 we'd not want to put it on open vaults though 22:52:55 <|amethyst> well, if you want monsters to be able to leave the vault to come after the player, I would think having them convoked away from the vault to the player also wouldn't be that bad 22:52:56 however that "doom hound" idea might also work; could limit convokers to one or two usages of their ability 22:53:10 <|amethyst> hm 22:53:14 no, it wouldn't be bad for convoking, but it would be bad for non-convoking situations 22:53:27 if we applied that flag to vaults liberally, I mean 22:53:41 for sealed vaults it would indeed be ok 22:53:44 <|amethyst> ah, yeah, that's right 23:03:49 similar to doom hound idea, convoking could summon a duplicate of a monster on the level 23:12:36 right, another related issue with a fix like that would be zot trap effect, which convokes a few monsters; I was thinking durably summoned shadow creatures for that 23:12:51 summoning a duplicate of a monster is kind of cute, but I wonder if there would be weird incentives for that somehow 23:13:42 the epic mara convoke summon and then the real mara comes into view 23:22:17 yeah, I guess you'd want to make the monsters durable summons to prevent some sort of hypothetical optimalness