01:24:32 Unstable branch on crawl.develz.org updated to: 0.22-a0-254-gaf95ca0 (34) 01:57:47 Windows builds of master branch on crawl.develz.org updated to: 0.22-a0-254-gaf95ca0 02:38:28 -!- KittyTac is now known as KittyTac|Away 02:53:02 Monster database of master branch on crawl.develz.org updated to: 0.22-a0-254-gaf95ca0 03:11:42 Unstable branch on crawl.beRotato.org updated to: 0.22-a0-254-gaf95ca0 (34) 03:29:03 -!- KittyTac|Away is now known as KittyTac 03:30:44 03Aidan Holm02 07[move-to-trap] * 0.22-a0-255-g6b7912b: Fix wind-blast not applying location effects (advil, Beargit, rangerofthewest, #11253) 10(13 days ago, 1 file, 13+ 7-) 13https://github.com/crawl/crawl/commit/6b7912b84047 03:30:53 03Aidan Holm02 07https://github.com/crawl/crawl/pull/712 * 0.22-a0-255-g6b7912b: Fix wind-blast not applying location effects (advil, Beargit, rangerofthewest, #11253) 10(13 days ago, 1 file, 13+ 7-) 13https://github.com/crawl/crawl/commit/6b7912b84047 04:23:19 -!- amalloy_ is now known as amalloy 04:32:16 -!- Rjs-- is now known as Rjs 06:09:39 Amnesiac (L11 DEEE) ASSERT(!invalid_monster(&mons)) in 'mon-death.cc' at line 1910 failed. (D:11) 06:20:54 -!- KittyTac is now known as KittyTac|Away 07:40:21 Tomb card's interaction with branch entrances is funky and unexplained. 13https://crawl.develz.org/mantis/view.php?id=11405 by NormalPerson7 08:06:53 -!- amalloy is now known as amalloy_ 08:23:00 !source spl-goditem.cc:844 08:23:00 https://github.com/crawl/crawl/blob/master/crawl-ref/source/spl-goditem.cc#L844 08:23:26 it seems that tomb issue is easily fixed by just removing the conditional there 08:24:27 it's not clear to me why there's a feature whitelist at all; it isn't used for zin's imprisonment 08:25:37 there's also some strange quirks: open doors get wallified, but closed doors do not 09:10:48 -!- user_ is now known as Serpent7776 09:11:43 hi everyone. I've been meaning to tip my toes into writing a dcss bot for a while. do you think it would be possible to: 1. collect information about the game state using lua; 2. do reasoning in a separate language/script without filling up init.txt; 3. pass the desidered commands back to the game. ? 09:12:00 *dip 09:12:55 all bots I have been able to see are organized as a huge lua script that does all the above, which would be inconvenient for what I am thinking... 09:59:15 peeb: yes, it'd be possible 10:00:12 I don't know offhand if crawl has any way to schedule a lua function to be called, so you might have to settle for synchronous execution 10:00:45 but lua has a few ways to spawn subprocesses and collect their output 10:01:13 you can also include other lua files from your init.txt, if all you want is better organization 10:07:32 aidanh: thanks a bunch. synchronous execution would not be a problem, but I would be interested in using python (to do some dumb machine learning stuff). I was also looking at the ready() function as a place to put the main loop in: my understanding is that it would be called each time crawl is ready for user input. Am I right about this? 10:08:19 no; it's called once after a game starts 10:10:05 oh, too bad. my source was gammafunk's rc but maybe I am reading it incorrectly. https://github.com/gammafunk/dcss-rc/blob/master/gammafunk.rc#L1030 10:14:30 that you.turns() == 0 check is to prevent it from opening the skills screen when you resume a game 10:18:25 sure, I can see that. however, I was fiddling with qw's source code and it seems to me that if I insert the line crawl.mpr('hello') in the ready() function I do get greeted each time I do an action. why is that happening if ready() is not executed each turn? some sort of console flushing problem? 10:18:46 er I think ready() is called once every input cycle 10:19:35 peeb: have you already seen qw? it is the "official" bot more or less, and it is pretty thoroughly worked out 10:19:42 https://github.com/elliptic/qw/ 10:19:50 oh 10:19:52 you mentioned qw 10:19:54 nm 10:20:14 was reading scrollback 10:21:19 oh, whoops, my mistake 10:23:37 the following can give you a sense: 10:23:37 :function ready() 10:23:37 : crawl.mpr("turn " .. you.turns()) 10:23:37 :end 10:23:59 advil: yeah, thanks. qw is impressive, it definitely stairdances better than me :D 10:25:55 thanks, that's pretty great. It also shows that turns != time. 10:26:22 so, my conclusion is that I might be able to do what I was hoping by putting some sort of loop in the ready() function, and that is probably what the good bots do. 10:28:00 yeah, turns != time != when ready() is called (since it can be called multiple times per turn) 10:28:29 I think writing an even handler called from ready() is pretty much the main option for writing a lua bot 10:28:35 there's only a single global ready(), correct? 10:28:43 yeah 10:28:56 afaik 10:29:15 it'd be nice to flesh out the lua API a little; crawl.on("ready", function () ... end) 10:29:23 I haven't really written a lot of clua myself, just dealt with the api 10:29:36 so even turns != "how many times ready() has been called"? 10:29:46 no, try opening the inventory and you'll see 10:30:12 yes, writing event handlers directly would be nice 10:30:25 I might have a go at that at some point 10:30:35 aidanh: aren't you a lua expert or something? :) 10:31:10 well, I wouldn't go that far, but I've worked with it for a while now yeah 10:32:20 advil: I see that now :) thanks. 10:32:41 I'll be going now, thanks a bunch to the both of you :) have a nice sunday 10:35:30 not that I have applied anything I'm supposed to be an expert on to crawl 10:40:13 aren't there some wizmode command for dealing with cards? I swear I've seen something before 10:40:20 what's your area of expertise? 10:40:49 yeah; &c does a card effect 10:41:38 linguistics 10:43:03 well, we could always do with some linguistics-themed monsters 10:43:15 bookworms? 10:43:19 heh 10:43:26 huh, are tomb walls even supposed to disappear if they are incomplete and you move? it's not obvious from the description that that'll happen 10:47:51 it looks fairly intentional 10:48:21 I wonder if this was relying on player's knowledge of tomb of dorokhle way back when that existed 10:48:36 *doroklohe 10:49:40 I agree that the feature list is weird too (for example, not escape hatches? 10:50:39 seems that way; I think I'll remove the feature whitelist and update the description in passing 10:51:26 well, I'm not sure if that's the way to go 10:51:26 since that'll create more cases where it's incomplete 10:52:15 I meant replacing that inner if statement with `proceed = true;`, just like the zin case below 10:52:20 ah ok 10:52:58 yeah that seems reasonable 10:53:07 probably needs an is_solid check as well, but if that breaks anything, well, it's already broken for zin 10:53:25 seems like there are several issues here: (i) moving out of the center of an incomplete tomb is not well-documented to the player, (ii) weird feature whitelist that results in incomplete tombs, and (iii) the notion of "in" the tomb is also counterintuitive to me, especially incases like normalperson7's report 10:54:56 it'd be a lot of effort for a very niche piece of gameplay, but these days the (i) issue might even merit a warning 10:55:04 with a yn prompt 10:55:24 since incomplete tombs aren't too hard to get a lower card power 10:56:13 that seems reasonable; I don't entirely understand how the tomb code works and whether the collapse is always immediate 10:56:44 it seems to be in my testing 10:57:10 I can definitely throw something in the description about the tomb being sustained by the creature trapped within 10:57:31 yeah, sounds good 10:59:44 hmm, does your menu rewrite do the main menu? 10:59:51 oh, yeah, the centre of each tomb is checked in world_reacts() 11:00:16 no; that's done with a PrecisionMenu, as are the highscores and skill menus 11:00:24 ah right, not covering precision menu 11:01:21 it'll probably just be easier to rewrite those than implement the PrecisionMenu stuff; the menus are pretty simple 11:10:11 I have a WIP main menu mockup, but I'm not entirely happy with it yet 11:13:24 ah 11:13:33 https://a.pomf.space/swzdkofduita.png 11:14:19 what is the background supposed to be? 11:14:51 just generic filler; currently it's just a view of the swamp 11:14:56 that looks pretty good 11:15:00 how does name input work? 11:15:10 (that being one of the more irritating aspects code-wise of the current main menu) 11:16:32 I haven't really thought of that; I find the name input pretty counterintuitive and think it'd be more natural to ask when starting a game 11:16:59 but I realize that people who play a lot might prefer to optimize that keystroke away 11:17:04 yeah 11:17:14 you'll definitely find that people want that optimization as you change startup stuff 11:17:18 well, I'm going to change something more incremental in the current main menu, seems like that rework is far off enough that that's probably ok? 11:17:58 It'd be easy to stack on a text box above the menu options in any case 11:18:03 yeah, no problem at all 11:20:40 i'm thinking it might make sense to put New Game as a full-width button above the others, since it's the main one people will be using 11:20:41 I remember when I was first working on text input for skill targets, I went through: "well where does crawl already do text input in a menu, maybe I can repurpose that. let's check how it happens in the main menu. ... wtf?" 11:21:15 i assume Options is just a dummy right now, so it could just be removed for symmetry, though when it's implemented it could be a centered half-width button at the bottom 11:22:09 full-width start button is a good idea 11:22:30 yeah it's a dummy; the menu doesn't look that good if the items aren't balanced 11:23:17 or perhaps a top row with "Enter your name: _______ [play]" 11:23:59 advil: yeah, that pretty much matches my experiences with a lot of crawl code 11:24:17 it is true that a lot of the feedback I've gotten from players who want to hyper-optimize local tiles or local console startup is from people who're already setting a name in their rc so they never even see the main menu 11:30:26 hm, cell_is_solid() is true for closed doors; so zin's imprisonment won't seal a closed door, but will seal an open door 11:30:36 that seems counterintuitive 11:31:11 sounds like an oversight 11:31:20 I guess it would need to open the door and then put a wall there, though 11:31:29 well, maybe 11:31:34 I don't know how that works 11:31:42 huh, I have been on the dev team >1 year now 11:32:26 time flies in the trenches 11:33:18 closed and opened doors are different features 11:33:24 I'm fairly sure it's unintentional 11:35:52 probably 11:51:14 03Aidan Holm02 07* 0.22-a0-255-g2e530e8: Make entombment more consistent (NormalPerson7, #11405) 10(10 minutes ago, 1 file, 5+ 12-) 13https://github.com/crawl/crawl/commit/2e530e8550ac 11:51:14 03Aidan Holm02 07* 0.22-a0-256-g5284510: Add note about tomb walls' early collapse (advil) 10(65 seconds ago, 1 file, 3+ 0-) 13https://github.com/crawl/crawl/commit/52845101effc 12:03:05 is there any dev-team stance on adding sound support to webtiles? 12:03:38 and/or, is the source for cwz's mods available anywhere? 12:04:58 Unstable branch on crawl.akrasiac.org updated to: 0.22-a0-256-g5284510 (34) 12:09:42 Unstable branch on crawl.jorgrun.rocks updated to: 0.22-a0-256-g52845101ef (34) 12:22:37 the problem is really the copyright issues with the sounds 12:23:18 I think we're willing to support sounds in principle, but the actual soundset cwz uses is super illegal 12:23:52 that's why tiles has sound support but we don't distribute any sounds 12:24:22 afaik cwz's mods are all in javascript so you should be able to look at them without too much trouble, but I don't know if it's in version control anywhere 12:53:42 ah, right, that makes sense; I imagine that large of a sound set would be rather pricey if purchased legitimately 12:56:17 I noticed that the dat/clua/*.lua files are setting a lot of global variables; if I clean that up, will that pose a compatibility issue? 12:58:51 dlua has the same problem, but I imagine that back-compat is less of an issue 13:11:00 New branch created: pull/714 (1 commit) 13https://github.com/crawl/crawl/pull/714 13:11:00 03Doesnt02 07https://github.com/crawl/crawl/pull/714 * 0.22-a0-255-g571cbd5: Add auto_hide_spells option 10(13 minutes ago, 4 files, 14+ 4-) 13https://github.com/crawl/crawl/commit/571cbd5a9401 13:18:01 aidanh: not really sure, but global variables in lua have definitely caused problems before, at least in dlua 13:18:23 so fixing them is probably a thing to do 13:25:13 til that declaring a variable static *in a function body* works 13:29:16 the static keyword is very overloaded 14:55:08 <|amethyst> advil: yeah, works and does something you might not expect 15:12:47 global variables in lua is considered bad practice 15:22:14 03advil02 07* 0.22-a0-257-ge769cdc: Tell player if monster can never be recited to (m-aigner / 10416) 10(16 hours ago, 2 files, 14+ 15-) 13https://github.com/crawl/crawl/commit/e769cdc3c42e 15:22:14 03advil02 07* 0.22-a0-258-g34c0b7b: Cleanups to game restarting and the main menu 10(12 minutes ago, 9 files, 100+ 66-) 13https://github.com/crawl/crawl/commit/34c0b7be20fd 15:53:12 does anyone who knows anything about linux have opinions on https://github.com/crawl/crawl/pull/464 ? It's over a year old now but sounded basically fine. (I guess the one more general question is, do we actually want to change the binary name for tiles...) 16:03:00 the repo already has .desktop files, and the icon and linked screenshots look outdated 16:09:47 Unstable branch on crawl.jorgrun.rocks updated to: 0.22-a0-258-g34c0b7be20 (34) 16:22:09 -!- amalloy_ is now known as amalloy 18:18:22 Unstable branch on underhound.eu updated to: 0.22-a0-258-g34c0b7be20 (34) 19:13:54 is anyone with cbro rebuild access around atm 19:27:23 do you want hellcrawl rebuilt 19:27:35 yeah 19:27:58 ok, going 19:28:16 thank you 19:41:09 Experimental (hellcrawl-cbro) branch on crawl.beRotato.org updated to: 5.1-292-gcf516dc 20:15:57 heteroy (L21 MiBe) ASSERT(in_non_diamond_int(r.start)) in 'ray.cc' at line 217 failed. (Vaults:4) 20:45:47 advil: thanks for looking into that recite PR, i'd poked at it a bunch of times but always ended up overcomplicating it i think 20:46:36 trying to use monster_info with it turned out to be a real pain because recite's weird 20:57:02 yeah, I looked at the monster_info possibility for a bit too and decided it would be pretty non-trivial 20:58:45 at least without just simplifying recite (somehow) 21:03:04 03advil02 07* 0.22-a0-259-gdd11e71: Make phrasing less awkward 10(2 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/dd11e718c0d1 21:32:50 -!- IttyCat is now known as KittyTac 22:09:45 Unstable branch on crawl.jorgrun.rocks updated to: 0.22-a0-259-gdd11e718c0 (34) 22:24:19 -!- KittyTac is now known as KittyTac|Away