00:00:03 -!- omarax has quit [Remote host closed the connection] 00:00:08 meliainial 00:01:00 -!- Greenflame has quit [Quit: Page closed] 00:01:01 ??div_rand_round 00:01:02 I don't have a page labeled div_rand_round in my learndb. 00:01:07 why do i even bother 00:01:22 man who comes up with these functions 00:01:28 a boundless and unceasing hope that can never be fully extinguished? 00:01:36 youre a poet 00:01:44 int bad = min(binomial(1 + div_rand_round(quality, 5), 30), max_bad_props); 00:01:48 like wat 00:01:55 iirc div_rand_round does a division and then rounds the result up or down 00:02:35 i see 00:02:35 also binomial(7,30) just seems so arbitrary 00:02:38 div_rand_round(7, 5) has a 2/5 chance of returning 2, and a 3/5 chance of returning 1 00:02:42 it rounds up or down at random but with a probability based on the fractional remainder so that over time its results will average out to the expected non-integer result 00:02:43 guess what: it was 00:03:11 you wrote it? 00:03:33 i don't think he did but "it was arbitrary" can really apply to most places in crawl code 00:03:47 well sometimes i think its a math wiz who did it 00:03:51 and he knew what he was doing 00:04:08 im guessing binomial distribution was using to simulate a normal distribution? 00:04:14 but you can do that with just a rand... 00:05:21 you'd have to talk to lasty 00:05:26 he did this like, nine months ago? maybe? 00:05:43 mmk 00:06:15 well at least i know why my randarts never look as good as my unrands a lot of the time now =P 00:06:31 the higher the quality of your randart, the more probable that it'll tack on negative traits 00:06:35 yeah, randarts are often middle-of-the-road 00:07:10 i'd get like rN+++, Contam*, -5 int rings or something 00:08:07 oh, and where can i find stuff about item generation on dungeon floors? 00:08:07 i dont think i caught the answer 00:09:23 makeitem.cc 00:10:13 kk 00:10:38 -!- nicolae- has left ##crawl-dev 00:12:39 huh, that's less depth dependence than i expected to see 00:14:03 yeah, crawl secrets 00:14:06 -!- THERetroGamerNY has quit [Quit: Be blessed!] 00:14:24 it's like reading a book 00:14:25 i love it 00:14:32 well a very hard to decipher book... 00:15:55 -!- FIQ has joined ##crawl-dev 00:16:17 welp, i think i'll look at this more 2moro. thanks for the help. 00:17:21 good night! 00:18:11 thanks you too :) 00:18:14 -!- protopulse_ has quit [Quit: Page closed] 00:20:41 -!- pikaro has quit [Ping timeout: 265 seconds] 00:23:18 -!- nikheizen has quit [Quit: leaving] 00:28:45 -!- mizu_no_oto has quit [Quit: ["Textual IRC Client: www.textualapp.com"]] 00:30:49 Unstable branch on CRAWL.XTAHUA.COM updated to: 0.19-a0-1498-g0b85ae9 (34) 00:34:22 -!- Kuningaz45 is now known as Taraiph 00:45:16 -!- Greenflame has quit [Quit: Page closed] 00:51:34 -!- pikaro has quit [Ping timeout: 240 seconds] 00:56:25 -!- zeia has quit [Ping timeout: 255 seconds] 01:06:52 -!- cait has quit [*.net *.split] 01:06:53 -!- Grammus has quit [*.net *.split] 01:06:53 -!- iFurril has quit [*.net *.split] 01:06:54 -!- geekosaur has quit [*.net *.split] 01:06:54 -!- hpm_ has quit [*.net *.split] 01:06:54 -!- demok has quit [*.net *.split] 01:06:54 -!- _dhm has quit [*.net *.split] 01:06:55 -!- Calamarain has quit [*.net *.split] 01:06:56 -!- lvh has quit [*.net *.split] 01:06:57 -!- pythonsnake has quit [*.net *.split] 01:06:57 -!- Mad_Wack has quit [*.net *.split] 01:06:57 -!- Finwe has quit [*.net *.split] 01:06:57 -!- tksquared has quit [*.net *.split] 01:06:58 -!- johnstein has quit [*.net *.split] 01:06:58 -!- crate has quit [*.net *.split] 01:06:59 -!- Weretaco_ has quit [*.net *.split] 01:06:59 -!- MarvinPA has quit [*.net *.split] 01:07:00 -!- pantaril has quit [*.net *.split] 01:07:01 -!- jooles has quit [*.net *.split] 01:07:01 -!- doy has quit [*.net *.split] 01:07:02 -!- socks_ has quit [*.net *.split] 01:07:02 -!- Kramell has quit [*.net *.split] 01:07:04 -!- PsyMar has quit [*.net *.split] 01:07:04 -!- omarax has quit [*.net *.split] 01:07:05 -!- Zekka has quit [*.net *.split] 01:07:05 -!- GauHelldragon has quit [*.net *.split] 01:07:05 -!- Rast has quit [*.net *.split] 01:07:06 -!- Zymurgist has quit [*.net *.split] 01:07:06 -!- FunkyBomb has quit [*.net *.split] 01:07:06 -!- AltReality has quit [*.net *.split] 01:07:06 -!- illusionary has quit [*.net *.split] 01:07:06 -!- ChongLi_ has quit [*.net *.split] 01:07:06 -!- kogasa has quit [*.net *.split] 01:07:06 -!- Nerem has quit [*.net *.split] 01:07:07 -!- djinni_ has quit [*.net *.split] 01:07:07 -!- shmup_ has quit [*.net *.split] 01:07:07 -!- qguv has quit [*.net *.split] 01:07:08 -!- flappity has quit [*.net *.split] 01:07:09 -!- jonadab has quit [*.net *.split] 01:07:09 -!- OCTOTROG has quit [*.net *.split] 01:07:09 -!- isha has quit [*.net *.split] 01:07:10 -!- GoatMann has quit [*.net *.split] 01:07:10 -!- paxed has quit [*.net *.split] 01:07:11 -!- thrig has quit [*.net *.split] 01:07:11 -!- oberstein has quit [*.net *.split] 01:07:11 -!- Keskitalo has quit [*.net *.split] 01:07:11 -!- atrodo has quit [*.net *.split] 01:07:11 -!- phyphor has quit [*.net *.split] 01:07:12 -!- Tiktalik has quit [*.net *.split] 01:07:12 -!- Svitkona has quit [*.net *.split] 01:07:12 -!- Pinkbeast has quit [*.net *.split] 01:07:12 -!- myp has quit [*.net *.split] 01:07:12 -!- lukano has quit [*.net *.split] 01:07:12 -!- eb_mobile has quit [*.net *.split] 01:07:13 -!- TZer0 has quit [*.net *.split] 01:07:13 -!- Chousuke has quit [*.net *.split] 01:07:13 -!- rax has quit [*.net *.split] 01:07:13 -!- |amethyst has quit [*.net *.split] 01:07:13 -!- Sequell has quit [*.net *.split] 01:07:13 -!- inire has quit [*.net *.split] 01:07:13 -!- Gretell has quit [*.net *.split] 01:07:13 -!- _sk has quit [*.net *.split] 01:07:14 -!- Kalma has quit [*.net *.split] 01:07:14 -!- Amadiro_ has quit [*.net *.split] 01:07:14 -!- ChanServ has quit [*.net *.split] 01:07:14 -!- Xenobreeder has quit [*.net *.split] 01:07:14 -!- mibe has quit [*.net *.split] 01:07:14 -!- Lightli has quit [*.net *.split] 01:07:14 -!- fearitself has quit [*.net *.split] 01:07:15 -!- Rotatell has quit [*.net *.split] 01:07:15 -!- CanOfWorms has quit [*.net *.split] 01:07:15 -!- minmay has quit [*.net *.split] 01:07:15 -!- minqmay has quit [*.net *.split] 01:07:15 -!- Harudoku has quit [*.net *.split] 01:07:15 -!- Bammboo has quit [*.net *.split] 01:07:15 -!- xnavy has quit [*.net *.split] 01:07:16 -!- xug has quit [*.net *.split] 01:07:17 -!- Voker57 has quit [*.net *.split] 01:07:17 -!- paulr_ has quit [*.net *.split] 01:07:17 -!- eki has quit [*.net *.split] 01:07:17 -!- neunon has quit [*.net *.split] 01:07:17 -!- MartinW has quit [*.net *.split] 01:07:18 -!- Medar has quit [*.net *.split] 01:07:18 -!- Zet has quit [*.net *.split] 01:07:19 -!- Goncyn has quit [*.net *.split] 01:07:19 -!- tupper has quit [*.net *.split] 01:07:20 -!- debo has quit [*.net *.split] 01:07:20 -!- Krakhan has quit [*.net *.split] 01:07:20 -!- TAS_2012v has quit [*.net *.split] 01:07:20 -!- orionstein has quit [*.net *.split] 01:07:21 -!- anticore has quit [*.net *.split] 01:07:21 -!- Klaymen has quit [*.net *.split] 01:07:21 -!- royiv has quit [*.net *.split] 01:07:21 -!- ldf has quit [*.net *.split] 01:07:21 -!- suncrab has quit [*.net *.split] 01:07:21 -!- tw has quit [*.net *.split] 01:07:21 -!- panicbit has quit [*.net *.split] 01:07:22 -!- Ipsum has quit [*.net *.split] 01:07:23 -!- Jorgrell has quit [*.net *.split] 01:07:24 -!- HellTiger has quit [*.net *.split] 01:07:24 -!- knu_ has quit [*.net *.split] 01:07:24 -!- bairyn has quit [*.net *.split] 01:07:24 -!- bencryption has quit [*.net *.split] 01:07:25 -!- miek_ has quit [*.net *.split] 01:07:25 -!- DrKe has quit [*.net *.split] 01:07:25 -!- joy1999 has quit [*.net *.split] 01:07:25 -!- Xjs|moonshine has quit [*.net *.split] 01:07:26 -!- tcsc has quit [*.net *.split] 01:07:26 -!- Rjs has quit [*.net *.split] 01:07:26 -!- onmyo has quit [*.net *.split] 01:07:26 -!- Eronarn__ has quit [*.net *.split] 01:07:27 -!- yaknyasn has quit [*.net *.split] 01:07:27 -!- axujen has quit [*.net *.split] 01:07:27 -!- infrashortfoo_ has quit [*.net *.split] 01:07:27 -!- Elsi has quit [*.net *.split] 01:07:27 -!- Kintak has quit [*.net *.split] 01:07:27 -!- eb_ has quit [*.net *.split] 01:07:27 -!- TMTurtle has quit [*.net *.split] 01:07:27 -!- elliptic has quit [*.net *.split] 01:07:28 -!- broquaint has quit [*.net *.split] 01:07:28 -!- sgun_ has quit [*.net *.split] 01:07:28 -!- bh has quit [*.net *.split] 01:07:29 -!- kurufu has quit [*.net *.split] 01:07:29 -!- Mindiell has quit [*.net *.split] 01:07:29 -!- Ragnor has quit [*.net *.split] 01:07:29 -!- johnny0 has quit [*.net *.split] 01:07:29 -!- _fortis has quit [*.net *.split] 01:07:29 -!- kebab has quit [*.net *.split] 01:07:30 -!- Wolfechu has quit [*.net *.split] 01:07:30 -!- scorchgeek has quit [*.net *.split] 01:07:30 -!- xormask has quit [*.net *.split] 01:07:30 -!- Taraiph has quit [*.net *.split] 01:07:30 -!- ProzacElf has quit [*.net *.split] 01:07:30 -!- Dracunos has quit [*.net *.split] 01:07:31 -!- jbenedetto has quit [*.net *.split] 01:07:31 -!- ebering has quit [*.net *.split] 01:07:31 -!- bhaak has quit [*.net *.split] 01:07:31 -!- vible has quit [*.net *.split] 01:07:32 -!- Zannick has quit [*.net *.split] 01:07:32 -!- us17 has quit [*.net *.split] 01:07:32 -!- vermifax has quit [*.net *.split] 01:07:32 -!- taylskid has quit [*.net *.split] 01:07:33 -!- FatShack has quit [*.net *.split] 01:07:33 -!- FIQ has quit [*.net *.split] 01:07:33 -!- jeefus has quit [*.net *.split] 01:07:33 -!- Dracunos-m has quit [*.net *.split] 01:07:34 -!- bcadren has quit [*.net *.split] 01:07:35 -!- DaneitwoTWO has quit [*.net *.split] 01:07:35 -!- cmcbot has quit [*.net *.split] 01:07:35 -!- buki has quit [*.net *.split] 01:07:35 -!- MakMorn has quit [*.net *.split] 01:07:36 -!- surr has quit [*.net *.split] 01:07:36 -!- lynn has quit [*.net *.split] 01:07:36 -!- kryft has quit [*.net *.split] 01:07:36 -!- tswett has quit [*.net *.split] 01:07:36 -!- sage1234 has quit [*.net *.split] 01:07:36 -!- Lantell has quit [*.net *.split] 01:07:36 -!- escu has quit [*.net *.split] 01:07:37 -!- Smello has quit [*.net *.split] 01:07:37 -!- fiyawerx has quit [*.net *.split] 01:07:37 -!- XVar has quit [*.net *.split] 01:07:37 -!- rossi has quit [*.net *.split] 01:07:37 -!- AndChat|247025 has quit [*.net *.split] 01:07:37 -!- Zeor has quit [*.net *.split] 01:07:38 -!- GoblinBomb has quit [*.net *.split] 01:07:38 -!- Twinge has quit [*.net *.split] 01:07:38 -!- amalloy has quit [*.net *.split] 01:07:38 -!- Mandevil has quit [*.net *.split] 01:07:38 -!- dustinm`_ has quit [*.net *.split] 01:07:38 -!- Writ has quit [*.net *.split] 01:07:38 -!- Henzell has quit [*.net *.split] 01:07:38 -!- greensnark has quit [*.net *.split] 01:07:38 -!- docnvk has quit [*.net *.split] 01:07:38 -!- Pyryhyry_ has quit [*.net *.split] 01:07:39 -!- namad7 has quit [*.net *.split] 01:07:39 -!- devesine has quit [*.net *.split] 01:07:39 -!- rubinko has quit [*.net *.split] 01:07:39 -!- Adeon has quit [*.net *.split] 01:07:39 -!- kazimuth has quit [*.net *.split] 01:07:39 -!- djanatyn has quit [*.net *.split] 01:07:39 -!- chequers has quit [*.net *.split] 01:07:40 -!- Napkin has quit [*.net *.split] 01:07:40 -!- zkyp has quit [*.net *.split] 01:07:40 -!- bitcoinbastard has quit [*.net *.split] 01:07:40 -!- Patashu has quit [*.net *.split] 01:07:40 -!- Netmonmatt has quit [*.net *.split] 01:07:40 -!- PleasingFungus has quit [*.net *.split] 01:07:40 -!- gammafunk has quit [*.net *.split] 01:07:41 -!- myfreeweb has quit [*.net *.split] 01:07:41 -!- sneakyness has quit [*.net *.split] 01:07:42 -!- Lohengramm has quit [*.net *.split] 01:07:42 -!- Cenon has quit [*.net *.split] 01:07:43 -!- VoidFox has quit [*.net *.split] 01:07:43 -!- bd- has quit [*.net *.split] 01:07:43 -!- ChaseSP has quit [*.net *.split] 01:07:43 -!- helsbecter has quit [*.net *.split] 01:07:43 -!- sooheon has quit [*.net *.split] 01:07:43 -!- Suga_H has quit [*.net *.split] 01:07:44 -!- Cerpin has quit [*.net *.split] 01:07:44 -!- woodjrx has quit [*.net *.split] 01:07:45 -!- zeroDivisible has quit [*.net *.split] 01:07:45 -!- endou_ has quit [*.net *.split] 01:07:45 -!- can-of-bees has quit [*.net *.split] 01:07:45 -!- InsideTheVoid has quit [*.net *.split] 01:07:45 -!- Eksell has quit [*.net *.split] 01:07:45 -!- Wensley has quit [*.net *.split] 01:07:45 -!- varmin has quit [*.net *.split] 01:14:40 -!- Brannock has quit [Ping timeout: 240 seconds] 01:33:36 -!- destroythecore has quit [Read error: Connection reset by peer] 02:37:42 -!- Cheibriados has joined ##crawl-dev 02:37:42 -!- The topic of ##crawl-dev is: Crawl Development | Logs: http://s-z.org/crawl-dev/ | People with +v have commit access. | Please keep general Crawl-related chat to ##crawl. | Dev wiki: http://crawl.develz.org/wiki | Long stuff to a pastebin service, please. 02:37:43 -!- The topic of ##crawl is: Play Dungeon Crawl Stone Soup online now! Type ??servers for instructions. | http://crawl.develz.org | FooTV: http://termcast.develz.org - ??footv for instructions | See also ##crawl-offtopic 02:37:43 <|amethyst> %git c04c3c1 02:37:43 07edlothiol02 * 0.12-a0-423-gc04c3c1: Webtiles: Do animations on the client and, optionally, in real-time. 10(4 years ago, 5 files, 127+ 2-) 13https://github.com/crawl/crawl/commit/c04c3c159f4e 02:37:52 <|amethyst> I said 02:37:53 <|amethyst> %git c04c3c1 02:37:53 07edlothiol02 * 0.12-a0-423-gc04c3c1: Webtiles: Do animations on the client and, optionally, in real-time. 10(4 years ago, 5 files, 127+ 2-) 13https://github.com/crawl/crawl/commit/c04c3c159f4e 02:38:00 Take it easy... 02:39:05 <|amethyst> rip F10 02:39:50 gonna add it back to webtiles-changes to encourage adoption of the branch 02:40:09 along with realtime 3D animations 02:40:34 You see the Sphere of Zot 02:44:48 -!- pikaro has quit [Ping timeout: 244 seconds] 02:48:55 -!- chan20 has quit [Read error: Connection reset by peer] 02:49:14 -!- Kalir has quit [Changing host] 02:53:44 Monster database of master branch on crawl.develz.org updated to: 0.19-a0-1498-g0b85ae9 03:03:37 hmm 03:03:49 does poisoning still cause fog with dith 03:08:29 -!- Telnaior has quit [Client Quit] 03:08:41 -!- Taraiph has quit [Read error: Connection reset by peer] 03:12:17 freenode's having "fun" tonight 03:25:57 Unstable branch on crawl.beRotato.org updated to: 0.19-a0-1498-g0b85ae9 (34) 03:27:00 -!- TuxQmoob has quit [Changing host] 03:28:41 -!- TuxQmooob has quit [Changing host] 03:30:04 -!- TuxQmob has quit [Ping timeout: 240 seconds] 03:30:20 -!- adibis has quit [Ping timeout: 252 seconds] 03:31:04 -!- TuxQmoob has quit [Ping timeout: 240 seconds] 03:31:12 geekosaur: know what's going on? 03:31:20 beem seems to be not getting responses 03:32:26 no, aside from observationally. all the server connections seem to be slow, and there's still at least one server that disconnected from the network but still has users on it 03:32:40 you may want to restart beem to get it to connect to a different server 03:33:09 yeah just did 03:33:24 well just did for cbro 03:33:37 hrm, not really a way for me to detect this in-server 03:33:51 -!- TuxQmooob has quit [Ping timeout: 276 seconds] 03:33:56 I'm assuming if a server was disconnected, ping/pong etc would still work 03:34:08 so I'd never see a problem 03:37:12 yep 03:37:28 I've been watchimng folks notice and reconnect for the past couple hours 03:37:35 -!- Kalir has quit [Quit: I'M OUT SON. PEACE, LOVE, EXPLOSIONS.] 03:43:02 guess I should implement some kind of "Sequell ping" or something 03:50:14 -!- Zeor has quit [Quit: Leaving.] 04:04:04 -!- Dracunos has quit [Ping timeout: 240 seconds] 04:04:28 -!- Rast has joined ##crawl-dev 04:04:28 -!- djinni_ has joined ##crawl-dev 04:04:28 -!- shmup_ has joined ##crawl-dev 04:04:28 -!- oberstein has joined ##crawl-dev 04:04:28 -!- Keskitalo has joined ##crawl-dev 04:05:02 -!- kogasa has joined ##crawl-dev 04:05:02 -!- hyperbolic has joined ##crawl-dev 04:05:10 -!- ontoclasm has joined ##crawl-dev 04:05:10 -!- MarvinPA has joined ##crawl-dev 04:05:10 -!- doy has joined ##crawl-dev 04:05:10 -!- socks_ has joined ##crawl-dev 04:20:21 -!- Blazinghand has joined ##crawl-dev 04:38:40 -!- Insomniak` has quit [Quit: I like to rock] 05:00:02 -!- omarax has quit [Remote host closed the connection] 05:06:51 -!- CanOfWorms has quit [Quit: ChatZilla 0.9.92 [Firefox 3.6.28/20120306064154]] 05:16:48 -!- MemeProof has quit [Remote host closed the connection] 05:18:28 -!- titanjones has quit [Quit: Page closed] 05:20:49 -!- GauHelldragon has quit [Ping timeout: 250 seconds] 05:38:56 -!- Ge0ff has joined ##crawl-dev 05:39:26 -!- Netmonmatt has quit [Quit: Going offline, see ya! (www.adiirc.com)] 05:43:41 -!- Lasty has joined ##crawl-dev 05:45:12 -!- Lasty has quit [Client Quit] 05:46:37 -!- Ququman has joined ##crawl-dev 06:00:02 -!- omarax has quit [Remote host closed the connection] 06:00:11 !tell PleasingFungus http://i.imgur.com/DdzoSNJ.png The entrance to the Tomb is on Crypt:3. Also probably branch endings with the portals (Lair:6 -> Hell and Orc:2 -> Pan) should be mentioned too. 06:00:12 Ge0ff: OK, I'll let pleasingfungus know. 06:00:35 -!- Lasty has joined ##crawl-dev 06:00:54 -!- Blazinghand has quit [Quit: This computer has gone to sleep] 06:03:03 -!- Blazinghand has joined ##crawl-dev 06:04:32 -!- Ge0ff has left ##crawl-dev 06:09:39 -!- Blazinghand has quit [Quit: This computer has gone to sleep] 06:10:33 -!- ProzacElf has quit [Ping timeout: 240 seconds] 06:13:24 -!- amalloy is now known as amalloy_ 06:25:06 -!- Blazinghand has joined ##crawl-dev 06:28:39 -!- TuxQmob has quit [Ping timeout: 265 seconds] 06:29:04 -!- bcadren has quit [Ping timeout: 252 seconds] 06:30:00 -!- TuxQmoob has quit [Ping timeout: 276 seconds] 06:33:28 -!- ScarCow has quit [Quit: Lost terminal] 06:40:54 -!- eb_ has quit [] 06:41:03 -!- Wolfechu has quit [Ping timeout: 240 seconds] 06:53:32 -!- flappity has quit [Ping timeout: 250 seconds] 06:54:29 that's a nice graph, but I think you could simplify it 06:54:37 no need to explain hell stairs with a dedicated line type 06:55:20 and perhaps compressing the display a little would help, so rather than drawing a box per level, just draw one box per branch and label the level ranges for applicable stairs on the connecting line 06:55:52 the abyss stuff is a nice touch 06:57:42 -!- Blazinghand has quit [Quit: This computer has gone to sleep] 06:58:10 -!- Blazinghand has joined ##crawl-dev 06:59:54 -!- Blazinghand has quit [Client Quit] 07:00:02 -!- omarax has quit [Remote host closed the connection] 07:00:58 -!- Blazinghand has joined ##crawl-dev 07:08:41 -!- Blazinghand has quit [Quit: This computer has gone to sleep] 07:16:39 -!- bitcoinbastard has quit [Ping timeout: 264 seconds] 07:16:40 -!- stickyfingers has quit [Quit: Page closed] 07:58:02 -!- Kellhus has quit [Ping timeout: 264 seconds] 08:00:03 -!- omarax has quit [Remote host closed the connection] 08:05:54 -!- PsyMar has quit [Ping timeout: 250 seconds] 08:12:35 -!- protopulse_ has joined ##crawl-dev 08:21:05 -!- elliptic has quit [Quit: Leaving] 08:22:51 -!- elliptic has joined ##crawl-dev 08:29:50 -!- stickyfingers has quit [Ping timeout: 264 seconds] 08:51:34 -!- debo_ has joined ##crawl-dev 08:57:42 -!- scummos__ has quit [Remote host closed the connection] 09:00:02 -!- omarax has quit [Remote host closed the connection] 09:05:14 -!- protopulse_ has quit [Ping timeout: 264 seconds] 09:09:32 -!- kdrnic has joined ##crawl-dev 09:15:10 -!- scummos| has quit [Ping timeout: 252 seconds] 09:15:45 -!- TuxQmooob has quit [Ping timeout: 276 seconds] 09:18:15 -!- PsyMar has quit [Ping timeout: 250 seconds] 09:26:18 -!- HarryHood has quit [Remote host closed the connection] 09:36:27 -!- Patashu has quit [Ping timeout: 264 seconds] 09:38:59 -!- TuxQmob has quit [Ping timeout: 260 seconds] 09:41:29 -!- Lasty1 has joined ##crawl-dev 09:41:45 -!- Lasty has quit [Ping timeout: 276 seconds] 09:42:20 -!- jefus- has joined ##crawl-dev 09:45:58 -!- jeefus has quit [Ping timeout: 252 seconds] 09:52:38 -!- Lasty1 is now known as Lasty 09:54:27 -!- protopulse_ has joined ##crawl-dev 09:54:36 !source artefact.cc:526 09:54:36 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L526 09:55:01 hmm i guess line numbers work properly on vim too 10:00:01 -!- omarax has quit [Remote host closed the connection] 10:00:55 -!- debo_ has quit [Ping timeout: 255 seconds] 10:01:54 -!- TMTurtle has quit [Ping timeout: 276 seconds] 10:05:28 -!- TuxQmob has quit [Ping timeout: 250 seconds] 10:07:45 -!- zxc has joined ##crawl-dev 10:10:01 -!- xnavy has quit [Read error: Connection reset by peer] 10:10:01 -!- Kenran has quit [Read error: Connection reset by peer] 10:14:29 -!- elliptic has quit [Quit: Leaving] 10:16:18 -!- elliptic has joined ##crawl-dev 10:29:40 -!- ScarCow has quit [Quit: leaving] 10:32:10 -!- scummos| has quit [Ping timeout: 265 seconds] 10:36:03 -!- PleasingFungus has joined ##crawl-dev 10:39:10 -!- Patashu has joined ##crawl-dev 10:42:42 -!- amalloy_ is now known as amalloy 10:43:18 hey, is it possible to run a single line of code on vim? 10:43:39 im trying do :! but its not exactly doing what i want... 10:44:30 binomial(7, 30) has me stumped. i think it must be a crawl only function and defined somewhere on one of the # files. 10:44:54 usually with binomial distribution you want to enter 2 parameters, n and p, but 30 is not a probability 10:45:08 it is a crawl function, yes 10:45:08 PleasingFungus: You have 1 message. Use !messages to read it. 10:45:17 !source binomial 10:45:17 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/random.cc#L258 10:45:49 no wonder i couldnt find anything on it 10:45:52 was looking forever 10:46:20 anyways can i run like one line of code on vim? 10:46:26 i just want to see what it outputs 10:46:38 no 10:46:48 c++ isn't python or lisp 10:47:03 can i...compile one single file? 10:47:06 nope 10:47:11 and then put like a printf sort of command? 10:47:17 how do people program in c++ then? 10:47:27 if they dont know if what they wrote will execute or not 10:47:34 like say i add in 100 new lines of code 10:47:36 then i try make 10:47:38 and it breaks 10:47:41 how will i know where it broke at? 10:47:48 <|amethyst> breaks how 10:47:55 <|amethyst> if it doesn't compile, you have an error message 10:48:06 it'll tell you where the error is at? 10:48:09 <|amethyst> otherwise, you can set a breakpoint and use a debugger 10:48:22 <|amethyst> yes, error messages from the compiler give you a file and line number 10:48:30 by compiler you mean just msys2 make function? 10:48:37 <|amethyst> the compiler is g++ 10:48:42 you aren't going to make your computer explode, so the best way to learn this sort of thing is to just break things and watch what happens 10:48:42 <|amethyst> which is called from our makefile 10:48:56 <|amethyst> btw, re typing single lines of code 10:48:58 <|amethyst> https://github.com/vgvassilev/cling 10:49:32 codepad could be useful for some things, but not e.g. binomial 10:50:28 so cling can execute code on the spot? 10:50:35 <|amethyst> yes, but 10:50:43 yea i tried something like codepad and found out it didnt run 10:50:46 because binomail wasn't defined 10:50:53 thats when i started suspecting it was a crawl-only function 10:51:14 https://www.codechef.com/ide was what i was using 10:51:20 <|amethyst> you'd probably have to paste in the definitions of binomial, x_chance_in_y, random2, most of pcg.cc 10:51:39 gotcha 10:52:02 <|amethyst> and probably other things I am forgetting 10:52:15 is there a program that can see how all the cc files are linked? 10:52:20 like say i right click on binomial 10:52:22 it tells me oh 10:52:29 its defined in so and so file over here 10:52:31 i think it was random.cc 10:52:39 !learn s branches[3 http://i.imgur.com/7yRZ8Pz.png (credit /u/SuperDuckQ) 10:52:39 branches[3/4]: http://i.imgur.com/7yRZ8Pz.png (credit /u/SuperDuckQ) 10:52:40 like a programming environment 10:52:40 <|amethyst> in vim? 10:52:45 or in vim yea 10:52:57 could use msvc.... :) 10:53:14 would you...recommend it? 10:53:30 just seems weird that i have all these files and they aren't linked 10:53:37 honestly your life might be a lot easier if you were using msvc (assuming it builds), since it'll actually give you warnings about bad code as you write it 10:53:41 well until you compile it anyways 10:53:45 which should be helpful wrt yr code anxieties 10:53:49 what do you mean by "linked" 10:54:02 like hmm 10:54:08 <|amethyst> with vim and such, ctags is what you want 10:54:16 library? 10:54:20 <|amethyst> you run ctags on your source code directory 10:54:40 <|amethyst> then in vim you press ctrl-] while on a function name to jump to its declaration or definition 10:54:43 like you have a little scrolly thing int he left 10:54:46 <|amethyst> :tn to cycle through other occurrences 10:54:46 and all of your files are there 10:54:49 and they talk to each other 10:54:52 haha 10:54:57 kids these days, spoiled by IDEs! 10:55:15 <|amethyst> what do you mean by "talk to each other"? 10:55:17 ctags.. 10:55:34 like what iw as saying before 10:55:34 i can right click something 10:55:34 and it tells me where its defined 10:55:36 if its not in the current cc file 10:56:04 <|amethyst> yeah, it sounds like ctags is the Unixy thing that you want 10:56:09 <|amethyst> but MSVC can do it as well 10:56:11 yea i can try ctags that sounds like what i want 10:56:18 or that 10:56:34 <|amethyst> also, you can edit with visual studio even if you don't compile with it 10:57:02 <|amethyst> intellisense really has no equal in the Unix world, at least for C++ 10:57:21 so install visual studio then? 10:57:32 im not unix 10:57:33 <|amethyst> IMO learn to do it the hard way 10:57:35 on* 10:57:43 <|amethyst> msys2 is close enough to Unix :) 10:57:49 kk 10:57:49 what is considered the hard way? 10:57:55 just using vim and ctags? 10:58:00 <|amethyst> ctags and an editor probably 10:58:14 and yea pleasingfungus, i mostly programmed in matlab 10:58:22 everything was all nice and tidy 10:58:28 a little spoiled 10:58:36 matlab........ 10:58:47 <|amethyst> matlab is an interesting language 10:58:48 my condolences for yr mats 10:58:58 yr mats? 10:59:51 but yea, a lot of the time i look at the code and i don't trust that i understand it properly 10:59:57 <|amethyst> PleasingFungus: have you used matlab before? it's super-weird 11:00:02 -!- omarax has quit [Remote host closed the connection] 11:00:04 like max_properties = 4 + one_chance_in(20) + one_chance_in(40); 11:00:21 thats 3/40 chance of greater than 4 11:00:30 and certainly rarer than what ive personally experienced 11:00:41 so i feel like im missing part of the picture 11:00:53 what do u mean its super weird... 11:00:54 i like it 11:01:08 5/40* 11:01:11 1/8? 11:01:29 |amethyst: i have, though not heavily 11:01:39 <|amethyst> 859/1600 11:01:44 <|amethyst> err 11:01:56 protopulse_: some things use up multiple props, iirc? 11:01:59 <|amethyst> sorry 11:02:03 <|amethyst> 59/800 11:02:32 wait.. 11:02:38 59/800? 11:02:42 -!- Dracunos has joined ##crawl-dev 11:02:51 1/20+1/40 = 3/40 11:02:54 <|amethyst> (19/40) * (39/40) chance of both of those one_chance_in returning zero 11:02:55 i think i can math 11:03:09 <|amethyst> err 11:03:14 <|amethyst> (19/20) * (39/40) 11:03:35 wait.. 11:03:38 19 out of 20? 11:03:42 its 1 chance in 20 11:03:45 1/20 11:03:53 protopulse_: you're calculating the average number of extra props above 4 that a randart gets 11:03:54 <|amethyst> 1/20 chance of being true means a 19/20 chance of being false 11:03:55 1/20 chance of returning 1 11:04:04 protopulse_: |amethyst is calculating the odds of a randart NOT getting a fifth prop 11:04:11 right so its really really rare than it'll return a 1 11:04:15 meaning you'll never get over 4 properties 11:04:21 oh 11:04:32 yea ok 11:04:47 92% or so 11:04:48 both are 0 11:05:10 -!- PsyMar has quit [Ping timeout: 252 seconds] 11:05:23 <|amethyst> yeah, 1/20 + 1/40 is a reasonable approximation here, but 11:05:40 <|amethyst> one_chance_in(2) + one_chance_in(2) + one_chance_in(2) 11:05:59 <|amethyst> has a 7/8 chance of being > 0 11:06:10 <|amethyst> but 1/2 + 1/2 + 1/2 would say it has a 150% chance 11:06:52 oh i was looking at expected value 11:06:56 <|amethyst> yeah 11:07:08 which would be 4 + 1/40(1)+ 1/20(1) 11:07:16 but yea 11:08:20 <|amethyst> re that seeming lower than what actually happens, I would see if there is anything that adds properties and doesn't count againt max_properties 11:08:45 thats what i was thinking too 11:09:26 <|amethyst> also, something like rF++ only counts as one property here 11:09:59 <|amethyst> at least as far as the maximum number of properties goes 11:10:01 -!- scummos__ has quit [Remote host closed the connection] 11:10:06 <|amethyst> see the comment just above that line 11:10:31 !source artefact.cc:821 11:10:31 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L821 11:10:47 +twister was like two or three properties, iirc... 11:11:03 what is twister? 11:11:06 is that trunk only? 11:11:16 it was, like, 0.17 trunk only 11:11:18 i just compiled trunk this morning 11:11:20 o 11:11:29 rest in peace, twister.... 11:11:38 <|amethyst> ??twstr 11:11:38 twstr[1/2]: +Twstr. A property on some randarts that allows you to evoke the item to summon a hostile twister for a short time. 10 MP, chance of failure is 100 -4*Evo. 11:11:42 <|amethyst> ??twstr[2] 11:11:42 twister[1/2]: Free-flying {tornado}, fortunately confused and low power. Has 10000 HP, but you'll only ever encounter summoned twisters so you can just abjure it or run away and wait for it to time out. 11:12:27 <|amethyst> !learn edit twstr[1] s/randarts that allows/randarts once upon a time that allowed/ 11:12:27 twstr[1/2]: +Twstr. A property on some randarts once upon a time that allowed you to evoke the item to summon a hostile twister for a short time. 10 MP, chance of failure is 100 -4*Evo. 11:13:27 btw, in that binomial function you linked, it takes 3 arguments 11:13:29 err variables 11:13:38 but in the one in the artefact.cc it only gives 2? 11:13:47 int binomial(unsigned n_trials, unsigned trial_prob, unsigned scale) 11:13:57 <|amethyst> !source binomial 2 11:13:58 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/random.cc#L258 11:13:59 <|amethyst> !source binomial 3 11:14:00 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/random.cc#L258 11:14:01 <|amethyst> hmm 11:14:08 <|amethyst> anyway, look at random.h 11:14:16 <|amethyst> int binomial(unsigned n_trials, unsigned trial_prob, unsigned scale = 100); 11:14:38 hm 11:14:39 <|amethyst> in C++ you usually write default parameters in the declaration (in the header file) 11:14:41 i see it says default is 100 11:14:44 but i dont see where its defined 11:14:47 oh 11:14:49 .H 11:14:59 <|amethyst> the reason it works that way is 11:15:03 .h stands for header 11:15:06 -!- tigertrap has quit [Quit: Page closed] 11:15:10 .cc stands for code 11:15:14 <|amethyst> yeah 11:15:36 <|amethyst> If you had the default value in random.cc, then the compiler would only see it when compiling random.cc 11:15:56 <|amethyst> but in the header, the compiler sees it when compiling any file that does #include "random.h" 11:16:07 <|amethyst> which is (directly or indirectly) every file that would be using the function anyway 11:16:21 -!- MIC132 has joined ##crawl-dev 11:16:24 header files don't need to get compiled each time? 11:16:43 <|amethyst> they get copy-pasted into every file that #includes them 11:16:53 <|amethyst> so they get compiled over and over again 11:17:13 so if i really wanted to 11:17:15 <|amethyst> there are compiler options like "pre-compiled headers" that avoid that 11:17:18 .h and .cc files are interchangeable 11:17:20 -!- debo_ has joined ##crawl-dev 11:17:23 its just .h files are shorter 11:17:24 <|amethyst> no, because 11:17:48 <|amethyst> if you define something in a header file, like a function 11:18:09 <|amethyst> then it will be compiled each time that header is used 11:18:37 ".h and .cc files are interchangeable" is right, ".h files are shorter" is wrong 11:18:53 <|amethyst> if that's a regular function (not a template and not inline), that means the linker (which takes all the compiler outputs and combines them into one executable) would see two definitions of the same thing 11:18:57 <|amethyst> which isn't allowed 11:19:02 -!- cojito has quit [Ping timeout: 264 seconds] 11:19:41 so ideally...you wouldn't put functions into .h files then 11:19:44 and only put stuff like 11:19:45 <|amethyst> right 11:19:48 default values of things 11:19:48 e.g 11:19:51 scale = 100 11:19:59 <|amethyst> not even that 11:19:59 so basically global variables 11:20:21 -!- Dingbatt has quit [Quit: Page closed] 11:20:21 <|amethyst> if it's a const, then a header is fine 11:20:48 <|amethyst> but if you have a global variable like int BestGlobal = 100; 11:21:14 <|amethyst> that line is a definition, and actually allocates space for the variable 11:21:14 oh right 11:21:28 .. 11:21:28 <|amethyst> meaning if you put it in a header, each source file would get its own variable, then the linker would complain 11:21:38 that just brought up terrible memories 11:21:38 <|amethyst> instead, what goes in the header is 11:21:39 -!- Greenflame has quit [Quit: Page closed] 11:21:43 <|amethyst> extern int BestGlobal; 11:21:45 of when i programmed in c and had to deal with memory allocation 11:22:09 <|amethyst> fortunately, in C++, you don't have to explicitly allocate memory anywhere near as often 11:22:24 yea 11:22:49 ok so 11:22:53 you define the constant 11:22:56 but you do not give it a value 11:22:57 in .h 11:23:18 <|amethyst> constants are fine 11:23:21 <|amethyst> for non-constants though 11:23:32 <|amethyst> you "declare" the variable in the header 11:23:38 <|amethyst> and "define" it in one source file 11:23:47 <|amethyst> whether you give it a value isn't what makes the distinction 11:24:01 <|amethyst> it's the "extern", which says "this is only a declaration, not a definition" 11:24:10 <|amethyst> "it's defined somewhere else, let the linker deal with that" 11:24:38 gotcha 11:24:44 <|amethyst> const is different because it doesn't change, so it doesn't matter whether there's one copy or many 11:25:06 oh you did say get its own variable 11:25:08 not constant 11:25:10 i mixed up the 2 11:25:47 <|amethyst> even with const 11:26:05 <|amethyst> in theory you get one copy of the constant for each source file 11:26:27 <|amethyst> *but* on a global, "const" implies "static", which means the linker doesn't even see it 11:26:36 <|amethyst> so there's no one to complain about the multiple copies 11:26:58 you still have to declare static constant though? 11:27:01 <|amethyst> in practice, linkers might or might not eliminate the duplicates in that case 11:27:04 <|amethyst> you don't 11:27:08 really? why does const imply static on a global? 11:27:22 <|amethyst> amalloy: so that you can define constants in headers 11:27:40 hm, i see 11:28:33 btw difference betwen emplace_back and push_back? 11:28:38 or is that pretty arbitrary? 11:28:51 <|amethyst> protopulse_: on a vector : 11:28:58 <|amethyst> protopulse_: push_back takes a Widget 11:29:08 <|amethyst> protopulse_: emplace_back takes whatever Widget's constructor takes 11:29:30 <|amethyst> so avoids having to copy or move the Widget around in memory---it constructs it in-place 11:30:13 widgets are just vector members? 11:30:44 <|amethyst> was an example, but yes, vector means a vector whose elements are of type Widget 11:31:16 gotcha 11:31:29 <|amethyst> for something like vector, push_back vs emplace_back doesn't matter 11:32:27 -!- Tux[Qyou] has joined ##crawl-dev 11:32:46 i guess it would have to be a structure... 11:32:52 or something that deals with memory and pointers 11:32:53 <|amethyst> yeah, usually 11:32:53 to matter 11:33:20 whew you weren't kidding 11:33:23 if i want to compile code 11:33:31 i need to copy like the entire random.cc over 11:33:42 i thought i could just pick a few select ones and it would run 11:33:47 <|amethyst> and pcg.h and pcg.cc, which it uses 11:33:48 everything references something else 11:34:30 return _random2(max, RNG_GAMEPLAY); 11:34:36 i guess rng_gameplay is from there 11:35:05 <|amethyst> actually, that is in enum.h, which you probably don't want to pull in entirely because it's huge 11:35:10 <|amethyst> RNG_GAMEPLAY is 11:35:10 <|amethyst> but 11:35:30 <|amethyst> uint32_t get_uint32(int generator) 11:35:30 <|amethyst> { return rngs[generator].get_uint32(); 11:35:30 <|amethyst> } 11:35:38 <|amethyst> that's where it ends up being used 11:35:41 ^ which exists to support the UI RNG vs. the game RNG 11:35:43 <|amethyst> and rngs is 11:35:48 <|amethyst> static FixedVector rngs; 11:36:05 <|amethyst> so you'd also need FixedVector to get things going 11:36:19 * bh starts reading scrollback 11:36:26 <|amethyst> honestly, to test out things like this, you probably just want to do whatever in the source directly 11:37:20 <|amethyst> e.g. somewhere in main() add something that does what you want to test, prints the result, and exits 11:37:22 so with the ctags thing? 11:37:38 where is main()? 11:37:43 <|amethyst> I mean with regards to testing out what a single line of code would do 11:37:46 <|amethyst> in main.cc 11:37:55 so something like add a single line 11:37:57 then break? 11:38:39 wait but i'd have to execute make.. 11:38:43 each and every time 11:38:49 <|amethyst> yes, but 11:38:59 <|amethyst> make is smart enough not to recompile everything 11:39:14 alright 11:39:17 ill give it a try 11:39:20 <|amethyst> only the things that changed, and in the case of headers, things that #include those headers (directly or indirectly) 11:39:58 <|amethyst> so a change to main.cc would require Make only to recompile main.cc and maybe version.cc, and then to link 11:40:54 <|amethyst> unfortunately, the linker does have to re-link everything, not just that file 11:41:33 -!- Svalin has quit [Quit: Page closed] 11:44:31 <|amethyst> amalloy: btw, cppreference states that rule (internal linkage for consts) as "Any of the following names declared at namespace scope have internal linkage: [. . .] non-volatile [non-inline (since C++17)] const-qualified variables (including constexpr) that aren't declared extern and aren't previously declared to have external linkage." 11:46:07 -!- Implojin has joined ##crawl-dev 11:53:58 -!- Lasty has quit [Quit: Leaving.] 11:59:48 oh, cool 12:00:02 -!- omarax has quit [Remote host closed the connection] 12:00:43 pleasingfungus (L24 HEAE) ASSERT(col < MAX_TERM_COLOUR) in 'options.h' at line 614 failed. (Vaults:3) 12:00:50 headshot! 12:02:18 List Hep frail HP with mutations. 13https://crawl.develz.org/mantis/view.php?id=10667 by Implojin 12:03:54 <|amethyst> hm 12:04:08 03PleasingFungus02 07* 0.19-a0-1499-ga55bd9c: Warn for bad rcfile boolean options 10(21 minutes ago, 1 file, 26+ 7-) 13https://github.com/crawl/crawl/commit/a55bd9c2b4d1 12:04:08 03PleasingFungus02 07* 0.19-a0-1500-g0d7b9fc: Improve curses option error reporting 10(15 minutes ago, 1 file, 9+ 4-) 13https://github.com/crawl/crawl/commit/0d7b9fc7d5e0 12:04:08 03Implojin02 {PleasingFungus} 07* 0.19-a0-1501-g5362668: List Hep frail HP with mutations 10(21 minutes ago, 2 files, 6+ 0-) 13https://github.com/crawl/crawl/commit/5362668c93ae 12:04:13 |amethyst: ? 12:04:43 <|amethyst> maybe we should have a value for god_passive::rank that says "you get this passive if you're under penance even if you don't worship the god anymore" 12:04:58 we have two cases right now? 12:05:09 i'd wait until we get at least three... 12:05:11 yes that looked ugly but i was assured it was done for reasons 12:05:25 what looked ugly? 12:05:35 oh, the under penance thing 12:05:43 yeah... hm 12:05:56 <|amethyst> it's because there are a lot of positive things that you keep under penance, but lose on abandonment 12:06:11 -!- Blazinghand has joined ##crawl-dev 12:06:19 <|amethyst> e.g. Zin's rMut 12:07:10 <|amethyst> probably more of those than passives which apply to followers and apostate penitents 12:07:49 <|amethyst> s/probably/almost certainly/ 12:11:22 green seems like a weird colour choice for frailty 12:12:18 <|amethyst> maybe lightred, since that's what we use for Ru sacrifices? 12:12:45 i assume the green was because it's a hep colour? 12:12:53 red seemed bad because it was difficult to distinguish from negative muts that could be removed with !cmut 12:12:55 yes 12:13:02 -!- protopulse_ has quit [Ping timeout: 264 seconds] 12:13:11 lightgreen, lightblue, lightcyan 12:13:11 <|amethyst> we do use green for Jiyva muts 12:13:19 jiyva muts are usually good, tho 12:13:19 used green because it was used for beogh's waterwalk 12:13:32 not sure what the logic for the temporary (non-mutation) things being listed there really is, water walk is also a weird one to be listed there 12:13:33 although yes, it did seem a bit wrong for a negative 12:14:02 <|amethyst> MarvinPA: DUR_FIRE_SHIELD is there even 12:14:29 yeah true, that one seems the weirdest 12:14:36 MarvinPA: the logic that led me to apply the patch was "people kept getting confused by the frailty only being listed in ^" 12:14:53 maybe the players are the real problem... 12:15:04 solution: remove players 12:15:09 we're doing our best! 12:15:42 PleasingFungus: sure, i don't see that applying to the other things though really 12:15:56 yeah idk about those 12:16:01 could remove em and see who complains 12:16:36 <|amethyst> I think water walk falls under the same category as frailty though 12:16:47 <|amethyst> it otherwise would only show up on ^ 12:16:54 water walk gets an explicit message when you gain it at least 12:16:58 which frailty doesn't really 12:17:14 can't believe you people hate Flavour 12:17:28 <|amethyst> I like having passives on A 12:17:31 clearly the players hate Flavour too, otherwise they wouldn't be confused! 12:17:59 <|amethyst> IMO list all passives on A, maybe giving some a flag to prevent that 12:18:02 but yeah maybe having passives consistently on A would be reasonable 12:18:09 then i... hate the Players 12:18:21 <|amethyst> I think there isn't currently anything that uses the description thing 12:18:50 <|amethyst> and I only vaguely had an idea of how the string should be interpreted 12:20:26 <|amethyst> I think "GOD" is supposed to be replaced with your god name, and ones that start with a lowercase letter would be prefixed with either "You " or "You no longer " 12:21:01 <|amethyst> but not everything follows that 12:26:12 -!- MarvinPA has quit [Read error: Connection reset by peer] 12:30:03 -!- MarvinPA has joined ##crawl-dev 12:33:00 -!- DarkwingDuck has quit [Quit: Page closed] 12:44:47 -!- zxc has quit [Read error: Connection reset by peer] 12:45:36 -!- protopulse_ has joined ##crawl-dev 12:46:12 uh weird question, is it possible to un-make? 12:46:16 ??? 12:46:18 i accidentally used just regular make 12:46:24 instead of make TILES=y 12:46:32 then i ran make TILES=y after make finished 12:46:35 and it was giving me errors 12:47:00 -!- Dracunos-m has quit [Ping timeout: 276 seconds] 12:47:15 https://gyazo.com/6527ba4103d471e178914146945eac0c 12:48:20 and is there anything after make i can tack on to make it run faster? it goes through a lot of .o files and also through the tileset each time, a lot of which seems redundant 12:51:21 the srgb thing is known, afaik 12:51:21 -!- Jebus has quit [Quit: Page closed] 12:51:24 it does that for me too 12:51:38 are you using multiple threads to make right now? 12:52:56 like make TILES=y -j5? 12:52:57 ya 12:53:11 that's something 12:53:22 wrt unmaking, you can't unmake, but you can limit the impact by using ccache 12:53:24 i believe 12:54:48 just looked up ccache 12:54:55 and it seems like the solution to my other problem? 12:54:58 making make run faster? 12:57:58 -!- Dracunos7 has quit [Ping timeout: 250 seconds] 12:58:09 protopulse_: does msys have `nice`? you could try nice make -j8 12:58:41 "use up to 8 CPUs, but run at a low priority [so i can still browse the web in peace, or whatever]" 12:59:23 oh i dont have that many cores 12:59:27 ccache is mainly so you don't have to remake everything after switching branches or changing compile flags (TILES=Y) or w/e 12:59:28 ccache will speed up only things that are pretty rare IME, but of course you can try it and see 12:59:58 just tack ccache after the make? 13:00:03 -!- omarax has quit [Remote host closed the connection] 13:00:04 so like make TILES=y ccache? 13:00:11 none of those things 13:00:20 you need to install ccache 13:00:26 o 13:00:46 at which point it will stand "in front of" your compiler, caching stuff 13:00:58 -!- Lasty has joined ##crawl-dev 13:01:15 i might just hold off a bit, going to get a new machine soon 13:01:20 this one is actually 7 years old 13:01:39 it still works fine, quad core and all 13:01:45 ccache really helps if you are recompiling 13:01:49 but for compiling dcss, it took a surprising amount of time 13:04:27 -!- Lasty has quit [Client Quit] 13:09:09 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1501-g5362668 (34) 13:11:20 -!- mizu_no_oto has quit [Quit: Computer has gone to sleep.] 13:19:44 03PleasingFungus02 07* 0.19-a0-1502-gd9e467d: Remove the zombie HP colour option 10(55 minutes ago, 2 files, 2+ 4-) 13https://github.com/crawl/crawl/commit/d9e467d4bcd3 13:19:44 03PleasingFungus02 07* 0.19-a0-1503-g206c045: Refactor player hp/mp/stat colour options 10(3 minutes ago, 4 files, 113+ 139-) 13https://github.com/crawl/crawl/commit/206c0457c30d 13:19:57 -!- debo__ has joined ##crawl-dev 13:19:59 -!- debo___ has joined ##crawl-dev 13:22:59 -!- debo_ has quit [Ping timeout: 260 seconds] 13:23:11 -!- debo has quit [Ping timeout: 265 seconds] 13:25:58 Unstable branch on crawl.akrasiac.org updated to: 0.19-a0-1501-g5362668 (34) 13:26:44 woah what 13:26:47 that compiled instantly 13:26:52 idk why it took so long last time 13:28:49 -!- sysice has quit [Quit: Page closed] 13:32:04 -!- MIC132 has quit [Quit: Leaving] 13:35:53 hm 13:36:00 !source actor.cc:127 13:36:00 https://github.com/crawl/crawl/blob/master/crawl-ref/source/actor.cc#L127 13:37:06 %git 5ec915305 13:37:06 07ChrisOelmueller02 {Grunt} * 0.16-a0-972-g5ec9153: Convert most old-style MR multipliers to new specifiers 10(2 years, 6 months ago, 1 file, 414+ 417-) 13https://github.com/crawl/crawl/commit/5ec91530503a 13:37:25 i feel like ^ probably made that hack obsolete? 13:44:10 -!- dtsund has joined ##crawl-dev 13:47:10 :o 13:47:15 i brought rmut back 13:47:40 haha 13:47:44 ice 13:47:46 *nice 13:48:01 fair warning, it's weaker than it used to be... 13:48:13 ive never played before 0.18.1 13:48:17 so im not sure what to compare it to 13:48:23 %git 333d9320e68b31075a9bcf03844546c7b04a1274 13:48:23 07PleasingFungus02 * 0.18-a0-1515-g333d932: Simplify rMut 10(6 months ago, 1 file, 1+ 2-) 13https://github.com/crawl/crawl/commit/333d9320e68b 13:48:24 it's 66% protection right? 13:48:28 ya 13:48:30 used to be 90% 13:48:34 oh 13:48:41 when was the change? 13:48:42 0.18? 13:48:55 apparently! 13:49:07 someone told me once 0.13 was a really fun patch 13:49:21 well at least he was playing felid with nemelex 13:49:26 so i went to spectate 13:49:33 only a while later did i realize it wasnt a recent patch 13:49:40 might you know why that is? 13:50:00 ? 13:50:10 why he thought 0.13 was a special patch in particular? 13:51:00 03PleasingFungus02 07* 0.19-a0-1504-g818868b: Improve hex power debug messaging 10(35 seconds ago, 1 file, 3+ 2-) 13https://github.com/crawl/crawl/commit/818868bf92d2 13:51:06 oh, who knows 13:51:06 people are weird 13:51:17 heh 13:51:21 btw what does this line mean? 13:51:22 { "*Corrode", ARTP_VAL_BOOL, 25, // ARTP_CORRODE, nullptr, []() { return 1; }, 0, 0 }, 13:51:35 damn 13:51:36 lemme just 13:51:40 link it the right way 13:51:57 !source artefact.cc:708 13:51:58 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L708 13:52:14 i see the struct being defined elsewhere 13:52:27 so that line []() { return 1; } 13:52:41 should be referencing function gen_bad_value; 13:53:17 that's defining a function 13:53:36 oh 13:53:37 it's equivalent to saying "static int gen_bad_corrode_value() { return 1; }" 13:53:48 equivalish 13:54:00 er 13:54:04 so what would that mean? 13:54:12 ? 13:54:21 its the empty bracket empty parenthesis then return 1 with a empty semicolon that just looks so odd 13:54:33 like normally right, if im understanding this correctly 13:54:36 like if you look at slay 13:54:40 <|amethyst> it's a "lambda" 13:54:47 its using one of the random functions to generate a random slay value 13:54:49 one for good 13:54:51 one for bad 13:54:55 <|amethyst> a way of creating an anonymous function 13:55:12 anonymous = doesn't have a name 13:55:16 []() is lambda? 13:55:21 or that whole thing? 13:55:24 []() { ... } 13:55:27 [](){return 1;} 13:55:41 so just memorize that chunk of text? 13:55:45 :( 13:55:49 if you want to designate an anonymous function? 13:55:52 say no to rote memorization 13:55:57 <|amethyst> it looks like [captures](arguments) { function body } 13:56:03 hehe 13:56:22 so it creates an anonymous function 13:56:23 <|amethyst> if the body is longer than one statement, then in C++11 (but not C++14) you have to say [captures](arguments) -> returntype { function body } 13:56:44 which has been named function gen_bad_value; elsewhere 13:57:01 here the body is just return 1 13:57:02 right? 13:57:05 <|amethyst> yeah 13:57:14 im still a bit confused what it does though 13:57:16 <|amethyst> function is a template class that can hold any sort of thing you can call s a function 13:58:27 <|amethyst> when the game needs to generate a numeric value for a good artefact property 13:59:45 then it returns 1? 13:59:51 <|amethyst> it goes to the the artp_data array, looks up the artefact_prop_data struct there, and finds its gen_good_value function 14:00:00 <|amethyst> it calls that function, and uses whatever it returns as the value 14:00:03 -!- omarax has quit [Remote host closed the connection] 14:00:08 <|amethyst> so for this particular entry, returns 1 14:00:08 so here 14:00:10 for corrode 14:00:23 the gen_good_value is nul 14:00:24 -!- Poncheis has quit [Quit: ChatZilla 0.9.92 [Firefox 48.0.2/20160823121617]] 14:00:26 and gen_bad_value is 1 14:00:28 if called 14:00:31 so its just a boolean 14:00:42 for if corrode property is on or off 14:00:47 protopulse_: i feel like the question you want to ask is, "how are artefact properties stored and tracked?" 14:00:53 <|amethyst> not quite that 14:01:12 hm well that'd get into save files and all 14:01:46 <|amethyst> gen_good_value is nul. that means "don't ask me what numeric value to use for *Corrode as a good property" 14:01:59 <|amethyst> because *Corrode can't be used as a good property 14:02:02 yea 14:02:37 <|amethyst> if it's used as a bad value, then yeah, it will be 1, which is treated as true because this is ARTP_VAL_BOOL 14:02:56 oh right, there's 3 types 14:03:01 ARTP_VAL_ANY and ARTP_VAL_POS 14:03:03 -!- rossi has quit [Ping timeout: 276 seconds] 14:03:05 and ARTP_VAL_BOOL 14:03:48 <|amethyst> what I am not sure of 14:04:02 <|amethyst> is why these need a positive value while, say, rMut does not 14:04:14 rMut isn't actually generated 14:04:19 <|amethyst> oh 14:04:33 it's a decorative pseudo-prop, used for randart amulets of rmut (RIP) 14:04:46 <|amethyst> and the other nullptr bool ones aren't randomly generated 14:05:04 yea 14:05:09 the weight value for rMut is 0 14:05:12 which was what i messed with 14:05:14 to bring it back earlier 14:05:15 :) 14:05:17 <|amethyst> it would be nice to be able to initialise with an int rather than a lambda 14:06:30 and amethyst, the only one that actually needed a positive value was brand 14:06:32 for trivial cases? 14:06:38 <|amethyst> yeah 14:06:51 <|amethyst> which seem to be most of them 14:07:50 fungus, what did you mean earlier by that question btw? 14:08:08 arent they just stored in a vector? 14:08:23 then the vector gets saved into memory and eventually save file data? 14:08:26 What is stored in a vector? 14:08:37 artefact props 14:08:48 What is an artefact prop? It's not a string or an int. What is it? 14:08:58 ahh 14:09:04 lemme c 14:09:08 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1504-g818868b (34) 14:09:23 <|amethyst> this artefact_prop_data that you are looking at is not the prop itself 14:09:51 <|amethyst> it is a description of the Platonic idea of a particular property 14:10:19 alternately, you could think of it as a description of how properties are generated 14:10:33 hm 14:10:39 oh, though i guess it's used for names too 14:10:39 im actually not that far into the code yet 14:10:49 im just going down that function from where we left off yesterday 14:10:58 and it was referencing that function 14:11:11 i assume if i go further down i can find where the actual property is 14:11:20 <|amethyst> !source item_def::props 14:11:20 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/externs.h#L573 14:11:38 property names should be in a .h file or something elsewhere i think? 14:11:38 !source artefact.h:98 14:11:38 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.h#L98 14:11:44 -!- Kellhus has quit [Quit: Page closed] 14:11:49 <|amethyst> the identifiers are 14:11:55 <|amethyst> !source artefact_prop_type 14:11:56 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/enum.h#L4016 14:13:02 -!- Xenobreeder has quit [Ping timeout: 264 seconds] 14:13:12 right 14:13:26 -!- cojito has joined ##crawl-dev 14:13:35 so how back to that question...how are they stored and tracked 14:13:36 the key thing i was getting at is that artefact properties are stored as an array that lists out all possible artefact properties 14:13:43 does anyone here know if there has ever been work done on multiplayer crawl? 14:13:44 an artefact_properties_t 14:13:48 i know it has been discussed before 14:14:05 <|amethyst> there has not been to my knowledge 14:14:22 how would multiplayer crawl work? 14:14:30 everyone go down to D:10 then have a gauntlet? 14:14:34 or like speedrunning competition? 14:14:54 -!- Vall has quit [Quit: Leaving] 14:14:56 no, like the whole game as normal but both clients coordinate turns, so both players decide their next move before the turn is calculated 14:15:01 at least that is what i was thinking 14:15:03 <|amethyst> if you want actual multiplayer, then IMO starting from Crawl's source code is a mistake 14:15:17 <|amethyst> make a new game with theme and content taken from Crawl 14:15:18 so kinda like twitch plays? 14:15:40 protopulse_: no sorry, just normal but both players press their turn action before the turn is executed 14:15:59 that sounds pretty unbearable 14:16:03 no offense 14:16:04 yeah 14:16:06 i agree 14:16:18 just kind of brainstorming for how it could possible work 14:16:24 i think that's the most primitive solution 14:17:23 <|amethyst> there's a lot more to solve than that 14:17:31 <|amethyst> what do you do if the players are on different levels? 14:17:47 i mean its like chess right? 14:17:54 except both players move at the same time 14:17:57 have the same timer 14:17:58 chess usually does not take tens of thousands of turns 14:18:00 before they decide their move 14:18:05 just an analogy 14:18:09 not saying it would work well 14:18:15 but saying thats what the current idea would entail 14:18:23 speaking of artifact amulet props, is it intended that the amulet of vitality grants a higher regen rate than a plain amulet of regen? 14:18:26 so even if both players are on different levels 14:18:29 that wouldnt be an issue 14:18:33 yeah maybe just starting from the ground up and scraping crawl code would be better 14:18:43 i do love lots of things about crawl though 14:18:55 <|amethyst> protopulse_: different levels is a problem with the current codebase because everything assumes there is one level 14:18:58 i feel like you need to sit down and really think about what you actually want from a game 14:19:05 "multiplayer crawl" is not a game design 14:19:18 -!- PsyMar has quit [Ping timeout: 276 seconds] 14:19:32 <|amethyst> when you as much as look at another level (with X[ for example), it saves your current level and loads the new one on top of it 14:19:44 well thats an issue then i guess 14:20:07 yeah but abstracting away the technical difficulties with the current codebase 14:20:19 im thinking about what the game would look like or what mechanics it would use 14:20:31 <|amethyst> IMO realtime 2D MMO 14:20:36 and i'm not sure implojin...do you know who made the change? 14:20:40 <|amethyst> with Crawl flavour 14:20:53 <|amethyst> wasn't someone talking about doing that at some point? 14:20:54 Implojin: where are you getting that? 14:21:01 cojito: think about what sort of fun gameplay scenarios you want to create, and figure out how to build a game that can make those happen 14:21:32 "multiplayer crawl" is too high-level, too abstract 14:21:33 something i saw while looking at the props a while ago and decided to test ingame, let me see if i can find the code 14:21:36 hehe MMO with 2 players 14:21:59 well actually, nvm, might be more...would be a lot of rebalancing work 14:22:08 and no more narrow 1 square corridors 14:29:10 https://github.com/crawl/crawl/blob/master/crawl-ref/source/player.cc#L1094 14:30:30 as near as i can tell the amulet of regen is triggering both checks 14:30:34 excuse me 14:30:37 amulet of vitality 14:30:39 neat 14:30:52 hm 14:32:17 i mean, it sort of makes sense since its a fixedart and all, but 14:32:23 it doesn't *look* intended 14:32:59 -!- mizu_no_oto has quit [Quit: Computer has gone to sleep.] 14:33:13 it's not intended and not occurring 14:33:18 ? 14:33:23 i tested 14:33:27 i've just tested it 14:33:30 i did, also 14:33:32 what did you test? 14:34:41 xl 27 human, with nothing equipped, regen vs vitality, turns to typically regen 1hp counting how long it takes to skip a turn 14:34:48 in a current trunk build 14:35:00 i think the effect is more pronounced if you have higher base hp? 14:35:04 vitality gives you more hp 14:35:30 and regen rate depends on your hp, so there's that 14:35:38 (maxhp) 14:35:51 yeah 14:35:56 -!- theodb has quit [] 14:36:09 you.scan_artefacts(ARTP_REGENERATION) returns 0 with vit amulet on 14:47:34 -!- dtsund has quit [Remote host closed the connection] 14:58:38 -!- cojito has quit [Ping timeout: 264 seconds] 14:59:47 yeah sorry about that, i obviously didn't take the maxhp into account 15:00:02 -!- omarax has quit [Remote host closed the connection] 15:00:16 -!- Lasty has joined ##crawl-dev 15:05:01 hmm, there's exactly one weapon that can be wielded by halflings/kobolds but not spriggans apparently 15:05:26 which one? 15:05:29 i bet i know what the reason for it is, too! 15:05:34 ??triple crossbow 15:05:34 triple crossbow[1/3]: Like a crossbow, but three times as good! Base damage 22, base/mindelay 23/10. Historically known as a Chuangzi Nu. Not suitable for shaving. 15:05:41 !apt ko crossbows 15:05:41 Ko (SK_CROSSBOWS)=2! 15:06:02 lol 15:06:07 <_< 15:06:10 >_> 15:06:25 iirc minmay had/has strong opinions about that one 15:06:27 considering making it so spriggans and kobolds and halflings can all wield the same weapons 1 and 2 handed 15:06:38 to slightly cut down on the number of hidden types of handedness 15:06:45 however, crossbows will be removed in lasty's famous ranged reform anyway, so need to change anything now 15:09:24 functional changes would be: spriggans can triple crossbows at all, and morning/eveningstars, long swords, scimitars, demon blades/tridents, war axes, spears, greatslings one handed 15:10:32 also apparently if we ever had a SIZE_BIG race it could wield dire flails and great maces one-handed for some reason 15:10:38 spriggan buffs....! 15:10:45 i think that's specifically for ettins 15:10:48 @??ettin 15:10:48 ettin (07C) | Spd: 10 | HD: 12 | HP: 54-75 | AC/EV: 9/4 | Dam: 45, 45 | 10items, 10doors, two-weapon | Res: 06magic(40), 12drown | XP: 1123 | Sz: Giant | Int: human. 15:10:51 hm 15:10:59 something like that, anyway 15:11:10 @??two-headed ogre 15:11:10 two-headed ogre (04O) | Spd: 10 | HD: 6 | HP: 27-39 | AC/EV: 1/4 | Dam: 17, 13 | 10items, 10doors, two-weapon | Res: 06magic(40) | XP: 282 | Sz: Large | Int: human. 15:11:56 i had assumed monsters ignore all this 15:13:00 since we have eg spriggans that can wield spears and bucklers currently 15:13:36 i think they specifically cheat 15:13:43 in general monsters don't ignore this stuff 15:14:21 just doesn't come up that much, esp now that monsters can't pick up seen items 15:15:12 looks like none of the two-weaponing monsters are big enough for the dire flail/great mace thing to have any effect, at least 15:15:21 hrm 15:15:52 ettins are larger than size big 15:15:55 or rather, some of them specifically aren't 15:15:56 yeah 15:16:03 possibly that was my fuckup 15:16:23 %git fed8404d 15:16:23 07PleasingFungus02 * 0.15-a0-2050-gfed8404: Refactor item handedness code 10(2 years, 2 months ago, 5 files, 78+ 113-) 13https://github.com/crawl/crawl/commit/fed8404d2990 15:16:34 plus they can wield two giant clubs even, which don't have this special-case at all 15:16:42 they're always two-handed for any monster 15:17:02 i think: you can spawn a monster whatever? 15:17:04 *with 15:17:50 !source monster.cc:593 15:17:51 https://github.com/crawl/crawl/blob/master/crawl-ref/source/monster.cc#L593 15:18:05 you can spawn a monster with whatever, but they'll only pick up stuff they can actually wield based on size 15:18:23 -!- Klaymen has quit [Read error: Connection reset by peer] 15:18:28 "of course" 15:18:35 :) 15:19:18 i guess i will change all this for the player side anyway then, since it probably won't have a noticeable effect on monsters 15:19:26 there's also a very old bug involving centaur and naga monsters; they don't have the weird "different body size/torso size" thing that player versions of the race does, so they can wield giant clubs 15:19:53 nice 15:23:09 -!- destrovel has quit [Quit: Page closed] 15:32:46 -!- DarkwingDuck has quit [Quit: Page closed] 15:35:28 maybe the better way to implement this is just to remove all the size stuff from weapon_def entirely 15:35:33 -!- Brannock has joined ##crawl-dev 15:36:11 since it means everything is either "onehanded", "twohanded", or "onehandedbuttwohandedforsmallraces" 15:36:18 or "agiantclub" 15:36:26 those are good enum names right 15:36:36 <|amethyst> IMO call "onehandedbuttwohandedforsmallraces" "one handed" 15:36:44 <|amethyst> and "onehanded" "half-handed" 15:36:49 ! 15:36:53 hahah 15:37:01 bring back one-and-a-half handed, weapons, imo... 15:37:01 the triumphant return 15:37:04 <|amethyst> or hand-and-a-half and one-handed 15:38:11 <|amethyst> float weapon_hands; // should lie between 0.1 and 8, inclusive 15:38:37 <|amethyst> and potion of power juice 15:42:26 -!- Elynae has quit [Ping timeout: 264 seconds] 15:47:03 -!- Twinge has quit [Ping timeout: 276 seconds] 15:50:54 -!- Twinge has joined ##crawl-dev 15:55:11 _A - the +3 trident "Z" (weapon) {pain, +Fly Dex+4 SInv Stlth-} 15:55:18 getting lazy with the names here guys 15:55:34 -!- Twinge has quit [Ping timeout: 252 seconds] 15:56:15 -!- Twinge has joined ##crawl-dev 16:00:02 -!- omarax has quit [Remote host closed the connection] 16:02:16 <|amethyst> !source dat/database/rand_wpn.txt:1543 16:02:17 https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/database/rand_wpn.txt#L1543 16:02:33 ah ok 16:02:40 yeh, was just looking for that 16:02:51 why are they there? 16:02:54 pretty sure if random name gen had produced that it'd end up "Plog" 16:04:25 ... "Mud Pie of Death"? 16:05:26 Rast, that's _joke_weapon_name_ and some of them appear to be programmer jokes (including laziness of various kinds, see "String" earlier in the list!) 16:05:57 * geekosaur adds FIXME :p 16:06:22 Oh i had one that was like Longbow of Sipne 16:06:33 i thought it was a joke and meant to say snipe 16:06:36 except botched it up 16:12:21 magicalfaerieponies (L17 MfWz) ERROR in 'mon-movetarget.cc' at line 115: ZotDef: monster Snorg failed to pathfind to (39,26) (the Orb) (Zot (ZotDef)) 16:13:27 ! 16:15:37 MarvinPA: new bug comin up for ya 16:17:12 -!- Implojin has quit [Quit: Page closed] 16:18:09 -!- DrKe has quit [Ping timeout: 250 seconds] 16:18:52 geekosaur, i guess that makes sense 16:20:14 magicalfaerieponies (L17 MfWz) ERROR in 'mon-movetarget.cc' at line 115: ZotDef: monster ice statue failed to pathfind to (39,26) (the Orb) (Zot (ZotDef)) 16:20:26 magicalfaerieponies (L17 MfWz) ERROR in 'mon-movetarget.cc' at line 115: ZotDef: monster ice statue failed to pathfind to (39,26) (the Orb) (Zot (ZotDef)) 16:22:53 %git :/Bung 16:22:54 07bh02 * 0.12-a0-1478-g87fc9fb: Fix broken save compatibility 10(3 years, 9 months ago, 1 file, 7+ 3-) 13https://github.com/crawl/crawl/commit/87fc9fbeb746 16:24:53 -!- Kenran has quit [Quit: Leaving] 16:24:55 minmay: ugh. that guy 16:25:18 that commit doesn't seem to exist 16:26:40 <|amethyst> probably a removed branch 16:26:48 <|amethyst> which chei I think doesn't prune 16:27:07 -!- frogmouthbird has quit [Quit: Page closed] 16:27:19 neat 16:30:32 !gitgrep 2 Bung 16:30:33 %git HEAD^{/Bung}^^{/Bung} 16:30:33 Could not find commit HEAD^{/Bung}^^{/Bung} (git returned 128) 16:30:47 !gitgrep 10 Bung 16:30:47 %git HEAD^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung} 16:30:48 Could not find commit HEAD^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung}^^{/Bung} (git returned 128) 16:30:58 so, Bung, basically 16:37:16 mm i started looking into the thing amalloy mentioned about stepping from time while marked making every monster dash towards the top-left of the map 16:37:29 turns out pathfinding is terrifying and i give up forever imo 16:37:38 sounds about right 16:37:50 pathfinding/all of mon-behv.cc etc 16:38:06 agreed 16:38:29 03MarvinPA02 07* 0.19-a0-1505-g45a4586: Adjust some A screen messages 10(74 minutes ago, 1 file, 6+ 5-) 13https://github.com/crawl/crawl/commit/45a45866e560 16:38:29 03MarvinPA02 07* 0.19-a0-1506-ge972ad5: Simplify some size-based weapon handedness checks 10(73 minutes ago, 1 file, 51+ 51-) 13https://github.com/crawl/crawl/commit/e972ad551e97 16:38:29 03MarvinPA02 07* 0.19-a0-1507-g1f2beae: Fix a warning 10(20 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/1f2beae1140f 16:38:54 would it be totally crazy to change where the player goes while stepped from time? like instead of putting them at (0,0), make you.pos() to return random results or something 16:39:04 someday i will remember the static keyword 16:39:09 please do not add randomness... 16:39:25 put them at (-1,-1) and find the bugs by the core dumps >.> 16:39:32 pray i do not randomize it further 16:39:50 if there's a good way to make it work without putting you at 0,0 that'd be nice 16:40:31 (NaN,NaN) 16:40:41 (yes, I know...) 16:41:23 -!- dtsundere has joined ##crawl-dev 16:44:53 magicalfaerieponies (L18 MfWz) ERROR in 'mon-movetarget.cc' at line 115: ZotDef: monster ice statue failed to pathfind to (39,26) (the Orb) (Zot (ZotDef)) 16:51:19 -!- TAS-2012v has joined ##crawl-dev 16:52:00 -!- TAS_2012v has quit [Ping timeout: 265 seconds] 16:52:00 -!- TAS-2012v is now known as TAS_2012v 16:52:39 -!- ManMan has quit [Ping timeout: 264 seconds] 16:53:14 -!- dtsundere is now known as dtsund 16:59:11 -!- PsyMar has quit [Ping timeout: 244 seconds] 17:00:06 -!- omarax has quit [Remote host closed the connection] 17:02:22 <|amethyst> %git -SBung 17:03:22 07jpeg02 * bbefa2c38bdc: Outsource randart names. 10(9 years ago, 2 files, 1248+ 815-) 13https://github.com/crawl/crawl/commit/bbefa2c38bdc 17:04:01 seems to have predated that 17:05:15 -!- manman has quit [Ping timeout: 264 seconds] 17:05:22 <|amethyst> yeah 17:05:37 -!- Insomniak` has quit [Quit: I like to rock] 17:05:46 woah, -S? 17:06:36 <|amethyst> yeah, Chei takes what you gave it as a single word and passes it to git log 17:06:44 <|amethyst> s/word/argument/ 17:06:55 <|amethyst> so you can use an option as long as it's just an option 17:06:58 -!- debo__ has quit [Quit: orb spiders :(] 17:06:59 <|amethyst> man git-log for more about -S 17:07:49 <|amethyst> s/it's just an option/you don't try to pass a revision argument as well/ 17:08:23 -!- nicolae- has joined ##crawl-dev 17:08:43 -!- debo___ is now known as debo 17:09:04 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1507-g1f2beae (34) 17:09:39 good afternoon. when i pull and compile the latest build i get a compiler warning "actor.cc:141:15: warning: unused variable 'orig_power'" but it compiles fine, then when i run crawl it crashes. 17:10:25 oops 17:10:35 hm 17:10:38 no idea why it'd crash 17:10:39 <|amethyst> the warning is unrelated to the crash 17:10:42 i figured 17:10:48 <|amethyst> do you get a crash log? 17:11:01 where would i find those 17:11:11 <|amethyst> morgue/crash-*.txt 17:11:34 nope 17:11:47 <|amethyst> do you get any messages when it crashes? 17:11:47 it's not a crash when the game starts, it's a crash when the program starts 17:11:51 -!- Manman has quit [Ping timeout: 264 seconds] 17:11:54 -!- PleasingFungus has left ##crawl-dev 17:11:59 -!- PleasingFungus has joined ##crawl-dev 17:12:02 <|amethyst> if it's a GUI version, try starting it from the command line 17:12:02 what program? 17:12:07 crawl 17:12:23 i type crawl from the msysgit command line, and it crashes 17:12:29 this is new 17:12:32 <|amethyst> with no messages? 17:12:35 ...oh, by "the game starting", you mean it's crashing before you select a character? 17:12:40 PleasingFungus: yes 17:12:44 okay, that was really confusing 17:12:53 that was my bad 17:12:59 no messages on the command line 17:13:10 windows pops up a thing saying "crawl.exe has stopped working" 17:16:33 i'll make clean and recompile, maybe that'll do it 17:16:37 nicolae-: is this msys2, or the old msysgit setup? 17:16:55 ah, I see that compilation warning, although I doubt it's related to this issue 17:17:11 the same msysgit setup i've had for a while 17:17:16 but it worked just fine last night 17:17:22 -!- xormask has quit [Read error: Connection reset by peer] 17:17:31 ok, was wondering if you need to start crawl with the special thingie 17:17:38 but you don't need to use the special thingie 17:17:42 -!- xormask has joined ##crawl-dev 17:17:54 is anybody else having this problem or is it a local thing 17:18:00 I'll give it a try 17:18:09 what build was this, nicolae-; what make args? 17:19:01 make TILES=y, that's all 17:19:06 ok, so a tiles build 17:19:17 yes 17:21:04 -!- Tux[Qyou] has quit [Read error: Connection reset by peer] 17:22:33 yeah console build is working fine 17:22:43 hrm! 17:23:17 you might try upgrading to msys2 per INSTALL.txt sometime 17:23:46 but not really sure what could make your tiles builds start failing; I'm trying a tiles build now just to check 17:23:54 i should but then i would have to do "effort" 17:24:08 well you pay someone to do it for you 17:24:12 i just pulled the most recent version from git this morning and compiled it 17:24:14 my rates are very reasonable, for instance 17:24:14 runs fine on my end 17:24:25 so i dont think its the code 17:24:51 It's not THAT bad 17:24:52 tiles version btw 17:24:56 At least crawl is small 17:25:00 <|amethyst> nicolae-: maybe try a make clean first, in case some filestamps got messed up since the last build? 17:25:13 03PleasingFungus02 07* 0.19-a0-1508-g2ac1aae: Fix a warning (nicolae-) 10(30 seconds ago, 1 file, 3+ 4-) 13https://github.com/crawl/crawl/commit/2ac1aae562f5 17:25:18 oh yeah, sometimes weird things happen that way 17:25:18 Once you know how to do it 17:25:20 <|amethyst> s/filest/timest/ 17:25:34 make clean first can fix it, although I usually find compilation just fails when make clean would fix things 17:25:54 i did a make clean and recompiled, it finished recompiling just a minute ago and: fails 17:26:02 What's the difference between clean and -B? 17:26:09 yeah that's odd 17:26:15 i have no idea what could have changed 17:26:22 basically, your past vault making sins have lead your computer to become cursed 17:26:25 I guess I can read the makefile.. Unless clean is like a special make thing 17:26:33 possibly cursed by a ghost 17:27:42 Dracunos: clean is just a target in the make file 17:28:03 -!- manman has quit [Ping timeout: 264 seconds] 17:28:09 is there any way to force a git refresh, like redownload everything 17:28:13 that does what it says on the can, sadly the can also says "recompile rltiles because we don't know why" 17:28:54 nicolae-: well you don't really want to do things this way, but 17:28:56 git status 17:29:03 do you have any changes from master? 17:29:14 git diff origin/master should show no changes 17:29:16 just my settings file 17:29:32 yeah, so aside from make clean, recloning won't help 17:29:43 let's see if it's tiles 17:30:10 yeah just built tiles, also works for me 17:30:26 on linux, of course 17:30:29 hm 17:30:38 I guess no one is testing an actual windows system, not that there's a likely change their 17:30:49 *there 17:30:54 Didn't someone here just build it though? 17:30:58 yeah, i have no idea what's changed between yesterday and now 17:31:00 proto, on windows 17:31:08 yea 17:31:09 chequers: if you want to try something else, try "git checkout 206c0457c3^" and build that 17:31:10 i built it this morning 17:31:11 Although maybe not just this morning 17:31:13 Ah 17:31:20 nope i did it like 17:31:24 10 hours ago? 17:31:30 Yeah ,you can try just moving back a few commits and seeing if it helps? 17:31:31 alternately, a55bd9c2b^, i guess 17:31:36 Since it was just yesterday.. 17:31:42 this morning, before PF inserted the FungusSmash.exe windows virus into the source 17:32:22 I'll try an msys2 build just to be sure, and because I like pain 17:32:34 In a vm? 17:33:05 How deep can it get, a vm in a vm in a vm in a vm, alternating between linux and windows 17:33:19 PleasingFungus: ? 17:33:27 what's that a ? about 17:33:42 why do i want to try something else? 17:33:50 %git 206c0457c3^ 17:33:50 07PleasingFungus02 * 0.19-a0-1502-gd9e467d: Remove the zombie HP colour option 10(5 hours ago, 2 files, 2+ 4-) 13https://github.com/crawl/crawl/commit/d9e467d4bcd3 17:33:50 Because you're in a rut? 17:33:55 to see if it's a specific commit that caused the crash 17:34:13 i'm asking you to try compiling the commits right before the ones i'm suspicious of 17:34:16 * chequers reads scrollback 17:34:17 chequers is crashing too? 17:34:21 oh 17:34:22 oops 17:34:23 rofl 17:34:36 You need those color names thing 17:34:38 good, start up windows 10 and I know I'll get to wait 20 minutes for updates to complete, all is well 17:34:40 -!- olscumpy has quit [Ping timeout: 264 seconds] 17:34:40 i always confuse those two, probably because they have the same name 17:35:00 :) 17:35:06 nicolae-: do the thing i said a second ago (try compiling 206c0457c3^ and/or a55bd9c2b^) 17:35:06 Although chequers, nicolai, and I are all the same color on my screen 17:35:13 see! 17:35:16 Strangely.. after I just said that 17:35:24 you're all white on my screen 17:35:33 I don't see color... 17:35:33 This color name thingy needs to be fixed 17:35:33 irssi colored nicks? you two are green here 17:35:34 I demand more colors 17:35:36 PleasingFungus: how do i roll back to an earlier commit? 17:35:41 I'm using a mIRC script 17:35:41 git checkout a55bd9c2b^ 17:35:45 k 17:35:47 mIRC: best irc 17:36:08 git rollback 5-commits --HARD 17:36:08 hmm, why does DUR_VEHUMET_GIFT still exist 17:36:23 i guess it looks like it stops you getting gifts too quickly if you gain piety super fast 17:36:32 -!- robotcentaur has quit [Quit: Page closed] 17:36:39 vehumet gifts are still duration-based, no? 17:36:42 or is that just a prop 17:36:51 they have not been for a long time! 17:36:56 I see 17:37:04 %git 3ef23371e3369c 17:37:04 07elliptic02 * 0.12-a0-1766-g3ef2337: Switch Vehumet-gifted spells to use the memorization interface (elliott). 10(3 years, 8 months ago, 9 files, 43+ 67-) 13https://github.com/crawl/crawl/commit/3ef23371e336 17:37:30 neat 17:37:38 Vehumet won't offer you this gift forever... 17:37:53 vehumet gives gifts? 17:37:57 oh 17:37:59 spells 17:38:07 i guess it's probably good in sprints that you don't just skip past all your pre-5* gifts 17:38:30 so i will leave this be on the basis that it probably doesn't break anything 17:38:52 crawl code 17:39:01 yes :') 17:39:30 Refactor 17:39:34 There's no other option 17:39:47 -!- MemeProof has quit [Read error: Connection reset by peer] 17:40:41 -!- nikheizen has joined ##crawl-dev 17:40:41 See, this is why I hate abstraction.. If everything relies on everything else, then every time you make a change, you have to change lots and lots of code, which keeps it fresh 17:40:47 lmao 17:40:50 Then you don't run into these kinds of issues 17:45:27 the pakellas experiment altar vaults are neat 17:45:49 !blame gammafunk 17:45:49 I pronounce gammafunk... Guilty! 17:45:49 can we keep those even though pakellas is gone? 17:45:51 or whoever 17:45:57 No 17:46:02 pakellas will return in glory... 17:46:08 Pak will return 17:46:16 He will gift rods, once per piety star instead 17:46:25 rods :( 17:46:43 And an invocation that turns enemies into evocables 17:47:15 okay, if i roll back to 206c0457c3^ i can run fine 17:47:23 %git :/anubis 17:47:23 07MarvinPA02 * 0.19-a0-1264-gbc45de5: Merge anubis guards into ushabti (PleasingFungus) 10(13 days ago, 17 files, 26+ 72-) 13https://github.com/crawl/crawl/commit/bc45de5b2ef5 17:47:27 which, on the upside, rules out issues with my machine specifically 17:47:45 sweet, i knew it! 17:47:45 I'm trying a tiles compilation on msys2 17:47:56 %git 206c0457c3 17:47:56 07PleasingFungus02 * 0.19-a0-1503-g206c045: Refactor player hp/mp/stat colour options 10(5 hours ago, 4 files, 113+ 139-) 13https://github.com/crawl/crawl/commit/206c0457c30d 17:48:04 you could bisect but i'm pretty sure this is it 17:48:30 to check, should i git checkout that commit and try again? 17:48:33 or are you confident 17:48:43 that'd certainly be helpful 17:48:53 -!- elliptic has quit [Ping timeout: 240 seconds] 17:49:14 !source parse_colour_thresholds 17:49:15 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/game-options.cc#L171 17:49:25 it's gonna be crashing in one of these two die() lines, i expect 17:49:59 No TILE defined for 'amulet of invisibility' 17:50:04 is so weird, no idea what's causing that 17:50:09 marvinpa 17:50:12 hi 17:50:16 %git :/amulet of invis 17:50:16 07Lasty02 * 0.18-a0-1020-g47c2ea2: Replace the amulet of resist corrosion with the amulet of mana regeneration 10(8 months ago, 16 files, 75+ 26-) 13https://github.com/crawl/crawl/commit/47c2ea230e64 17:50:19 oh 17:50:20 marvinPLS 17:50:23 well i forget what the commit was called 17:50:26 %git d715d3d868071e9c9d92b0173cc864951b648aab 17:50:26 07MarvinPA02 * 0.19-a0-1192-gd715d3d: Change Fedhas sprint's cloak of invisibility to an amulet 10(3 weeks ago, 3 files, 11+ 1-) 13https://github.com/crawl/crawl/commit/d715d3d86807 17:50:30 but it added- yes 17:50:40 MarvinPA: that Anubis commit above clearly shows you moving tiles into UNUSED! 17:50:42 does checkout foo^ rewind to that commit or to the commit just before that commit 17:50:49 to add further evidence in the trail of MarvinPA 17:50:57 oops :( 17:50:57 i'm too set in my habits 17:50:57 *trial 17:51:04 trail kinda works 17:51:11 nicolae-: the ^ suffix means "parent commit" 17:51:23 !source util/art-data.pl:721 17:51:24 https://github.com/crawl/crawl/blob/master/crawl-ref/source/util/art-data.pl#L721 17:51:39 nicolae-: it's the commit before 17:51:42 amalloy: aha 17:52:00 so now i'm just doing git checkout 206c0457c with no ^ 17:52:04 ya 17:52:59 yep, crashes now 17:53:03 that's the one, then 17:53:16 sweet 17:53:33 hrm, some alarming warnings when building sdl-image 17:53:44 gammafunk: ? 17:53:50 -!- Elynae has quit [Quit: Page closed] 17:53:51 nicolae-: anyway, i don't know why that commit is broken. good luck 17:53:52 the contrib 17:53:58 i know 17:53:58 namely 17:54:02 In file included from IMG_png.c:595:0: 17:54:02 miniz.h:2436:48: warning: always_inline function might not be inlinable [-Wattributes] 17:54:02 PleasingFungus: :( 17:54:05 static MZ_FORCEINLINE void tdefl_record_match(tdefl_compressor *d, mz_uint match_len, mz_uint match_dist) 17:54:08 nicolae-: :P 17:54:14 (I actually don't know, though) 17:54:36 I've not tried to build these on linux, anyone else building contribs seen these? 17:54:40 actually, hm 17:54:47 can you try with a blank rcfile? 17:54:49 I don't recall seeing them before, but maybe they were always generated 17:55:13 what's rcfile called in local builds, is that just init.txt 17:55:22 ~/.crawlrc 17:55:22 ../settings/init.txt iirc 17:55:28 is the default 17:55:29 or ^ on windows 17:55:37 well that's teh repo 17:55:41 so it's all systems 17:55:47 that's relative to the source dir 17:56:05 nicolae-: you were saying you'd edited your settings file, right? 17:56:10 meaning if you want to force using the default rc, with -rc ../settings/init.txt 17:56:13 yeah but that's never caused problems before 17:56:21 options change, nicolae- 17:56:25 yes, but that commit changed the way that options are parsed 17:56:27 people change option-related code 17:56:28 ah 17:56:57 also save your current settings file 17:57:08 so i can see if i can reproduce your crash with it 17:58:07 what options were changed? i only have restart_after_save = true and default_manual_training = true and then a bunch of comments documentation 17:58:10 wonder if it's time to maybe update our sdl-related contribs 17:58:40 have you tried using the default rc? 17:58:54 i was about to ask, how can i pull the default 17:58:59 see what I put above 17:59:16 nicolae-: just literally replace it with a blank file 17:59:22 assuming you're compilingin source, use -rc ../settings/init.xt 17:59:24 the default is blank 17:59:29 which is the default rc, which is only comments 17:59:57 didn't he say the only change that showed up in git was his edits to the settings file? that implies he's editing ../settings/init.txt 18:00:01 the problem is that ../settings/init.txt is the one i modify 18:00:03 -!- omarax has quit [Remote host closed the connection] 18:00:06 boom! jackpot! 18:00:08 i'm great 18:00:19 don't modify the repo rc file 18:00:25 add a file in your home dir 18:00:39 I use ~/.crawl/init.txt 18:00:41 nicolae-: seriously, just replace it with a blank file, or run the game with ./crawl -rc fake_filename or something 18:01:14 PleasingFungus: i did replace ../settings/init.txt with a blank file, and then: crash 18:01:14 neat! 18:01:14 that's unfortunate 18:01:35 yes 18:01:50 can you put your settings file on pastebin or something, just so i can double check? 18:01:53 -!- sooheon has quit [Ping timeout: 244 seconds] 18:02:01 latest is sdl-image is 2.0.1, I bet that's what we already have 18:02:26 er 18:02:38 aha, 2.0.0 18:02:48 http://pastebin.com/Q5axx5vR 18:02:56 that shouldn't be too hard a project, hopefully it will also break things 18:03:38 oh, scary sdl-related warning now during compilation of tiledef-floor 18:05:18 yeah, it's not that. pity 18:05:31 hm 18:05:32 aha 18:05:34 is this going to be some weird thing where it expects the init to have a specific type of newline character 18:05:38 nicolae-: can you find your saves directory 18:05:39 I know what the error is 18:05:43 gammafunk: ? 18:05:46 because I'm incredible: 18:05:55 $ ./crawl.exe 18:05:55 ERROR in 'game-options.cc' at line 200: Bad hp_color: 'yellow' 18:06:21 same with default rc 18:06:21 well I only have default rc 18:06:23 in msys2 18:06:27 so yeah that's why it's dying 18:06:56 don't know why nicolae- isn't seeing this error from the terminal 18:07:06 yeah, that's weird 18:07:11 but that happens at startup with default rc of tiles build 18:07:18 is that only for compiling debug builds, maybe? 18:07:25 sorry? 18:07:29 this is not a debug build 18:07:32 hunh 18:07:36 weird 18:07:36 it's TILES=y only 18:07:42 I'm in msys2 18:07:46 yeah, i don't get that error message 18:07:54 i didnt have any issue with it though? 18:07:57 yours is old msys, but not sure why your msys term is different that way 18:08:09 protopulse_: what was your build, again? 18:08:15 ? 18:08:16 trunk? 18:08:19 msys 18:08:26 msys2 most recent one 18:08:28 msys2, TILES=y ? 18:08:32 and that's it? 18:08:33 yea 18:08:37 not sure 18:08:39 I'm in windows 10 18:08:43 i'll try compiling with TILES=y on mac in case that matters 18:08:46 windows 7 18:08:58 downgraded from 10 18:09:06 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1508-g2ac1aae (34) 18:09:30 well I guess I should try to see why that's happening, if no one else is looking at it 18:09:51 amalloy: linux tiles works fine...although I should try with default rc 18:10:22 yep just booted it up again 18:10:23 no issues 18:10:33 the only issue i did have was when i tried to transfer save files from 0.18.1 over 18:10:39 it loaded the first time but not on subsequent times 18:10:48 well, at least someone else is getting the same error 18:10:50 well it converts the save when you load it 18:11:02 it asked me 18:11:03 yea 18:11:05 and i said yes 18:11:15 but after that it would crash the game every time i tried to load from there 18:11:17 when you reloaded it, what version was it, turnk? 18:11:20 *trunk 18:11:21 yea 18:11:29 hrm, that's odd 18:11:39 i was using wizard mode if that matters 18:11:42 was debugging my code 18:12:33 -!- Harudoku has quit [Ping timeout: 240 seconds] 18:13:05 yep just tried it again 18:13:06 same issue 18:13:35 crawl tiles with default rc loads/runs fine 18:13:41 so it seems to be windows-specific, this problem 18:14:19 !source str_to_colour 18:14:20 1/2. https://github.com/crawl/crawl/blob/master/crawl-ref/source/colour.cc#L755 18:15:23 !source str_to_colour 2 18:15:23 2/2. https://github.com/crawl/crawl/blob/master/crawl-ref/source/rltiles/tool/tile_list_processor.cc#L186 18:15:25 Unstable branch on underhound.eu updated to: 0.19-a0-1508-g2ac1aae (34) 18:15:29 -!- Amnesiac has quit [Quit: Page closed] 18:17:11 local tiles with no rcfile also runs fine for me 18:17:18 seems to be windows specific 18:17:49 yeah I'm doing a debug-lite target so I can just run it through gdb 18:17:51 see what's happening 18:17:55 dying on line 200, sounds like? 18:18:11 I mean for the str_to_color 18:18:19 sure 18:18:28 i wonder why it'd be unable to parse 'yellow' 18:18:48 yes, that's very confusing 18:19:00 also bad how we hard-code that length of that color list 18:19:07 03amalloy02 07* 0.19-a0-1509-ge761a2a: Remove impossible assertion (suggested by clang) 10(15 seconds ago, 1 file, 0+ 1-) 13https://github.com/crawl/crawl/commit/e761a2a3119a 18:19:40 see? clang is bad, it suggested an impossible assertion 18:22:47 thanks, clang. thangs 18:23:31 -!- PleasingFungus has quit [Remote host closed the connection] 18:27:55 resistentialism (L9 DsCK) ASSERT(msidx < ARRAYSZ(mspell_list)) in 'mon-util.cc' at line 2514 failed. (D:6) 18:33:03 -!- zeia has quit [Ping timeout: 260 seconds] 18:33:03 -!- bencryption has quit [Ping timeout: 260 seconds] 18:35:10 -!- HellTiger has quit [Ping timeout: 260 seconds] 18:38:01 hmm so i implemented some thing where you can cast vehumet gifts for as long as they're on offer, or memorise them permanently 18:38:04 not sure whether it's actually a good idea or not, in that the messaging to get that across seems like it'd be a bit fiddly 18:38:05 -!- elliptic has joined ##crawl-dev 18:38:06 MarvinPA: what's the main thing you're hoping to solve with that change 18:38:06 veh gifts feeling useless? 18:38:06 -!- Netmonmatt has quit [Quit: Going offline, see ya! (www.adiirc.com)] 18:38:59 mainly something along the lines of encouraging trying out spells that you'd otherwise probably not want to spend the spell slots 18:38:59 on 18:38:59 yeah, it could be fun. I guess it doesn't really change the strategy behind "should I memorize this" too much 18:38:59 since there are probably a fair few offers that you wouldn't really want to spend permanent slots on, but might get some use out for a bit anyway (or might get convinced to actually memorise) 18:39:10 It'd kind of similar to just giving some free ?amnesia, I guess, but it's also not exactly that, since you effectively have more slots 18:39:43 it's not really the same as just giving the player a book of the spell, either 18:41:08 right, sort-of-extra-slots in return for not actually getting to keep hold of whatever spell 18:41:08 until max piety in which case it does kinda become just "extra slots" 18:41:08 ah, yeah 18:41:08 maybe for the final gift, you just have to memorize them? 18:41:08 i think if you let players cast the spells for a while they deserve some kind of warning that the spell is about to go away 18:41:10 I was also about to say that it will make more of a minigame of that, yeah 18:41:37 like if they've been enjoying casting it for a while and then it suddenly vanishes they'll be like "augh i meant to memorize it" 18:41:44 hm yeah, could just put the previous spell on a timer when your next gift arrives (with a message that it's starting to fade) 18:41:50 whereas currently, it's well known that the spell will vanish and you have to memorize it to get any use out of it, so players who want the spell memorize it right away 18:42:00 I'd say you'd deffo have to do something about that final gift set 18:42:29 it'd be weird to get free slots for like three L8-L9 spells 18:42:29 yes, don't give veh 27 extra spelll slots or whatever 18:42:29 -!- nicolae- has left ##crawl-dev 18:43:13 -!- bairyn has quit [Ping timeout: 260 seconds] 18:43:13 maybe each spell you're offered is castable up to 20 times before veh asks you to actually memorise it 18:44:21 that achieves the "try it out" mechanic without needing to distinguish between final and intermediate gifts 18:44:39 -!- bairyn_ has joined ##crawl-dev 18:44:39 i don't think making them into a resource you have to track would be an improvement, seems very fiddly 18:44:39 and final and intermediate gifts are already distinct anyway 18:44:39 that's fair 18:45:57 where is unrand_start defined? 18:46:20 !source artefact.cc:315 18:46:21 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L315 18:46:41 also assert_range? 18:46:53 !souerce UNRAND_START 18:46:54 er 18:46:57 !source UNRAND_START 18:46:58 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/art-enum.h#L19 18:47:02 oo 18:47:05 didnt know u could do taht 18:47:06 !source assert_range 18:47:07 Can't find assert_range. 18:47:13 404\ 18:47:15 !source ASSERT_RANGE 18:47:16 Can't find ASSERT_RANGE. 18:47:17 i just spotted a weird interface hiccup in my MiBe video: http://imgur.com/a/BtHQk - what the heck is that (9 doing there next to my health? 18:47:53 oh, generated file 18:47:56 right 18:48:34 ASSERT_RANGE is in debug.h 18:48:57 art-enum.h is generated as part of the crawl build which is why it can't be found on github 18:48:57 ok 18:49:25 all .h files are right 18:49:32 and .o files 18:49:33 not all of them, no 18:49:41 all .o files, yes 18:49:59 some .h files containing definitions that can be generated from other parts of the source 18:49:59 * This file is automatically generated. Do not edit this file directly; 18:49:59 * instead edit art-data.txt to modify unrandart data, or util/art-data.pl 18:50:15 gotcha 18:50:52 hmm not seeing art-enum.h... 18:50:53 -!- dtsund has quit [Remote host closed the connection] 18:51:08 oo 18:51:09 there it is 18:52:12 unrandstart=180 18:52:15 well that seems arbitrary 18:52:49 probably is, but with some reasons for it (for one thing, I expect changing it breaks save compatibility) 18:53:24 so if i understand this correctly, when the game looks for unrands 18:53:45 the unrands are placed as arbitrary values from 180 until ...70ish? 18:53:57 wait lemme see where art is generated 18:54:10 cause the line im looking at says return you.unique_items[art-unrand_start] 18:54:16 it seems that in windows, that static cols array is not getting initialized 18:55:53 -!- ontoclasm has quit [Quit: Leaving.] 18:58:06 !source num_unrands 18:58:06 Can't find num_unrands. 18:58:23 !source num_unrandarts 18:58:23 Can't find num_unrandarts. 18:59:23 oh 112 18:59:23 god these numbers are arbitrary 19:00:16 -!- omarax has quit [Remote host closed the connection] 19:05:24 ??die 19:05:24 I don't have a page labeled die in my learndb. Did you mean: de, dig, dis, due, ie, lie, pie. 19:05:24 ??pie? 19:05:24 pie? ~ pie[1/2]: A custard pie. Use it to blind enemies, or as a snack. 19:06:24 -!- Isvaffel has quit [Quit: Leaving] 19:07:00 ??warn_push 19:07:01 I don't have a page labeled warn_push in my learndb. 19:07:07 !source die 19:07:09 1/3. https://github.com/crawl/crawl/blob/master/crawl-ref/source/dbg-asrt.cc#L838 19:07:59 oh! 19:08:00 thats all assert_range does? 19:08:48 ._. 19:08:50 !eval 180+112 19:08:50 meh 19:08:50 292? 19:08:50 yeh 19:08:50 -!- xormask has quit [Read error: Connection reset by peer] 19:08:52 so assert_range boots you out of the game and gives you an error message 19:08:52 if your current art index is less than unrandart_start+1 or greater than unrand_last 19:10:50 -!- xormask has joined ##crawl-dev 19:10:50 where unrand_last is a dummy variable 19:10:50 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1509-ge761a2a (34) 19:10:50 it's a fencepost 19:10:50 I think 19:10:50 yea 19:10:50 the last line of art-enum.h 19:10:50 unranddummy2 19:10:50 unrandlast=unrand_dumm2 19:10:50 if something uses it, you know someone changed an enum somewhere they shouldn't have 19:11:53 -!- cait has quit [Ping timeout: 255 seconds] 19:13:40 uh newbie question 19:13:40 array elements start at 0 for c++ right? 19:13:40 so like array[0] = first element 19:13:40 yes 19:13:40 kk just making sure 19:13:40 so index goes from 111 to 292 19:14:47 |amethyst: do you know any reason why on windows cols at colour.cc:739 isn't getting initialized 19:14:47 it seems to be an array of empty strings 19:14:47 <|amethyst> when? 19:14:51 <|amethyst> is it during initialization of another global that you're seeing empty strings? 19:14:51 options.cc:200 19:15:12 <|amethyst> ? 19:15:14 <|amethyst> no such file 19:15:16 it's a call to str_to_colour 19:15:17 er 19:15:40 game-options.cc:200 19:15:45 during crawl initialization, it dies at that line 19:16:04 -!- knu_ has quit [Ping timeout: 260 seconds] 19:16:15 -!- tksquared has quit [Read error: Connection reset by peer] 19:16:38 ERROR in 'game-options.cc' at line 200: Bad hp_color: 'yellow' 19:16:48 <|amethyst> do you have a backtrace 19:16:51 yes 19:16:57 <|amethyst> I bet this is happening from static initialization 19:17:17 <|amethyst> https://isocpp.org/wiki/faq/ctors#static-init-order 19:18:21 still want a backtrace? doesn't look super informative 19:18:25 <|amethyst> yeah 19:18:27 -!- manman has quit [Ping timeout: 264 seconds] 19:19:02 http://dpaste.com/2N5N4WC 19:19:17 <|amethyst> yeah 19:19:20 #10 0x0000000000cbf7d9 in __do_global_ctors () 19:19:21 <|amethyst> __do_global_ctors 19:19:45 "don't do that" 19:19:52 what is that 19:20:30 <|amethyst> it's the libstdc++ function that calls the constructors for global variables at startup 19:20:34 <|amethyst> in an unspecified order 19:20:37 <|amethyst> that's what's going on here 19:22:56 gammafunk, instances of classes (like, here, string) can't be generated at compile time, they have to be generated at runtime. this is done by the global constructor for each source file, and you cannot specify what order those are run in 19:23:11 see the link |amethyst pasted earlier 19:23:17 ah, ok 19:24:06 (I mean, for initialized / static data like cols[]. it is populated with null objects until the file's global ctor runs) 19:26:55 -!- Kranix has quit [Quit: Konversation terminated!] 19:28:30 so we need to make a function like get_cols() that returns a ref to this (static within the function) array of strings? 19:30:14 !source unique_items 19:30:15 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/player.h#L222 19:34:32 !source MAX_unrands 19:34:33 Can't find MAX_unrands. 19:34:40 !source MAX_UNRANDARTS 19:34:41 Can't find MAX_UNRANDARTS. 19:35:51 <|amethyst> it's in defines.h 19:35:59 okay ty 19:36:01 <|amethyst> not sure why sequell doesn't see that 19:36:29 gammafunk, you need to not try to use it from another file's global initialization 19:36:50 another function won't help you 19:37:21 btw amethys 19:37:36 out of curiosity where is save data constructed? 19:37:45 well said function would have to be non-static, I guess 19:37:47 i once opened up the save file and saw it was all gibberish in a text editor 19:37:53 I'm just reading the example in said link 19:38:00 <|amethyst> protopulse_: tags.cc mostly 19:38:03 <|amethyst> protopulse_: and file.cc 19:38:10 any idea why its gibberish? 19:38:25 <|amethyst> because saving it as ASCII would result in much bigger files 19:38:28 because it is binary data 19:38:32 ohh ok 19:38:48 * geekosaur remembers how rogue did save files and shudders a bit 19:38:52 <|amethyst> it is compressed, in fact 19:39:04 is it possible to decompress and see its contents? 19:39:18 <|amethyst> yes, but they're still binary 19:39:29 unbinarinize it? 19:39:40 <|amethyst> no 19:39:47 <|amethyst> there is not 19:39:52 we don't have a handy save data viewer 19:39:59 at least one that isn't crawl.exe 19:40:04 was just wondering if it was possible 19:40:09 there is no magical "unbinarize" --- aside from reading it with the functions in file.cc and tags.cc 19:40:09 or how hard it was 19:40:33 well of course the save can be read, right? that's what crawl is doing 19:40:39 yea 19:40:40 well 19:40:40 <|amethyst> it is not is a self-documenting format like JSON or XML 19:40:44 crawl isnt human tho 19:40:49 its perfectly happy reading binary 19:40:52 <|amethyst> s/not is/not in/ 19:40:57 (ASN-1 :p ) 19:41:00 you're not making a lot of sense, protopulse_ 19:41:11 mm 19:41:20 where am i not? 19:41:20 if you're asking if it's possible to make a problem that takes binary saves and prints a summary, the answer is "es" 19:41:25 -!- scummos| has quit [Ping timeout: 255 seconds] 19:41:39 <|amethyst> but you'd need to duplicate a good chunk of tags.cc to do so 19:41:40 well 19:41:41 crawl is an example of program that is essentially doing this, at least in part 19:41:58 what i mean is 19:42:07 its more curiosity of what the save data would look like 19:42:14 if it was converted back into readable format 19:42:15 protopulse_, binary files do not have markers saying "what follows is an integer in binary format" "what follows this is a string" etc/ 19:42:27 im not altogether sure how save data works tbh 19:42:28 <|amethyst> unless they're ASN.1 :) 19:42:30 (well, ASN.1 does. ASN.1 is also impossible) 19:42:41 oh ok 19:42:46 (as in, there is maybe one implementation that isn't buggy) 19:42:48 and thats where the compression comes in? 19:43:01 <|amethyst> no, the compression is just there to make it smaller 19:43:10 no, it generates the original binary data and then it gzip-s the result so save files are compact-ish 19:43:12 <|amethyst> it's an extra layer that the code in tags.cc doesn't even see 19:43:15 but like its cutting out unnecessary bits right? 19:43:51 hmm so when someone makes a save file editor 19:43:57 its like making a copy of the game 19:44:05 that translates the binary back into readable version 19:44:13 <|amethyst> of a small part of the game, that part that knows how to read save files 19:44:19 yea 19:44:21 exactly 19:44:31 -!- zeia has quit [Ping timeout: 244 seconds] 19:44:35 so without the source code, its often very difficult to read save file data at all 19:44:37 there is actually limited save file editing built into crawl (note that using it will flag the result as a wizmode game) 19:44:38 <|amethyst> also, that program would have to change every time something in crawl changes that would affect saves 19:44:42 <|amethyst> e.g. a new item type 19:44:55 yea 19:45:02 oh i wasnt asking to make a save file editor for crawl 19:45:07 and considering it changes so often itd be a hefty task 19:45:12 was just wondering how much work it was to say 19:45:16 make one for diablo 2 19:45:18 without the source code 19:45:24 dpeends on their save format 19:45:25 since i dont think the code was ever made public 19:45:29 <|amethyst> ??wizmode_check 19:45:29 wizmode check[1/2]: sh + perl to check whether a save is wizmode: wizard() { crawl -edit-save "$1" get chr - | perl -e 'undef $/; exit !(unpack "CCl>cs>/a*s>/a*cccs>/a*cs>/a*c", <>)[-1]'; } 19:45:37 and, without source code, it'd be very difficult 19:45:47 gotcha 19:45:50 people can revere engineer save formats and have certainly done this for various games 19:45:53 but yeah it's non-trivial 19:46:05 *reverse 19:46:20 it would probably be possible but you'd have to black-box it (play games until you get some item, save each game at that point, look for the commonality in the save files) 19:46:29 i remember playing fire emblem a while back and wondering why a game that is fairly popular and has been out for so long 19:46:29 lacked a save game editor 19:46:29 people actually do this, yes, but it;s a lot of work 19:46:53 turns out that making software is hard work! 19:46:55 yea so like cheatengine, parse the memory 19:47:07 turns out *reverse-engineering* software is hard work 19:47:08 playing games is actually less hard than making them 19:47:14 >_> 19:47:19 turns out that *making software* is hard work 19:47:22 it's even worse than you say 19:47:47 well i never questioned that part 19:47:53 look at how buggy league of legends is 19:47:56 after however many yeras 19:48:16 you still get kills from across the map because the game can't handle network latency or z-axis very well 19:48:23 that or untargettability 19:49:28 -!- Kalir has quit [Changing host] 19:49:47 !source unique_items 19:49:48 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/player.h#L222 19:51:11 -!- Kuningaz45 is now known as Taraiph 19:51:18 !source unique_item_status_type 19:51:19 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/enum.h#L4796 19:51:43 whats this lost in abyss functionality? 19:51:47 i was skimming another file um 19:51:53 makeitem.cc i think 19:52:01 where it suggested that items just get pushed to abyss? 19:52:18 is this some elaborate workaround for something? 19:55:15 not makeitem.cc... 19:55:39 maybe abyss.cc 19:55:45 ive been going through like everything 19:55:53 cant remember where i read stuff anymore =.= 19:56:01 <|amethyst> it's used UNIQ_LOST_IN_ABYSS 19:56:12 yea 19:56:17 thats what just reminded me of it 19:56:26 oh. that would be an unrandart that was held by something that got abyssed and forgotten 19:56:32 <|amethyst> it's used for when unrands would be "destroyed" by being misplaced in the Abyss 19:56:46 oh 19:56:48 <|amethyst> either what geekosaur said, or because it spawned and then you walked far enough away for it to despawn 19:56:50 very rare set of circumstances then 19:57:06 but it wouldnt spawn in pan or abyss 19:57:11 unrands never do 19:57:15 and randarts arent unique 19:57:21 everywhere else int he game you can revisit 19:57:23 <|amethyst> you might drop an unrand in the abyss 19:57:29 ohh 19:57:53 so...are those unrands banished to the abyss considered lost forever? 19:58:00 <|amethyst> no, they can spawn in the abyss 19:58:05 <|amethyst> s/spawn/respawn/ 19:58:08 i guess say youre a lugonu follower, hit tiamat with an axe of distortion 19:58:15 -!- Taraiph has quit [Quit: To Be Continued...] 19:58:16 oh 19:58:16 neat 19:58:21 thats actually really cool 19:58:27 uniques are remembered when abyssed, iirc 19:58:59 but they dont spawn otherwise right? 19:59:02 in abyss or pan? 19:59:04 and, iirc, 50% of non-unique monsters also remembered --- if one of the other 50% could have an unrand equpped, it'd be gone 19:59:05 actually wait 19:59:10 menas spawns in pan... 19:59:15 not sure about others 19:59:19 <|amethyst> if (in_abyss && status != UNIQ_LOST_IN_ABYSS 19:59:19 <|amethyst> || !in_abyss && status != UNIQ_NOT_EXISTS) 19:59:19 <|amethyst> { 19:59:19 <|amethyst> continue; 19:59:19 <|amethyst> } 19:59:24 <|amethyst> in find_okay_unrandart 19:59:58 yea thats another place i saw it 20:00:02 -!- omarax has quit [Remote host closed the connection] 20:00:11 so, if the item was generated, and ended up in an unmapped part of the abyss, it can respawn in the abyss 20:00:16 <|amethyst> so, barring something special like a vault: in the abyss, only lost-in-abyss unrands can spawn; and out of the abyss, only never-spawned-yet unrands can spawn 20:01:09 makes sense 20:01:34 so if i want to turn off unrand generation altogether... 20:01:38 i was thinking originally 20:01:59 of just setting unique_item_status_type to 0 for every single value 20:01:59 not sure if there's a better way 20:02:00 -!- duralumin has quit [Read error: Connection reset by peer] 20:02:03 right now im thinking 20:02:06 replace continue with break? 20:02:15 <|amethyst> 0 is UNIQ_NOT_EXISTS 20:02:18 <|amethyst> that means it can spawn 20:02:20 oh 20:02:23 double negation 20:02:29 so 20:02:30 1 20:02:32 instead of 0 20:02:50 <|amethyst> could make find_okay_unrandart return -1 20:02:59 <|amethyst> as the only thing it does 20:03:05 <|amethyst> or remove calls to _try_make_item_unrand 20:03:27 oh that's true 20:03:34 ret = returned artifact index 20:03:43 would also need to edit vaults i imagine, guess there's no easy way to grep for vaults that place unrands now 20:03:45 if i just skip the for loop altogether 20:03:51 and put a return ret = -1 20:03:53 that should do the trick 20:04:04 you mean in the des files? 20:04:07 <|amethyst> yeah 20:04:14 <|amethyst> if you want to remove unrands altogether 20:04:14 would i have to? like say 20:04:22 if im using an acquirement scroll 20:04:22 <|amethyst> as opposed to removing just randomly-generated ones 20:04:23 and i get 20:04:28 glaive of the order or whatever its called 20:04:35 then that vault wont spawn with that unrand 20:04:38 im fairly certain 20:04:50 it'll replace it with just a branded randart or non-artefact weapon 20:05:11 either way lemme make the change and test it out 20:05:17 <|amethyst> but do you want Cerebov to spawn with a randart? 20:05:31 uhh 20:05:34 he uses it against u 20:05:39 taking it away from him would make him easier 20:05:41 which we dont want 20:05:43 so i guess thats ok 20:05:51 well 20:05:52 oh 20:05:53 <|amethyst> so just setting those to UNIQ_EXISTS won't work 20:05:57 <|amethyst> because that would prevent it 20:05:58 i could just make them not drop corpses? 20:06:21 <|amethyst> (non-summoned) monsters always drop their items when they die 20:06:30 <|amethyst> regardless of whether they drop a corpse 20:06:33 oh right 20:06:34 i forgot 20:06:43 wait so what you are saying is 20:06:53 if i make ret = -1 20:06:54 right here 20:07:07 cerebov will spawn without his typical unrand? 20:07:07 <|amethyst> I think that will only affect random generation 20:07:27 his staff isnt even that powerful is it? 20:07:57 <|amethyst> it's a sword 20:08:02 oh right 20:08:07 staff of dispater 20:08:10 sword of cerebov 20:08:15 -!- midn8 has quit [Ping timeout: 264 seconds] 20:08:21 i think ill let them keep it for the flavor 20:08:28 its the other vaults im more concerned about 20:08:29 tiamat 20:08:34 nikolai 20:08:38 um 20:08:40 glaive of the guard 20:08:48 which spawns on a nobody on vault 5 i believe? 20:09:09 so youre saying i would have to go to each des file individually and remove them? 20:09:16 because they are not affected by random unrand gen? 20:09:23 <|amethyst> yes 20:09:26 kk 20:09:29 that shouldnt be too hard 20:09:33 i think one of you guys linked a list yesterday 20:09:35 and i saved it somewhere 20:09:36 1 sec 20:09:41 <|amethyst> you'd want to do that anyway though, or it would be dead code 20:10:42 you mean it wouldnt compile? 20:10:50 <|amethyst> no, just 20:11:07 <|amethyst> if you did something (like setting you.unique_items[...] to UNIQ_EXISTS) to prevent unrands from spawning 20:11:54 <|amethyst> then for example 20:11:58 <|amethyst> : if you.unrands("glaive_of_the_guard") then 20:11:58 <|amethyst> ITEM: bardiche randart no_pickup 20:11:58 <|amethyst> : else 20:11:58 <|amethyst> ITEM: glaive_of_the_guard no_pickup 20:11:58 <|amethyst> : end 20:12:15 <|amethyst> that second branch would never be able to execute 20:12:20 what does no_pickup mean? 20:12:22 <|amethyst> so for cleanliness you'd probably want to trim it down 20:12:31 <|amethyst> monsters can't pick it up 20:12:36 <|amethyst> even before you see it 20:12:40 and it would still compile even though i disallowed the item to spawn? 20:12:44 ah ok 20:12:45 <|amethyst> yeah 20:12:49 hmm 20:12:53 <|amethyst> it would work, it would just be dirty :) 20:12:58 the best thing to do is just delete those 2 lines altogether? 20:13:25 <|amethyst> well, in this case probably remove the vault altogether 20:13:29 here it is 20:13:30 https://github.com/crawl/crawl/commit/7c57ab64502c 20:13:33 -!- WalkerBoh has joined ##crawl-dev 20:14:14 <|amethyst> all the *_guarded_unrand_* vaults 20:14:47 <|amethyst> but there are others too 20:14:56 <|amethyst> !source minmay_shoctagon 20:14:56 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/des/variable/float.des#L3194 20:15:17 is there a easy way to find them all? 20:15:27 -!- robotcentaur has quit [Ping timeout: 264 seconds] 20:15:37 <|amethyst> most of these have an if you.unrands() check, so you could search for that 20:16:03 but i'd have to go through all of the des files? 20:16:29 <|amethyst> mostly 20:16:36 <|amethyst> you might have some luck by looking through this 20:16:40 <|amethyst> %git c9f901ab99 20:16:40 07PleasingFungus02 * 0.19-a0-136-gc9f901a: Initial work on improving unrand syntax 10(4 months ago, 14 files, 111+ 94-) 13https://github.com/crawl/crawl/commit/c9f901ab99fc 20:17:13 <|amethyst> since that touched every vault that places an unrand (except for ones that were added since then, of course) 20:17:23 4 months ago 20:17:32 no new unrands were added 20:17:34 but maybe new vaults 20:17:59 |amethyst: so, for that static initialization thing, would a reasonable change be to simply make that static cols into a non-static (possibly renamed to colour_strings)? 20:18:04 <|amethyst> that commit with the minmay vaults 20:18:17 sounds good, gonna start working on it 20:18:18 <|amethyst> gammafunk: no, if it's global it's still statically initialized 20:18:22 ah 20:18:29 <|amethyst> gammafunk: static initialization doesn't have to do with the "static" keyword 20:18:34 gotcha 20:18:39 oh 20:18:40 before that 20:18:42 amethyst 20:18:43 -!- Blazinghand has quit [Quit: This computer has gone to sleep] 20:18:55 if i add 2 lines 20:19:00 wait just 1 20:19:03 I'm not sure of the best way to refactor that usage 20:19:34 i comment out that for loop, in find_okay_unrandart and then just add return ret after the line int ret = -1 20:19:36 <|amethyst> gammafunk: if it were only used in one of those functions you could make it local to the function (and static keyword) 20:19:37 the example in the above link would have me make a function with a static variable inside the function, and I return that variable as a ref through 20:19:44 right, but it's used by two 20:19:59 that should just remove all unrands, and i can try to place the minmay vault for example, and that should spawn without any unrands 20:20:02 even though theres still dead code 20:20:05 so i can test it that way right 20:20:06 <|amethyst> gammafunk: str_to_colour could be fixed easily enough 20:20:19 <|amethyst> gammafunk: if (str == colour_to_str(ret)) 20:20:25 hah, maybe you're right 20:20:40 -!- wheals has joined ##crawl-dev 20:20:43 !source artefact.cc:1324 20:20:43 https://github.com/crawl/crawl/blob/master/crawl-ref/source/artefact.cc#L1324 20:20:51 yeah that should have been my initial thought, even 20:20:56 but I'm bad at C++ 20:20:58 <|amethyst> also, I kind of think the array should be of const char *s rather than strings 20:21:22 <|amethyst> either way you've got to construct a new string on each call, since colour_to_string returns by value 20:21:34 ok, that won't change initialization, will it? 20:21:45 I can still use that initializer block the same way? 20:21:49 <|amethyst> yea 20:21:50 <|amethyst> h 20:22:14 as Norris would say: "sweet!" 20:22:54 -!- Kuningaz45 is now known as Taraiph 20:22:58 <|amethyst> also, I wonder if those two 16s should be MAX_TERM_COLOUR 20:23:01 -!- Taraiph has quit [Client Quit] 20:23:11 <|amethyst> also also, I wonder if MAX_TERM_COLOUR should be called NUM_TERM_COLOURS 20:23:42 <|amethyst> since it's not the maximum, that's WHITE 20:23:44 <|amethyst> (== 15) 20:24:17 <|amethyst> probably I'd define it as 20:24:53 <|amethyst> (inside the function) 20:24:55 <|amethyst> static const char * const cols[] = { "black", ... }; 20:25:25 <|amethyst> COMPILE_CHECK(ARRAYSZ(cols) == MAX_TERM_COLOUR); 20:26:12 <|amethyst> (and then rename MAX_TERM_COLOUR) 20:28:18 <|amethyst> hm... and maybe colour_to_str should just return a const char *, but that's a little more invasive because you'd have to rip out some .c_str()s in various other files 20:28:38 <|amethyst> but would be more efficient since you wouldn't have to copy the strings around as much 20:29:15 -!- midn8 has quit [Ping timeout: 264 seconds] 20:29:30 <|amethyst> particularly if you're going to be calling it from the loop in str_to_colour 20:30:32 <|amethyst> but all that's frippery; moving cols inside the function is the important part for correctness 20:31:39 -!- manman has quit [Ping timeout: 264 seconds] 20:32:50 ah 20:33:21 <|amethyst> btw, this all assumes we don't have global destructors calling colour_to_str 20:33:53 <|amethyst> if we do, then you need the version with the pointer https://isocpp.org/wiki/faq/ctors#construct-on-first-use-v2 20:36:21 we will find out if windows crawl crashes when I exit, I guess 20:38:35 I'll work on finishing this later this evening 20:40:39 -!- wales has quit [Ping timeout: 264 seconds] 20:41:51 -!- manman has quit [Ping timeout: 264 seconds] 20:42:38 is this about the bug nikolae encountered? 20:42:49 magicalfaerieponies (L17 MfIE) ERROR in 'mon-movetarget.cc' at line 115: ZotDef: monster iron dragon failed to pathfind to (39,43) (the Orb) (Zot (ZotDef)) 20:48:22 huh... 20:48:27 it didn't do it 20:48:30 ret = -1 20:48:44 but the hat of high council still spawned 20:52:30 seems like acquirements no longer produce unrands though 20:52:31 so thats good 20:59:35 -!- Ququman has quit [Read error: Connection reset by peer] 21:00:03 -!- omarax has quit [Remote host closed the connection] 21:02:51 -!- pikaro has quit [Ping timeout: 250 seconds] 21:11:47 -!- introsp3ctive has quit [Remote host closed the connection] 21:15:36 !source proprt 21:15:36 Can't find proprt. 21:19:39 -!- manman has quit [Ping timeout: 264 seconds] 21:24:43 can anyone tell me where armor enhancements is decided? 21:25:39 i know CrawlHashTable props has a field called plus, but im not sure how its used or where its called 21:37:30 -!- MarvinPA has quit [Quit: Leaving] 21:38:04 -!- Netmonmatt has quit [Ping timeout: 276 seconds] 21:38:13 -!- Yen is now known as Netmonmatt 21:42:18 -!- jeefus has joined ##crawl-dev 21:43:52 -!- adibis has quit [Ping timeout: 244 seconds] 21:43:55 -!- PleasingFungus has joined ##crawl-dev 21:44:08 |amethyst: did you figure out what caused that windows crash? 21:44:13 the yellow parsing issue 21:45:56 -!- jefus- has quit [Ping timeout: 252 seconds] 21:48:35 it was found, yes 21:48:55 -!- WalkerBoh has quit [Remote host closed the connection] 21:49:12 what should i ctrl-f for in the logs? 21:49:24 i skimmed them but it seemed like it was mostly about artefacts... 21:49:31 farther back than that 21:49:32 https://isocpp.org/wiki/faq/ctors#static-init-order 21:49:46 hrm 21:50:18 -!- cptnsalsa has quit [Client Quit] 21:51:24 basically, a global initializer in game-options.cc was relying on the global initializers in colour.cc having already run 21:51:56 -!- PsyMar has quit [Ping timeout: 255 seconds] 21:52:10 hrm 21:52:38 i'm pretty confused by that... 21:52:52 oh, actually, i bet i know what it is 21:53:05 it's whenever the Options object is initialized, probably 21:53:53 there's a static in colours.cc which is initialized with string objects. objects can't be pre-constructed the way non-object (say, C string literals) can, so they're empty until the global initializer for colour.cc runs the constructors to generate the string objects 21:54:55 and yes, the same thing happens for initializing the Options object. but you have no control over when global init for different source files happens, so neither one can depend on static objects from the other having already been constructed 21:56:17 would changing the colour.cc array into an array of const char* fix the problem? 21:56:51 I would expect so, since then it's C initialized data and should be actually part of the load image 21:56:53 that's one solution |amethyst proposed 21:56:57 without a runtime constructor step 21:57:32 it looks like gammafunk said he was going to fix it 21:57:42 yeh 21:58:18 treachery 22:00:00 although in poking through more recent scrollback I'm starting to think I should do it. not even a C++ programmer but I understand the basic issues >.> 22:00:02 -!- omarax has quit [Remote host closed the connection] 22:00:17 -!- bairyn_ is now known as bairyn 22:00:29 not even a C++ programmer 22:00:38 does anyone self-identify as a C++ programmer outside of job interviews 22:00:47 -!- bairyn is now known as Guest69125 22:01:30 it's not even idetification. I know enough C++ to be able to read code. 22:02:04 writing it, only to the extent that C is still present as a subset 22:03:38 03PleasingFungus02 07* 0.19-a0-1510-gb270f3f: Fix a static initialization order crash, possibly 10(3 minutes ago, 1 file, 1+ 1-) 13https://github.com/crawl/crawl/commit/b270f3fc4d4f 22:04:33 -!- Guest69125 has quit [Changing host] 22:04:33 -!- Guest69125 has joined ##crawl-dev 22:04:48 -!- PleasingFungus has quit [Quit: ChatZilla 0.9.92 [Firefox 48.0.1/20160817112116]] 22:08:17 are people mostly hobbyists? 22:10:00 what do you mean? 22:10:33 like 22:10:38 not programmers irl 22:11:16 for a living 22:13:30 -!- debo_ has joined ##crawl-dev 22:14:16 -!- debo has quit [Ping timeout: 264 seconds] 22:15:14 -!- debo_ is now known as debo 22:23:29 ah ok, yeah I had a patch to move it to a function as well, but I had to go do something 22:23:36 I'll just take the enum rename part 22:23:41 of said patch, and push that 22:26:00 hrm, that implicit cast to a string from char * is fine, in colour_to_str(), I guess? 22:28:52 "people" in general or what? 22:29:07 should be fine. just don't define an overload that takes any form of char * 22:29:12 (because == will not work) 22:29:27 (for str_to_colour that is) 22:30:22 03gammafunk02 07* 0.19-a0-1511-g16f215b: Rename an enum value and add an array compile check (|amethyst) 10(87 minutes ago, 7 files, 14+ 13-) 13https://github.com/crawl/crawl/commit/16f215bf8593 22:36:39 oh 22:36:45 i meant to type 22:36:47 people here 22:37:05 cause minmay was asking about whether they considered themselves C++ programmers 22:41:35 -!- travis-ci has joined ##crawl-dev 22:41:36 The build has errored. (master - b270f3f #6628 : Nicholas Feinberg): https://travis-ci.org/crawl/crawl/builds/159056874 22:41:36 -!- travis-ci has left ##crawl-dev 22:47:25 -!- Ideocl4st has quit [Client Quit] 22:52:42 -!- cojito has joined ##crawl-dev 22:56:09 -!- nicolae- has joined ##crawl-dev 22:58:21 eyy, i think i broke something 22:58:25 make function doesnt even work anymore 22:59:41 yesss the new commit fixes my problem 22:59:43 -!- Netmonmatt has quit [Quit: Going offline, see ya! (www.adiirc.com)] 22:59:50 gammafunk was working on it right? 23:00:04 -!- omarax has quit [Remote host closed the connection] 23:00:12 -!- ontoclasm has joined ##crawl-dev 23:00:13 i believe the commit is pleasingfungus' 23:00:20 oh o 23:00:27 it's fixed now, yeah, based on commits, discussions 23:00:31 luck, riches, fame 23:00:47 wait a sec 23:00:50 our long national nightmare is over 23:00:52 maybe ill try pulling the new version 23:00:57 was a bug that only manifested itself on some platforms 23:00:57 maybe thats why my thing isnt compiling 23:00:59 (i hope) 23:01:17 Excruciating wounds procs distortion unwield 13https://crawl.develz.org/mantis/view.php?id=10668 by Midn8 23:01:54 yeah i saw the commit, windows would choke and linux was fine 23:02:10 !tell PleasingFungus you fixed the crash bug! thank you. 23:02:11 nicolae-: OK, I'll let pleasingfungus know. 23:02:34 might even crash on linux sometimes; it'll depend on linker internal details, so conceivably binutils ld vs. gold could change behavior 23:04:55 yeah, linux wasn't truly fine, even 23:05:07 linux isn't fine, it's hot! 23:08:38 I'm not sure if msys2 is using ld gold or not, but linking on that platform is incredibly slow 23:09:02 Unstable branch on crawl.jorgrun.rocks updated to: 0.19-a0-1511-g16f215b (34) 23:09:04 based on what I recall reading from the makefile etc, it should be getting used 23:09:23 it is available as part of the binutils installed under msys2 23:09:39 takes like over 10 mins to link crawl 23:13:02 when you git pull, it replaces all of your files right? 23:13:10 so the files i edited are gone? 23:13:21 -!- ProzacElf has joined ##crawl-dev 23:13:39 i backed up half of them but not the other half, it's not a big deal if it's gone 23:13:41 just wondering 23:13:43 protopulse_: you have to work fairly hard with git to permanently erase anything you committed 23:14:00 what do you mean by committed? 23:14:05 what did you actually do. did you commit things? add them? how did you pull? 23:14:11 -!- Dracunos72 has quit [Read error: Connection reset by peer] 23:14:14 oh i just typed git pull 23:14:22 because there was a new version of trunk 23:14:26 git pull won't erase anything local 23:14:35 you can type git status if you want to see what's up 23:14:38 it doesn't replace the .cc files? 23:14:41 ok 23:14:53 after this finishes running i guess 23:14:59 running make again 23:15:29 git pull will update source files, but if it sees you have uncommited changes, it will abort with a warning 23:16:46 pretty sure i didnt get one 23:16:56 https://gyazo.com/4fb669f8261a23227c6dcc7f12407de3 23:17:03 dont recall getting a confirm message 23:17:22 that means none of your local changes overlapped with the changes upstream 23:17:34 if you type git status as i suggested, it should tell you you have uncommitted changes still 23:17:44 gotcha 23:17:48 ill try it afterwards ty 23:19:27 -!- DrKe has joined ##crawl-dev 23:20:52 hi devs 23:20:53 -!- Daekdroom has quit [Quit: Leaving] 23:21:11 hi 23:21:14 i'm not a dev but i am friendly 23:21:24 can you check something with me real quick? 23:21:33 just want a sanity check on this beogh bug i think i foudn 23:21:37 &watch . 23:21:38 http://crawl.berotato.org:8080/#watch-cojito 23:22:20 what's the bug? 23:22:27 "Your orc priest calls upon Beogh to heal the ice devil" 23:23:36 oh, huh 23:23:37 that is weird 23:23:42 it seems wrong 23:23:43 to me 23:23:56 i was thinking it might just be a text issue? 23:24:03 I think the orc priest healed me 23:24:06 it says "You feel much better." right afterwards, maybe the healing was directed at you but attributed to the wrong target? 23:24:12 yeah 23:24:17 that's what i think 23:25:09 -!- Dracunos-m has quit [Read error: Connection reset by peer] 23:25:14 well i don't see any existing bug for that on mantis 23:25:33 someone noticed that the other day, nobody around at the time 23:25:44 it has certainly been happening of late 23:25:52 okay, i can log it in mantis 23:26:09 i have no idea how the monspell database entries get used by the codebase 23:26:16 so i will just file a bug report for it 23:28:01 mm, right, I recall looking at this and not seeing anything offhand 23:35:26 -!- wheals has quit [Ping timeout: 255 seconds] 23:38:15 -!- cojito has quit [Ping timeout: 264 seconds] 23:40:54 -!- Tickenest has quit [Quit: Page closed] 23:44:25 -!- jehoesefat has quit [Read error: Connection reset by peer] 23:44:52 okay, time to make some more desolation of salt vaults. now, what kind of weird shops would they have there- 23:45:30 How's this for a shop title: Patch Rejected 23:45:45 now that's the kind of shop where I'd spend my money! 23:45:45 *falls to his knees and wails in despair* 23:45:59 Patch Rejected (all the clothes have holes in them) 23:48:02 -!- jeefus has quit [Ping timeout: 252 seconds] 23:48:03 !tell PleasingFungus two questions: does the desolation encompass vault still need O = permarock_wall in it and also why does the ruin_setup function have e.subst(".=,"), iirc subvault contents can't be modified by the ...supervault. whatever it's called. 23:48:04 nicolae-: OK, I'll let pleasingfungus know. 23:51:27 -!- jefus has joined ##crawl-dev 23:57:28 -!- sooheon has quit [Ping timeout: 264 seconds]