00:00:02 -!- Bcadren has quit [Ping timeout: 244 seconds] 00:00:03 -!- omarax has quit [Remote host closed the connection] 00:00:05 -!- qguv has quit [Quit: bye] 00:02:51 -!- doll has quit [Quit: Lost terminal] 00:05:59 -!- doll has quit [Client Quit] 00:09:37 -!- doll has quit [Client Quit] 00:10:05 hmm 00:10:10 are hep ancestors petrification immune? 00:10:25 not listed on xv, but they can stand in catoblepas clouds no problem 00:13:40 -!- CanOfWorms has quit [Ping timeout: 264 seconds] 00:17:32 -!- MaxFrost has quit [Quit: Going offline, see ya! (www.adiirc.com)] 00:19:19 -!- elan has quit [Quit: Page closed] 00:20:41 -!- _dhm has quit [Ping timeout: 244 seconds] 00:22:45 -!- Dracunos has quit [Ping timeout: 258 seconds] 00:26:16 -!- dtsund has quit [Remote host closed the connection] 00:27:11 <|amethyst> M_INSUBSTANTIAL, so yes 00:30:06 Unstable branch on CRAWL.XTAHUA.COM updated to: 0.19-a0-1107-gc676ff4 (34) 00:30:59 -!- amalloy_ is now known as amalloy 00:32:43 -!- _dhm has quit [Ping timeout: 276 seconds] 00:33:05 -!- LexAckson has quit [Ping timeout: 244 seconds] 00:39:45 !update-goodplayers 00:40:10 Mapping goodplayers => 78291 bmfx elliptic hyperbolic jeanjacques clouded mikee crate pac bart pivotal stabwound johnnyzero minmay ophanim basil magistern hyperelliptic marvinpa surr nago walkerboh simm wahaha ebarrett ionfrigate mrplanck elynae reid dck sphara cheibrodos morganleah tenaya theglow yermak heteroy itsmu toastyp xyblor casmith789 sar uglything maddasher evilmike vizer araganzar rob e... 00:43:20 is comborobin excluded from that? 00:43:54 unless that's chronological i guess 00:44:16 though, if it was, stabwound would probably come first 00:44:23 rip stabwound 00:45:22 he streaked so many before most of the crawl community even knew what streaking was, and long before crawl even removed stuff like victory dancing 00:46:33 -!- adibis has joined ##crawl-dev 00:47:52 henryci (L27 HEWz) ERROR in 'dbg-scan.cc' at line 554: mid cache bogosity: mid 8062 points to DEAD MONSTER mindex=33 mid=0 (Abyss:1) 00:48:05 henryci (L27 HEWz) ASSERT(!in_bounds(you.pos()) || !cell_is_solid(you.pos()) || you.wizmode_teleported_into_rock) in 'main.cc' at line 3177 failed. (Abyss:1) 00:48:14 henryci (L27 HEWz) ASSERT(!in_bounds(you.pos()) || !cell_is_solid(you.pos()) || you.wizmode_teleported_into_rock) in 'main.cc' at line 3177 failed. (Abyss:1) 00:48:23 -!- magistern has quit [Quit: magistern] 00:49:02 uh-oh 00:57:45 -!- arcanemastermind has quit [Ping timeout: 250 seconds] 00:58:17 -!- PleasingFungus has joined ##crawl-dev 00:59:08 henryci (L27 HEWz) ERROR in 'dbg-scan.cc' at line 554: mid cache bogosity: mid 8503 points to small abomination mindex=10 mid=8552 (Abyss:2) 01:00:04 -!- omarax has quit [Remote host closed the connection] 01:03:29 ??goodplayer 01:03:30 goodplayer ~ goodplayers[1/1]: 10 or more wins. 01:03:36 that's it? 01:05:16 ??greatplayer 01:05:16 greatplayers[1/2]: Players who have won every currently available to play race. Lifetime membership once you get in! 01:05:17 ??greaterplayer 01:05:17 greaterplayer[1/3]: Players who have won every currently available to play race and class. Lifetime membership once you get in! 01:09:46 !seen gammafunk 01:09:47 I last saw gammafunk at Tue Aug 9 04:39:44 2016 UTC (30m 2s ago) saying '!update-goodplayers' on ##crawl-dev. 01:13:30 -!- home has quit [Quit: Leaving] 01:15:43 -!- sysice has quit [Quit: Page closed] 01:26:25 -!- ProzacElf has joined ##crawl-dev 01:28:16 -!- PElf has quit [Quit: HydraIRC -> http://www.hydrairc.com <- It'll be on slashdot one day...] 01:29:33 -!- jeefus has joined ##crawl-dev 01:29:52 -!- Zekka has quit [Read error: Connection reset by peer] 01:33:29 -!- jefus has quit [Ping timeout: 250 seconds] 01:35:13 -!- bitcoinbastard has quit [Ping timeout: 250 seconds] 01:36:09 -!- gammafunk has quit [Quit: leaving] 01:38:05 yay first patch - not even a sentence long - but yay :P 01:38:51 this is how it starts 01:42:24 adibis: how do you want to be credited in CREDITS.txt? 01:42:39 name, username? 01:43:17 hm, we don't have the cjr admins credited 01:43:34 lol 01:43:44 there's a credits.txt? 01:44:05 it's quite long. 01:44:52 i believe it 01:44:57 how far back does it go? 01:45:01 to linley days? 01:46:06 looks like it was created not quite ten years ago 01:46:14 %git 6adb570984828b2c36de2952c18e722641fbf802 01:46:14 07haranp02 * 6adb57098482: Implemented ideas from 1590719: Amulets of warding provides one level of negative energy resistance. Negative energy resistance cuts torment damage by 10% (of the damage) per level. 10(10 years ago, 3 files, 7+ 2-) 13https://github.com/crawl/crawl/commit/6adb57098482 01:46:43 a bit smaller then 01:47:14 -!- gammafunk has joined ##crawl-dev 01:48:01 lol, my proudest achievement is having a tombstone with my name on it in saints row 2 01:48:06 well, maybe not my proudest 01:48:13 but perhaps my longest lasting 01:48:19 grim... 01:48:45 03PleasingFungus02 07* 0.19-a0-1108-g1f77a52: Add adibis to mailmap & credits.txt 10(23 seconds ago, 2 files, 2+ 0-) 13https://github.com/crawl/crawl/commit/1f77a522df7a 01:48:58 well, i'm also in the credits 01:49:04 but who's watching those? 01:49:56 is credits.txt still relevant in the age of git? 01:50:02 or is it kept for sentimental reasons 01:50:04 PleasingFungus: err - wrong email and name lol 01:50:06 well 01:50:07 fuck 01:50:21 local players 01:50:24 for example 01:50:31 might look at it 01:50:35 ProzacElf: I sent you a message 01:50:51 err PleasingFungus 01:50:52 !messages 01:50:53 No messages for ProzacElf. 01:50:55 haha 01:51:01 !tell ProzacElf hello! 01:51:02 PleasingFungus: OK, I'll let prozacelf know. 01:51:12 !tell PleasingFungus thanks! 01:51:13 ProzacElf: You have 1 message. Use !messages to read it. 01:51:13 ProzacElf: OK, I'll let pleasingfungus know. 01:51:38 i'll save that for later 01:51:43 when i feel lonely 01:51:46 hrm, we did actually merge your patch, right? 01:51:46 PleasingFungus: You have 1 message. Use !messages to read it. 01:52:10 oh, there it is 01:52:11 ok 01:52:22 yea 01:54:45 03PleasingFungus02 07* 0.19-a0-1109-g16db51f: Fix CREDITS, mailmap 10(22 seconds ago, 2 files, 3+ 1-) 13https://github.com/crawl/crawl/commit/16db51f6c14b 01:54:55 %git 506db6d1994065d9e8268d4f5e59489f805a1163 01:54:55 07adibis02 * 0.19-a0-1105-g506db6d: Added check_if_monster_incapacitated before removing them while going up/down the stairs 10(6 hours ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/506db6d19940 01:54:58 hm 01:55:00 nope 01:55:10 or wait, no, that is right 01:55:13 -!- VoxSomniator has quit [Quit: Leaving] 01:55:23 %git bd3eaeb8aaab4ddf2cac41d40554884cd67c283c 01:55:23 07xorxor02 {PleasingFungus} * 0.19-a0-1102-gbd3eaeb: Clean up spell memorization code 10(35 hours ago, 5 files, 28+ 60-) 13https://github.com/crawl/crawl/commit/bd3eaeb8aaab 01:55:39 ok. 01:56:17 what? I am confused 01:58:30 checking to make sure the mailmap was working properly 01:58:35 amalloy: I did not know summer games done quick existed. Thanks for the mention in the videos. Contra:3 was good to watch :P 01:58:53 ah = well time for dinner. brb. 01:59:41 glad to hear it 01:59:43 -!- Kelp_ has quit [Ping timeout: 250 seconds] 01:59:47 -!- zxc has joined ##crawl-dev 02:00:03 -!- omarax has quit [Remote host closed the connection] 02:00:05 ...what timezone...? 02:00:08 -!- PsyMar has quit [Ping timeout: 250 seconds] 02:00:25 UGT 02:01:01 a major Spanish trade union, historically affiliated with the Spanish Socialist Workers' Party (PSOE)? 02:05:04 -!- parabolic has quit [Quit: Leaving] 02:06:49 PleasingFungus: PST :P I have weird timings 02:07:29 my aptmate just got up a few hours ago 02:07:39 i know how it is 02:08:56 -!- lobf has joined ##crawl-dev 02:08:57 worst part is - I might have to work after this. So yeah. There's that. 02:09:27 hf! 02:09:28 -!- lobf has quit [Client Quit] 02:09:49 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1109-g16db51f (34) 02:13:45 -!- Krakhan has quit [Ping timeout: 265 seconds] 02:15:20 rip 02:15:30 -!- zxc has quit [Read error: Connection reset by peer] 02:17:22 -!- zxc has joined ##crawl-dev 02:25:35 @??orc warrior 02:25:35 orc warrior (08o) | Spd: 10 | HD: 4 | HP: 24-32 | AC/EV: 8/10 | Dam: 20 | 10weapons, 10items, 10doors, fighter | Res: 06magic(20) | XP: 133 | Sz: Medium | Int: human. 02:26:35 -!- Bcadren has quit [Quit: Oh, so they have Internet on computers now!] 02:28:14 huh, crystal guardians can speak 02:28:16 notionally 02:32:42 -!- GauHelldragon has quit [Ping timeout: 258 seconds] 02:40:58 -!- Kalir has quit [Read error: Connection reset by peer] 02:43:04 -!- _dhm has quit [Ping timeout: 264 seconds] 02:43:24 FR: twicth emotes in tiles chat 02:43:24 -!- Zeor has quit [Quit: Leaving.] 02:43:44 sounds like fun. illegal 02:44:12 Ill Eagle 02:45:25 what if you made your own icons, mimicing twitch ones, but pictures of the crawl dev team 02:45:52 where's that picture of neil wearing a paper bag... 02:45:58 you can probably find a picture of me somewhere 02:46:05 gimme your best PogChamp 02:47:21 -!- doll has quit [Quit: Lost terminal] 02:47:27 -!- kramin is now known as Kramin 02:47:33 http://s-z.org/neil/images/logicbug.jpg 02:47:40 lmao 02:47:42 of course you had it on hand 02:47:48 "NOTE: the developer who introduced this bug has gone AWOL, and we’re trying to track him down. If you see this person, please report him to your nearest centuryplayer. Do not approach him, as he is bugged and extremely winscumming." 02:48:21 neil is the Jason Bourne of debugging, don't mess with him 02:48:36 -!- Cimanyd has quit [Quit: Page closed] 02:48:47 I didn't have it onhand, but I remember the post I made that used it 02:49:16 comment by chequers: "This bug is responsible for 25% of my wins :|" 02:49:45 lol 02:50:02 god, and "thank you, but please can oyou fix the mouse / vim keys movement lag? thank you again" 02:50:10 I'm really going to sit down and try to debug that SDL loop 02:54:57 -!- Pacra_ has joined ##crawl-dev 02:55:10 -!- Pacra has quit [Ping timeout: 244 seconds] 03:00:03 -!- omarax has quit [Remote host closed the connection] 03:09:53 -!- omnirizon has quit [Ping timeout: 252 seconds] 03:10:22 -!- jeefus has quit [Quit: Leaving] 03:12:37 -!- cait has quit [Ping timeout: 276 seconds] 03:20:29 i think that comment is no longer accurate... just 03:23:00 !lg . meleebug 03:23:01 59. gammafunk the Shield-Bearer (L1 HuFi), quit the game on D:1 (lemuel_arrival_rhombus) on 2015-03-23 06:37:19, with 0 points after 0 turns and 0:00:19. 03:23:04 !lg . meleebug won 03:23:05 1. gammafunk the Imperceptible (L24 SpEn of Ashenzari), escaped with the Orb and 3 runes on 2015-03-19 03:52:10, with 1472244 points after 83450 turns and 7:23:05. 03:23:23 I blame not detecting melee bug on my playing a stabber 03:23:33 !lg . meleebug !boring s=char 03:23:33 26 games for gammafunk (meleebug !boring): 25x HESu, SpEn 03:23:38 Unstable branch on crawl.beRotato.org updated to: 0.19-a0-1109-g16db51f (34) 03:23:42 and su speedruns that didn't hit things 03:24:12 ofc I did hit things with 0-skill melee, but let's ignore that 03:25:06 !gamesby . meleebug 03:25:07 PleasingFungus (meleebug) has played 4 games, between 2015-01-14 00:11:28 and 2015-03-18 22:59:45, won 3 (75.0%), high score 2289655, total score 5725797, total turns 210429, play-time/day 0:19:47, total time 21:06:22. 03:25:12 skill 03:25:24 !lg * won meleebug s=name 03:25:25 1560 games for * (won meleebug): 18x MorganLeah, 16x HilariousDeathArtist, 16x Sharkman1231, 14x DrKe, 14x WalkerBoh, 14x Happylisk, 14x Tolias, 13x Kellhus, 11x Yermak, 11x HungrySpirit, 11x Brannock, 10x simm, 10x tstbtto, 10x lessens, 10x elliptic, 10x Berder, 10x moose, 9x Xen, 9x ParticlePhysics, 9x MDvedh, 9x axaxaxas, 9x Zooty, 8x jeanjacques, 8x Sandman25, 8x Floodkiller, 8x Starve, 8x twe... 03:26:00 -!- staplegun has quit [Ping timeout: 258 seconds] 03:26:31 -!- PleasingFungus has quit [Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506]] 03:30:48 -!- sgun_ has quit [Read error: Connection reset by peer] 03:33:37 -!- amalloy is now known as amalloy_ 03:35:37 -!- glosham has quit [Quit: Page closed] 03:42:35 amalloy_: you guys are going to regret signing up for dieselrobin! 03:42:36 =P 03:45:28 -!- hellmonk has quit [Quit: Page closed] 03:51:45 -!- Pacra_ has quit [Read error: Connection reset by peer] 03:51:53 -!- Pacra_ has joined ##crawl-dev 03:55:37 -!- aditya has quit [Ping timeout: 244 seconds] 04:00:03 -!- omarax has quit [Remote host closed the connection] 04:27:38 -!- ontoclasm has quit [Quit: Leaving.] 04:30:22 -!- Patashu has joined ##crawl-dev 04:32:20 -!- Pacra_ has quit [Ping timeout: 260 seconds] 04:32:40 -!- Rast-- has quit [Ping timeout: 250 seconds] 04:34:46 -!- Rast has joined ##crawl-dev 04:34:55 -!- vale_ has quit [Remote host closed the connection] 04:46:17 -!- ProzacElf has quit [Ping timeout: 244 seconds] 04:48:34 -!- AndChat-596400 has quit [Read error: Connection reset by peer] 04:48:54 -!- _dhm has quit [Ping timeout: 265 seconds] 05:00:03 -!- omarax has quit [Remote host closed the connection] 05:06:52 -!- adibis has quit [Ping timeout: 258 seconds] 05:27:05 -!- vede has quit [Ping timeout: 265 seconds] 05:29:26 -!- gressup has quit [Ping timeout: 250 seconds] 05:30:57 -!- Brannock has quit [Read error: Connection reset by peer] 05:31:22 -!- Brannock has joined ##crawl-dev 05:32:22 -!- ac13 has quit [Read error: Connection reset by peer] 05:33:26 -!- gammafunk has quit [Ping timeout: 252 seconds] 05:34:55 -!- gammafunk has joined ##crawl-dev 05:34:55 -!- gammafunk has quit [Client Quit] 05:35:32 -!- gammafunk has joined ##crawl-dev 05:39:18 What was the reason behind changing ALich's library room in Crypt:3 from having books and scrolls to having books and random stuff? 05:40:24 I liked the flavour. And now you can see food lying on the library shelves. 05:46:20 -!- HellTiger has quit [Ping timeout: 250 seconds] 05:46:25 -!- ldf has joined ##crawl-dev 05:51:19 Yermak: probably to help the loot appeal to a broader number of characters 05:52:31 Well, there is plenty of other loot on that map, an it's equally good for all characters 05:57:10 -!- LogicPeople has quit [Quit: Page closed] 05:57:37 -!- Krakhan has quit [Changing host] 05:57:55 -!- Krakhan has quit [Read error: Connection reset by peer] 06:00:01 -!- omarax has quit [Remote host closed the connection] 06:12:03 -!- Patashu has quit [Ping timeout: 240 seconds] 06:13:03 -!- PElf has quit [Quit: HydraIRC -> http://www.hydrairc.com <- *I* use it, so it must be good!] 06:17:00 -!- edsrzf has quit [Ping timeout: 244 seconds] 06:20:46 -!- Patashu has joined ##crawl-dev 06:22:59 -!- MarvinPA has joined ##crawl-dev 06:23:02 -!- scummos| has quit [Ping timeout: 276 seconds] 06:25:51 -!- docnvk has quit [Ping timeout: 240 seconds] 06:36:33 -!- Patashu_ has joined ##crawl-dev 06:37:03 -!- Patashu has quit [Ping timeout: 240 seconds] 06:37:27 -!- Alcopop has quit [Ping timeout: 250 seconds] 06:38:51 -!- rossi has quit [Ping timeout: 244 seconds] 06:51:24 -!- debo_ has joined ##crawl-dev 06:51:47 -!- debo_ is now known as Guest63720 06:53:19 -!- _dhm has quit [Ping timeout: 244 seconds] 06:55:52 -!- Guest63720 has quit [Ping timeout: 250 seconds] 07:00:01 -!- omarax has quit [Remote host closed the connection] 07:05:04 -!- muravey has joined ##crawl-dev 07:05:29 i just started playing after a break, what is up with lightning bolt targeting? it doesn't target the monster directly anymore, but doesn't always multizap either 07:05:55 is there some way to revert it to old behaviour? 07:12:48 -!- nikheizen has quit [Quit: leaving] 07:27:47 -!- Kranix has quit [Ping timeout: 244 seconds] 07:36:43 -!- scummos| has quit [Ping timeout: 244 seconds] 07:57:56 -!- PsyMar has quit [Ping timeout: 276 seconds] 08:00:01 -!- omarax has quit [Remote host closed the connection] 08:01:10 -!- destroythecore has quit [Read error: Connection reset by peer] 08:08:09 -!- magistern has quit [Quit: magistern] 08:08:19 -!- wheals has joined ##crawl-dev 08:24:02 -!- doll has quit [Quit: Lost terminal] 08:31:18 muravey: it attempts to target to multizap 08:35:38 chequers is there some way to switch it off? 08:38:16 i don't think so 08:44:57 -!- MaxFrost has quit [Quit: Going offline, see ya! (www.adiirc.com)] 08:48:03 -!- destroythecore has quit [Ping timeout: 244 seconds] 08:55:48 -!- cait has quit [Ping timeout: 252 seconds] 08:55:58 -!- destroythecore_ has quit [Quit: Leaving] 09:00:01 -!- omarax has quit [Remote host closed the connection] 09:04:53 -!- Cryp71c has joined ##crawl-dev 09:11:16 -!- Zekka has quit [Ping timeout: 250 seconds] 09:11:42 -!- Rast has quit [Ping timeout: 250 seconds] 09:25:41 -!- PsyMar has quit [Ping timeout: 276 seconds] 09:27:27 -!- Nomi has quit [Read error: Connection reset by peer] 09:27:32 -!- _dhm has quit [Ping timeout: 250 seconds] 09:29:03 -!- Patashu_ has quit [Ping timeout: 240 seconds] 09:29:46 -!- whig has joined ##crawl-dev 09:30:24 -!- MaBunny has quit [Max SendQ exceeded] 09:33:08 -!- Daekdroom has quit [Quit: Leaving] 09:38:47 -!- bonghitz has quit [Remote host closed the connection] 09:39:13 -!- debo has quit [Quit: orb spiders :(] 09:39:17 -!- Rast has joined ##crawl-dev 09:40:08 -!- Zxpr2jk has quit [Read error: Connection reset by peer] 09:40:09 -!- joy19999 has quit [Ping timeout: 258 seconds] 09:43:46 -!- Rast has quit [Ping timeout: 250 seconds] 09:45:48 -!- Rast has joined ##crawl-dev 10:00:03 -!- omarax has quit [Remote host closed the connection] 10:15:37 -!- Dracunos7 has quit [Ping timeout: 265 seconds] 10:17:08 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 10:18:54 -!- amalloy_ is now known as amalloy 10:25:21 henryci (L27 HEWz) ERROR in 'dbg-scan.cc' at line 554: mid cache bogosity: mid 8624 points to DEAD MONSTER mindex=46 mid=0 (Abyss:2) 10:33:02 -!- Shard1697 has joined ##crawl-dev 10:36:27 -!- valrus_ has quit [Ping timeout: 258 seconds] 10:39:01 -!- Patashu_ has joined ##crawl-dev 10:40:00 -!- elliptic has joined ##crawl-dev 10:43:02 -!- Kalir has quit [Changing host] 10:44:09 -!- bonghitz has quit [Ping timeout: 252 seconds] 10:47:11 -!- MaBunny has quit [Ping timeout: 258 seconds] 10:54:33 -!- amalloy is now known as amalloy_ 10:55:29 -!- MakMorn has quit [Ping timeout: 244 seconds] 10:58:23 -!- MakMorn has joined ##crawl-dev 10:58:39 -!- LexAckson has joined ##crawl-dev 11:00:01 -!- omarax has quit [Remote host closed the connection] 11:00:39 -!- ontoclasm has joined ##crawl-dev 11:08:16 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 11:10:42 henryci (L27 HEWz) ERROR in 'dbg-scan.cc' at line 554: mid cache bogosity: mid 9364 points to large abomination mindex=29 mid=9367 (Abyss:3) 11:16:27 -!- debo has joined ##crawl-dev 11:23:45 -!- Life4Thunder has quit [Quit: Page closed] 11:23:48 -!- pythonsnake has quit [Quit: WeeChat 1.0.1] 11:31:22 -!- Zekka_ is now known as Zekka 11:32:03 -!- Shard1697 has quit [Ping timeout: 265 seconds] 11:39:41 -!- ontoclasm has quit [Quit: Leaving.] 11:42:36 -!- Lasty_ has joined ##crawl-dev 11:43:48 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 11:44:44 -!- bonghitz has quit [Ping timeout: 244 seconds] 11:48:16 -!- amalloy_ is now known as amalloy 11:50:18 -!- Brannock has quit [Ping timeout: 250 seconds] 11:55:45 hellse (L11 DDAr) ASSERT(in_non_diamond_int(r.start)) in 'ray.cc' at line 217 failed. (Lair:4) 11:56:01 -!- Shard1697 has joined ##crawl-dev 11:57:52 -!- Zekka has quit [Ping timeout: 252 seconds] 12:00:02 -!- omarax has quit [Remote host closed the connection] 12:01:40 -!- PleasingFungus has joined ##crawl-dev 12:08:08 -!- Ququman has joined ##crawl-dev 12:21:11 -!- Kalir has quit [Ping timeout: 276 seconds] 12:21:39 -!- Brannock has joined ##crawl-dev 12:35:35 -!- Kalir has quit [Changing host] 12:44:29 -!- adibis has quit [Client Quit] 12:46:01 -!- JimmahDean has quit [] 12:46:44 -!- aditya has quit [Ping timeout: 244 seconds] 12:48:46 -!- kdrnic has joined ##crawl-dev 12:49:08 -!- PleasingFungus has quit [Ping timeout: 276 seconds] 12:49:19 -!- Zekka has quit [Ping timeout: 244 seconds] 12:49:47 -!- Shard1697 has quit [Ping timeout: 276 seconds] 12:56:51 -!- PleasingFungus has joined ##crawl-dev 12:58:46 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 13:00:02 -!- omarax has quit [Remote host closed the connection] 13:02:59 PleasingFungus, should the Idealise icon on ancestor tile be bigger? I only just noticed that there's one 13:03:10 maybe! it is pretty subtle 13:04:00 Ancestor is immune to petrification (as I found out when an XL14 battlemage dueled a catoblepas and won), but are they immune to rotting too? 13:04:18 Petrification immunity isn't listed on their xv 13:05:15 Brannock: they have similar immunities to, say, hungry ghosts 13:05:24 since they're insubstantial, as |amethyst said the other day 13:05:26 hungry ghost (03W) | Spd: 10 | HD: 7 | HP: 33-44 | AC/EV: 0/17 | Dam: 502(hunger) | 07undead, 10doors, evil, see invisible, fly, unbreathing | Res: 06magic(40), 02cold++, 09poison+++, 12drown, 04rot+++, 13neg+++, 13torm, 04napalm | Vul: 08holy++ | XP: 184 | Sz: Medium | Int: human. 13:05:26 %??hungry ghost 13:05:52 @??ancestor 13:05:52 ancestor (11R) | Spd: 10 | HD: 1 | HP: 1 | AC/EV: 0/10 | Dam: 4 | 11non-living, 10items, 10doors, see invisible, fly, regen, unbreathing | Res: 06magic(6), 05fire, 02cold, 09poison+++, 12drown, 04rot+++, 13neg+++, 13torm, 04napalm | XP: 1 | Sz: Medium | Int: human. 13:06:10 hmm. I wonder what's causing them to not be affected by catoblepas dust 13:06:18 gargoyle (159) | Spd: 10 | HD: 6 | HP: 20-32 | AC/EV: 18/6 | Dam: 20 | 11non-living, 10items, 10doors, fly, unbreathing | Res: 06magic(40), 10elec, 09poison+++, 12drown, 04rot+++, 13neg+++, 13torm | XP: 413 | Sp: stone arrow (3d12) [11!AM, 06!sil] | Sz: Medium | Int: human. 13:06:18 %??gargoyle 13:06:20 they're insubstantial 13:06:30 oh petrify isn't listed as a res 13:06:31 carry on then 13:06:32 -!- Zekka has quit [Ping timeout: 240 seconds] 13:06:41 maybe it could be. i wonder if that's hard 13:15:42 probably not 13:15:46 might be cluttery 13:18:42 -!- adibis has quit [Ping timeout: 250 seconds] 13:19:02 -!- scummos__ has quit [Ping timeout: 258 seconds] 13:23:43 -!- zxc has quit [Read error: Connection reset by peer] 13:27:02 Unstable branch on crawl.akrasiac.org updated to: 0.19-a0-1109-g16db51f (34) 13:34:46 -!- sysice has quit [Ping timeout: 250 seconds] 13:37:54 -!- duralumin has quit [Ping timeout: 276 seconds] 14:00:02 -!- omarax has quit [Remote host closed the connection] 14:09:52 -!- elan_ has quit [Ping timeout: 250 seconds] 14:17:37 -!- sysice_ has quit [Quit: Page closed] 14:24:09 -!- ontoclasm has joined ##crawl-dev 14:34:58 I don't understand the difference between mpr and mprf. The latter uses char, the former uses a string? 14:35:56 mprf can be parameterized, basically 14:36:25 mprf("i want to buy %d cat%s", num_cats, num_cats == 1 ? "" : "s") 14:36:30 mpr can't be 14:36:41 mpr("i want to buy a cat, or maybe a few") 14:36:50 I see 14:37:23 use mpr if you aren't gonna do %nonsense, use mprf if you are 14:37:42 What's the etiquette for pushing commits to a PR? I have a couple changes I want to make, and I'd normally force push them and keep the singular commit, but one should be credited to a commenter, and the other is a fairly large change to how sheep_sleep works (getting rid of spoilery breakpoints) 14:38:03 can always leave a credit in the commit message 14:38:28 for the other: do you want a record in git's history that sheep sleep once had spoilery breakpoints? 14:38:30 is that important? 14:38:40 Hmm. No, probably not 14:40:58 -!- Tux[Qyou] has joined ##crawl-dev 14:41:44 !source put_to_sleep 2 14:41:44 2/2. https://github.com/crawl/crawl/blob/master/crawl-ref/source/player.cc#L7451 14:42:07 if I pass a negative value to int power here, could that return a duration value of less than 5? 14:42:21 5 + random2avg(power/10, 5); 14:42:31 hahah 14:42:50 here is what you should do 14:42:54 split put_to_sleep into two functions 14:43:05 one function that takes a duration and handles all the messiness 14:43:13 another function that takes power and a 'hibernate' bool and returns a sleep duration 14:43:32 then your sleep sheep can call the function that takes a duration directly 14:44:34 the function that takes power and 'hibernate' would be named the same as put_to_sleep, and the new function would be sleep_duration... so I wouldn't have to update all the code in the entire database that calls put_to_sleep 14:44:55 Okay. Giving this a shot. I hope I don't break anything 14:45:02 Why was my idea funny? 14:45:50 incredible hack 14:46:04 also 14:46:16 -!- Life4Thunder has quit [Ping timeout: 250 seconds] 14:46:30 i would really recommend either 14:46:54 (a) having a third function that takes the current parameters and calls the new function that takes a duration with the duration from the duration-generating function 14:46:56 or 14:47:51 (b) renaming put_to_sleep *specifically so that* you don't have callers that are passing a 'power' value into the 'duration' param 15:00:01 -!- omarax has quit [Remote host closed the connection] 15:01:39 -!- cait has quit [Ping timeout: 264 seconds] 15:02:47 -!- bonghitz has quit [Remote host closed the connection] 15:19:10 -!- docnvk has quit [Excess Flood] 15:22:33 -!- MarvinPA has quit [Ping timeout: 276 seconds] 15:26:35 -!- docnvk has quit [Excess Flood] 15:32:27 Is there a difference between actor* target and actor *target, where `actor` is the object type and `target` is the object name? 15:32:41 no 15:32:50 actor * target is also the same 15:32:53 Would `actor * target` wo.. ah gotcha 15:32:57 :) 15:33:15 there's a convention to prefer actor *target specifically because it's less confusing in cases like 15:33:19 actor *foo, bar 15:33:32 (foo is type "actor *", bar is type "actor") 15:33:55 actor* foo, bar would be more misleading there. though probably you should rarely be declaring multiple variables on one line anyway! 15:34:24 -!- nikheizen has joined ##crawl-dev 15:38:14 I can't figure out how to update my branch without adding new commits to the pull request 15:38:30 have you squashed your branch 15:38:49 I tried to do that but it wouldn't let me squash into commits that I've already pushed 15:38:56 I must be misunderstanding something 15:39:30 Lemme go over my log from the other night when amethyst helped me clean up my git history 15:39:50 Oh I need to rebase it against master, okay 15:40:18 03Brannock02 07https://github.com/crawl/crawl/pull/321 * 0.19-a0-1099-g2c9fd63: Dream sleep checks monster clarity. (alexjurkiewicz) 10(4 minutes ago, 1 file, 13+ 6-) 13https://github.com/crawl/crawl/commit/2c9fd6349616 15:40:31 Okay I squashed it back into bb9ed69 15:40:37 Too late to prevent that Chei message though 15:40:42 what as ham 15:40:43 *a sham 15:41:22 I was originally trying to rebase it against origin/dream-sheep and got confused 15:41:53 -!- olscumpy has quit [Ping timeout: 244 seconds] 15:43:05 -!- Kalir has quit [Quit: I'M OUT SON. PEACE, LOVE, EXPLOSIONS.] 15:48:25 -!- Tux[Qyou] has quit [Read error: Connection reset by peer] 15:49:45 -!- bonghitz has quit [Remote host closed the connection] 15:50:33 03Brannock02 07https://github.com/crawl/crawl/pull/321 * 0.19-a0-1110-gc542da1: Implement dream sheep. 10(4 days ago, 23 files, 219+ 5-) 13https://github.com/crawl/crawl/commit/c542da18a4e7 15:56:42 -!- lincoln has quit [Ping timeout: 244 seconds] 16:00:01 -!- omarax has quit [Remote host closed the connection] 16:02:56 -!- PleasingFungus has quit [Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506]] 16:05:34 -!- lobf has joined ##crawl-dev 16:07:48 -!- bonghitz has quit [Remote host closed the connection] 16:07:55 -!- ontoclasm1 has joined ##crawl-dev 16:09:28 -!- edsrzf has joined ##crawl-dev 16:09:52 -!- ontoclasm has quit [Ping timeout: 250 seconds] 16:24:31 -!- muravey has quit [Ping timeout: 258 seconds] 16:26:20 -!- wheals has quit [Ping timeout: 250 seconds] 16:26:59 -!- pyrotecnix has quit [Quit: WeeChat 0.4.2] 16:28:20 -!- wheals has joined ##crawl-dev 16:35:28 -!- dtsund has joined ##crawl-dev 16:38:05 -!- Francrawl has quit [Client Quit] 16:40:19 -!- Cryp71c has quit [Ping timeout: 260 seconds] 16:43:19 -!- scummos__ has quit [Ping timeout: 252 seconds] 16:55:17 -!- Kenran has quit [Quit: leaving] 16:58:03 -!- bonghitz has quit [Remote host closed the connection] 16:59:24 -!- scummos__ has quit [Ping timeout: 276 seconds] 17:00:02 -!- omarax has quit [Remote host closed the connection] 17:00:25 -!- cait has quit [Ping timeout: 244 seconds] 17:02:38 -!- Krakhan has quit [Changing host] 17:05:59 -!- Lasty_ has quit [Read error: Connection reset by peer] 17:11:47 -!- mamgar has quit [Client Quit] 17:12:36 -!- Prozacelf has joined ##crawl-dev 17:17:44 -!- PleasingFungus has joined ##crawl-dev 17:17:53 -!- LexAckson has quit [Ping timeout: 250 seconds] 17:18:11 -!- Bammboo has quit [Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )] 17:20:17 -!- MarvinPA has joined ##crawl-dev 17:21:32 -!- ig0rbit has quit [Ping timeout: 240 seconds] 17:22:31 -!- ironycurtain has quit [Quit: ironycurtain] 17:23:41 I'm trying to build my branch and the compiler is upset about my strings. I don't understand what it's telling me, and I can't figure out how to fix it. https://gist.github.com/isloat/a5e336765cf9cb886d2e4e171e496a57 17:24:48 it's because you have sinned against the LORD GOD ADONAI, friend. 17:24:56 now let me look at the gist 17:25:06 oh 17:25:08 uh 17:25:13 what are you actually trying to do there 17:25:29 make_stringf("You are overwhelmed by glittering dream dust!") <- with this 17:25:49 ok hold on 17:25:51 ok 17:25:55 ok. 17:25:59 so 17:26:11 Set 'sheepact' to a particular string. Even if I remove make_stringf() it throws an error. 17:26:16 do you know what the keyword "const" means? 17:26:20 Damnit 17:26:45 the other thing is, there is no reason to use make_stringf if you aren't building a string from parts 17:26:59 I actually added that in to see if it'd fix things 17:27:02 haha 17:27:04 It did not. 17:27:04 rip 17:27:46 i personally might make a little helper function string _sheep_sleep_message(int num_sheep, int sleep_dur) 17:27:59 *static string 17:27:59 but that's optional 17:28:04 That might clean it up, yeah 17:28:13 you could use a const string then 17:28:36 Why can I assign a new value to message (which was declared as const char* message = nullptr, using DracoOmega's code as a model) via sheepact.c_str() if message as declared as a constant? 17:28:43 s/as/was 17:30:25 the pointer is not constant 17:30:45 -!- home has quit [Remote host closed the connection] 17:30:50 so "message" is a pointer, the address of something in memory. in this case, it's the address of the beginning of a series of characters. 17:31:24 the characters are const. you can't change the contents of the const char*, e.g. message[2] = 'f'. if you try, the compiler will stop you. probably. 17:31:38 however, you can change what series of constant characters message points to. 17:31:56 if you want a truly const c-style string, you need a const char * const message. 17:34:09 I see 17:34:18 is this confusing? 17:34:19 yes 17:34:30 i'm told the key to figuring out how c types work is to read right to left 17:34:38 i'm not sure why that helps but that's what they tell me 17:34:56 Is the pointer itself constant? That is, you can't change where the pointer points at? 17:35:52 If so, then that explanation makes perfect sense to me. You assign the value of 'sheepact' and tell the compiler that the value is constant. Changing that value gets a no-go. You set the pointer to point at a specific address; you can't tell it to point at somewhere else. Unless I've misunderstood 17:36:03 int *foo; // nothing is const 17:36:15 const int* foo; // value is const 17:36:21 int * const foo; // pointer is const 17:36:29 const int * const foo; // value & pointer are both const 17:37:13 and 'const char* message = nullptr;' ? 17:37:26 that's case #2 17:37:31 value const, not pointer 17:37:34 i'm writing up some examples 17:37:38 Ahh 17:37:52 No, I get it now 17:37:57 -!- PsyMar has quit [Ping timeout: 265 seconds] 17:38:03 I had const string, not const string * 17:38:25 Err 17:39:08 -!- Kranix has quit [Quit: Konversation terminated!] 17:39:43 http://pastebin.com/Dfva5FyG i finished typing this anyway 17:39:46 Thank you 17:40:15 <|amethyst> don't forget int const * foo; (or do forget it, it's the same as const int * foo;) 17:40:32 <|amethyst> read from right to left starting at the variable name 17:40:36 * geekosaur actually prefers that 17:40:45 <|amethyst> foo is a pointer to a const int, or foo is a pointer to an int that is const 17:40:54 <|amethyst> whereas: char * const bar; 17:41:01 <|amethyst> bar is a const pointer to a char 17:41:18 i did forget that! 17:41:53 Is there anything you guys would recommend as a crash course in learning C++? I figure if I'm going to continue working on crawl I might as well properly learn C++ instead of picking up bits and pieces as I go 17:42:15 <|amethyst> pick a book by Stroustrup and read it cover to cover 17:42:19 <|amethyst> :P 17:42:30 <|amethyst> do you have programming experience in other languages? 17:42:43 Java 17:42:55 (This may explain why I keep getting tripped up on details) 17:43:27 <|amethyst> The C++ Programming Language is probably decent 17:43:38 <|amethyst> IMO the biggest and most significant difference between C++ and Java 17:44:06 <|amethyst> in Java a variable of class type is just a pointer to an object---the object itself isn't "stored in" the variable 17:44:33 enter... the heap... 17:44:34 <|amethyst> in C++ the variable actually holds the object, and if you want it to point to an object you use a pointer or reference variable 17:45:07 <|amethyst> *but* OO polymorphism based on the class of an object requires a pointer of reference 17:45:11 <|amethyst> s/of/or/ 17:45:13 <|amethyst> if you say 17:45:26 <|amethyst> Dog fido; 17:45:29 <|amethyst> Animal pet = fido; 17:45:54 <|amethyst> then pet is a *copy* of fido, and only the general-to-all-Animal parts. The Dog-specific parts have been "sliced" off 17:46:31 <|amethyst> this doesn't come up much in Crawl, but it does mean, for example, that having a parameter or array or something of Actor is usually wrong 17:46:40 <|amethyst> s/Actor/actor/ 17:47:07 <|amethyst> it should be actor* or actor& (or a const variant of those) if you want to actually be able to receive either a monster or a player 17:47:28 What does & signify? 17:47:29 yeah, Brannock was asking why he was seeing monster * mons earlier 17:47:35 <|amethyst> Brannock: "reference" 17:47:36 as a function arg 17:47:53 <|amethyst> Brannock: a reference is an alias for another variable, and doesn't have its own storage 17:48:06 <|amethyst> Brannock: it's like a pointer that you don't have to manually dereference 17:48:17 <|amethyst> So for example: 17:48:18 C++ refs are something you also need to be aware of, they're like "safer pointers" 17:48:20 <|amethyst> Dog fido; 17:48:31 <|amethyst> Animal *pet = &fido; // take a pointer 17:48:42 <|amethyst> Animal &friend = fido; // take a reference 17:48:44 <|amethyst> now you can do 17:48:57 <|amethyst> pet->bark(); // the -> dereferences a pointer and accesses a member 17:49:19 <|amethyst> friend.bark(); // friend is an alias for fido, so you can call methods on it 17:49:31 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 17:49:33 <|amethyst> actually, I guess that was a bad example, because Animal probably doesn't have a bark method 17:49:39 heh 17:49:43 might be { } 17:49:46 <|amethyst> so s/bark/feed/g 17:49:56 many of the usages of a pointer instead of a ref come down to allowing something like fido to be null 17:50:16 <|amethyst> or when you need to be able to re-point it 17:50:31 <|amethyst> references are inherently const in the int * const sense 17:50:33 -!- Patashu_ has quit [Ping timeout: 240 seconds] 17:50:46 <|amethyst> if you write friend = blah; that's just like saying fido = blah; 17:50:58 <|amethyst> it doesn't actually make 'friend' point to a different animal 17:51:29 <|amethyst> but tells fido to change itself 17:51:33 <|amethyst> that's another major difference 17:51:57 <|amethyst> in C++ assignment (not initialization!) is something you do to an object, to change its value 17:51:59 Because friend references fido, any changes to friend will inform fido to change? 17:52:28 <|amethyst> in Java, assignment is something you do to a variable, to make it refer to a new object (or in the case of primitive types like int, to change its value) 17:52:58 <|amethyst> Brannock: yes, fido and friend refer to the very same memory, so any changes to one are reflected in the other 17:53:39 <|amethyst> the reason you often see function arguments written as const monster &mons 17:53:56 <|amethyst> is that if the argument were just 'monster mons', that means the argument holds a copy of the monster 17:54:21 and going back to the Animal *pet = &fido example, you can later say pet = &mrbarky; reassign the value of pet to point to another variable, something you can't ever do with a ref like Animal &friend 17:54:29 it will always ref fido in its lifetime 17:54:35 <|amethyst> but the reference means it refers to the same monster you called it with, so no copying is necessary 17:55:40 <|amethyst> this is especially important for big types like monster, or types that you don't want to (or can't) copy for some other reason 17:56:06 <|amethyst> I think you would very rarely see an argument that is a plain 'monster' 17:56:10 I mostly follow, enough that I'm understanding what's going on in the crawl codebase. Thank you for educating 17:56:20 When would you see an argument with plain 'monster'? 17:56:46 <|amethyst> when the function wants to get a copy of a monster, and be able to modify the copy without changing the original 17:56:59 <|amethyst> which doesn't happen often for 'monster' 17:57:06 -!- fufumann is now known as wieselflink 17:57:27 For duplicating a monster, maybe? 17:57:29 making a new monster is complicated in terms of all the things you have to do to the rest of the games data 17:57:30 <|amethyst> yeah 17:57:32 <|amethyst> for other types, if the object itself is about the same size as a pointer, making the copy might not be so bad 17:57:49 <|amethyst> so for example you will see functions taking a coord_def rather than const coord_def & 17:57:54 -!- bitcoinbastard has quit [Ping timeout: 276 seconds] 17:58:14 <|amethyst> since the cost of copying a coord_def is small 17:58:19 <|amethyst> (it's just two ints) 17:58:27 -!- wieselflink is now known as fufumann 17:58:35 -!- fufumann has quit [Quit: Leaving] 17:58:56 -!- doll_ has quit [Client Quit] 17:59:16 <|amethyst> that said, you do see some functions that take a const coord_def &... it's possibly slightly faster on 32-bit systems (where two ints is bigger than a pointer), but in practice I doubt it actually helps 18:00:03 -!- omarax has quit [Remote host closed the connection] 18:00:07 <|amethyst> and getting a copy does have performance benefits itself, because the optimizer can assume "you're never going to use this copy again, so I can do whatever I want to it" 18:00:56 <|amethyst> Scott Meyers and Herb Sutter have some good videos explaining when (in general) you want to use by-value parameters versus const reference parameters 18:01:06 Which should I err towards, in absence of knowing exactly which to use? For Crawl, that is 18:01:31 i would say use by-value by default 18:01:36 <|amethyst> Rules of thumb: 1. if the function modifies the thing, it needs to be a reference (or a pointer if it could be null) 18:01:54 <|amethyst> 2. otherwise, if the object is big or expensive to copy, like a monster or an item, use a const reference 18:02:04 <|amethyst> 3. in the absence of other advice, make it by-value 18:02:23 i feel like point (1) might need an example? 18:02:51 !source _cull_excess_stairs 18:02:52 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/dungeon.cc#L1540 18:03:10 <|amethyst> good example 18:03:25 ^ here, i have a list of coordinates on the map that contain stairs; list &stairs 18:03:25 <|amethyst> so this function takes a list of stairs, and removes some of them from the list 18:03:37 Unstable branch on underhound.eu updated to: 0.19-a0-1109-g16db51f (34) 18:04:12 <|amethyst> since the list is being modified, it has to be passed by reference (or by pointer, but here we will never not have a list, so don't need the ability to use nullptr, so don't need a pointer) 18:04:27 <|amethyst> an alternative way to define this function would have been 18:04:41 <|amethyst> static list _cull_excess_stairs(list stairs, ...) 18:04:52 <|amethyst> so that it doesn't modify its argument, but instead returns the new list 18:05:07 -!- wheals has quit [Ping timeout: 250 seconds] 18:06:08 <|amethyst> there are justifications for doing it either way... the by-value-and-return version is easier to use inside a larger expression; but on the other hand it might involve copying the list several times, depending on the details of how you use it 18:06:43 in this case i don't think it matters too much 18:07:01 also those function names are bad 18:07:05 cull_excess_stairs and stairs_into_hatches 18:07:24 when i was writing the former, i didn't realize it hatchified 18:07:26 <|amethyst> noun_preposition_noun 18:07:30 maybe_bloodify_square 18:07:38 so i set up a false dichotomy between the functions 18:07:52 what is the greatest crawl function name of all time? 18:07:54 something like cull_duplicate_stairs and cull_random_stairs might be better 18:07:54 <|amethyst> dichotomise_falsely() 18:08:00 gammafunk: slaves_into_lava() 18:08:02 lol 18:08:27 <|amethyst> From @crawlcode 18:08:28 shit i misremembered it 18:08:30 convert_slaves_to_lava() 18:08:33 <|amethyst> // not one word about the name of this function! 18:08:34 <|amethyst> static bool _handle_rod( 18:08:59 fine choice 18:08:59 maybe mumra had a nice function name wrt rod pumping 18:10:03 hmm, can I do this or am I getting too clever for my own good? I suspect the latter 18:10:04 mprf(MSGCH_MONSTER_SPELL, sleep > 0 ? "%s You feel drowsy..." : "%s", message); 18:10:13 probably shouldn't have ternary in a function call 18:10:22 <|amethyst> ternary in a function call is fine, but 18:10:42 <|amethyst> generally with printf and similar things you never want the format string to be something that varies 18:10:53 -!- doll has quit [Quit: Lost terminal] 18:10:56 <|amethyst> because that inhibits the ability of the compiler to check that you provided the right number of arguments 18:10:59 <|amethyst> instead, do 18:11:36 <|amethyst> mprf(MSGCH_MONSTER_SPELL, "%s%s", message, sleep > 0 ? " You feel drowsy..." : ""); 18:11:55 Oh, that's good 18:12:27 <|amethyst> btw, "inhibits the ability of the compiler to check" is a potential security issue 18:12:59 <|amethyst> if you pass the wrong number of arguments to a varargs function, you can trick it into accessing memory that it's not supposed to use 18:13:14 Yikes, glad I asked about this then 18:13:22 <|amethyst> at the very least revealing information you didn't want to, but possibly even overwriting arbitrary memory 18:13:30 -!- sdftnjm has quit [Read error: Connection reset by peer] 18:14:23 <|amethyst> (BTW, someone should try out a fuzzer with our save files; I would not be suprised if there were huge security issues with untrusted saves and maybe bones) 18:14:41 i'd be surprised if there weren't 18:16:33 <|amethyst> apparently American Fuzzy Lop is smart enough to infer file formats given enough time 18:16:59 <|amethyst> https://lcamtuf.blogspot.com/2014/11/pulling-jpegs-out-of-thin-air.html 18:17:18 -!- rj54x has quit [Ping timeout: 250 seconds] 18:17:53 sick 18:18:03 <|amethyst> someone ran it on a jpeg parser and, based on trying to adjust the input to take different branches in the code, it managed to come with with valid jpeg files 18:18:56 <|amethyst> took "several hundred million execve() calls" 18:19:16 <|amethyst> but no one ever said evolution was fast 18:19:34 <|amethyst> well, except Stephen Jay Gould 18:20:31 heh 18:21:17 -!- bonghitz has quit [Remote host closed the connection] 18:25:34 -!- Ququman has quit [Read error: Connection reset by peer] 18:26:15 03PleasingFungus02 07* 0.19-a0-1110-g6a29f8a: Improve some misleading function names 10(26 seconds ago, 1 file, 11+ 10-) 13https://github.com/crawl/crawl/commit/6a29f8a98a1a 18:32:13 -!- Zxpr1jk has quit [Read error: Connection reset by peer] 18:33:58 When I compile I get warnings about not having advpng and pngcrush. Compile succeeds anyway 18:34:35 sounds like you're good, then 18:34:37 :) 18:35:48 -!- home has quit [Quit: Leaving] 18:37:31 %git 12223c06ef9274e1b90c86d4c6a8ebd9f813c66a 18:37:31 07reaverb02 * 0.15-a0-810-g12223c0: Remove Shedu 10(2 years, 3 months ago, 27 files, 16+ 382-) 13https://github.com/crawl/crawl/commit/12223c06ef92 18:38:27 those are just for baking the tilesheets, right? 18:38:37 yes, and not really necessary even then 18:38:47 preferred for the online servers though 18:41:11 I'm trying to have _dream_sheep_sleep call _sheep_message as a helper function to handle messaging. Compiler is telling me that _sheep_message was not declared in this scope. I think I can't have an internal function call another internal function? Okay I moved _sheep_message above _dream_sheep_sleep and now the compile succeeds. 18:41:18 What happened here? 18:42:15 do you remember when we were talking about declaring versus defining functions 18:42:32 Somewhat, let me scroll back 18:43:07 I need to increase my scrollback value, apparently 18:43:10 haha 18:43:12 you're both declaring and defining your functions at the same time, which is fine 18:43:28 like, static void foo() { ... } // both a declaration and a definition 18:43:38 but you can't reference something that hasn't been declared yet 18:43:52 static void foo() { bar(); } 18:43:53 java doesn't care as much about ordering. when it's compiling _dream_sheep_sleep it does not know that _sheep_message exists yet; you can forward declare it, or you can move the definition to before the use 18:44:00 static void bar() { ... } 18:44:30 yeah, you moved things around so that sheep_message was declared (and defined) before it was used 18:44:40 another solution would look like: 18:44:43 Since @ is being pared down on redundancy, is there any way it could show your fractional average attack speed instead of an abstraction? 18:45:08 Or is that too #-centric for DCSS displays 18:45:11 this matters because C++ is derived from C, and for a long time C let you use things before defining them (which was a source of bugs, and would completely break C++ overloading and such) 18:45:17 static string _sheep_message(...); static void _dream_sheep_sleep(...) { ... } static string _sheep_message(...) { ... } 18:45:24 geekosaur: oh god 18:45:50 nikheizen: got really thrown off there and was wondering if there was some weird irc channel -centric 18:45:57 since my client auto-linked it 18:46:14 "oh, ok, I'll just pretend it takes and returns int" (then the real thing uses something that doesn't fit in an int - BOOM) 18:46:59 Would best practice be to declare all my functions in a specific group, then, and after that to define them in order-they-should-probably-be-read then? 18:47:06 PleasingFungus: Hah. nice. 18:47:28 -!- debo has quit [Ping timeout: 265 seconds] 18:47:45 well, if you were lucky it went BOOM. if you weren't, you just got weird results 18:48:16 if C++ tried to do that, it *would* go boom (why yes, that inferred int has a vtable pointer in it *coredump*) 18:48:31 Brannock: might make things simpler for you if you have trouble remembering to stack up your static functions in the right order 18:48:44 we have a bunch of files that have random static functions declared at the top 18:48:51 it's not at all a big deal though either way 18:49:12 there's no house style and no bad consequences for doing it the 'wrong' way - it's not going to cause bugs, it just might take more or less of your time 18:49:26 nikheizen: personally i'd be fine with it but someone else might object 18:49:30 for some reason 18:49:46 i might change it if i think of a good phrasing 18:50:09 geekosaur: were you around when i ran into the horrible issue of multiple structs with the same name in different cpp files 18:50:17 yep 18:50:31 now that was a head-scratcher 18:50:37 <|amethyst> Your attack speed is below average (1.15) 18:50:53 Is there anything wrong with declaring functions in the middle of a file? e.g., mon-abil.cc is 1448 lines, seems more readable to declare specific dream_sheep functions right above where dream_sheep functions are defined 18:52:20 enh 18:53:59 -!- duralumin_ has quit [Read error: Connection reset by peer] 18:54:14 Brannock: it's nice to group when convenient, but to look up symbols you should use your IDE or something like ctags 18:54:19 <|amethyst> nothing wrong exactly, but if I saw that I'd think "why not just re-order them?" much more than if I saw the declaration up top 18:55:09 "You take a.b turns on average to attack with your wielded weapon." 18:55:21 <|amethyst> it's 1 turn though 18:55:23 I mention that because people don't go reading the source files in sequence to find things 18:55:29 <|amethyst> as long as "turns" still exist 18:55:39 there's a develop doc that shows how to set up ctags 18:55:41 arbitrary units of turns 18:56:35 <|amethyst> Your attacks take on average 115% the time of a normal turn. 18:56:40 <|amethyst> * for values of "normal" 18:57:07 I thought 10 auts was a "turn". 18:57:11 does the displayed value change when you're slowed 18:57:15 nikheizen: no, one player action is a turn 18:57:20 Ah I see 18:57:23 -!- cait has quit [Ping timeout: 250 seconds] 18:57:33 note that hitting 5 is up to one hundred player actions 18:57:36 -!- Kalir has quit [Changing host] 18:57:47 (since it's just simulating hitting . a lot) 18:58:12 a person might ask, how many turns does it take to swap jewellery? 18:58:15 <|amethyst> also, climbing stairs or eating food counts as multiple player actions 18:58:48 <|amethyst> but swinging the dark maul, or taking a step as a slowed naga of chei, only counts as one action 18:59:07 climbing stairs is multiple actions? 18:59:17 how many? 18:59:21 slowed naga of chei being constricted by wandering mangrove branches while moving through shallow water, -swift, and flash frozen 18:59:25 iirc it's about three 18:59:42 alright! playtesting checks out, I have successfully despoilerified dream sheep 18:59:43 there are partial player actions or are you just unsure 18:59:45 it's not even fixed 18:59:51 since the move delay is randomized 18:59:55 in water, that is 19:00:03 -!- omarax has quit [Remote host closed the connection] 19:00:09 -!- Shard1697 has joined ##crawl-dev 19:00:26 nikheizen: i don't remember 19:00:29 gammafunk: he's asking about stairs 19:00:32 <|amethyst> it's AscendingStairsDelay(1) 19:00:33 hence for proper bread-swinging calculations, you must assume the maximum delay to determin if you should slow-walk in water for regen 19:00:45 fwiw i forgot statue form 19:00:56 <|amethyst> two turns it looks like 19:00:58 and also called shambling mangroves "wandering" for some reason 19:01:00 I was responding to your 'iirc it's about three' 19:01:07 <|amethyst> one of which takes a long time 19:01:09 my "about three" was about stairs! 19:01:20 ok then I was responding to the line above 19:01:20 sorry, i was switching threads without signalling 19:01:23 poor irc driving 19:01:41 I was responding to all lines, in every channel, ever, in the history of irc 19:01:50 and the response was 19:01:52 it's not even fixed 19:02:12 as responses to every irc message ever go... there's worse 19:02:12 <|amethyst> looks like a human takes on average 2.35 aut to climb stairs, spread across two turns 19:02:25 23.5 aut, surely 19:02:31 <|amethyst> err, yeah 19:02:43 <|amethyst> 2.35 ndt (normal-duration turns) 19:02:45 if the devs can't even keep track of their own time systems, where's the justice? i ask you! 19:02:50 neil degrasse turns 19:02:59 <|amethyst> I degrasse everything I see 19:03:15 When should I use git push --force over git push? 19:03:30 <|amethyst> when you are changing history 19:03:33 I have squashed and rebased my dream-sheep branch and am ready to push it to my remote/the PR 19:03:35 you should be cautious about using --force, for one 19:03:43 when you are working on a branch that no one else will touch, and when you want to erase history, and when you are absolutely sure about what branch you're on 19:03:51 You don't want to push if you are directly modifying master. 19:03:55 force push* 19:03:55 <|amethyst> if you rebase, you'll probably need --force 19:04:10 your situation does fit btw 19:04:21 What conditions should I be wary about with --force? 19:04:28 re: weapon speed display. Is a % value preferable to using the term "aut"? 19:04:32 sometimes you might want to if you're modifying master, in the case when you've messed up a master that only you use, like Brannock did yesterday 19:04:37 i don't think we should use the term aut 19:04:47 <|amethyst> definitely not in game 19:04:58 % value is sticky as well though hmm 19:05:07 Brannock: Any time you change git history, anyone tracking the branch can't do a merge 19:05:08 just displaying the same number that would be displayed on the hud anyway seems clearest 19:05:11 yeah 19:05:20 that was neil's initial suggestion 19:05:29 Your attack speed is below average (1.15) 19:05:43 <|amethyst> I can see the benefit of a word of explanation, though 19:05:44 sort of funny to have larger numbers be below average 19:05:52 (1.15 delay) 19:05:52 snip below average? 19:06:04 Brannock: so they can't git pull normally to get changes to the branch, they have to force pull and possibly then rebase their local stuff to match the new branch history 19:06:14 in short, you generally don't force push for branches where you're collaborating 19:06:16 Your attack delay is 1.15 19:06:19 I understand 19:06:29 For collaborative brancehs, at what point should squashes be done? 19:06:34 When the branch si completed? 19:06:36 yeah 19:06:39 right before it's merged to master 19:06:50 you're welcome to do intermediate squashing though 19:06:52 or sometimes never, depending on how much effort people feel like putting in 19:06:54 mm 19:07:00 if you feel you know the commits are fine to squash 19:07:06 in a collaborative branch, that's not a great idea 19:07:10 yes 19:07:17 03Brannock02 07https://github.com/crawl/crawl/pull/321 * 0.19-a0-1110-g7b5e837: Implement dream sheep. 10(4 days ago, 23 files, 250+ 5-) 13https://github.com/crawl/crawl/commit/7b5e837bb3fa 19:07:20 which is what he was asking about 19:07:37 yeah he did say collaborative, but a point about that is that, if you're making a PR 19:07:58 it's ok to do some squashing on the branch after you open the PR 19:08:05 it's just a branch on your repo 19:08:14 hm 19:08:28 hmmm 19:08:36 I think the branch is complete now, barring any balance passes that need to be done (sheep stats, sleep duration). I've playtested it and can't produce any crashes or odd behavior. Dream dust has granular strength instead of what it has before (clear breakpoints, highly spoilery and bad) 19:08:37 weren't you going to change ::put_to_sleep() 19:08:59 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1110-g6a29f8a (34) 19:09:00 I was, then I rethought it. 5 turns minimum is short enough, and I didn't want to mess with, let me look for that fucntion 19:09:07 then 19:09:09 -!- wheals has joined ##crawl-dev 19:09:15 why are you calling it with something called sleep_dur 19:09:32 I guess that should be sleep_power 19:09:40 I should ahve gone back and renamed that variable 19:10:16 set_duration(DUR_SLEEP, dur) is what (I think) I'd call if I wanted to set a specific sleep duration. I thought about messing around with that and decided to not dig myself too deep a hole 19:10:32 If I called that I could bypass set_to_sleep, but I suspected it'd have caused issues with difference between player and monster results 19:10:56 currently set_to_sleep will properly call the monster:: or player:: version, depending on *target... if I've understood the code properly 19:10:58 I might not have! 19:11:20 calling set_duration directly would be a bad idea 19:11:25 since: you wouldn't actually put the player to sleep 19:11:26 I agree 19:11:32 on it being a bad idea 19:12:41 -!- Zekka has quit [Ping timeout: 244 seconds] 19:12:52 description: maybe s/puts to sleep unwary adventurers/puts unwary adventurers to sleep/ 19:13:00 feels less awkward with the second phrasing, to me 19:13:14 less splicing is good 19:13:25 also maybe swap 'unwary adventurers' for 'their victims', because the concept of sheep victims is really funny 19:14:28 Dream sheep aren't very vicious, though sleeping targets are easy prey 19:14:40 Fixed the verb splice, undecided on adventurers/victims 19:14:47 Renamed sleep_dur to sleep_pow 19:14:51 could tag "when threatened, " onto the last sentence of the description 19:15:01 otherwise it doesn't do that much, since you already have the spell listing in the description 19:15:03 Oh, good idea 19:15:45 Hmm, when threatened, dream sheep 'are able to' vs. 'will'? 19:16:06 <|amethyst> either 'are able to' or '' 19:16:12 'can' 19:16:13 <|amethyst> no sense putting it in the future tense 19:16:16 'may' 19:16:19 <|amethyst> or those 19:16:34 i'd remove the 'message' variable from _sheep_message() entirely 19:16:42 Oh, that's an artifact I forgot to delete 19:16:50 Before I decided to just not return anything 19:17:15 Err 19:17:17 I misunderstood 19:17:18 dream_herd should probably be a vector 19:17:52 you only use message in one place, so you can just call sheepact.c_str() there (line 852) 19:17:55 Won't there be issues with passing sheepact (which is a string, instead of char*) to mprf? 19:18:03 Can I do sheepact = sheepact.c_str()? 19:18:06 no 19:18:08 just 19:18:12 mprf(MSGCH_MONSTER_SPELL, "%s%s", message.c_str(), 19:18:19 Ah, i see 19:18:30 exact same thing you're doing on e.g. line 841 19:19:27 -!- MarvinPA has quit [Quit: Leaving] 19:19:46 Okay, fixed. Updated description to use 'may' 19:20:15 num_sheep should be a const int 19:21:16 could cull a couple of lines by saying "int sleep_dur = min(150, random2(num_sheep * 25));" 19:21:22 that one's personal taste 19:21:30 Constified num_sheep. Should it also be '_sheep_message(const int num_sheep,' then? 19:21:43 doesn't matter 19:22:33 <|amethyst> it doesn't affect the function's signature, but it does keep you from modifying it inside the function body 19:22:42 yeah 19:23:07 <|amethyst> we don't tend to make parameters const like that, but there are arguments for doing so 19:23:30 the target->alive() check on line 900 is redundant; you already check for that at the start of the function 19:23:33 <|amethyst> (at the definition; probably you shouldn't use const in the declaration) 19:24:15 What if it's being declared and defined at once? 19:24:28 <|amethyst> then it counts as the definition and it makes sense to use it 19:24:32 Gotcha 19:24:33 having the cooldown be nonrandomized seems bad 19:24:56 the ench_dusted thing 19:25:06 players shouldn't be encouraged to count turns until the sheep come online again 19:25:11 there's a somewhat hacky solution to that in case DREAM_SHEEP, where it coinflips, but I agree 19:25:43 make it like 60-100 aut or something 19:25:45 <|amethyst> I don't like that _sheep_message has checks for clarity() itself 19:26:13 <|amethyst> because if we add MR checks etc that becomes unmanageable 19:26:21 <|amethyst> I'd rather have it take a boolean parameter that says "did it work" 19:26:39 shouldn't it be max(150, random2avg(num_sheep *25)), not min? 19:26:43 no 19:26:50 if it's min it'd, oh 19:26:52 duh 19:26:54 yeah 19:26:56 I had that backwards 19:27:00 it's unintuitive 19:27:01 everyone fucks it up 19:27:06 <|amethyst> max sets a floor, min sets a ceiling 19:27:07 myself not excluded 19:27:26 |amethyst, how shoudl I handle the clarity case then? 19:27:38 |amethyst: advantage of boolean param is that we could get rid of the "(pow <= 25) pow = 0;" thing 19:28:00 could make power constant and just say "success = !target->clarity() && pow > 25..." 19:28:03 <|amethyst> then in the caller if (sleep_dur && !target->clarity()) { _sheep_message(..., true); target->put_to_sleep(...); } else { _sheep_message(..., false); } 19:28:39 <|amethyst> oh 19:28:49 <|amethyst> I guess you also need a can_sleep() check 19:28:58 that's there in case DREAM_SHEEP 19:29:01 further down 19:29:03 yeah, i was going to say, somewhere you should probably check whether the target is already asleep 19:29:18 <|amethyst> oh, I see 19:29:20 line 1307 19:29:22 hrm 19:29:26 you can't sleep confused enemies? 19:29:29 secret ambrosia tech 19:29:34 oh, i see 19:29:35 if the sheep is confused 19:29:36 not target 19:29:37 that's the sheep that can't be - yes 19:29:38 <|amethyst> probably it shouldn't even try against enemies with clarity 19:29:47 oh, where's the fun in that 19:29:54 well, the sheep doesn't know if the monster has clarity right 19:29:56 since they're sheep 19:29:56 I think it's nice to reward the player for having clarity 19:29:58 yeah 19:30:01 "this attack fizzled!" 19:30:33 poor sheep, just standing there shaking their coats at the murderous acolyte of ashenzari advancing upon them, bloodied sword in hand 19:30:42 haha 19:31:02 <|amethyst> ah, I was thinking e.g. SPELL_CONFUSE checked that in _ms_waste_of_time, but it doesn't 19:31:05 <|amethyst> so carry on 19:31:21 chequers: it's shear butchery! 19:31:32 unsure on how exactly to randomify the cooldown. 60 + random2(0, 40)? 19:31:44 i appreciate the // dream sheep comment on case SUMMON_DREAM_SHEEP 19:31:50 wouldn't that still encourage counting? 19:31:50 random_range(40, 100) 19:31:57 oh 19:32:00 random_range(60, 100) 19:32:01 misread 19:32:11 <|amethyst> hmm 19:32:32 <|amethyst> is there a reason to use a new enchantment here rather than the breath timer? 19:32:42 good call 19:32:49 would that create secret curare tech again? 19:33:15 curare hasn't affected breath timers for a while, has it? 19:33:16 <|amethyst> no, curare was made boring 19:33:20 sad! 19:33:25 <|amethyst> I agree! 19:33:27 but perhaps for the best 19:33:32 hm 19:33:33 @??yak 19:33:34 yak (07Y) | Spd: 10 | HD: 7 | HP: 32-44 | AC/EV: 4/7 | Dam: 18 | Res: 06magic(20) | XP: 204 | Sz: Large | Int: animal. 19:33:36 So I should get rid of ENCH_DUSTED and use breath timer? 19:33:45 probably 19:33:46 simpler 19:33:55 <|amethyst> yes 19:33:56 <|amethyst> also 19:34:00 <|amethyst> if you do have a new ENCH 19:34:04 high speed low drag tactical enchanterator 19:34:05 <|amethyst> the enum needs to be at the end 19:34:16 @??sheep 19:34:16 sheep (15Y) | Spd: 10 | HD: 3 | HP: 12-19 | AC/EV: 2/7 | Dam: 13 | Res: 06magic(10) | XP: 28 | Sz: Medium | Int: animal. 19:34:22 did you mean to give them base sheep damage 19:34:24 <|amethyst> ENCHs are relevant to save compat 19:34:25 yes 19:34:29 with sleep, they hit 2.5x damage 19:34:38 once every eight turns tops? 19:34:38 they're not meant to be dangerous on their own, but to amplify other monsters 19:34:41 mm 19:34:50 we'll see how they play, i guess 19:34:50 Lair has an issue with "Just run away from speed 10" 19:34:51 <|amethyst> also you spell 19:34:56 torpor snails and dream sheep should help 19:34:58 <|amethyst> that needs to go at the end of the enum as well 19:35:03 Okay, fixing.. 19:35:09 <|amethyst> s/you/your/ 19:35:26 in mon-ench.cc: you have "type == MONS_SHEEP || type == MONS_DREAM_SHEEP" 19:35:30 in two places 19:35:35 you should be using the genus instead 19:35:48 if (mons_genus(type) == MONS_SHEEP) 19:36:11 fr: new unique, Linnaeus 19:36:19 <|amethyst> hm, and if you didn't remove MB_DUSTED to use the breath timer instead, I think that too needs to go at the end of its enum 19:36:38 yep 19:36:46 I'm using the breath timer 19:36:50 But noted for future enchs 19:37:07 any particular reasoning behind the mon-pick-data weights? arbitrary? 19:37:11 <|amethyst> if in doubt, put new enumerators at the end 19:37:20 -!- Shard1697 has quit [Ping timeout: 265 seconds] 19:37:42 Roughly half as often as elephants, but showing up later than elephants 19:37:46 k 19:38:04 By Lair 4-6 the player should be able to handle special packs. 1-3 is a bit too early for something that sleeps you repeatedly 19:38:05 <|amethyst> of the ones you added, BAND_ is the only one that's safe to add it in the middle (because it's not stored anywhere, but only used during the process of creating a monster) 19:38:41 PleasingFungus, how do I change line 1556 to use genus instead? it checks mon->type 19:38:43 for adjacent sheep 19:38:44 dream sheep will show earlier as OODs and as torpor pack spawns, ofc 19:38:50 yes 19:38:58 <|amethyst> mons_genus(mon->type) 19:39:00 i think the torpor band size is probably excessive 19:39:09 mm 19:39:13 i guess they need numbers to work... 19:39:17 idk 19:39:20 that band size was defined before I despoilerifed their numbers 19:39:30 but now even 2-3 dream sheep can sleep you 19:39:33 so I'll reduce that band size 19:39:37 gimme a few to do all these changes 19:39:42 sure thing 19:40:17 2-4 for torpor snails? 19:40:45 puts em between yaks and death yaks, which seems reasonable 19:41:03 !lg * ikiller=torpor_snail lair s=killer 19:41:04 623 games for * (ikiller=torpor_snail lair): 242x a torpor snail, 230x a death yak, 131x a yak, 15x a sheep, 3x a redback, 2x a wolf spider 19:41:18 brutal sheep maulings 19:41:19 good 19:41:24 !lg * ikiller=torpor_snail lair killer=sheep 19:41:26 15. crwzzz the Unseen (L14 SpEn of Dithmenos), slain by a sheep (led by a torpor snail) on Lair:8 on 2016-05-28 06:29:21, with 45990 points after 17308 turns and 0:56:22. 19:41:31 !lg * ikiller=torpor_snail lair killer=sheep -log 19:41:32 15. crwzzz, XL14 SpEn, T:17308: http://lazy-life.ddo.jp:8080/morgue-0.18/crwzzz/morgue-crwzzz-20160528-062921.txt 19:41:55 16958 | Lair:8 | Killed Nessos 19:41:57 17308 | Lair:8 | Slain by a sheep 19:43:27 -!- Pacra_ has joined ##crawl-dev 19:43:31 for SPELL_SUMMON_DREAM_SHEEP, should it be after SPELL_INFESTATIOn and before NUM_SPELLS in enum.h? 19:43:40 correct 19:43:44 hm 19:43:45 were these going to replace plain sheep? I need to take a look at the actual monster and what it does, at some point 19:43:48 !source enum.h 19:43:49 https://github.com/crawl/crawl/blob/master/crawl-ref/source/enum.h 19:43:54 we were discussing replacing plain sheep, but no decision yet 19:44:23 -!- Bcadren has quit [Write error: Connection reset by peer] 19:44:26 someone with too much time on their hands could reorder the spell enums for TAG_MAJOR_VERSION > 34 19:44:30 or not. not like it matters 19:44:39 -!- cait has quit [Ping timeout: 260 seconds] 19:45:24 regarding a breath timer, would that give funny messaging 19:45:35 considering lore-wise it's not a real breath 19:45:59 ENCH_DUSTED has been purged 19:46:01 sheep breath! 19:46:06 hmm, would xv show "out of breath"? 19:46:06 I bet it's awful 19:46:09 it is 19:46:11 very 19:46:36 are you a shepard, Brannock? 19:46:47 one of my philosophy professors in college owned a sheep farm 19:46:54 one of these hobby things 19:47:12 a few students and I went out to help him with them one day, one of his ewes was giving birth 19:47:20 chequers: they get out of breath after shaking vigorously 19:47:28 seems pretty straightforward 19:47:44 i mean, they can't shake non-stop. these aren't, like, pro twerking sheep 19:47:49 torpor snail band size reduced to 2-4, cooldown has been randomified for 6-10 turns 19:47:51 ah yes 19:47:56 the pro twerking league 19:48:00 i hear the finals are next week 19:48:07 flammable sheep now checks genus 19:48:20 -!- Dracunos-m has quit [Ping timeout: 250 seconds] 19:48:20 Actually, is there anything I need to do to assign dream sheep to genus sheep? 19:48:41 <|amethyst> + 10, MONS_SHEEP, MONS_DREAM_SHEEP, MH_NATURAL, 30, 19:48:43 <|amethyst> already do 19:49:23 Oh, good 19:49:30 Huh, no monsters use SPELL_INFESTATION 19:49:33 I guess it isn't applicable 19:49:59 Is there any placement concerns for 19:50:00 case SPELL_SUMMON_DREAM_SHEEP: in mon-cast.cc? 19:50:24 Otherwise I'm tucking it after SPELL_BIND_SOULS 19:50:29 doesn't matter 19:50:42 fr: no multi-thousand-line switch-cases 19:50:46 Brannock do you want to see something funny 19:50:51 always 19:51:42 !source game_options::read_option_line 19:51:43 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/initfile.cc#L2418 19:52:10 it's funny because it's an abomination in the eyes of god and man 19:52:13 Oh my 19:52:14 check out line 3543 19:52:42 Haha 19:52:52 I don't understand how you can have an ELSE before an ELSE IF 19:52:57 Yet I see that a few times in there 19:53:07 you mean else BOOL_OPTION? 19:53:12 or LIST_OPTION 19:53:15 those are macros 19:53:27 cjr and cbro are added to the scoreboard, letting me link these two profiles: 19:53:28 https://crawl.project357.org/scoreboard/players/gammafunk.html 19:53:32 https://crawl.project357.org/scoreboard/players/PleasingFungus.html 19:53:33 they get replaced with other code as a pre-processing step, before compilation 19:54:02 heh, you rigged it so my stats are better than his 19:54:04 i like it 19:54:12 uh 19:54:15 !lg . tesu -log 19:54:16 15. pleasingfungus, XL7 TeSu, T:3847: https://crawl.jorgrun.rocks/morgue/pleasingfungus/morgue-pleasingfungus-20160628-070636.txt 19:54:23 I assume this scoreboard will eventually import the old stuff from cao 19:54:26 man that's a weird death message 19:54:47 chequers: show remaining 1 wins... 19:55:31 heh... should probably make the minimum for folding like 5 19:55:39 Brannock: you can see the definition of BOOL_OPTION from lines 2420-2424 19:55:48 also, don't use macros 19:56:42 Okay: refactor mon-abil, randomize cooldown, crush ENCH_DUSTED, classify death sheep, reorganize enums... is that everything from the code review? 19:56:54 I could pastebin a diff 19:57:17 did you turn dream_herd into a vector 19:57:22 Ah, I missed that one 19:57:48 also remove the sheep->alive() check before adding the breath weapon ench, probably 19:58:16 What happens if you add ENCH_BREATH_WEAPON to a dead monster? 19:58:20 well 19:58:34 monster_near_iterator shouldn't be returning dead monsters, and putting creatures to sleep shouldn't kill anyone, much less unrelated creatures 19:59:36 i mean, i guess you can keep it. it just seems odd to me 19:59:47 -!- tksquared_ has quit [Ping timeout: 250 seconds] 20:00:02 -!- omarax has quit [Remote host closed the connection] 20:00:24 -!- MaxFrost has quit [Read error: Connection reset by peer] 20:02:25 Okay... about to squash into a single commit again and push. 20:02:33 Ah, one last thing 20:02:53 'unwary adventurers' vs. 'their victims' 20:05:16 my vague concern is that unwary adventurers is 'lazier', in some sense. an obvious dodge of the second person 20:05:17 idk tho 20:05:28 not a big deal one way or the other 20:05:31 no save compat on descriptions :) 20:05:46 'unwary victims'??? 20:06:14 I'll stick with 'their victims', actually 20:06:17 Okay, I think that's everything. 20:06:36 another thing crawl's monster descs are inconsistent on: singular or plural 20:06:40 chequers: hrm, you're going to keep adding servers incrementally based on DB optimization? 20:06:47 Since this is post-code-review should I submit as a separate commit? The branch will/should be squashed when merged, but I don't think anyone would care to see the pre-review version 20:13:58 ? 20:14:19 just squash it 20:14:32 amalloy: sounds like a MarvinPA Project 20:16:17 compiler is very upset about vector dream_herd; 20:16:26 not sure which error message to pick out, pastebinning 20:17:06 hm, i wonder if i fucked up the syntax there 20:17:14 http://pastebin.com/vuYVKrgj 20:17:34 ahh, template errors in shitty compilers 20:17:55 -!- debo has joined ##crawl-dev 20:18:11 enh, drop the reference thing for now, i can mess around with it later 20:18:23 Okay. Back to monster*? 20:18:26 Or just ? 20:18:44 <|amethyst> not vector because those would be copies of the actual monsters 20:18:49 Ah, right 20:18:56 I remember now from the earlier explanation 20:19:04 <|amethyst> either vector or maybe vector 20:19:28 <|amethyst> (where mid_t is a numeric identifier that can be used to look up a monster as long as it's still alive) 20:20:08 not sure there's much advantage to using mids here 20:20:20 or any 20:20:36 <|amethyst> not really, no, since this vector doesn't persist across multiple turns 20:21:23 mons_genus() is not declared in mon-ench.cc 20:21:38 Oh never mind 20:21:41 Typo, caught, fixed 20:22:14 Jumping between mon and mons throws me off 20:22:41 -!- lobf has quit [Quit: lobf] 20:22:41 -!- ontoclasm1 has quit [Read error: Connection reset by peer] 20:23:10 What is a template error? 20:23:58 <|amethyst> those error messages you got from deep inside standard library headers 20:25:02 -!- ontoclasm has joined ##crawl-dev 20:25:27 <|amethyst> which happen because vector is a template, so the compiler takes its definition and plugs in "monster &" in the appropriate places, then tries compiling 20:25:44 Sounds ineffective 20:26:10 <|amethyst> that doesn't work, so you get errors that appear to come from the headers that define vector (or in this case allocator_traits, which is something that vector uses) 20:26:45 yeah, sorry, that one's on me 20:26:53 hm 20:26:55 except 20:27:33 hm, no, i guess i'm not doing that anywhere in my current project 20:27:44 just std::vector &, which of course is different 20:27:58 -!- Yermak has quit [Quit: Page closed] 20:28:04 The build has compiled. 20:28:24 <|amethyst> ultimately, the problem is because vector (and most data structures) doesn't work with references; it requires something copy-assignable and copy-constructable, which references are not 20:29:07 <|amethyst> there is a reference_wrapper template in C++11, but I think every place I would be inclined to use that, I'd use a pointer or smart pointer instead 20:29:20 <|amethyst> s/every place/most places/ 20:30:15 -!- jonadab has quit [Ping timeout: 258 seconds] 20:32:01 -!- Kellhus has quit [Quit: Page closed] 20:34:25 03Brannock02 07https://github.com/crawl/crawl/pull/321 * 0.19-a0-1110-g755aae3: Implement dream sheep. 10(4 days ago, 20 files, 236+ 3-) 13https://github.com/crawl/crawl/commit/755aae3285e5 20:34:30 Whew... what a project. 20:34:42 I've learned a lot more than I expected to when I started on Saturday 20:34:53 Thanks for all the help :) 20:36:54 sure thing 20:40:39 -!- magistern has quit [Quit: magistern] 20:48:12 got a good FR from reddit yesterday: https://www.reddit.com/r/dcss/comments/4wqko6/supressing_ds_mutations/d6aim8t?context=3 20:49:08 that's your own feature request! 20:49:10 you can't fool me! 20:49:24 -!- cait has quit [Ping timeout: 260 seconds] 20:49:39 why +ev? 20:49:42 yeah and i made it on reddit 20:50:08 PleasingFungus: cuz your head is smaller. enemies who'd otherwise hit you in the head go over the top instead 20:50:12 lmao 20:50:20 flawless 20:50:23 imagine your head is shaped like a wine glass 20:50:28 instead of a basketball 20:51:13 -!- scummos__ has quit [Ping timeout: 244 seconds] 20:52:24 !learn add crawl_development imagine your head is shaped like a wine glass 20:52:25 crawl development[3/3]: imagine your head is shaped like a wine glass 20:52:32 hm 20:52:53 basically http://i0.kym-cdn.com/entries/icons/original/000/004/505/muuugshot2b-thumb-400x519.jpg 20:53:02 easy to see how that guy would be better at dodging 20:53:12 obviously 20:53:23 what if you could hold a potion in the 'bowl' 20:53:35 -!- Prozacelf has quit [Quit: HydraIRC -> http://www.hydrairc.com <- Like it? Visit #hydrairc on EFNet] 20:53:48 you'd need to do frequent Dex checks when in combat 20:53:51 to avoid spilling 20:54:11 ??crawl development[1 20:54:11 crawl development[1/3]: oh well, complaints first, design never 20:54:16 ??crawl development[2 20:54:16 crawl development[2/3]: 🚲🏠 20:54:36 -!- ProzacElf has joined ##crawl-dev 20:54:59 2 is the only entry you need, really 20:55:04 -!- _dhm has quit [Ping timeout: 264 seconds] 20:55:12 i need better fonts to read 2 20:55:38 U+01F6B2 and U+01F3E0 do not speak volumes to me 20:55:41 try pasting it into your browser, that might work 20:55:45 paste it into, yeah 20:56:00 i could but 20:56:10 do i want to encourage this kind of nonsense? 20:56:27 says the man talking about concave heads 20:56:50 realism! the phrenologists were right all along! 20:57:12 -!- squidcat has quit [Ping timeout: 250 seconds] 20:57:30 i had also considered adding it to realism_in_crawl 20:57:45 you know what learndb needs? 20:57:59 it needs !learn add * fact 20:59:41 ? 21:00:05 -!- omarax has quit [Remote host closed the connection] 21:00:41 ??fact 21:00:41 I don't have a page labeled fact in my learndb. Did you mean: facet, fast. 21:01:04 PleasingFungus: to add something to all learndb entries at once 21:01:19 for particularly good quotes like that one 21:02:03 dang 21:06:58 gammafunk: basically. things should be nearly fully optimised now unless we denormalise the database -- which would slow down db import 21:07:28 gammafunk: the key bottleneck is now the limited cpu credits on CPO meaning it takes time to save up enough to run a big import. I might just create the database locally and upload it 21:07:51 although there are a few stupid db queries in there that I'm not smart enough to optimise, if you're offering 21:12:38 -!- Yermak has joined ##crawl-dev 21:14:02 -!- CanOfWorms has joined ##crawl-dev 21:16:25 -!- PleasingFungus has quit [Ping timeout: 265 seconds] 21:17:38 Fun Crawl Fact: randart rings of wizardry cannot have negative intelligence 21:18:44 really? 21:18:53 why is that? 21:19:14 -!- dtsund has quit [Ping timeout: 265 seconds] 21:19:15 hardcoded feature? 21:21:12 -!- Shard1697 has joined ##crawl-dev 21:21:42 <|amethyst> yes 21:21:47 <|amethyst> !source _randart_is_conflicting 21:21:47 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L1500 21:22:14 <|amethyst> the idea to to avoid having two effects that partially cancel out, or that prevent each other from working 21:26:34 -!- Bammboo has quit [Ping timeout: 252 seconds] 21:26:54 -!- amalloy is now known as amalloy_ 21:27:12 -!- dtsund has joined ##crawl-dev 21:28:35 -!- bonghitz has quit [Remote host closed the connection] 21:28:37 right 21:30:17 and amu rage confilicts with stealth apparentyl 21:31:33 ring of fire with -Int is also fair game 21:32:03 and chain mail with -Str +Dex 21:32:27 chequers: oh, I'm not very good with DBs, but I should sit down at take a look at what you've done sometime 21:37:02 -!- } has joined ##crawl-dev 21:38:17 heh, was that part of decoupling rcorr and *corrode? 21:38:40 which seemed like they appeared together on stuff a disproportionate amount of the time for a while 21:39:03 -!- PsyMar has quit [Ping timeout: 265 seconds] 21:42:51 <}> if I understand 7be440f59e774a59e right, card power uses invo instead of evo, but when you use the m? menu (to describe skills) it says evo boosts card power 21:43:00 <}> %git 7be440f59e774a59e 21:43:00 07MarvinPA02 * 0.19-a0-546-g7be440f: Make Nemelex use invocations instead of evocations 10(9 weeks ago, 9 files, 13+ 37-) 13https://github.com/crawl/crawl/commit/7be440f59e77 21:43:10 ProzacElf: mutual exclusion on randart properties has been around since forever 21:43:17 oh 21:43:55 -!- debo_ has joined ##crawl-dev 21:44:19 -!- debo_ is now known as Guest73751 21:44:32 -!- aredel has quit [Quit: Page closed] 21:45:16 <}> !source skills.txt:288 21:45:17 https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/descript/fr/skills.txt#L288 21:45:32 <}> huh thats not english o_O 21:45:44 <}> !source source/dat/descript/skills.txt:288 21:45:45 Can't find source/dat/descript/skills.txt. 21:46:13 <}> really sequell, why would you do a depth first search instead of a bfs 21:47:00 <}> so if I understand the current way decks work, https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/descript/skills.txt#L288 this would have to be changed so it doesnt say evo boosts deck power 21:47:05 should probably remove the lines that mention that training a school will cause anti-training in thse french descriptions 21:47:28 <}> i gotta go afk 21:47:29 I think I'll go and do that right now, actually 21:47:51 <}> Brannock, could you change or send a patch request for the deck power thing too? 21:48:05 did decks get removed? 21:48:14 <}> %git 7be440f59e774a59e 21:48:14 07MarvinPA02 * 0.19-a0-546-g7be440f: Make Nemelex use invocations instead of evocations 10(9 weeks ago, 9 files, 13+ 37-) 13https://github.com/crawl/crawl/commit/7be440f59e77 21:48:21 Ahh 21:48:26 Sure, I'll do that as well 21:48:30 <}> thank you Brannock 21:48:36 * } runs away 21:48:48 -!- Guest73751 has quit [Ping timeout: 265 seconds] 21:52:58 -!- Jorbs has quit [Quit: Page closed] 21:54:14 -!- PleasingFungus has joined ##crawl-dev 21:55:06 !source dat/descript/skills.txt:288 21:55:06 https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/descript/skills.txt#L288 21:55:14 can random2(25) return 25? the documentation says [0, max), unsure if ) indicates exclusive or something 21:55:16 oh, nice find 21:55:31 -!- Daekdroom has quit [Remote host closed the connection] 21:56:23 03PleasingFungus02 {GitHub} 07* 0.19-a0-1111-gcceb26a: Remove a reference to decks using evocations (}) 10(7 seconds ago, 1 file, 3+ 3-) 13https://github.com/crawl/crawl/commit/cceb26a6b878 21:58:26 square brackets are inclusive, round exclusive in that notation 21:58:33 so, 0 to max-1 21:59:18 -!- debo__ has joined ##crawl-dev 22:00:00 -!- PleasingFungus has quit [Remote host closed the connection] 22:00:03 -!- omarax has quit [Remote host closed the connection] 22:01:15 contemplating an elegant way to fix this off-by-one, could just add '+ 1' 22:04:04 -!- HellTiger has quit [Ping timeout: 264 seconds] 22:04:15 -!- debo__ has quit [Ping timeout: 244 seconds] 22:06:34 -!- dtsund has quit [Ping timeout: 240 seconds] 22:06:51 -!- rossi has quit [Ping timeout: 258 seconds] 22:08:53 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1111-gcceb26a (34) 22:11:13 -!- amalloy_ is now known as amalloy 22:13:54 -!- glosham has quit [Ping timeout: 250 seconds] 22:20:11 -!- cait has quit [Ping timeout: 250 seconds] 22:21:22 Okay I fixed the debug thing that was causing a Travis build failure, and fixed an edge case by catching an off-by-one 22:21:27 Going out for the night now, cheers 22:22:03 03Brannock02 07https://github.com/crawl/crawl/pull/321 * 0.19-a0-1110-g0dcbbd7: Implement dream sheep. 10(4 days ago, 20 files, 239+ 3-) 13https://github.com/crawl/crawl/commit/0dcbbd731101 22:28:14 !source artefact_prop_type 22:28:14 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/enum.h#L3996 22:30:22 -!- gammafunk has quit [Remote host closed the connection] 22:33:55 -!- gammafunk has joined ##crawl-dev 22:37:06 -!- CanOfWorms has quit [Remote host closed the connection] 22:44:08 http://dpaste.com/2T1WK09 -- freebie -- don't spawn antimagic weapons with +int 22:45:13 that seems like a silly restriction 22:48:06 -!- CanOfWorms has joined ##crawl-dev 22:48:41 antimagic weapons aren't the same as -Cast 22:49:34 a mifi who wants to get blink castable for emergencies would be thrilled to have +Int antimagic 22:50:06 tbf MiFi are thrilled by really mundane things like that, since simple pleasures for simple minds 22:50:29 but we shouldn't take away their fun 22:50:30 MiFi are thrilled by dryer lint 22:50:49 sounds deserving of a minmay comic 22:52:51 -!- Zxpr1jk has quit [Quit: Leaving] 22:53:40 -!- aditya has quit [Quit: Bye] 22:53:52 -!- Dracunos7 has quit [Ping timeout: 240 seconds] 22:54:49 -!- joy1999 has quit [Ping timeout: 260 seconds] 22:55:34 -!- Dracunos-m has quit [Ping timeout: 240 seconds] 22:56:26 -!- Cerepol has quit [Ping timeout: 244 seconds] 22:56:57 -!- PsyMar has quit [Ping timeout: 265 seconds] 22:57:04 -!- PElf has joined ##crawl-dev 22:57:14 -!- squidcat has quit [Ping timeout: 250 seconds] 23:00:02 -!- omarax has quit [Remote host closed the connection] 23:04:08 -!- Dracunos72 has quit [Ping timeout: 250 seconds] 23:08:03 -!- lincoln has quit [Quit: Lost terminal] 23:11:55 -!- Bcadren has quit [Ping timeout: 250 seconds] 23:13:49 -!- _dhm has quit [Ping timeout: 244 seconds] 23:16:32 -!- zxc has joined ##crawl-dev 23:21:13 -!- wheals has quit [Ping timeout: 258 seconds] 23:21:59 -!- gammafunk has quit [Quit: leaving] 23:24:26 -!- } has quit [Ping timeout: 265 seconds] 23:26:01 -!- sooheon has quit [Client Quit] 23:26:21 -!- MaBunny is now known as ByteStorm 23:31:09 -!- gammafunk has joined ##crawl-dev 23:36:32 -!- WingedEspeon has quit [Quit: Page closed] 23:39:51 -!- dtsund has joined ##crawl-dev 23:41:24 -!- gressup_ has quit [Ping timeout: 250 seconds] 23:42:32 -!- PElf has quit [Quit: HydraIRC -> http://www.hydrairc.com <- \o/] 23:45:11 -!- destroythecore has quit [Read error: Connection reset by peer] 23:46:02 -!- zxc has quit [Read error: Connection reset by peer] 23:49:32 -!- LexAckson has joined ##crawl-dev 23:50:29 -!- tksquared has quit [Ping timeout: 250 seconds] 23:55:29 -!- dtsund has quit [Quit: Reality is an illusion, the universe is a hologram, buy gold, BYE] 23:57:10 -!- kdrnic has quit [Quit: Leaving] 23:59:47 Unstable branch on CRAWL.XTAHUA.COM updated to: 0.19-a0-1111-gcceb26a (34)