01:05:43 !msg alexjurkiewicz pm me on the tavern, I guess, probably the easiest way 01:05:44 Implojin: You have 1 message. Use !messages to read it. 01:05:59 !messages 01:05:59 (1/1) alexjurkiewicz said (6h 5m 41s ago): how can I get in contact with you? Are you on discord? 01:22:03 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-2762-g22fd707d3b 01:37:25 Unstable branch on crawl.develz.org updated to: 0.25-a0-109-ge9c0e85 (34) 01:48:44 i've never used restart, i kill the server.py process and then /etc/init.d/webtiles stop 01:49:14 i believe tornado responds well to kill 02:04:58 Implojin: hi 02:05:14 oh, hi hi 02:05:23 i was just writing you an extended tavern message 02:05:51 I've had some ideas bouncing around the back of my head re: a level feelings DCSS branch and I'd like to prototype it, piggybacking off of any work you've already done would probably save some time. Your level-effect branch [url=https://github.com/alexjurkiewicz/crawl-ref/tree/level-effect]here[/url] only had the one commit; it seemed as good a 02:05:52 place as any to start but the commit mentioned some kind of problem saving/loading? Are there any branches with further work done that I'm unaware of? 02:07:01 let me read the code real quick 02:07:04 please excuse if this gets a little spammy, i'm going to copy/paste here because it's probably better this goes in -dev anyway 02:07:47 A while ago I went on an SRPG kick and played through some of the Disgaea series, which had an interesting take on dynamic level effects. This system has much more depth than Spelunky's -- it got me thinking about adjacent approaches that might work in Crawl. (I'd highly recommend playing through Disgaea 2 if this interests you.) 02:07:58 Thinking about what kinds of level effects are worth adding to Crawl -- to me, the answer here is anything that dynamically changes what tactics the player should use when approaching the floor. (Pure flavour level feelings are, like, why even bother coding it; level feelings that don't force a change in player tactics would also not be very 02:07:59 interesting.) 02:08:17 One obvious followup from this viewpoint is that there's a lot of overlap between "effects that redefine good tactics" and "game-defining conducts"; I'm currently leaning towards the view that fun level feelings are probably just microcosms of game conducts, defined at floor granularity instead of lasting for the game duration. 02:08:42 In short, I think that there's potential for adding interesting play variance to vanilla Crawl in this space, and I'd like to see how some of this stuff I'm kicking around plays out. 02:08:53 I don't want to overrepresent my intent here: My half-baked Crawl ideas often outstrip my desire/ability to actually code them, and I might end up dropping this if I lose interest or run up against something requiring a bunch of refactoring. 02:09:01 Windows builds of master branch on crawl.develz.org updated to: 0.25-a0-109-ge9c0e85 02:10:38 so based on my commit, it looks like I had things working with the caveat about save not working. Which might not actually be true 02:11:08 I think this line here is sort of the key idea of the implementation: https://github.com/alexjurkiewicz/crawl-ref/commit/c95fc628b41a599c60144b5bad22525f3a7e3a66#diff-a1af78c18ce9b99efefd58fef6b01750R2531 02:11:39 i had a look at the current trunk code to see if there was anywhere obvious to wedge a set of level flags in, it looked to me like your commit was probably in the right direction 02:11:43 in that level effects might impact level generation in a variety of ways / times 02:12:11 i had some concerns about, uh 02:12:11 seeded play 02:12:11 and how this would interact with that 02:12:19 but better to cross that bridge later 02:12:20 i think 02:12:21 so some level effects might run on the level before monsters are spawned, for example. You would need to add another hook earlier in the _build_dungeon_level function for that 02:12:47 yeah. Seeded play should be fine (ensure the same level effects on the same floors). And can be done last 02:12:52 well 02:13:00 i was thinking, among other things 02:13:14 some of these effects might happen randomly after the floor is generated 02:13:44 like, after you've spend 200 turns on a level, a level effect becomes active? 02:13:51 that sort of thing, yes 02:14:03 my word for that was "weather" 02:14:05 i looked at the hell effect code to see if there was anything usable there but 02:14:18 that didn't look very reusable for this 02:14:35 you might be able to implement that by adding logic to timed-effects.cc 02:15:26 the code in there defines things that happens periodically 02:15:31 also, neither here nor there, but as long as I'm typing in -dev 02:16:10 there's a lot of code duplication happening in those method overrides in potion.cc 02:16:10 what you could do is something like this: every level would have a "weather" state associated with it. And there is a "change the weather" timed-effect running always. When it fires, check to see the current level's weather is eligible to be updated (eg check you've been on the floor long enough and whatever else conditions are true) 02:16:17 maybe someone might want to take a look at that sometime 02:17:31 hm 02:17:36 okay, that sounds like it's approachable 02:24:02 about level feelings, they might not really need to be "saved" 02:24:18 since mostly they would affect the initial state of the level only (at least spelunky-like feelings) 02:24:46 you just need to decide the level feeling during levelgen and potentially print a message to the player / log at the same time 02:25:16 anyway, happy to help with any of this if you push some partial code and need help 02:25:43 i still like the idea, although I haven't played digisea so I'm not sure how the idea in that differs from spelunky 02:28:13 okay, so 02:28:17 https://disgaea.fandom.com/wiki/Geo_Symbol 02:28:53 in short; each floor in disgaea contains 1 to 6 randomized rulechange effects 02:29:38 these effects are linked to individual tiles on the floor; the rulechanges are linked to an object on the map that if destroyed, cancels the rulechange 02:29:57 this dynamically changes where the player wants to position their units on a turn-to-turn basis 02:30:18 it's really neat; obviously it's a lot more in-depth than spelunky's system 02:32:16 sounds very cool. Were you thinking of targeting a fork for this feature? I get the feeling changing the game rules on a per-level basis might be a bridge too far for DCSS (well, maybe suitable in the abyss, or fixed rule changes in certain levels) 02:32:21 i really don't want to get that ambitious here, it would be an insane amount of work wedging that kind of thing into crawlcode, but the concepts that series was playing with had me thinking about adjacent ideas that could fit into crawl 02:34:06 well i'm intrigued and interested 02:59:10 Monster database of master branch on crawl.develz.org updated to: 0.24-a0-443-g80245de 03:11:47 Unstable branch on crawl.beRotato.org updated to: 0.25-a0-109-ge9c0e85 (34) 03:35:15 Fork (bcadrencrawl) on crawl.kelbi.org updated to: 0.22.1-817-g9991fd62e0 04:08:05 anyway, thanks for the input alex, i'll let you know if this goes anywhere or if I could use some help 08:53:41 Webtiles server restarted. 09:05:57 for those of you running reasonably high-traffic webtiles servers, how common are "WARN: IOLoop blocked for 0.500000 seconds " errors in the logs? 09:09:18 03Aidan Holm02 07* 0.25-a0-110-ge29c8f2: Check makefile deps in parallel 10(3 days ago, 1 file, 5+ 1-) 13https://github.com/crawl/crawl/commit/e29c8f235819 09:10:13 lightning-fast builds are in! now if only we could do something about that darned compiler.. 09:17:37 Unstable branch on crawl.kelbi.org updated to: 0.25-a0-110-ge29c8f2358 (34) 09:23:25 Stable (0.22) branch on underhound.eu updated to: 0.22.1-59-ge965b3aba3 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-111-g06af0c3: Clean up ui.cc and ui.h 10(3 weeks ago, 3 files, 301+ 150-) 13https://github.com/crawl/crawl/commit/06af0c38ebe1 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-112-g353f0e6: Make box alignment members protected 10(4 weeks ago, 16 files, 56+ 42-) 13https://github.com/crawl/crawl/commit/353f0e6dc72a 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-113-g92c5a26: Extract UI debug drawing code 10(5 weeks ago, 1 file, 60+ 30-) 13https://github.com/crawl/crawl/commit/92c5a269ca06 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-114-gd3e18bb: Refactor widget hover path handling 10(5 weeks ago, 1 file, 99+ 65-) 13https://github.com/crawl/crawl/commit/d3e18bb205a9 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-115-g61d0927: Rename MouseEvent -> wm_mouse_event 10(5 weeks ago, 42 files, 137+ 137-) 13https://github.com/crawl/crawl/commit/61d0927dddf7 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-116-gb71b098: Add improved console cursor positioning API 10(9 weeks ago, 2 files, 25+ 0-) 13https://github.com/crawl/crawl/commit/b71b098e7f62 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-117-g72f26dd: Add checkbox widget 10(5 weeks ago, 7 files, 137+ 2-) 13https://github.com/crawl/crawl/commit/72f26dd2243d 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-118-gb653688: Add text entry widget 10(5 weeks ago, 2 files, 583+ 0-) 13https://github.com/crawl/crawl/commit/b6536882d03c 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-119-ga907b67: Add hotkey event handling support 10(5 weeks ago, 2 files, 25+ 0-) 13https://github.com/crawl/crawl/commit/a907b67b47c7 09:27:39 03Aidan Holm02 07[ui-next] * 0.25-a0-120-g2aff50b: Use new hotkey API 10(5 weeks ago, 5 files, 32+ 53-) 13https://github.com/crawl/crawl/commit/2aff50b9a1bb 09:27:39 ... and 28 more commits 09:55:12 -!- Bahhumbug is now known as bah[m] 09:55:24 -!- bah[m] is now known as Bahhumbug 09:57:28 lol /dev/xvda3 ext4 1.1T 998G 30G 98% /chroot 09:57:41 cao is really having a lot of timeout / disk access issues 09:57:55 they seem to mostly be about writing ttyrecs? 09:58:04 as far as I can tell the transactions do actually complete 09:59:57 there's consistently a timeout on login, too, and it's odd because I can run the init-webtiles.sh command it's running manually in the chroot and it's fine, definitely under 0.5s (though there was an issue that might have been slowing it down that I fixed, but still only on the order of 100ms) 10:00:28 also a lot of error: [Errno 11] Resource temporarily unavailable 10:01:28 I literally have no previous experience actually maintaining one of these servers so any suggestions for things to look at would be helpful 10:02:02 though it's possible that only neil has experience maintaining a server of this age / usage level; cbro is probably the closest 10:06:16 one thing that it's very clear hasn't scaled well is having every username in the same directory 10:07:00 it's possible that it's simply that that is sometimes leading to timeouts, I definitely often get huge lags accessing that directory from the shell; though I don't know exactly why 10:08:26 (since ext4 *should* be fine?) 10:18:31 advil: if you can manage to reproduce slowness you could try attaching perf or strace and taking a trace 10:20:07 you can attach to processes that are already running, e.g. if it's tornado that's producing errno 11s 10:31:53 the timeouts are happening on nearly every login (when calling the script mentioned above, which just checks for the existence of some files) 10:32:55 lol it turns out that strace for an active webtiles server is overwhelming 10:35:16 PLAIDGUY (L7 GnAE) Crash caused by signal #15: Terminated (D:4) 10:35:29 Sorbius (L4 FeEn) Crash caused by signal #15: Terminated (D:3) 10:35:42 Tossi (L16 DECj) Crash caused by signal #15: Terminated (Swamp:2) 10:36:06 japicx (L4 MuNe) Crash caused by signal #15: Terminated (D:3) 10:36:37 uh, possibly I did that by accident? 10:37:12 note to self, strace on a live server risky 10:37:30 the blocking on login may be pretty low level, strace itself would pause for that (even in the middle of a write) 10:39:13 the errno 11s might be a tornado issue 10:43:04 er, I probably should have warned that strace does come with around a 50% perf penalty 10:44:37 when you say login, do you mean login to a cao account? or login via ssh? 10:46:23 to a cao account 10:46:52 on each login, it runs a script that ensures that some rc files exist, plus the relevant directory for morgues/ttyrecs 10:47:06 the call to that script blocks for >0.5s 10:52:20 the morgue/ttyrec directory has around 82k subdirectories, which is definitely a lot (though I thought ext4 should be able to handle that) 10:53:16 you could replace the script with a wrapper script that calls the original with perf/strace 10:53:57 not sure if there'd be another way to profile it, since the pid would come and go pretty quickly 10:54:05 ext4 can handle it, but if a script uses ls to enumerate then you might want to pass the option to not sort 10:54:52 (-f) 10:58:03 yeah, nothing is doing that that I know of, it's all direct access 10:58:06 note that globbing that large a directory is also expensive, again because of sorting 10:58:35 but most shells don't have an option to disable sorted globs 10:58:35 e.g. *if* that is what's blocking in this script it's blocking on just mkdir -p /dgldir/ttyrec/"$NAME" 10:59:54 hm. no good way to speed that up, I'm afraid. but I'd want to check I/O, not just strace 11:00:25 hm, to be fair every directory this script access (for creating rc files as well) is pretty large, just not quite that large 11:00:37 (fbsd is better here, strace won't show the cost of enumeration etc.) 11:06:26 ok, I suspect this is effectively a cache hit penalty 11:06:56 when I run this script with recently accessed users it is ~20ms, when I pick arbitrary ones from the list it is 400-600ms 11:12:01 that seems likely, yes. not sure if you can increase the namei cache size on modern linux 11:12:16 er, cache miss 11:12:47 doesn't look like it 11:15:21 looks like it tries to use as much free memory as possible for namei cache and dcache, so small memory servers will be penalized 11:17:26 this also suggests maybe some I/O penalty going on, but on a virtual server that'd be a given 11:24:11 Stable (0.23) branch on underhound.eu updated to: 0.23.1-91-gf373564dc4 12:01:42 Stable (0.24) branch on crawl.akrasiac.org updated to: 0.24.0-35-gdb84b6a 12:06:47 Unstable branch on crawl.akrasiac.org updated to: 0.25-a0-110-ge29c8f2 (34) 12:10:21 !tell gammafunk did you have a timeline on a tournament write-up? I *might* have time this evening if a meeting cancels 12:10:22 ebering: OK, I'll let gammafunk know. 12:50:18 alexjurkiewicz: I think it got lost amidst the pushes but positional-magic is ready for an experimental 12:59:53 floraline: if you have time I would appreciate an experimental for positional-magic 13:00:05 johnstein_: if you have time I would appreciate an experimental 13:00:07 for positional-magic 13:12:25 man tstbtto has generated nearly 8G of morgue files on cao from all the log messaging 13:18:47 at some point, cao is going to need to do something else with all of these ttyrecs, an *extremely* rough estimate is that there's upwards of 700G-800G of them, on a 1T disk 13:22:28 which only has 33G free; not crisis point yet, it should take a while to get through that, but the end is visible 15:49:17 heh another place where cao times out is every time it tries to locate the logs, so each log besides the current one just consists of a single timeout stack trace 15:49:27 s/locate/rotate 15:49:52 probably worrying about this stuff is not the *best* use of my time 16:08:25 ebering: I'm finishing up writeup now and will post in next hour or so 16:59:27 gammafunk: cool! 17:08:11 ebering: sweet 17:10:13 advil: you can recompress from gz to xz to get another ~10-20% free space. With such a large dataset it might be worth doing 17:10:26 the ttyrecs are already bz2 17:10:57 not sure how that compares to xz 17:13:28 I think the only ultimate solutions are either give up on "keep everything" or move ttyrecs to cheap object storage somewhere 17:19:29 what about something like amazon's s3 glacier? 17:20:04 yeah, something like that seems good 17:20:14 it's like $1 per TB per month, and retrieval time shouldn't be an issue for very old files 17:20:15 backblaze b2 also has pricing that looks good for this use case 17:20:27 well, not $1TB a month 17:21:28 -!- Krakhan|2 is now known as Krakhan 17:23:14 but it doesn't have the access complexities of glacier 17:26:24 it would be nice if we had a good long term solution 17:27:31 i only have space for two or three years at a time, after which i will need some other place to put them 17:29:20 !kw current cv>=0.24 17:29:20 Defined keyword: current => cv>=0.24 17:29:25 !kw recent cv>=0.23 17:29:26 Defined keyword: recent => cv>=0.23 17:29:32 !kw recentish cv>=0.22 17:29:33 Defined keyword: recentish => cv>=0.22 17:29:43 !kw recentishish cv>=0.21 17:29:44 Defined keyword: recentishish => cv>=0.21 17:30:29 I realize there are people who would be sad about this, but probably it doesn't make sense for "signing on to run a public dcss server" = "committing to keep all ttyrecs for all time" 17:31:08 though I imagine object storage will continue to get cheaper as long as there is an internet 17:31:09 yeah, but I don't think we've ever told anyone that 17:31:19 nor tried to enforce it :) 17:31:48 right, but my point is that a server owner should probably not feel guilty for just deleting them 17:32:04 unless there's a better option 17:33:49 Can someone give a quick rundown of what the numbers mean in mon-pick-data.h ? Sample early dungeon entry from it: { -1, 7, 136, SEMI, MONS_OOZE }, 17:33:54 yeah; it would be great if we could brew up a reasonably cost-effective solution 17:34:41 I know, let's just implement json-based playback that also happens for console games with playback only being available via a local tiles/webtiles client! 17:35:09 I think at some point I will try setting up a B2 bucket to host the cszo morgues I got from minmay, and see how that goes 17:35:12 some magic to save and gzip webtiles json so it's much less space than ttyreces 17:35:39 there is an /s coming somewhere there right 17:35:54 yeah the /s was my exclamation point at the end of the first message 17:36:18 hey, maybe someone will read it and take it seriously and actually implement it! 17:36:58 tiles playback is the holy grail, but maybe it will always remain out of reach 17:40:02 Bcadren: did you try to find where pop_entry is defined? 17:40:50 Yea but the variable names don't help much. 17:40:52 struct random_pick_entry 17:41:38 min depth? max depth? commonality within depth? pattern between the min and the max? [guess] 17:42:43 ok, so next question, did you look over how that struct is used? 17:43:02 e.g. random_picker::pick? 17:43:45 which, granted, is not super easy c++ code 17:44:41 floraline: glacier is no good for ttyrec, as retrievals are expensive 17:44:57 floraline: i mean, unless you disallow users from requesting old ttyrecs 17:44:59 yeah, retrievals would need a different mechanism 17:45:22 users could cost you real $$$ 17:45:26 well, you could just make them wait a day or whatever 17:45:38 there is a setting that keeps you in the free retrieval tier I think 17:45:54 ebering: experimental up on cpo 17:46:38 gammafunk: now that you mention it these disk space issues make me worry even about json morgues 17:46:54 right now morgues are extremely cheap except for corner cases like bots that message a lot 17:47:55 it would be nice if the crawl "logfile" could be a little more sophisticated, and include links to the morgue/ttyrec/etc. Then server owners could move those files to wherever they want without issue 17:48:49 advil I hadn't yet, usually stuff like this is clearly documented (like species and mutation stuff for example) I asked because it wasn't...I certainly can look. I do see the documentation on the distribution type. 17:51:00 Alright I think my guess was right. numbers below 0 are because of the distrib pattern; numbers above the max depth are for...out of depth spawns? 17:51:44 yes the logfile is the biggest problem imo 17:51:57 Bcadren because it isn't documented, probably anyone who tries to answer this question would have to do the work I'm guiding you to 17:52:52 Unless someone here knew offhand, which is why I asked before code diving to check. 17:56:03 alexjurkiewicz if the logfile had a link to the morgue, wouldn't that be worse? then the morgue is stuck there forever (or the log line is broken) 17:56:37 it actually should be possible for server owners to do pretty much whatever they want with those directories as long as the source config is set right in sequell/cao; I'm not sure how much this has been put to the test 17:57:31 right now the process is more or less extract a game_key from the log line, which is supposed to be enough to uniquely identify a game, and then use that to construct current locations for things like morgues 17:58:55 advil: i was thinking also that the "more sophisticated" logfile would allow modification of past game records 17:59:12 eg it's more of a database than a flat file 18:01:03 The full workflow I was thinking of was something like this: you play a game of crawl over a few sessions and the files are written to some stable scratch space. Once the game ends, crawl runs/notifies an external processor "hey, completed game in /dir/123", which picks up the game files, puts them into stable long term storage, and adds the game to the logfile 18:01:46 ah I see the idea 18:01:51 that does sound very idyllic ;-) 18:02:04 the goal is to keep crawl's understanding of all of this minimal, and changes to the current system minimal too 18:03:23 the steps to implement this would be: 1) add option to tell crawl to run a program after a game finishes 2) add option to not update logfile 3) make the program write the logfile entry 18:03:58 then we can work on improving the program to write files elsewhere, and logfile consumer enhancements 18:14:58 alexjurkiewicz: sweet, thanks! 18:20:57 that sounds doable but I think I'm missing something as to how that would simplify life 18:22:46 (I guess the biggest technical problem with logfiles as I see them is that the trunk logfiles/milestones are never shifted or changed and you get this one giant thing accruing over time in a way that 0.2 devs didn't think about) 18:23:20 Unstable branch on underhound.eu updated to: 0.25-a0-110-ge29c8f2358 (34) 18:26:16 the three steps above would improve nothing. But they would allow crawl logfile format to be extended more easily. For example adding URLs for game morgues. Then server operators could begin to change where their game data is kept while informing consumers 18:27:31 I'm pretty sure that adding actual links to the logfile format in anything like it's current form is just going to increase technical debt :-) 18:28:07 one factor is that cao scoring/sequell will be pretty hopeless without caching logfiles/milestones 18:29:38 this all might work with a really radical restructuring, where the server is literally running a db that these clients could query 18:30:03 I *think* what you're asking for is really something more like a more flexible way of constructing game_key => url mappings 18:30:37 which is already extremely flexible, but takes someone who is not the server owner updating the source lists 18:31:39 would be pretty great if each server could take a game_key query and spit out some urls, maybe that's the idea 19:14:46 Experimental (positional-magic) branch on crawl.kelbi.org updated to: 0.25-a0-140-g3f2c7a7243 19:20:10 floraline: Thanks! 19:20:20 (your robots have beat you to the announcement punch) 19:23:15 oh, that's just the build 19:23:19 it's not in the server yet 19:27:47 Webtiles server stopped. 19:27:56 Webtiles server started. 19:28:48 done 19:30:33 feature request: reload config.py without restarting the whole server and kicking everyone out of their games 19:35:00 i think i had some good ideas on how to accomplish that but i haven't dug into it yet 20:04:23 it's on my list to work on exporting some config out of py (a la webtiles-changes, but probably with yaml) 20:07:08 alas, rip toml 20:07:29 gonna have to rewrite my bots to use yaml I guess 20:07:34 heh 20:08:00 I just know yaml a lot better at this point, plus it's dead simple to use the way cao scoring does 20:08:27 I like toml, but I guess it just never got particularly wide adoption 20:08:34 certainly was very easy to work with 20:09:56 wow the yaml website certainly has a retro style 20:14:29 I kinda wish with each stable, y'all would move Trunk saves to that stable and break save compat. Just so you could clean up all the Enums etc. that have stayed in such a way to load old Djinni, etc. saves in Trunk. Lots of stuff stayed a little on the ugly side to make sure old saves referencing removed things still load. 20:17:53 ??changelog 20:17:53 changelog[1/3]: https://github.com/crawl/crawl/blob/master/crawl-ref/docs/changelog.txt - often incomplete and/or out of date, see {changelog[3]} for an exhaustive list of changes. 21:19:53 Hey advil long time ago; someone (I think it was PleasingFungus or DracoOmega, I don't remember though) tried to make multiple floor vaults that weren't encompass vaults...the original concept was for a sunken ship across two floors in shoals. It didn't work then, but could your pregeneration/seeding allow it to work? 21:44:17 03ebering02 07[positional-magic] * 0.25-a0-141-ge9f4c59: squash! Positional magic 🔥: Simplify Starburst (cwz) 10(2 hours ago, 1 file, 1+ 0-) 13https://github.com/crawl/crawl/commit/e9f4c598f866 21:44:17 03ebering02 07[positional-magic] * 0.25-a0-142-gc224221: Positional magic 🔥: Adjust foxfire range and spellpower cap (cwz) 10(3 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/c2242213a4bb 21:44:17 03ebering02 07[positional-magic] * 0.25-a0-143-g4ba0add: Positional magic ⭐️: Make dazzling flash silent (cwz) 10(70 seconds ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/4ba0add72236 21:44:19 03ebering02 07https://github.com/crawl/crawl/pull/1200 * 0.25-a0-141-ge9f4c59: squash! Positional magic 🔥: Simplify Starburst (cwz) 10(2 hours ago, 1 file, 1+ 0-) 13https://github.com/crawl/crawl/commit/e9f4c598f866 21:44:19 03ebering02 07https://github.com/crawl/crawl/pull/1200 * 0.25-a0-142-gc224221: Positional magic 🔥: Adjust foxfire range and spellpower cap (cwz) 10(3 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/c2242213a4bb 21:44:19 03ebering02 07https://github.com/crawl/crawl/pull/1200 * 0.25-a0-143-g4ba0add: Positional magic ⭐️: Make dazzling flash silent (cwz) 10(72 seconds ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/4ba0add72236 22:02:51 advil: yeah good way of describing it, game_key -> url API 22:14:41 ebering: your experimental will update every two hours fyi 22:17:40 tournament writeup: http://crawl.develz.org/wordpress/0-24-tournament-results 22:23:39 alexjurkiewicz: thanks! 22:55:51 gammafunk: the experimental is playable on cpo too 22:59:26 alexjurkiewicz: I'll edit the post if you re-add console support to CPO 22:59:47 AND if you give me the bloatcrawl 2 repo password 23:13:34 :D 23:57:36 Experimental (positional-magic) branch on crawl.kelbi.org updated to: 0.25-a0-143-g4ba0add722 23:59:27 Experimental (positional-magic) branch on crawl.kelbi.org updated to: 0.25-a0-144-ga3e78d06b3