00:00:09 msysgit should work on any recent windows if those fail 00:01:14 thanks :) 00:56:23 hi again 00:57:27 do u think it would be a good idea to translate the way how to get involved in this project for people in my country?? 00:58:00 I'm running a project on this game with a group of people and unfortunately they can't speak english 00:58:39 so I'm thinking of making a translated version of your descriptions and post that on the repository 00:59:38 switch__: fwiw fixing a bunch of little bugs was how i got started in crawl-dev too 00:59:56 Unstable branch on CRAWL.XTAHUA.COM updated to: 0.23-a0-393-g6e9e0f2 (34) 01:13:16 ttky: it might be hard for the project to accept non-english contributions because that's the language all current devs use, but it could still be helpful 01:15:55 ttky, what country? 01:17:06 but regardless of that, i don't see why not 01:19:12 amalloy, sweet :D 01:21:58 anyone have any idea why those builds on the two more recent PRs didn't work? 01:24:10 south korea 01:24:39 I believe there's a community of this game here as well 01:24:59 were you able to compile in visual studio? 01:25:30 ttky, have you used the ckr server? you might want to talk with hong about it 01:25:46 ??ckr 01:25:47 cwz[1/7]: Crawl server (webtiles-only) located in Korea; the server admin goes by hong on irc. http://webzook.net:8080/ 01:26:10 I didn't really talked to him yet 01:26:11 oh right, renamed, whoops 01:26:31 I guess I can send him an email or smth 01:29:09 we have partial translations for a number of languages. i'm sure it'd be nice to get more, and if you want to write a contribution guide in another language as well, that sounds useful 01:29:53 yeah, you can find a lot of south korean players on cwz, some of whom also speak english as well 01:30:33 gammafunk, there's some weird monster data stuff in these crash reports 01:31:06 unless i'm misunderstanding them 01:31:08 check the failed jobs on my two recent PRs 01:34:53 what makes you think it's monster data stuff? it looks to me like reading keyboard input is crashing, from the two crashlogs i looked at 01:35:46 https://i.imgur.com/UiN6t1g.png this is what made me think it 01:35:57 but i don't know if that's too not-normal 01:37:19 a link to the crashlog page, please, not just an image of one part 01:37:55 that section was in all the ones i looked at, i think 01:37:58 https://travis-ci.org/crawl/crawl/jobs/448661797 01:38:01 it's not in any of the ones i looked at 01:38:43 okay. that's just saying it couldn't build the `monster` tool that irc bots use to do like: 01:38:44 @??goblin 01:38:44 goblin (15g) | Spd: 10 | HD: 1 | HP: 3-5 | AC/EV: 0/12 | Dam: 4 | 10weapons, 10items, 10doors | XP: 1 | Sz: small | Int: human. 01:38:51 oh 01:38:55 not sure why it couldn't, but not a big deal: you can see the build continues after that 01:39:24 and then it actually crashes while trying to get the player to pass a --more-- prompt in a test game 01:39:49 where do you see that? 01:40:08 the gdb stacktrace, starting at https://travis-ci.org/crawl/crawl/jobs/448661797#L1330 01:41:00 oh 01:41:23 i was looking at the trace two paragraphs up and couldn't decipher it 01:41:40 that one is much clearer, lol 01:41:53 yeah, C++ prints mangled C-style names first, because they're sometimes available when the original C++ names aren't, i think 01:43:09 the exact same build types failed in both of my PRs, which changed completely different things 01:44:20 yeah, i wonder if it was somehow the previous commit, changing console support, even though those builds passed 01:44:57 yeah, that's the only thing that makes sense 01:45:00 but those builds passed, as you said 01:45:18 did gamma's go through travis? 01:45:28 looking at them now they shouldn't be causing this error, though 01:52:18 hmm, gonna undo one of them to almost nothing to make sure it's the current codebase and not the changes 01:58:56 03stenella02 07https://github.com/crawl/crawl/pull/884 * 0.23-a0-395-ge850efc: z 10(4 minutes ago, 1 file, 3+ 16-) 13https://github.com/crawl/crawl/commit/e850efca8c1e 02:16:26 yep, it's the current codebase. gonna revert the 3 files changes in my MSVC commit and see if it fixes it in the PR 02:20:05 03stenella02 07https://github.com/crawl/crawl/pull/884 * 0.23-a0-396-g7c268a6: z 10(76 seconds ago, 3 files, 2+ 5-) 13https://github.com/crawl/crawl/commit/7c268a65e87b 02:21:47 03gammafunk02 07* 0.23-a0-394-g6ce9549: Some decorative tweaks to a Bazaar vault 10(19 minutes ago, 1 file, 6+ 8-) 13https://github.com/crawl/crawl/commit/6ce9549c5407 02:27:45 Unstable branch on crawl.develz.org updated to: 0.23-a0-393-g6e9e0f2 (34) 02:33:04 welp 02:56:47 strong names 02:59:00 Windows builds of master branch on crawl.develz.org updated to: 0.23-a0-394-g6ce9549 03:02:36 switch__: you_foodless() might be better than the SP_MUMMY check 03:02:53 not sure about the other species hardcodings 03:10:46 Unstable branch on crawl.jorgrun.rocks updated to: 0.23-a0-394-g6ce9549c54 (34) 03:11:41 Unstable branch on crawl.beRotato.org updated to: 0.23-a0-394-g6ce9549 (34) 03:59:43 Monster database of master branch on crawl.develz.org updated to: 0.23-a0-394-g6ce9549 04:29:29 -!- amalloy is now known as amalloy_ 05:31:59 The build was broken. (master - 6ce9549 #10538 : gammafunk): https://travis-ci.org/crawl/crawl/builds/448701866 08:19:36 hey again 08:19:59 I downloaded the source code of the game and tried to complile it on visual studio 08:20:35 and it won't work 08:20:48 saying crawl.exe is not executable 08:20:51 any help? 08:48:27 . 11:43:26 Napalmbreeze (L14 GrFi) ERROR in 'mon-util.cc' at line 1568: bogus mc (no monster data): invalid monster_type 1000 (1000) (D:12) 11:44:41 !crashlog 11:44:44 20364. Napalmbreeze, XL14 GrFi, T:18665 (milestone): https://underhound.eu/crawl/morgue/Napalmbreeze/crash-Napalmbreeze-20181031-154325.txt 11:46:15 these do keep coming 11:55:00 i undid the changes inside my pulled PR in the gourmand PR 11:55:07 so it wasn't my code 11:56:10 whatever change is responsible for these crashes is at least a few weeks old 11:56:33 oh, i meant the current travis build failures 12:07:30 advil: some of those crashes are going to get fixed in upcoming stuff I push 12:07:33 %git 12:07:33 07gammafunk02 * 0.23-a0-394-g6ce9549: Some decorative tweaks to a Bazaar vault 10(10 hours ago, 1 file, 6+ 8-) 13https://github.com/crawl/crawl/commit/6ce9549c5407 12:14:42 hrm, I don't think the monster is dying due to mons_adjust_flavoured() there 12:15:12 I do have some changes to los_attack_spell stuff again but I'm not sure that there'd be a crash there, let me test this 12:25:11 gammafunk, did you see the travis build failure with your latest commit? 12:25:26 i wanna say it was green yesterday o_O 13:05:14 Unstable branch on crawl.akrasiac.org updated to: 0.23-a0-394-g6ce9549 (34) 13:22:26 -!- adndsg is now known as muravey 13:28:12 -!- amalloy_ is now known as amalloy 13:30:26 switch__: i don't know if you saw the message, bug ttky was in here earlier having trouble building under visual studio. as the resident MSVC expert i wanted to make sure you noticed 13:30:43 lol 13:30:52 thanks for making sure 13:30:54 but yeah, i saw it 13:31:01 i dunno what to make of what he said, though 13:31:14 "it won't work. crawl.exe is not executable" 13:32:28 all I could think of was they tried it under linux (possibly meaning the subsystem) 13:35:10 i sent him a DM the first time he came asking him to keep me updated 13:35:25 not sure if he saw it or not 13:35:34 i'll help him out if he comes back 13:44:49 the travis crash is actually a halloween crash 13:45:00 it's just a more at the wrong time 13:47:31 lol 13:52:32 advil: some digging found that the fannar crash is due to fannar killing himself with his own refridge, invalidating himself as a monster 13:53:06 looks like this doesn't happen in similar situations with explosions due to a mid being used and the relevant pointer being returned as null if a situation like this happens 13:53:25 but that does mean that things like monster harm don't get correctly applied even then 13:53:34 so I guess I need to change order of iteration for the los attack spell code 13:53:45 so that the caster is always affected lass 13:53:48 *last 13:53:52 nice 13:54:30 the easier fix would be to add a validity check + continue (or whatever), maybe 13:54:42 it is a more general sort of issue for e.g. explosions and I'm not sure if there's a general solution 13:55:01 do you mean just pass over the agent and affect them after the loop? 13:55:45 I don't know how the code is organized but there's a ton of damage/death-related code that just skips over any invalidated targets while iterating 13:56:12 iirc refrigeration is one of those weird special cased spells so it might just not have done that 13:56:42 I don't fully know what you mean by that, I guess 13:57:08 New branch created: pull/886 (1 commit) 13https://github.com/crawl/crawl/pull/886 13:57:08 03stenella02 07https://github.com/crawl/crawl/pull/886 * 0.23-a0-394-gb382102: Disable met targets after quaffing a potion of experience 10(7 minutes ago, 2 files, 4+ 0-) 13https://github.com/crawl/crawl/commit/b382102964b1 13:57:17 los attack spells do a simple los iterator of the agent to determine affected monsters, putting them in a vector 13:57:17 gammafunk: i just tried to repro this though, and fannar killing himself with ozos doesn't crash for me 13:57:27 unlike the drain life thing the other day 13:57:36 amalloy: it did for me; you need other allies to be in los at the time 13:57:40 it can't just be you + fannar 13:57:47 allies of me, or of him? 13:57:57 the crash happens specifically because he dies and then his refridge continues and hits another monster 13:58:05 hm it looks like ozo's might already be supposed to have these checks 13:58:11 okay, allies of me. okay, that makes sense 13:58:29 I'm not sure it would matter about their alignment actually 13:58:35 if it's his allies 13:58:37 they're immune 13:58:43 so yeah I guess it would matter 13:58:45 well, they disappear when he dies anyway 13:58:57 right 13:59:43 but yeah, it's applying monster::hurt and then checking fannar's inventory for harm 14:00:21 did you figure out what commit introduced this crash? 14:00:46 it's sort of recent (not sure how recent, but not years old) 14:00:54 well, that part is a little bit of a mystery; from what I can tell, my los attack spell change should not have created this crash 14:01:19 for https://crawl.develz.org/mantis/view.php?id=11482 i want to add another check, e.g. "is_unhelpful_item()" in addition to the current "is_useless_item()" and selectively check for transient properties like temporary rPois mutation etc. do you think this is the correct way to solve this bug? 14:01:24 it's definitely the reason why it's crashing and I can see how the current code causes the crash, but the code prior to this also should have crashed 14:02:04 I did add a god conduct trigger in that code, but not sure how that would have started the crash to happen 14:02:28 obviously fannar killing himself with refridge when the player has allies is fairly rare 14:02:32 but not that rare I'd think 14:03:52 advil: if you have a specific recommendation for how to modify that loop, let me know, otherwise I'll probably just try to affect the agent at the end 14:20:03 I'm just wondering if there's something else going on 14:20:13 maybe related to adding harm as an artifact property 14:20:52 though I haven't figured out a direct connection 14:22:00 switch__: `is_useless_item` already has an optional bool that is supposed to determine whether it checks for temporary properties 14:22:23 (adding such a bool would be the usual crawlcode way if it didn't already have it) 14:22:41 yeah, but i don't think the "useless" property can properly handle these cases 14:22:45 i think there needs to be another property 14:23:15 using it as is has rPois rings be useless when you have an rPois mut. fixing it would make them not useless, even though they... kinda? are 14:23:39 it would be nice to notify the player that their equipment *at the moment* isn't helpful to them 14:23:39 but probably will be in the future 14:23:47 that property isn't about mutations, it's about actual temporary stuff 14:23:54 er, that bool 14:24:00 yeah I suppose it could be the case that harm added as an artp causes a crash when the monster has died 14:24:20 gammafunk that seems plausibly the trigger, at least 14:24:23 but it does seem bad to invalidate the agent before we're done using their info 14:24:33 !source item-name.cc:3399 14:24:33 https://github.com/crawl/crawl/blob/master/crawl-ref/source/item-name.cc#L3399 14:24:35 regardless, what i wrote is still true, no? 14:24:37 is the docstring for that bool 14:24:47 maybe I need to look a little more carefully at that 14:24:49 yes, that artp code is the difference between not crashing before, and crashing now 14:25:12 monster::scan_artefacts didn't used to be in the codepath for determining if the monster had harm 14:25:23 and it crashes when the monster is invalid 14:25:26 ahh I see, there was another way 14:25:58 amalloy: right, so my question is what is the correct procedure for something like this; doesn't the monster's equipment info get invalidated when they die? 14:26:07 probably scan_artefacts shouldn't crash or shouldn't be called if the monster is invalid 14:26:17 so even if we fix that crash, wouldn't there still be invalid info 14:26:41 I looked into the actual crash and really what is happening is that it needs to get monster class, which is invalid 14:26:42 in the sense that the agent had harm and it wasn't applied after the agent killed themself 14:26:49 so I think the pieces are coming together 14:27:11 it needs monster class because to look at equipment, it can't tell whether a monster can use something without knowing class 14:27:22 gammafunk: yes, that would be technically incorrect but a pretty minor sin in the vast book of crawlcode 14:27:25 so there's generic code in the codepath that is expecting a valid monster class 14:28:08 amalloy: well, I think it's a fairly important issue: if you invalidate the info about the agent that you need to properly apply the effect made by the agent 14:28:59 so I guess my instinct is to just apply things to the agent at the end to prevent this (either by skipping past them or by changing order of iteration) 14:29:51 gammafunk: what if the agent dies while affecting another target, e.g. because of uskayaw injury bond 14:29:54 oh heh there are random halloween messages and this travis sigterm is only for some of them 14:30:15 doing the agent last doesn't guarantee that the agent lives, so i don't think it really fixes the problem 14:30:33 I think the bug is really about how harm is calculated 14:31:15 amalloy: yeah, I guess you could have something like a monster with pain mirror up 14:31:31 the agent damages the monster, thereby damages themself 14:31:34 right 14:31:40 so you can't really solve this with order of iteration 14:32:42 advil: imo the bug is really that monsters die in the middle of doing things. i dream about some sweeping refactor to the way that we handle chains of effects, so that we can like...calculate all simultaneous effects via a single snapshot of the world, and then apply them all at once, rather than interleaving calculation and application 14:33:33 that does sound pretty nice, but yeah I suppose I can't really fix the general problem and we should just fix application of harm instead 14:34:14 the important thing here is that this turned out to be ebering's fault and not mine 14:34:30 it's his new-dev prank 14:34:50 wait till gammafunk changes something and then subtly break something else so that your change looks responsible 14:35:38 this is why we need a rule of no more math people on the dev team 14:35:57 ok that's a general problem but this case I'm 75% sure is just a missing alive() check during calls to hurt 14:36:16 s/if (agent && agent->extra_harm())/if (agent && agent->alive() && agent->extra_harm()) 14:36:25 yeah, that sounds like it's the case; all that's happened is that monster_die() has been called 14:36:30 which resets the monster class 14:36:47 !source monster.cc:4444 14:36:48 https://github.com/crawl/crawl/blob/master/crawl-ref/source/monster.cc#L4444 14:36:50 on that line 14:36:59 so an aliveness check prevent monster::hurt() from crashing 14:37:11 yeah 14:37:15 advil: or agent->extra_harm() should just return false for invalid monsters. don't invalid monsters mostly act like...inert, bland things? i.e. they don't crash if you touch them 14:37:46 like agent->is_player() returns false for invalid monsters, agent->pos() returns origin... 14:38:01 perhaps so 14:38:13 that would work too, but that might need to be pushed down to `wearing` and `scan_artefacts` 14:38:47 even better 14:38:51 fix 10 more latent bugs 14:40:09 I still say that it's a travesty that an ogre mage wearing an amulet of harm that fireballs itself to death will not have harm properly applied to its other victims 14:40:35 that one is amalloy's more general bug 14:40:43 though in this case I think it makes flavor sense 14:40:48 the amulet has just dropped to the ground 14:41:00 I suppose you could argue that 14:41:01 as the icy cold spreads through the room 14:41:02 gammafunk: more fun: it will apply harm to some random subset of its other victims 14:41:52 because damage is applied in arbitrary order (radius_iterator for fireball, actor_near_iterator for LOS spells) 14:42:07 amalloy: aha! but you didn't know that the order of iteration for bolt explosions is done from center outwards! 14:42:11 I checked in beam.cc 14:42:18 it does that to make the animation look right 14:42:25 and then iterates over the cells in the same order 14:42:30 gammafunk: sure, but the center might not be the ogre mage 14:42:32 for the explosion application 14:42:39 yes, but it's not random is my point 14:42:49 it is arbitrary though 14:42:57 although I guess some of it is random now that I think of it 14:42:59 oh, i did mention random 14:43:35 another fun and totally unrelated bug 14:43:38 i was thinking of LOS spells, for which it's "random", because monster id numbers are pretty arbitrary 14:43:58 airstrike warns you if you try to cast it in a sanctuary (about how it would break your sanctuary) 14:44:06 but if you actually cast it, nothing happens to the sanctuary 14:44:17 if doesn't actually perform the sanctuary check and remove it 14:44:20 I think freeze is the same 14:44:27 I just pushed the alive checks to the equip calls 14:44:27 secret tech 14:44:36 03advil02 07* 0.23-a0-395-gcf17ac6: Add aliveness checks to some monster equipment functions 10(2 minutes ago, 1 file, 10+ 0-) 13https://github.com/crawl/crawl/commit/cf17ac6c6540 14:44:58 awesome, thanks 14:45:56 advil: would it have made sense to put that in mons_itemuse instead? 14:46:07 or, in addition, perhaps 14:46:41 maybe, I just did it in those three functions because they were next to each other and extra_harm calls scan_artefacts 14:48:03 have it return MONUSE_NOTHING you mean? 14:48:50 right now the behavior is that mons_itemuse will trigger an assert if it's called with an invalid monster 14:48:56 (that's exactly this crash) 14:49:14 which doesn't seem wrong to me, locally 14:50:24 i think it's reasonable for mons_class_itemuse to assert if given a NON_MONSTER 14:50:55 but mons_itemuse has an actual monster&, and can say "oh, this monster is dead? then obviously it can't use items, i won't bothre calling mons_class_itemuse" 14:57:22 not sure, I could go either way 14:57:34 it is used in a lot of monster::can_... checks though 15:10:53 Unstable branch on crawl.jorgrun.rocks updated to: 0.23-a0-395-gcf17ac6c65 (34) 15:58:35 Jiyva shouldn't vanish if Dissolution is still alive 13https://crawl.develz.org/mantis/view.php?id=11741 by aegolden 15:58:49 New branch created: pull/887 (1 commit) 13https://github.com/crawl/crawl/pull/887 15:58:49 03stenella02 07https://github.com/crawl/crawl/pull/887 * 0.23-a0-396-ga8a0d06: Describe Aux Tailswipe in Mutations 10(5 minutes ago, 3 files, 35+ 20-) 13https://github.com/crawl/crawl/commit/a8a0d06cc6a6 15:59:36 how about dem PRs tho 18:17:29 huh, I never realised it was retaliatory 18:19:33 hm, are you sure it is? I only see tailslap being proc'ed by melee_attack::_extra_aux_attack 18:22:10 it's just an aux attack yeah 18:22:14 -!- MarvinPA_ is now known as MarvinPA 18:26:34 oh, and it's also only checking for fishtail? draconians don't have that 18:26:55 03alexjurkiewicz02 07https://github.com/crawl/crawl/pull/581 * 0.23-a0-396-gdd7d5f1: Rework strength damage modifier 10(1 year, 3 months ago, 1 file, 3+ 9-) 13https://github.com/crawl/crawl/commit/dd7d5f136ac2 18:26:55 03alexjurkiewicz02 07https://github.com/crawl/crawl/pull/581 * 0.23-a0-397-gd7b1c16: Rework multiplier (advil) 10(6 days ago, 1 file, 5+ 2-) 13https://github.com/crawl/crawl/commit/d7b1c16fe10d 18:26:55 03alexjurkiewicz02 07https://github.com/crawl/crawl/pull/581 * 0.23-a0-398-g6df919c: Fix comparison 10(4 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/6df919cd8587 18:27:27 oh i see that's in addition to adding it as a draconian fake mut 18:28:01 alexjurkiewicz: did you test the non-random version at all? 18:28:09 i.e. fsim it 18:28:32 I've only considered it in theory 18:29:25 i was just doing that now. Was trying to figure out a way to automate fsim 18:29:51 might be quicker overall to just manually adjust characters though >_> 18:30:39 would maybe be nice to have a little lua fsim script I guess 18:30:48 not sure if wizmode is properly exposed to lua though 19:01:14 -!- amalloy is now known as amalloy_ 19:22:22 Unstable branch on underhound.eu updated to: 0.23-a0-395-gcf17ac6c65 (34) 19:34:22 -!- amalloy_ is now known as amalloy 19:43:00 bogleg (L10 DEFE) ERROR in 'tags.cc' at line 4348: Invalid item: (quantity: 0) gold piece (D:9) 19:47:08 !crashlog 19:47:19 20365. bogleg, XL10 DEFE, T:9424 (milestone): https://crawl.jorgrun.rocks/morgue/bogleg/crash-bogleg-20181031-234259.txt 20:52:51 alexjurkiewicz, MarvinPA any suggestions for flavor text? 20:53:17 i copy-pasted the minotaur one due to lack of creativity, didn't even consider it was wrong 20:57:58 hmm. The 'real' aux mutations (fangs, hooves) don't mention they give aux attacks, but I think they should. Maybe: "Your melee attacks are sometimes followed up with a tail slap." and "tail slap" 20:58:13 or "You sometimes follow melee attacks with a tail slap." 20:58:36 or "You have a fish tail (aux attack)." 20:59:25 oh, they don't? 20:59:32 i should probably add them all at once, then 21:03:17 adding " (aux attack)" to the end of all of them would be easy, and consistent. But it wouldn't actually explain what an aux attack *is* anywhere, although it's probably obvious if players watch their message log 21:07:20 devs, thoughts? 21:32:13 New branch created: pull/888 (1 commit) 13https://github.com/crawl/crawl/pull/888 21:32:13 03stenella02 07https://github.com/crawl/crawl/pull/888 * 0.23-a0-396-g7eb78ae: Don't give stat zero'd slow players false hope 10(4 minutes ago, 2 files, 4+ 1-) 13https://github.com/crawl/crawl/commit/7eb78ae4ff87 21:42:08 -!- amalloy is now known as amalloy_