00:48 -!- Menche has quit [Quit: Leaving] 00:54 -!- Menche has joined #hardfought 00:55 -!- K2 has quit [Quit: Rico, smoke! *poof*] 00:56 -!- mode/Beholder_ [+Zi] by Beholder_ 00:56 -!- tolkien.freenode.net changed the topic on #hardfought to: Welcome to Hardfought - https://www.hardfought.org/ - public irc logs available on website ¤ Public NetHack server - ssh nethack@hardfought.org ¤ /dev/null/nethack tribute tournament hosted here starting midnight PST on Nov 1st - https://redd.it/7184xn 00:57 -!- K2 has joined #hardfought 00:57 -!- mode/#hardfought [+o K2] by ChanServ 00:57 -!- raisse has joined #hardfought 00:57 -!- mode/#hardfought [+v raisse] by ChanServ 00:58 -!- K2 has quit [Client Quit] 01:05 -!- mode/Beholder [+Zi] by Beholder 01:05 -!- tolkien.freenode.net changed the topic on #hardfought to: Welcome to Hardfought - https://www.hardfought.org/ - public irc logs available on website ¤ Public NetHack server - ssh nethack@hardfought.org ¤ /dev/null/nethack tribute tournament hosted here starting midnight PST on Nov 1st - https://redd.it/7184xn 01:05 -!- mode/#hardfought [+v Beholder] by ChanServ 01:05 -!- K2 has joined #hardfought 01:05 -!- mode/#hardfought [+o K2] by ChanServ 01:24 Tangles: new game 01:24 people, at least me, like to mess with it 01:26 jonadab: zapm ,like nethack, has a somewhat unique price category for the ID floppy disk 01:26 but if you don't find a computer (software engineers start with one), you can't use it regardless 01:28 !who 01:28 K2: Yuring [slex] 01:29 in general I almost always have more things I want to ID than I can, if I can at all 01:30 the one best off here is the software engineer role since 1, they start with floppies (which can be ID, but will at least ID some floppy disks for you), a computer (so they can actually use it) and can sense bugginess of items innately, meaning you don't have to ID armor at all except in edge cases 01:34 that said, the game is fairly short, if you can deal with BOFH (which isn't nearly as bad as Rodney, the NetHac equavilent) and the radiation in gamma caves you've probably won 01:34 especially if you can perform controlled teleporting and mapping, allowing you to skip most of the endgame 01:35 *NetHack 01:39 [slex] Yuring (Pok Dro Fem Neu), 2598 points, T:1924, killed by an icy touch 01:51 -!- LarienTelrunya has joined #hardfought 01:52 LarienTelrunya: mail daemon viruses doesn't contaminate, but rather, gives the same sick condition as the sewers, allbeit temporarily 01:52 morning FIQ! what does that condition do? 01:52 which stops natural HP and Cha recovery (Cha in zapm works somewhat similar to pw) for some time 01:53 but wasn't there some side effect of the sewers that kills you if you don't have an air filter or something? 01:53 yes.. the sickness condition 01:53 it doesn't kill directly 01:53 but makes it much more dangerous 01:53 since HP regeneration is frozen 01:53 I did it regardless in my winning game yesterday because I hadn't found a means of air filtering at that point 01:54 I had a tissue regenerator implant though so I still recovered some HP 01:54 ah, so it's not impossible 01:55 sewers was probably the hardest part for me that game 01:55 some monsters there can hurt you badly 01:56 you don't want that with bad HP regen :P 01:56 and I guess it's even worse with no HP regen at all? 01:57 hi 01:57 Hello bug_sniper, Welcome to #hardfought 01:57 so can you watch people play zapm? 01:58 yes 01:58 via dgl or hterm 01:58 can play via hterm also 02:34 I dunno how to say this... but I'm playing nethack from hospital again 02:36 what did you do 02:37 -!- elenmirie has quit [Ping timeout: 248 seconds] 02:37 my ankle wound hasn't healed properly and got infected 02:39 -!- raisse has quit [Ping timeout: 252 seconds] 02:39 how badly? 02:40 so I have had the pleasure of my wound being scraped clean and being hooked up to drip-feed antibiotics 02:41 lovely 02:41 not too bad, but infections of wounds like this have to be taken seriously (think gangrene, amputations) 02:43 -!- bug_sniper has left #hardfought 02:43 -!- bug_sniper has joined #hardfought 02:43 -!- bug_sniper has left #hardfought 02:43 -!- bug_sniper has joined #hardfought 02:57 actually, the scraping out the would bit made me feel for Jamie Lannister in the Game of Thrones (when the Meister cleans infection out of his arm-stump). Like my pain was maybe 0.5% of what he would have suffered 02:57 [slex] Yuring (Pok Dro Fem Neu) killed the Kisuke, on T:1095 03:00 could have used maggots 03:00 painless 03:08 [slex] Yuring (Pok Dro Fem Neu), 1688 points, T:1152, quit 03:10 Is Kisuke something need mention? 03:11 it's a boss monster; the bot mentions every time a boss is killed 03:15 -!- raisse has joined #hardfought 03:15 -!- mode/#hardfought [+v raisse] by ChanServ 03:25 -!- raisse has quit [Ping timeout: 248 seconds] 03:27 -!- raisse has joined #hardfought 03:27 -!- mode/#hardfought [+v raisse] by ChanServ 03:34 wear a green spell helmet and it autocurse 03:35 yeah, they do that; they also make the entire dungeon colored in a beautiful fleecy green, and casting a spell while having green spells will cause map amnesia 03:35 -!- firemonkey has quit [Read error: Connection reset by peer] 03:35 :( 03:40 -!- raisse has quit [Ping timeout: 248 seconds] 03:45 K2: I hope you never become my doctor 03:48 ;) 04:10 LarienTelrunya: I saw a grass cloak in last game. It's described making green monster become pet. 04:10 Any co 04:11 yeah, it does that; the specifics are that any green or bright green monster that is spawned while you wear the cloak has 2% chance of being a pet. 04:13 But green spell not make them real green, right? 04:13 no, green spell cloak only changes what they look like; for the grass cloak, foxes are e.g. still red and thus ineligible 04:45 Saw a tool shop that tools embedded in Wall 04:45 Have to kick them down 04:47 yeah, you can kick items in walls to move them to your feet; just make sure you don't accidentally kick the items out of the shop without paying or you'll anger the shopkeeper :) 04:51 -!- elenmirie has joined #hardfought 04:51 -!- mode/#hardfought [+v elenmirie] by ChanServ 06:06 back 06:06 "surgery" done 06:06 simple process, was just off for a few hours 06:07 huh, Grasshopper was in hospital too 06:07 allthough his thing seems far more critical 06:07 Grasshopper: hope everything gets osrted out 06:08 LarienTelrunya: in caves of qud, night vision makes everything green 06:08 it's horrible 06:09 well, slex's green spell effect looks fleecy IMHO, I don't know about Qud 06:11 well in slex' case it is an interface screw 06:11 how would you like the entire screen being green 06:11 as a normal "beneifical" effect 06:11 it's horrible :P 06:11 *beneficial 06:13 do you have a screenshot of that? 06:16 of caves of qud?`not really 06:26 FIQ, thanks 06:26 Looks like I'll be in hospital another 2 nights at least 06:29 There's a TV but everything is in Thai (yes I speak Thai but there's only so much Thai TV I can take). However, the view over the city through my window is A-maaaaaaaaa-zing 06:31 Luckily I have my Kindle so can read books on that 06:48 ok 06:49 heh 06:49 I remember as a kid before the benefit of handheld devices and such 06:49 if there was a tV in first place 06:50 it would be near the ceiling a very small thing impossible to see (vision impairment) 06:50 it was 06:50 booooooooooooring 06:50 during these times 06:54 i was just reading books 07:06 the idea was probably that if the TV is at the ceiling, it makes us of otherwise unused space 07:17 FIQ, I rarely watch TV much at all, even when it is in English 07:18 I'd be happy if I could use my laptop more (play NH!), but I can only manage sitting up for fairly short periods 07:18 and am meant to be horz in order to help my foot/ankle heal 07:19 -!- noty has quit [Quit: WeeChat 1.9] 07:19 what I need to invent is a bed-tray that can be angled to suit someone lying down 07:19 with something to stop your laptop or whatever falling off 08:26 -!- LarienTelrunya has quit [Quit: Page closed] 09:18 [4k] Zappi (philbo) (Wiz Elf Fem Cha) heard a rumor from The Oracle, on T:3507 09:22 [4k] Zappi (philbo) (Wiz Elf Fem Cha), 12993 points, T:3681, killed by a gray unicorn 09:27 -!- stennowork has quit [Quit: Leaving] 09:34 -!- rikersan has joined #hardfought 09:35 [dnh] rikerw (Pri Dro Mal Neu), 6796 points, T:3146, quit 09:38 [dnh] rikerw (Pri Dro Mal Neu), 32 points, T:378, killed by a water demon 09:49 [dnh] rikerw (Pri Dro Mal Neu), 3414 points, T:772, killed by an arrow 09:52 [nd] sluggoman (Wiz Hum Mal Neu), 372 points, T:933, killed by a gnome zombie 09:56 -!- rikersan has quit [Quit: Lost terminal] 10:06 [nd] sluggoman (Wiz Hum Mal Cha), 1025 points, T:1724, killed by a killer bee 10:16 -!- ais523 has joined #hardfought 10:25 [dnh] rikerw (Hdr-Pri Dro Mal Neu) entered Minetown for the first time, on T:1190 10:27 -!- rikersan has joined #hardfought 10:30 -!- ais523 has quit [Remote host closed the connection] 10:30 -!- ais523 has joined #hardfought 10:37 -!- rikersan has quit [Quit: Lost terminal] 10:55 -!- rikersan has joined #hardfought 11:01 -!- rikersan has quit [Quit: Lost terminal] 11:05 so, I just found out that killer_xname in 3.6 actually included a concession to devnull and other tournaments with unique deaths 11:06 it will hardcode your death to "choked on a deadly slime mold" regardless of fruitname 11:08 quite a few variants have unique deaths fixes like that 11:13 is it just assumed that tournaments are expected to filter out monster names for unique deaths? 11:14 aosdict: Tournaments don't necessarily _want_ to filter out monster names from unique deaths; although if they have slex in them, it becomes a bit of a pressing issue. 11:15 (Though slex itself has made changes to make that easier.) 11:15 Not monster names like "jackal", but stuff like "jackal called escaped (with the Amulet)". 11:16 ...actually, I don't think you can escape with the Amulet except in disgrace, but whatever. 11:16 I assume junethack at least will treat "killed by a little dog" and "killed by a little dog called Hachi" the same for unique deaths purposes. 11:17 -!- ais523 has quit [Quit: It seems most convenient to apologise for my connection in the quit message, given how often it comes up… If I immediately reconnect, it's probably because I could send but not receive.] 11:17 -!- ais523 has joined #hardfought 11:19 aosdict: Oh, that. 11:19 Yeah, those should be marked someway; NH4 puts them in quotation marks, IIRC. 11:22 I'm doing some analysis on NAO data, and the many deaths due to named items, named fruit, and named pets are quite annoying. 11:22 Hmm, there are two ascensions in less than 10 turns. Interesting 11:22 one is paxedtest 11:23 ais523: what do you think is a feasible number of turns greater than 2000 for which a legitimate ascension is possible? 11:23 since you're trying to find the smallest such number 11:23 aosdict: the other one overflowed the turn counter, I believe 11:23 -!- ais523 has quit [Remote host closed the connection] 11:23 -!- ais523 has joined #hardfought 11:23 it was really awkward as the game kept getting killed by paxed/dtype because they thought it was a stuck process 11:24 given that it was running at 100% CPU for a long period of time 11:24 yes, it's a negative turncount 11:24 ais523: there's a process that automatically does that 11:24 Was that on 32-bit, I hope? 11:25 jonadab: NAO is 32-bit, I think 11:25 brb 11:28 ais523: _still_? Interesting. 11:28 Hmm, maybe for save compatibility, I guess. 11:29 it might be a 32-bit VM? 11:29 Actually, yeah, as soon as I say it, that makes a lot of sense. 11:29 Because going to 64-bit would likely break save compat. 11:29 ais523: The VM moved not long ago, from Amazon US west-coast to Amazon US east-coast. 11:29 A year or so ago, I guess. 11:29 32-bit NetHack runs on 64-bit systems, though 11:30 you need to install 32-bit versions of its dependencies but apart from that it just works 11:30 And anyway, I doubt if Amazon _provides_ 32-bit only VMs. But the OS could be 32-bit, potentially. 11:30 I have a 32-bit NetHack build for TAS testing 11:30 Ah. 11:30 I thought for TAS you used the old DOS build of 343. Or are you going to do a 3.6 TAS? 11:31 OS is 64 bit, chroot is 32 bit libraries for nethack 11:31 Ah. 11:32 jonadab: the actual playback is on DOS, but DOS is a terrible platform for doing research on 11:32 so we have a Linux version of NetHack set up to act identically to the DOS version (except for some added cheat codes) 11:32 ais523: Wait, does the DOS version use the same RNG as the *nix version? 11:32 e.g. we replaced the RNG with the algorithm used on DOS 11:33 Ah, I see. 11:33 jonadab: and 343 is 32 bit, 360+ is 64 bit 11:33 on nao 11:33 Custom build. 11:33 dtype: Ah, that _does_ make sense. 11:33 and yes, for old compat 11:33 strangely enough, the RNG algorithm used by DJGPP also happens to be provided in the NetHack source as an alternative RNG algo for use on platforms with bad-quality RNGs 11:33 so all we needed to do to use it was to flip a #define 11:33 Interesting. 11:33 I think I've been told that before and forgot, because now that you say it, it sounds familiar. 11:33 jonadab: I think nao has had 343 save compat for a decade or some such 11:34 dtype: Right, since the move to 343, I believe. 11:34 dtype: this is why no #overview. 11:35 I just hadn't previously thought about the fact that that would necessitate still using a 32-bit build of it. 11:35 But yes, with the 3.x save system, it would. 11:46 I always thought of the 32 bit counters to be kind of part of the whole 343 experience. :) 11:51 NetHack is more internally consistent with 32-bit variables 11:51 mostly because it was set up as long=32 because it used to run on some int=16 platforms 11:51 in retrospect it should probably have used defines or typedefs for variable sizes 11:52 Hi 11:52 Hello FIQ, Welcome to #hardfought 11:53 I am increasingly of the opinion that C's char/short/int/long stuff is very badly designed; that int should exist because sometimes you just want whatever takes up one machine word on the platform you're on, but the others should not exist or should have specific numbers of bits in the spec. 11:54 Because yes, a lot of old software is using a particular one of those _in order to get a certain number of bits_. Which is bad and wrong. 11:54 talking about NH3's nonportable save compat reminds me of the hack bhaak had to go through 11:54 to keep save compat after a major server upgrade 11:54 So there should've been int, which is a machine word, and int8, int16, int32, int64. 11:54 and that was just for *changing the user id* 11:55 This was with Un? 11:55 allthough that wasn't quite the same thing 11:55 jonadab: bhaak made a server upgrade on un's server, the server has a ton of un versions kept around for save compat reasons 11:55 Sure. 11:55 and nethack has a check that you are running as the proper user id before it allows you to run the save 11:55 or it will delete it 11:55 Ah. 11:56 So he probably, for server purposes, wanted to just #ifdef that out. 11:56 and removing this check was not feasible with the amount of versions that was around, I'm not even sure if bhaak knew the exact commits 11:56 Ah. 11:56 so he resorted to hacking the check out of the binaries 11:56 The plot thickens. 11:56 Yeep. 11:57 on nao nethack is always just user #5. 11:57 games. :) 12:00 Heh. 12:00 I know for a fact that NH4 does not have this check, because people send me save files all the time so I can fix bugs. 12:01 So there should've been int, which is a machine word, and int8, int16, int32, int64. ← Rust works like that: isize, i8, i16, i32, i64 12:01 although isize is the size of one /pointer/ because "machine word" isn't always uniquely defined 12:01 Well, "all the time" meaning "a few times a year. Mostly in june. 12:01 (whereas the pointer size lets you know what, say, the maximum array index is) 12:01 ais523: Ok, that's not unreasonable. 12:02 I was also thinking register size, but it's conceivable that some platforms have more than one register size. i686, for instance, has I think three register sizes. 12:02 ais523: btw, one thing I don't understand 12:02 *why* does my save revisioning work? 12:02 jonadab: modern x86_64 has a huge number of registers of varying sizes 12:02 afaik, something I was only made aware of later, the game will sanity check a save at first by reloading, saving again, and reloading 12:03 this would obviously break if you make an "userspace" revisioning system 12:03 so why does it work? 12:03 In the case of x86, the largest available register size would obviously be the one you'd use, because the smaller ones are sub-registers that exist for backward compatibility. But a platform could exist with ... yeah, with that. 12:03 the largest general-purpose ones are 256 bits, I think? 12:03 FIQ: there's a maybe_old_version flag used in various parts of the save system 12:04 that's designed to allow for saves becoming slightly different from version to version (including different commits) 12:04 ahh 12:04 so this is flag used on initial load? 12:04 *so this flag is used on initial load 12:05 I can't remember the details and it's even possible they don't work 12:05 well I know at least one bug 12:05 when I tripped the internal version check, instead of erroring, the game segfaulted because it attempted to save a null gamestate 12:06 I mentioned this a while ago afaik 12:07 -!- stennowork has joined #hardfought 12:08 jonadab: do you think it would be reasonable 12:08 instead of books having "charges" 12:08 you can only read them once and they then disappear 12:08 but you get 3x the memory? 12:08 so you don't have to do spellbook micromanagement 12:08 I don't see how this micromanagement makes the game interesting, just annoying 12:09 FIQ: I would not, as a player, complain about that, on the _condition_ that spellbooks are common enough you don't need read-identified books as polyfodder. 12:09 well, both fh and 4k addresses this, allthough differently 12:09 4k spawns statues when trice are involved 12:09 Which you might be able to achieve by having monsters that get spells get the book slightly more often. 12:09 this makes books significantly more common 12:10 fiqhack spawns books on spellcasters 12:10 It only happens at level gen time, but yes. 12:10 from the spells they get generated with 12:10 I am not sure if Fourk's changes here are enough. 12:10 (meaning the later into the game you are, the more highlevel spells you'll get this way) 12:10 But FIQHack's should be, and if not, you can probably just adjust the monster-with-spell-also-gets-the-book probability slightly upward. 12:10 FIQ: the main positive effect of the whole spellbook charge thing is to cause there to be a tradeoff about whether you stash spellbooks or whether you polypile them 12:11 ais523: polypiling is a bug 12:11 er 12:11 this isn't a hugely large effect, so I can see wanting to change it 12:11 the way book polypile work, taht is 12:11 ais523: In practice, you stash ones you care about, like magic missile and identify, and polypile the other 95% which are worthless spells. 12:11 *that 12:11 there is a bug in book polypiling but this would apply even if the bug didn't exist, I think 12:11 if it takes 20k turns to un-learn a spellbook, one could require the player to just obtain a new spellbook after 20k turns 12:11 ais523: you read a spell book once 12:11 1 charge exhausted 12:11 now you poly it 12:12 1 charge exhausted 12:12 i like the: read once, book vanishes approach 12:12 now you read the new spell 12:12 and the book is now used up 12:12 and it can be poly'd as often as you like 12:12 would simplify things greatly 12:12 this isn't that major of a strategy I feel 12:12 stennowork: That makes read-identifying spellbooks extremely suboptimal. 12:12 (not @ stennowork but @ what I was going on) 12:13 jonadab, why? 12:13 stennowork: that's interesting, but I feel it would hurt people who play very long games 12:13 ais523: that is the thing 12:13 stennowork: Because most of them aren't the spells you want, so you'd want to poly them instead. 12:13 I don't want to do this 12:13 it could probably be fixed just by increasing spellbook drop chance, though 12:13 lets increase it to 30k turns? 12:13 so I wanted to just give them the 60k duration 12:13 (either the way FIQhack does it or simply by changing the deathdrop formula) 12:13 read-ID unknown spellbooks and having them vanish sounds fine for m 12:13 e 12:14 note that you'd have to increase the rate spellbooks drop over time, rather than the rate at which they generate with levels, as long games have more drops-over-time 12:14 Ultimately, I think I like FIQHack's solution to spellbook availability. It even manages to scale spell level with danger level. 12:14 Mostl. 12:14 the way fh does spellbooks with casters is one of my more successful balance changes I think 12:14 *Mostly. 12:14 I'm quite fond of it myself 12:14 but yeah 12:14 assuming it works like fiqhack 12:14 then I think ^ is a reasonable change 12:14 and removes tedium 12:15 i just rushed into the discussion here i have to admit v_v 12:15 i will read the backlog first 12:15 OK, my verdict on the change you mention is that it's a good change but only if combined with FIQhack's existing change to spellbook gen, or some other change with a similar effect 12:16 FIQ: I agree that making spellbooks read-once reduces tedium, if and only if enough spellbooks are available that the player doesn't feel compelled to polypile all the undesirable-spell ones. 12:16 (Before reading them.) 12:16 but balancing around read-ID only really makes sense for illiterate, and there reading spellbooks isn't an issue anyway 12:16 i think 12:17 um 12:17 illiterate users can't read books anyway :P 12:17 are you referring to some ID-less conduct rather 12:17 illiterate users don't have any _use_ for books, AFAIK. 12:17 yes. thats why i said that reading spellbooks isn't an issue anyway 12:18 hmm 12:18 i think the risk is fine for reading unIDed spellbooks 12:18 the risk that it would vanish 12:18 errr 12:18 in this case, the risk with reading an unIDed spellbook would be the risk that you could have better used the book for something else 12:18 atm I use 30000 as a magic number for "permanent knowledge" 12:18 the risk that you learn a useless spell and lose your book 12:19 this was clearly very poor forethought of me 12:19 this is similar to the risk with quaffing an unIDed potion that you've already dip-tested 12:19 (in fiqhack, if you are crowned, you get your role's bonus spell permanently) 12:19 stennowork: If you have a wand of polymorph, the risk of losing your chance at a much better spell would be significant, at least to me. 12:19 Especially if the books are rare. 12:19 Like in 3.x 12:19 you have to identify first before poly 12:19 if you have wands of poly 12:19 you can probably make ID scrolls 12:19 use them 12:19 would you poly price-IDed potions? 12:19 stennowork: yes, and that's tedious to do. 12:20 Unless you can cast ID. 12:20 hmm 12:20 Because you end up stashing all your books until you have 30 of them to hold at once while you read a blessed scroll of ID. 12:20 And price-identifying them to see which ones are _likely_ to be the ones you want, etc. 12:20 jonadab: the tradeoff there is not getting the spells until later 12:20 "I know I can poly all these 500+ zorkmid books because I don't care about those spells as a Valkyrie." 12:21 ais523: Yes, I know. 12:21 Which is why it's only relevant if the books are rare like in 3.x 12:21 ais523: btw, not sure if I pointed this out 12:21 If books are fairly common, the motivation to do that goes away. 12:21 but I fixed a bug a long time ago regarding menu page handling 12:21 you mentioned it, I think? 12:21 jonadab apparently thinks it's a *feature* 12:21 oh, you didn't mention that 12:21 do you consider it a bug or feature? 12:22 yes, because I suggested jonadab to port it yesterday because the issue was annoying me in 4k :P 12:22 I can't remember what it is now 12:22 basically 12:22 this 12:22 http://home.fiq.se/4k.png 12:22 FIQ: it wasn't me, it was octe, un.nethack.nu's admin. he wrote it up here: https://unnethack.wordpress.com/2014/09/15/saving-save-games/ 12:22 in fiqhack, instead of that ^ happening 12:22 the scroll will "snap" back up to show a full page 12:23 TL;DR: Patched 47 binaries to achieve backwards compatibility with old saves 12:23 there's also a real bug going on but thats a seperate issue that should be fixed regardless, off-by-1 error: http://home.fiq.se/4k2.png 12:23 (the former is what jonadab argues to be a feature) 12:23 what do you think? 12:23 bhaak: ah, I thought you made that post 12:23 it wasn't clear 12:23 sorry :) 12:23 FIQ: OK, so the main issue with snapping up is that you ideally want pgup and pgdn to be opposites 12:23 but yeah I was referring to that 12:24 and that's not the case after the fiqhack fix 12:24 you can press pgdn, then pgup, and end up somewhere else 12:24 the alternative would be a bit weird I feel 12:24 making pageup go back to the previous state, suddenly not scrolling a full page 12:24 also it means that if you're near the bottom and pgdn, you then find it hard to work out what text is new and what was already shown on the page 12:24 that annoys me when using file viewers, often 12:24 this is the exact thing jonadab brought up actually 12:25 those are the only two drawbacks I can think of, though 12:25 getting lost 12:25 in the menus 12:25 and the alternative also has issues 12:25 ais523: my issue with the non-fiqhack behaviour is that if I know something is near the bottom 12:25 I scroll down to the bottom and work from there 12:25 with the old behaviour I can't do this 12:26 can't you just press end? 12:26 that'd scroll to exactly the place you want in one keystroke 12:26 hmm 12:26 I guess I didn't know 12:26 but does it do the right thing outside fiqhack 12:26 let's see 12:27 yep 12:27 it does 12:27 hmmm 12:27 that was my main issue wit hthe thing :P 12:27 *with the thing 12:28 so maybe it is not a good change? 12:28 also, as for file viewers, most I've used in open/save dialogs and such scroll sideways 12:29 so it works akin to non-fiqhack 12:29 I mean things that view files (less, evince, etc.), not things that view lists of files 12:29 ah 12:30 ais523: ok so if we go under the premise that it is a bad fix 12:30 that leaves the bug I linked where nothing shows 12:30 one issue with fixing this 12:30 I quite like the fact that when you are at the end 12:30 there is an extra row at the bottom 12:30 to signify "end of list" 12:31 you'd have to remove this, or come up with a good way for how pageup/pagedn should behave on this corner case, to fix the above 12:32 right, so the problem here is that if you want an end-of-list indication, but the list is a whole number of pages long, where do you put it? 12:32 I suppose one fix is to show the last non-empty line and nothing else, similar to if you scrolled down from 1 row above, but that also "desyncs" pagedn+up 12:32 about the only thing I can think of is to make the end-of-list indication be nonempty 12:39 hmm 12:40 so dgl uses COLS/LINES in the watchmode menu to figure out how large your terminal is 12:40 I suppose this is why it is the only screen in the entire dgl to actually notice if your terminal size changed 12:41 allowing ingame resizing would probably be awkward with ttyrec handling 12:41 but at least it should be able to notice if size changed before starting a game 12:42 and update stuff appropriately 12:42 is this dgl we're talking about? NH4 derivatives handle resizing just fine 12:42 and there's no reason why vanilla couldn't 12:42 yes, that is why I am mentioning dgl multiple times :P 12:43 right, that's what made me consider it 12:43 I didn't think dgl cared about the codes sent in-game at all, though 12:43 is this just to update the size shown on the watchmode menu if the game is resized in-game? 12:44 it will do weird things if you attempt to start a game, NH4 or otherwise, with a terminal size that changed from that you first connecte 12:44 d 12:45 http://home.fiq.se/fail.png 12:45 this happens if you fire up 4k (and any other game) while you changed terminal size before you started the game, but while remaining connected to dgl 12:45 the only thing that will correctly know your term size after a resize is the watch menu 12:46 which will highlight stuff in red or not appropriately 12:46 I have no idea why 12:46 oh that channel still exists, who would've thought 12:46 what channel? 12:47 a social one in that list, i think i am even +F 12:47 what list 12:47 sorry, in the channel list of the screenshot you just sent 12:47 whoops 12:47 wrong link 12:47 sorry 12:48 fail 12:48 .png 12:48 that is an ancient link 12:48 lol 12:48 updated 12:49 ^_^" 12:49 ais523: see now 12:49 FIQ: that's bizarre, I wonder how DGL does that? 12:49 I have no idea 12:49 perhaps it acts as a terminal multiplexer? 12:49 without the... multiplexing 12:50 ais523: oh and there is the replacement character bug :) 12:50 but I guess you knew 12:50 since I've mentioned it before more than once 12:51 FIQ: not 100% sure what you're referring to 12:51 look at bottom right in the room 12:52 Is that supposed to be an open door? 12:52 it's supposed to be a wall 12:52 konsole does this every now and then in NH4 under libuncursed 12:52 Oh, that's even weirder, because the wall next to it is fine. 12:52 haven't seen it anywhere else 12:52 tried to repro in fiqrogue a while back, which also use libuncursed 12:52 wasn't successful 12:52 I've not seen it, and I use Konsole quite a bit. 12:52 I see it a lot 12:52 it's annoying 12:53 and ais523 mentioned having seen it too at one point, and only in konsole 12:53 and IIRC only in certain konsole setups, even 12:53 but haven't managed to find the cause 12:53 ah right, the Konsole bugs 12:54 the easiest way to reproduce is to use libuncursed to output several screenfuls of non-ASCII characters 12:54 every nth character will be replaced with a couple of replacement characters, where n is fairly large 12:54 save loading causes it a lot 12:54 maybe iron bars? 12:54 I haven't managed to reproduce outside libuncursed, though 12:55 and after an update to Konsole it stopped happening at all, so I assumed they fixed it 12:55 maybe not though? 12:55 ais523: oh you've only reproduced with non-ascii? 12:55 fiqrogue only uses non-ascii for its window handling which is only ever used in the "save" dialo 12:55 which would explain why I was unable to repro 12:55 FIQ: my guess as to the cause is that Konsole is reading a UTF-8 character as two separate halves rather than a continuous character 12:55 *dialog 12:55 neither of which is valid UTF-8 on its own 12:56 why does it only output 1 replacement char then? 12:56 and notice how the wall is correctly aligned 12:56 (allthough I've seen it happen where alignment is messed up) 12:56 it didn't, in my previous testing 12:56 perhaps the bug's come back in a different form? 12:56 it does in that screenshot :P 12:57 jonadab: btw 12:57 alternatively, perhaps the second replcaement character got overwritten later in the update sequence 12:57 is it really neccessary to start out a wizard with a max HP of 8? 12:57 you should at least give everyone 11 I think 12:57 so they wont get oneshot by rock traps 12:58 FIQ: Falling rock traps do not occur on the first two dungeon levels. 12:58 that is not true 12:58 more than once have I had pets die after 3 turns 12:58 to them 12:59 unless you mean in 4k only? 13:00 FIQ: In Fourk, I mean. 13:00 ah 13:00 That was a 4.3.0.1 change. 13:00 [4k] Zappi (philbo) (Wiz Elf Fem Cha), 465 points, T:184, killed by a goblin 13:00 Very early in Fourk development. 13:01 For some odd reason, no players have complained about this change. 13:02 :-) 13:03 it's not the kind of change people notice 13:03 since it's RNG 13:03 FIQ: It's also strictly in the player's favor. 13:03 jonadab: I'm sure larientelrunya would find a way to complain if she knew about it 13:04 also that is not true 13:04 you can lure monsters over to the trap 13:04 to kill them 13:04 Oh, hmm, I suppose. 13:04 Though I've never seen a player do that with a falling rock trap in NetHack. 13:04 I think blindsummon is arguably worse than poison instadeath 13:04 because it's much more common 13:05 I've seen players do that with Brogue traps, of course. 13:05 blind+summon is normally survivable, though 13:05 Yeah, I want to split the blind and summon effects of magic trap. 13:05 ais523: not if you get it early 13:05 ais523: Depends. 13:05 or get nasty monsters 13:06 It depends which of the random monsters you try to kill first. If you randomly choose the direction where the game put one you can't kill in two hits, you're dead. 13:06 I made a table at one point as proposal for scaling effects of magic traps 13:06 jonadab: blind+summon is an interesting gameplay occurrence, so it should happen sometimes, but I can certainly agree with making it less common 13:06 And you have no knowledge of which monsters are which. 13:06 and I can also agree with making it more survivable 13:06 jonadab: the correct strategy in my experience is to flee 13:07 find an opening, there usually is one (>50% per tile) 13:07 and pursue a direction 13:07 while you stall for time to unblin 13:07 d 13:07 FIQ: You can only flee once there's a non-occupied tile next to you. 13:07 this assumes you can't teleport, of course 13:07 So you typically have to kill one monster first, then flee. 13:07 where it is the correct strategy 13:08 Sure, if you could teleport, that'd make things much different. 13:08 jonadab: it usually doesn't summon that many monsters 13:08 so you can generally flee 13:08 IME 13:08 The effect is nasty because it happens on turn 218 or whatever. 13:08 FIQ: If you step on it in the middle of a room and only get 4 monsters, then you can flee, sure. 13:08 I usually get it on the first level of the Mines. 13:08 mines is generally open.. 13:08 Or, I usually _notice_ it when I get it there, more likely. 13:09 Mines has open areas. 13:09 But the traps can also occur in the narrow areas. 13:09 if you get it in a corridor 13:09 Where the blind+summon can surround you entirely. 13:09 you should be much better off 13:09 less attack directions 13:09 Yeah, it's worst when there are 4-5 adjacent floor spaces and they all get monsters. 13:09 And if the first one you hit dies immediately and you can flee into its space, you often survive. 13:10 If not, not. 13:10 you can chat with a monster to figure out what it is 13:10 wall hugging is normally to your advantage in NetHack 13:10 so this counteracts that to some degree 13:11 FIQ: Doesn't #chat use a turn, though? 13:11 yes 13:11 When you are surrounded in the early game, you have maybe two turns to _finish_ finding a place to flee to, or you're dead. 13:11 Unless you're playing, like, a Barbarian or something. 13:12 I'd argue that "the number of depth-appropriate monsters simultaneously attacking you before you die" is a number that should be constant throughout the game 13:12 it isn't, but it should be 13:13 ais523: you could make magic traps summon monster assuming 1 lower difficulty 13:13 "should be" is arguably true, but as you say, "it isn't". 13:13 FIQ: or having it scale based on depth 13:14 like, with a different quantity or difficulty formula 13:14 I don't like depth scaling for traps 13:14 Hmm, what if the blind+summon thing has a minimum dungeon depth, and before that depth it either does blind _or_ summon not both? 13:14 unless it is *level depth* onl 13:14 y 13:14 jonadab: so it would start doing it at level 8? 13:14 Right, trap level should be dungeon-level dependent, not character-level dependent, I agree with THAT. 13:14 FIQ: level depth, yes 13:14 FIQ: Not sure exactly what level. 13:14 which is the general nethack point for "ok the gloves are off" with regards to traps 13:15 it's where polymorph traps starts showing up 13:15 and some other trap type I forgot 13:15 trap doors maybe 13:15 no that's not it 13:16 statue trap 13:16 was the other DL8 trap 13:16 statue traps are normally really harmless though 13:16 if they contained out-of-depth monsters it might be different (they do in Brogue) 13:16 maybe they should? 13:16 generate things with a +5 difficulty modifier 13:17 as it is, dropping one depth-appropriate monster on you is really minor for a trap effect 13:17 less dangerous than blind+summon :) 13:17 ais523: if you wanted to be a bit evil 13:17 you could make the player become "frightened and unable to move" 13:18 or make the monster special in some other way 13:22 Statue traps aren't generally very dangerous, yeah. 13:23 I think a small (+5 might be too much) difficulty modifier for statue traps would be ok. 13:27 -!- stennowork has quit [Quit: Leaving] 13:29 on another subject: something that's bothered me for a while is that grid bugs are too weak for their gimmick to matter 13:29 a much more powerful monster with that gimmick could be interesting, as you could "diagonal-kite" them 13:30 ais523: slex has "grid xorns", not sure how powerful they are, but they can phase. 13:31 are they x or X? :-D 13:31 Not sure. 13:31 I haven't actually seen one in-game. 13:31 slex has so _many_ monsters, and I have not played it very much. 13:32 I think I would not recommend copying that specific monster in any case, though, because the flavor is weird. 13:32 But the idea of having more things locked to the grid seems reasonable. 13:33 YASI: on in every fifty player-character monsters behaves in grid-bug fashion because their laptop keyboard doesn't have a numpad and they are just using the arrows. 13:34 I think there's at least one player who plays with arrows+yubn (or was it 1379?) 13:34 -!- yuring has quit [Quit: Connection closed for inactivity] 13:35 arrows + yubn, now I've heard everything. That's almost weirder than playing with top-row numbers. 13:35 I do that on the TAS but only because it reduces the number of clock cycles the keyboard needs to communicate with the game as far as possible 13:36 I wouldn't recommend it for general play 13:36 There's at least one NH4 player who does it because his laptop keyboard has no numpad, and he doesn't want to learn hjklyubn. 13:37 I don't remember who it was. 13:37 [nd] sluggoman (Wiz Hum Mal Neu) chose a runed dagger to be named "Sting", on T:511 13:39 you'd have to rebind the controls to make that work in NH4 13:39 it draws a distinction between the main keyboard numbers and the numpad 13:42 I think it was somebody that was in Demilichens in Junethack 2014. 13:44 -!- NeroOneTrueKing has joined #hardfought 13:46 ais523: I did do that 13:46 but switched to pure vikeys 13:46 since my input didn't work on NH3 13:47 you mean NH3-unix-tty, right? the arrow keys do actually work on most NetHack windowports 13:47 just not the one that NAO uses 13:47 -!- NeroOneTrueKing_ has quit [Ping timeout: 240 seconds] 13:48 it's kind-of weird seeing how people here on IRC like unix-tty so much, I think it's in a huge minority as NetHack windowports go in practical play 13:48 -!- NeroOneTrueKing_ has joined #hardfought 13:50 -!- NeroOneTrueKing has quit [Ping timeout: 255 seconds] 13:51 yeah, unix tty 13:58 [dyn] The Tourist (TheTourist) (Tou Hum Mal Neu), 542 points, T:1212, killed by a giant ant 14:04 -!- Grassy has joined #hardfought 14:04 -!- mode/#hardfought [+v Grassy] by ChanServ 14:06 -!- Grasshopper has quit [Ping timeout: 248 seconds] 14:09 [nd] sluggoman (Wiz Hum Mal Neu) had Magicbane bestowed upon him by Thoth, on T:3564 14:59 -!- noty has joined #hardfought 15:06 -!- rikersan has joined #hardfought 15:13 [dnh] rikerw (Pri Dro Mal Neu), 9034 points, T:3057, choked on a brown mold corpse 15:16 [nd] sluggoman (Wiz Hum Mal Neu), 10096 points, T:7224, killed by a fire ant 15:16 I hate fire ants 15:18 Have you ever stepped barefoot on a fire ant nest IRL 15:18 ? 15:18 I did _once_, when my family went on vacation in South Carolina, back in the eighties. 15:18 I can assure you, it will not happen again. 15:19 I am not taking off my shoes south of the Mason-Dixon line in the future, especially not outdoors. 15:20 I've stepped on biting ant nests while camping, but not fire ants 15:20 that sounds 10x more painful 15:21 Let's just say I did not continue standing there very long. 15:22 There's this chain reaction, where once one of them bites you, they *all* bite you. Or sting, or whatever it is. 15:22 It escalates rapidly. 15:22 [4k] Zappi (philbo) (Wiz Elf Fem Cha), 13173 points, T:4688, killed by a blue jelly 15:22 Hmm, fire ants don't have a sting attack in nethack, do they? 15:22 Did you catch on fire? :) 15:23 I think it's considered a bite in NetHack. 15:23 Not sure whether "sting" or "bite" is more technically accurate. 15:23 Well, soldier ants have separate bite and sting. 15:23 There's definitely a burning sensation involved, though. 15:23 Ah. 15:24 in slex, will monsters use pretty much any bad wands against you? 15:25 Not sure, but in FIQHack they will. Also GruntHack. 15:25 So probably. 15:25 In standard Slash'em they will zap wands of draining at you. 15:25 including the ones that aren't directly harmful to your combat, punishment 15:25 Also cancellation. 15:25 dnethack has draining zapping monsters too 15:25 ouch, cancelling sounds like no fun 15:25 "You see sparkling lights" or something like that. 15:25 does that work like FIQhack (?), where it prevents casting until cured 15:26 In FIQHack, it doesn't cancel your gear, it does a different thing. 15:26 But yes, they do it. 15:26 cool 15:27 > Extremely heavy iron ball | Weight 2400 15:27 isn't that roughly 5x base carrying capacity 15:27 Sounds like fun. 15:27 I think slex increases carry cap? 15:27 NOt sure of the exact numbers. 15:27 and hold up why can a mold wield a cockatrice corpse 15:27 and where the hell did that come from 15:28 slex puts carrycap into the ionosphere 15:28 molds have hands in slex? 15:28 I dunno 15:28 Mainly because Amy hates carrycap 15:28 heh 15:28 so how much is "burdened" 15:28 dunno 15:28 or is the distance from burdened to strained/stressed just increased 15:29 what colour are fire ants in real life? 15:29 red 15:30 in that case I might have seen one (assuming they exist in the UK?) I saw a red ant and thought it was unusual 15:30 but I don't think I've been bitten by one 15:30 wikipedia says fire ants aren't there 15:30 ais523: They're brownish red. 15:30 oh, this one was bright red, almost orange 15:30 the ones here in california are bright red 15:31 But there are many other kinds of red ants. 15:31 We have a type of red ant around here that's fairly common. They're not fire ants. 15:31 this one does sting badly, I just figured it was the same 15:31 I am not an insect scientist 15:32 "the armor resisted your identification attempt" 15:32 y tho 15:36 how updated is the wiki page for slex items? 15:37 Realistically, nobody but Amy is going to know the answer to that. 15:39 you could compare it to the source? most likely using an automated tool 15:41 and apparently things that are blessed still autocurse TIL 15:45 yes. 15:45 But only ones that autocurse in the first place. 15:45 Which is a fairly limited set of items in vanilla. 15:45 [slex] rikerw (Che Dop Fem Cha), 4727 points, T:1328, quit 15:45 No guarantees about slex. 15:45 a baby dragon riding a xan is not a good thing 15:48 How about a baby archlich riding a ki-rin? 15:52 that was not an option sadly 15:52 also, are random odd messages normal? or do I have some weird equipment 15:52 > Incoming message for Player 1. The message is from 'Wizard of Yendor'. It 15:52 reads: 'Thine carcass shalt burn, pudding farmer!'--More-- 15:54 In slex? Who knows. Pretty much anything can happen. 15:55 note to self: do not throw artifact javelin at enemy when unskilled, you will indeed miss and it will wield it 15:56 Heh. 15:56 mind flayers don't brainsuck bad things in slex right 15:57 No promises. This is slex. Anything can happen. 15:57 Especially if it will frustrate the player. 15:57 sigh 15:57 NetHack doesn't care if you live or die. Slash'EM wants you dead. Slash'EM Extended wants you to go, "Wait, WHAT? That can HAPPEN?" 15:58 "What does that even mean?" 15:59 "Incoming message for Player 1. The message is from 'Wizard of Yendor'. It 15:59 reads: 'Thine carcass shalt burn, pudding farmer!'--More-- 15:59 whoops bad paste 16:01 okay the idea of getting mail from Rodney in-game (with his usual maledictions) is pretty funny 16:02 yes 16:02 jonadab: the original joke goes "Slash'EM does have a preference." 16:03 > The RNG hath decreed that this item is generated more often: nothing 16:08 [slex] rikerw (Mon Dop Mal Cha), 3914 points, T:1370, killed by a monster (petty venom slime) 16:09 ais523: Oh? Hmm, I hadn't heard that version. But I'm pretty new to NetHack, relatively speaking. 16:10 the thing about Slash'EM, though, is that despite being harder to NetHack if played "fair", there are so many ways to break it that it's easier once you can use one of them 16:10 that sounds about right for my experiences 16:10 overpowered artifacts are overpowered 16:11 ais523: Yes, I _had_ heard that. 16:11 Hadn't _got there_ yet, though; the furthest I've made it in Slash'EM is the Wyrm Caves. 16:11 I am repeatedly tackling and shoving my face into a door to open it 16:11 k then 16:11 rikersan: You wanna see overpowered artifacts? Take a look at dnethack. Yow. 16:12 imo not many are overpowered, but many are very unbalanced 16:12 making most of the artifacts unwishable might be better 16:24 but dnethack explicitly wants you to be able to wish for them 16:25 and it seems from watching Nero and Tarmunora play, that standard strategy consists of wishing up as many as you can once you get a wand 16:26 pretty much 16:26 ais523: I suspect the same goes for slex, at a bigger scale 16:26 I've gotten to the elder priest once, I ended up with 8 artifacts 16:26 FIQ: so do I 16:26 but larien likes to nerf the shit out of things once she is made aware of a case 16:26 3 wished for, 5 assorted 16:26 although slex strikes me as the sort of game which can just randomly kill you if it wants to 16:26 not counting ones that don't count for wishing purposes 16:26 so the idea is to keep it secret until you ascend junethack with one such thing, to mess with her :P 16:27 (jk) 16:27 lol 16:27 ais523: yes, it has such things 16:27 but is clearly not unplayable 16:27 given Amy repeatedly gets far in it 16:28 the one thing I've noticed about dnethack artifacts: games go a lot better if you do the castle before the neutral/chaos quest 16:29 law not as much, but the chaos one for sure 16:29 the wishes are essential sometimes, RNG doesn't always provide (say) flying boots for the lethe 16:29 *neutral one for sure 16:34 ais523: Yes, slex can just randomly kill you. Amy has specifically said that one of her main goals for slex is that advanced players NOT be able to consistently ascend reliably. 16:34 date night! bbl 16:34 Instead, she made it so that no player is able to ascend reliably, or at all, besides her. 16:35 She ascends _sporadically_. 16:35 Ostensibly. Assuming it's not a trick. 16:35 Has she ascended it on Hardfought yet? 16:35 I'm pretty sure she doesn't have root on hardfought, so that would rule out some kinds of tricks. 16:36 Pretty sure only K2 has root on hardfought, not even Tangles has it 16:36 -!- RNG123 has joined #hardfought 16:37 belated have fun k2 16:39 jonadab: I assume she plays fair 16:39 in fact considering otherwise feels rather disrespectful IMO 16:43 K2: you should link to the actual logs 16:43 in the topic 16:50 aosdict: so the conflict thing I talked about a few days ago 16:50 what if it only procced 33% of the time (assuming no resistance)? 16:51 wait, you want to add conflict resistance? 16:51 it already exist... 16:51 I think he means monster MR 16:51 monster MR 16:51 yea 16:51 h 16:52 and you wanted the player to have monster MR of 1 so stuff would mostly affect them but decrease a bit based on level? 16:52 yes, this is something I've actually considered seperately to my conflict proposal 16:52 maybe player MR of ? 16:52 -!- Webmant has quit [Remote host closed the connection] 16:52 in fact 16:52 @v?valkyrie 16:52 dead bot 16:52 anyway IIRC player monsters have MR1 16:53 rikersan: that was the idea 16:53 MR of 1 means player level factors in 16:53 so at XL2 you have an effective MR of 3 if you have 1 MR 16:53 0 if you have 0 16:53 ah 16:54 because 0 monster MR means 0 always 16:54 any other value scales with level 16:55 FIQ: a large part of my reservations about the conflict stuff is that it hurts fighting styles disproportionately, and it is very powerful at range 16:55 uh 16:55 it is *less* powerful at range than currently 16:55 with my changes 16:55 or do you mean vanilla conflict? 16:55 I don't know the current state of fiqhack conflict 16:56 nearly the same as vanilla 16:56 so assuming vanilla unless told otherwise 16:56 it's technically slightly different but the differences are marginal 16:56 ah 16:56 aosdict: well the 33% thing 16:56 would nerf ranged conflict 16:56 (and conflict in general) 16:56 while also allowing it to work on players 16:56 without being *really dangerous* in monster hands 16:58 what's player-style MR do in fiqhack? 16:58 however, it's still really powerful at range (and thus beneficial to ranged fighters or spellcasters) because all the player has to do is get away from any adjacent monsters 16:58 i.e. claok of mr 16:58 aosdict: what stops monsters from understanding how conflict works with the changed mechanics? 16:59 How would conflict be dangerous in monster hands? 16:59 and abuse it themselves by staying away from being in melee range with each other 16:59 it just makes things fight each-other 16:59 RNG123: it is based off an earlier proposal by me 16:59 making it so that whenever it is someone's turn 16:59 and it is affected by conflict 16:59 do a check for resistance 16:59 FIQ: I am assuming that the player using conflict would be a much more common scenario than monsters using conflict 17:00 assuming it hasn't happened already this turn 17:00 if one fails the saving throw, see if there is anyone in melee 17:00 if there is, attack it 17:00 and end the action 17:00 including for players 17:00 aosdict: it would, yeah 17:01 but it would affect everyone 17:01 including the wearer 17:01 random thought: monsters "snap out" of conflict after they take too much damage 17:01 well, within the usual 8 range 17:02 yes, but if the player is controlling conflict most of the time, it's much much easier to set up situations where monsters far away kill themselves and the player either stays out of range or melees one monster at a time 17:02 aosdict: another thing you could do if you don't like the 33% RNG is to make it so that if conflict happens once, give a 3-turn grace period where it can't happen again 17:02 aosdict: well 17:02 this is also an issue in vanilla :P 17:03 much moreso, in fact 17:04 I do want to make conflict a charged ring, and the higher the charge, the greater the radius. 17:04 So if you want monsters _way over there_ to fight each other and leave you out of it, you need to get, like, two +5 rings or something. 17:04 that does not fix aosdict's problem, allthough it is a decent nerf to conflict 17:05 Is his problem monster-player symetry, or what? 17:05 no 17:05 FIQ: another thing nagging me about monster conflict use in general is that, a monster would not rationally want to wear it 17:05 aosdict: I pointed this out a few days ago 17:05 aosdict: Something with a lot of MR might. 17:05 because all the monsters are on the same "side" 17:05 Oh, true. 17:06 Good point. 17:06 other things would still attack him thogh 17:06 ye 17:06 a situation where monsters use conflict 17:06 would be really rare 17:06 and conflict is more likely to get fellow monsters killed than pets/the player 17:06 What if there's a kind of monster that intrinsically causes conflict? 17:06 That occurs late-game? 17:06 And is _nasty_? 17:06 I suppose it works for certain monsters who flavor-wise don't care about those lesser than them 17:06 I feel like that's somethin from slex 17:06 Liches, etc. 17:06 like a monster who is sessile, a lot of hp, little to no attack dmg, but exists merely to cause conflict 17:06 rikersan: Oh, hmm. Possibly a good point. 17:06 aosdict: but my main goals of the change was to fix the symmetry and to nerf conflict 17:07 not to make monsters use it more 17:07 and is surrounded by tons of powerful peaceful monsters (human too, for murder bonus) 17:07 epi maybe 17:07 rikersan: Or a sessile monster that has no active attacks, only very strong passive attacks, and generates conflict? 17:07 that too, but for bonus SLEXness add "surrounded by peaceful monsters" 17:07 import the ZAPM monolith, and make it hostile :) 17:07 lol 17:07 how does it work 17:07 I never understood them 17:08 I think it's "get too close and it lashes out" 17:08 the wiki says if you can touch it fast enough, before it gets angry, it will be permanently pacified 17:08 s/angry/scared/ 17:08 if you touch it bare-handed you gain a level 17:08 that is all I know about it 17:09 this is, AFAIK, the only way in zapm to gain levels that doesn't involve killing monsters 17:09 FIQ: yes, analyzing the effects of conflict on the player is good 17:09 aosdict: obviously 17:10 it sounded like you were saying "but monsters would never use conflict so what's the point?" 17:10 hence the reply 17:10 besides 17:10 so, hmm. Either its range has to be limited to a fairly small radius so players staying away from a mob can't happen much, or 17:10 there are certain edge cases, mostly involving cockatrices, where conflict can be used offensively directly 17:10 players have to be induced to spend ranged attacks from conflict 17:11 or spotted jellies/etc 17:11 aosdict: In an older version of fiqhack, conflict worked on ranged attacks 17:11 It also does in NH4 vanilla and 4k 17:11 not enough monstesr have ranged attacks though 17:11 In fiqhack, alongside the other AI changes, it completely broke conflict 17:11 other than spellcasters 17:11 (in the OP sense) 17:11 so I made it only apply to melee 17:12 (similar to 3.x 17:12 what lategame monsters have ranged attacks? 17:12 other than the occansional demon with a crossbow 17:12 spellcasters 17:12 wand users 17:12 other than spellcasters 17:12 the occasional thing with ranged weaponry 17:12 There are a lot of spellcasters. 17:12 not many though 17:13 rikersan: thing is 17:13 lategame in fiqhack 17:13 monsters would basically stop moving 17:13 if you used conflicts 17:13 yeah, but the spells I've seen them cast (dnethack only though) are mostly player-centered 17:13 hm 17:13 because they almost always had a valid target 17:13 for a ranged attack 17:13 -!- Grassy has quit [Ping timeout: 260 seconds] 17:13 rikersan: in FIQhack, monsters cast player spells 17:14 use wands much more intelligently 17:14 uses ranged weapons more intelligently too in master, I've yet to push that to 4.3.0 17:14 this, alongside with new create monser mechanics 17:14 breaks conflict 17:14 Do they know how to stay back out of melee range without fleeing as such? 17:14 Like Brogue centaurs? 17:14 * jonadab shivers. 17:14 jonadab: theoretically yes 17:15 there are monsters who will do this 17:15 there is code for it 17:15 but it's only active for gnomish wizards 17:15 and the other "equavilents" 17:15 Ah. 17:15 because they have no melee attacks in first place 17:15 so approaching melee is really stupid for them to do 17:15 dragons will also do this 17:15 alongside their other changed AI behaviour in fiqhack 17:17 Ideally, intelligent monsters should just calculate, "which is more advantageous, in terms of ratio between opponent damage and me damage: melee, or ranged combat?" And act accordingly. 17:17 So if an elf with a broadsword and bow sees you casting cone of cold, he should close to melee range; if he sees you swinging Cleaver, he should not. 17:18 Granted, this would require giving monsters a place to store info about their opponent(s). 17:18 this is how fiqhack dragons behave: http://sprunge.us/jCIh 17:18 Which could be... memory-intensive if you don't limit how much they can store and how many opponents they can store it about. Especially under conflict. 17:19 it works rather well in my experience 17:19 not 100% optimal 100% of the time obviously 17:19 but much better than "walk to target, whack" 17:19 unfortunately you rarely see dragons in open areas 17:19 Indeed. 17:20 where it works best 17:20 Well, something could be done about that. 17:20 Like, dragon halls. 17:20 * jonadab grins wickedly. 17:20 a dragon hall is a closed room full of dragons 17:20 True. 17:20 it would work well in i.e. UnNetHack-style Gehennom 17:20 But they're all the same color, so immune to each other's breath. 17:20 or mines 17:20 Ah. 17:21 What if we put dragons in Fourk Gehennom? 17:21 there is already dragons there :) 17:21 Ah. 17:21 but yeah it would work 17:21 however 17:21 the logic also depends on another thing 17:21 not being speed 9 17:21 in fact, this is what made me change their speed 17:21 Ok, so what if we put ancient dragons in Gehennom? <-- EPI 17:22 (allthough I've wanted to for a long time, this was just the thing that made me do it) 17:22 I don't remember what speed I left adult dragons at. Maybe the same as vanilla? Not certain. 17:22 I recall hothraxxa having issues with the new fiqhack dragons in healer quest 17:22 they're assholes, was his remark :P 17:23 Ah, looks like I went 8/9/10/12/15 for baby/young/(adult)/elder/ancient. 17:24 Heh. 17:24 strongest dragon is still slower than fiqhack dragons 17:24 You went, what, 18? 17:24 20 17:24 Hmm, I suppose I could go 8/10/12/15/18 or so? 17:24 FIQ: one obvious change to monster strategy (not sure if you have this) is, if a monster has a ranged weapon and a supply of ammo, a gnome for example, it should stay back and try to keep distance from the player. 17:25 aosdict: easy change, but should it be done I wonder 17:25 aosdict: Currently FIQHack monsters only do that if they have zero melee attacks. 17:25 it might make them too dangerous for when they appear 17:25 In vanilla, if the player closes to melee range, they'll just say "oh well, better just swing my bow now) 17:25 s/)/"/ 17:25 Heh. 17:25 I could try it I suppose 17:25 At the very least they should still try to shoot point-blank 17:27 ok let me do that 17:28 on the other hand, in vanilla, I think a gnome swinging a bow might actually get better damage than shooting an arrow? because the bow's small damage stacks with the gnome's weapon attack damage? 17:29 does that apply to improper attacks I wonder 17:31 do monsters have skill bonuses to attack types in vanilla? 17:31 i.e. gnomes being expert in clubs (akyls) but on basic in mattocks 17:31 iirc only some variants have that, right? 17:39 -!- RNG123 has left #hardfought 17:43 rikersan: I don't think vanilla has that. 17:44 vanilla doesn't 17:44 fiqhack and 4k has partial skill support 17:44 4k just for wands, fiqhack for spells + wands + (in master only) thrown weapons 17:54 huh cool 17:54 who made 4k? 17:55 jonadab? 17:56 rikersan: yes 17:56 Fourk is my fault, yes. 17:56 Although it's based on NH4 and includes a number of things cherry-picked from FIQHack. 17:56 I see fourk as a mechanics testing variant 17:57 and fiqhack more as an internals testing variant, although it has a number of mechanical changes too 17:57 Fourk is an internals _refactoring_ variant. 17:57 what 17:57 no it isn't 17:57 Err, FIQHack, I mean. 17:57 Sorry. 17:57 it is balance changes mostly :P 17:57 Right, yes. 17:57 Fourk is a balance-changes-testing variant. 17:57 jonadab: NH4's also an internals refactoring variant 17:58 ais523: Yes, true. 17:58 thus, why I want to steal a large proportion of fiqhack changes 17:58 Yeah. 17:58 ais523: generally I refer to nethack4 variant compared to nethack4 vanilla 17:58 but it's true :P 17:58 I guess it might be a bit confusing to someone used to NH3 17:59 (this prompted me to at some point somewhat recently, when I realized more people was reading the fh wikipage that ones from here, to add a disclaimer that the changes listed is from NH4 base) 18:00 hmm, would you suggest that I merge some of fiqhack's internals changes pre-4.3? or are they too radical/too untested? 18:02 Well 18:02 I mean, people actually play fiqhack nowdays 18:02 but it still happens that people get fiqhack-specific impossibles/panics/the occasional segfault 18:02 so I'm not sure with that 18:03 Allthough it's much rarer now than it used to be 18:03 ais523: You could perhaps start with property rework if you wanted to port fiqhack features 18:03 FIQ: right 18:03 I was doing one of those myself 18:04 actually, come to think of it 18:04 it has been around since 2015 and the last time I fixed an issue someone had with it directly was almost a year ago 18:04 I'd like to keep the current saves for 4.3 compatible 18:04 so that would be a good reason to get 4.3 out, then start 4.4 from fiqhack 18:04 Actually... 18:04 (except for a brief period where I declared asking/messing about property 0 an error, but this significantly complicated code so I removed it) 18:05 FIQ: can FIQHack still load upstream NH4 savegames, or is that broken because of the game being renamed? 18:05 jonadab: fiqhack can load fiqhack save games from 2015 but cannot load NH4 save games 18:05 I assume it can't load NH4 savegames due to the internals being changed so much 18:05 I did internal savebreaks all the time before releasing it 18:05 then stopped 18:05 FIQ: Ah. 18:05 Ok. 18:06 I don't fully remember what broke save compat from NH4 initially 18:06 probably shimmering dragons 18:07 property rework was also done before fiqhack's first server version 18:07 adding a new monster would break compat, I think 18:07 does fiqhack displacement work yet? 18:07 yes 18:07 ais523: Adding a monster is certainly on the list of things that would break save compat if _I_ did it. 18:08 ais523: but keep in mind 18:08 you could just steal fiqhack's save versioning 18:08 it's not exactly complex 18:08 right, but changing monster numbers would be a lot of work to do in a save loader 18:08 just a new flag field 18:08 NH4's save versioning works in a very similar way to fiqhack's 18:08 Sure, but for stuff like property rework 18:09 (the way fiqhack's save revisioning works is, it has a new flag field, save_revision and a #define SAVE_REVISION (whatever the current one is) 18:09 and when restoring a save, checks whatever save_revision it restored and changes its loading based on it 18:09 [nh] nozx (Arc Dwa Mal Law), 638 points, T:573, killed by a gnome 18:09 and updates it as part of the save process 18:09 the version field is also written to the fruit chain, because of bones 18:09 (which doesn't save flags) 18:10 and fruit chain is the first thing that happens in restoring of bones 18:10 the fruit chain handling is a hackjob, but I saw no better alternative 18:10 that would maintain compatibility with pre-revisioning saves 18:11 before I added a save revisioning system, I relied on content in a save in general to determine what to do 18:11 this was much messier but I can't really remove this handling now 18:11 I still do that in a few points in NH4 18:11 (see fiqhack's restore_mon for how well that turned out) 18:11 e.g. youmonst.movement 18:12 (I assume you removed all the save compat code for fiqhack, as you were savebreaking anyway?0 18:12 ) 18:13 yes 18:13 the old NH4 save compat code 18:13 at least the ones I found 18:13 there might be others I haven't noticed 18:14 I tagged them all with a big comment SAVEBREAK 18:14 to make them easy to search for 18:15 apparently I didn't remove them all 18:16 :-) 18:16 I should check that for 4.3.0.45 18:16 Err, 4.3.0.5 18:16 although bear in mind that the times when I had to encode things in a weird way 18:16 Heaven forfend I should live long enough to put out anything.45 18:16 if you just remove the compat code and use the obvious encoding, you'll break your own saves, not just NH4 saves 18:16 jonadab: I don't know, you might move to Firefox's versioning style :-) 18:17 ais523: to be succinct: no. 18:17 ais523: is flags zerofilled on init? 18:17 And yeah, that's why I said for 4.3.0.5: it isn't save-frozen yet. 18:17 making the save_compat_bytes array always 0s? 18:17 FIQ: I believe so, not 100% sure though 18:18 I think it might be zero-filled for anything that doesn't have a different default set 18:18 see decl.c 18:18 I'm pretty sure that save_compat_bytes itself is always 0s 18:18 in a file that doesn't use them 18:23 -!- rikersan has quit [Quit: Lost terminal] 18:26 maybe I should change the tame monster bg to green 18:26 to not clash with object piles 18:26 not sure 18:26 Hmm, I'm trying again to classify startscums. I wonder how to handle slipped while mounting a pony deaths 18:26 they are not startscums 18:26 They could be. 18:27 Startscumming for "can I get on the horse on T:1 or not" 18:27 a false negative is much better 18:27 what do you mean? 18:28 counting a startscum as non-startscum 18:28 is better than counting non-startscum as startscum 18:28 IMO 18:28 aosdict: it depends on why you're classifying startscums 18:28 if the main purpose is to reduce reporting burden on tournament infrastructure, any game that doesn't achieve anything interesting counts 18:28 although you'd want to count early deaths at least for unique deaths 18:28 primarily so that I can do more realistic analysis on non-startscum games 18:28 this isn't for anything to do with tournaments 18:29 my statistical analysis is normally based on counting only games where the player playing the game won their previous 2 games 18:29 this is pretty good at filtering out silly conduct attempts, startscums, and games where the player isn't trying to win, in addition to players who aren't very good at NetHack 18:30 but that can be a bit restrictive/rejective, depending on what exactly you're looking for 18:30 that happens to be what the role difficulty analysis on the wiki uses, and role difficulty is one of the things I want to analyze 18:30 however 18:30 it excludes all players who either can't win and, even if they can, can't win a streak of 2 18:30 heh, apparently someone got monk player bones in fiqhack 18:31 nasty :P 18:31 with spells 18:31 aosdict: the role difficulty analysis on the wiki uses that because it was me who produced it :-P 18:31 that said, it's a somewhat controversial definition 18:31 however, I'd expect there to be a lot of noise if you don't focus on good players only 18:32 wizards come to mind 18:32 as bad players will lose basically every game, so "newbie-friendly" roles have lower asc rates as newbies (who die a lot) play them more 18:32 a lot of newer players like to play wizards 18:32 due to the increased complexity 18:32 valkyrie is probably biased aslo 18:32 *also 18:32 since it's the destignated noob role 18:32 recently I did add a "completely unbiased" table to that page which had similar results to the gridbug.de analysis, and it's not representative 18:33 so I am trying to sort out obvious games that shouldn't count like startscums to get better data 18:33 I wonder if there is any difference in astral success rate 18:33 among roles 18:33 I think it's basically impossible to determine if an early death was the fault of the player or of the role 18:34 i.e. how often do each role do an astral splat 18:34 one thing that may be worthwhile would be to graph the probability of surviving a given dlevel (i.e. getting past it given that you reach it) for each role 18:34 there'll be a lot of noise early but not so much late 18:34 ais523: Counting only streak games excludes all non-expert players very efficiently, so it's going to give you results that reflect that. 18:34 ais523: I think I did do that at one point. 18:34 FIQ: arguably I'm making something of a dent in the statistics there :-P 18:34 ais523: :P 18:34 as I usually play valks and die on Astral way more than most people do 18:34 valkyries are apparently terrible at surviving astral huh ;) 18:34 but again, excluding obvious startscums would be beneficial 18:34 jonadab: I'm aware, I just saw that as a good thing 18:35 I have yet to streak in nethack 18:35 I'd not count myself as a good player 18:35 knwoledgeable, but not good 18:35 I can't remember if I've streaked or not 18:35 I must have done at some point, surely? 18:35 mostly since I play fast 18:35 more fun that way 18:35 not intentionally, but my asc rate is about 30% 18:35 I nearly streaked in 4k 18:35 which is high enough to get some just by chance if I'm trying to win every game 18:35 a single death inbetween 2 wins 18:36 which IIRC was actually a test game, but that's no excuse :P 18:36 ais523: Right 18:36 I have a different account for test games that are intended to loes 18:36 *lose 18:36 also I often play them in wizard mode anyway 18:36 K2 has a grunthack streak 18:36 ais523: But what if you're trying to produce stats that are helpful to new players? 18:36 that is crazy 18:37 I think role difficulty is fundamentally different for advanced players, compared to new players. 18:37 jonadab: I don't know a solution to that 18:37 jonadab: The page itself notes that the approach is probably not useful to new players. 18:37 do a depth curve for deaths 18:37 append endgame after sanctum 18:37 do one for each role 18:38 FIQ: that will stick _most_ startscums in level 1, but there are still lots of fountain quaffers who survive down to level 2, 3, or even further 18:38 [fh] MTF (mtf) (Pri Hum Mal Law) killed the monk of Fisting Hard, the former Initiate, on T:14954 18:39 idea: get the xlog to record likely startscum behaviour 18:40 things like fountain quaffing are easy enough for the game to observe 18:40 [dnh] rikerw (Dnb-Nob Dwa Mal Law) entered Minetown for the first time, on T:2561 18:41 FIQ: I accidentally just generated this histogram for games that ended on T:9 or earlier. Two games somehow died on level -10. 18:42 that is clearly a startscum who wanted to go out in style 18:42 or someone who was curious 18:43 aosdict: that's the "teleported to heaven" ending, isn't it? 18:43 confused controlled teleportation, go to -10 18:43 I'm glad that exists, but pretty astonished that it actually shows in the xlog 18:43 one is scorchdeath, the other is yhelothar2 18:43 both on turn 3 18:44 luckily, if you teleport in the -1 to -9 range, you fall to earth and die on level 0 18:44 quaff confusion 18:44 put on ring of teleport control 18:44 read teleportation scroll 18:44 3 actions 18:44 yep 18:44 so those can't be confusable with the planes 18:44 both are wiz 18:45 ais523: there's also "commited suicide" 18:45 which is a very generic death reason for what you just did 18:45 FIQ: teleporting to dlvl 0 specifically 18:45 yeah 18:46 Go to Nowhere. Are you sure? 18:46 EPI: if you are confused, the game doesn't ask you to confirm. 18:48 EPI: also, if the scroll is cursed, the game doesn't ask you to confirm (and in fact chooses a level for you) 18:50 rn2(150) - 30 18:50 no wait, rn2(100) - 50 18:51 [nd] knavery (Rog Orc Mal Cha), 1290 points, T:3572, killed by a giant ant 18:51 btw, should teleporting to heaven really be considered a loss? it strikes me as a fairly good ending 18:52 you go to heaven and everyone makes fun of you for not getting the Amulet. Forever. 18:52 well they didn't get the Amulet either :-P 18:53 (unless you count celestial disgrace, followed by some sort of redemption) 18:53 did you happen to read jonadab's proposal for alternate endings on Astral? I liked them 18:53 -!- Grasshopper has joined #hardfought 18:53 -!- mode/#hardfought [+v Grasshopper] by ChanServ 18:54 aosdict: dungeon proposal material! tread lightly 18:54 ais523 has not written his yet 18:54 yes, please don't spoil me on that 18:55 I can /part if you want to discuss it among yourselves 18:55 (that said, I have something similar but almost certainly different planned for my own proposal) 18:55 I was not aware that the dungeon proposal was still in effect from three years ago 18:55 aosdict: I'm actually working on mine atm 18:55 or, the discussion around nh4oid devs 18:55 I've reached Gehennom 18:56 anyway, it'd be unfair of me to prevent you talking to anyone about your ideas, I just don't want to see others' ideas until mine is done 18:56 ais523: of course. I just don't think aosdict was aware of the policy 18:56 ais523, welcome to hell 18:56 hence my remark 18:56 jonadab: actually, I'd cite you (and releasing your proposal) as the impetus for turning #hardfought into nethack-dev-2.0 18:57 interesting remark 18:57 I can see the justification 18:57 actually, I've pretty much got Gehennom filler and much of the branches down there sorted 18:57 since I wasn't really writing anything myself until I commented on yours 18:57 but there was nethack-dev talk beforehand 18:57 I'm just stuck on something to do with the Candelabrum 18:57 just not on the same scale 18:57 maybe I'll just leave that bit out and fill it with someone else's ideas 18:57 FIQ: sorry meant the big design stuff 19:00 ais523: I haven't writen anything at all but have read the full content of jonadab's 19:00 actually, let me work some more on this now 19:01 since this was before I knew about The Policy(TM) 19:01 that's fine 19:01 that said, there is a lot of things in his propoosal I disagree with 19:01 at this point it's pretty much broken down anyway 19:01 it was partly intended to help us get out 4.3 but that didn't really work out 19:01 so I don't consider the endeavor completely fruitless if I were to make my own 19:02 I'll look forward to it anyway 19:02 it can be an "variant-of-NH4-dev" proposal 19:04 however I generally prefer implementing things over writing about them :P 19:06 [fh] MTF (mtf) (Pri Hum Mal Law), 65938 points, T:15828, killed by a killer bee 19:06 ais523: FWIW, there are some sections of my proposal that I'm not happy with. I put some notes at the end listing which ones, and a comment to the effect "hopefully someone else can come up with something better for X, Y, and Z." 19:06 FIQ: I'm the other way round I think 19:06 No one person can be expected to have great ideas for _everything_. 19:06 I normally write huge amounts of documentation for something before implementing it 19:07 -!- yuring has joined #hardfought 19:07 I don't always publish my thoughts before implementing, but I like to let the ideas roll around in my head for a while before I draw firm conclusions, yes. 19:08 jonadab: so similar to GFP? 19:08 where you list a lot of very controversial idea 19:08 s 19:08 FIQ: The GFP was so preliminary. I had no idea what I was doing back then. 19:08 and have a disclaimer "some of these are probably not good ideas" 19:08 disint trap comes to mind :) 19:08 I'm certain some of them are not. 19:08 not even slex has that 19:08 you somehow crossed a barrier there 19:09 jonadab is secretly the former author of the Evil Variant 19:09 Oh, like slex doesn't have traps that are _worse_ than disint traps. 19:10 it has a gulliotine trap 19:10 no hints for what it does 19:10 I was thinking of all the UI screw traps. 19:10 if you don't know what it does, may I suggest a french history lesson? 19:10 Oh, point of trivia: for a while my working name for GeFuPa was the "Happy Gehennom Fun Patch", but I decided it was too long and shortened it. 19:10 those used to be the thing I liked the least in slex 19:10 until I found out about the connection penalties 19:11 those are *cruel* 19:11 Lag traps? 19:11 no 19:11 penalties that target specific people for things outside of their control 19:11 the SIGHUP penalties 19:12 Wait, they target specific people? Like, by name? 19:12 no 19:12 by connection stability 19:12 if you have a shitty connection 19:12 [nd] Grasshopper (Hea Gno Mal Neu) performed his first genocide (master mind flayer), on T:27873 19:12 slex will be unplayable 19:12 FIQ: Ah. Disconnect penalties? 19:12 yes 19:13 Those are probably intended to thwart Yhelotars. 19:13 *Yhelothars 19:13 but it's such a bad idea 19:13 it's the one thing I still try to convince larien to get rid of 19:13 but it wont happen 19:13 it's cruel 19:13 Well, thwarting yhelothars isn't per se a bad idea. (If you think it is, you weren't around when he was active.) 19:13 it means people who are already shafted because their connection is shitty 19:13 slex, as usual, just goes about everything the wrong way. 19:13 at least one server (ascension.run?) has a penalty for recovering a save file 19:14 presumably to attempt cheating 19:14 but it paralyses you several turns and reduces maxHP 19:14 that is slex 19:14 this has inadvertently lead to dynahack getting a bad reputation 19:14 not ascrun 19:14 unless ascrun *also* has this? 19:14 ah, hmm 19:14 maybe one copied from the other? 19:14 if it does, I will go ahead and whine to kerio right away 19:14 FIQ: I add 1 vote to yours about slex penalties for disconnection 19:15 ais523: the issue with dynahack is the fact that it uses the nitrohack save system 19:15 jonadab: there's a patch on NAO that prevents a level leaving bones if it's ever had a hangup save 19:15 that's an anti-yhelothar thing 19:15 ais523: Yes, and that is more or less invisible to the player if they're not bones trolling. 19:15 FIQ: right 19:15 So a much better way to go about the same goal. 19:15 jonadab: yes; given that bones is random anyway, it wasn't intended to be visible to anyone at all 19:15 not some weird max HP and paralysis penalty 19:15 although I assume yhelothar figured it out eventually 19:16 I emergency-wrote it in the midst of a troll attack 19:16 what did he do 19:16 it's not the only anti-troll feature on NAO either; I don't know the others, although I can guess at some of them 19:16 FIQ: basically creating lethal bones files 19:16 ahh 19:16 but also some amount of cheating using hangup bugs in order to survive long enough to create them 19:16 as he wasn't skilled enough to get there using regular gameplay 19:16 ais523: I can see logging sighups and investigate people who has them's ttyrecs 19:17 Didn't want to put in the time, probably. 19:17 if they seem suspicious 19:17 to check if they're cheating 19:17 and deal with them accordingly 19:17 not penalize them automatically ingame for it 19:17 FIQ: I think making the level bones-ineligible was a reasonable solution in the circumstance. 19:17 jonadab: Of course 19:17 But I meant as an alternative approach to what slex does 19:18 The best approach, of course, is to adapt the NH4 save system or something like it 19:18 I still say the correct solution to hangup cheating is the 4.3 save system. 19:18 Yeah. 19:18 or something similar (save every single turn, don't save at all on SIGHUP) 19:18 that was one of my motivations for writing midturn saves 19:18 (preventing hangup cheating, that is) 19:18 -!- rikersan has joined #hardfought 19:18 FIQ: even that lets you revert a turn midway, which is actually a fairly common hangup cheat 19:18 ais523: you can do that in NH4 also 19:18 if you forcibly abort the game in the middle of a turn 19:19 the game will playback using the commands 19:19 after doing something that's a horrendously Bad Idea and almost certainly going to kill you, quite a few people will disconnect in the hope it ends up better 19:19 oh wait 19:19 I am stupid 19:19 FIQ: so it only helps if the game has had an update since you disconnected, which causes the playback to fail 19:19 FIQ: It'll play back using the already entered commands, yes. 19:19 yeah 19:20 ais523: so clearly the solution is to commit the save + command sequence upon entering 19:20 rather than on what in NH4 constitutes a neutral turnstate 19:21 (except for the save command) 19:21 FIQ: right; NH4 records each keypress before simulating it 19:21 save isn't actually a command in NH4 19:21 ais523: this seems much simpler to implement to me than the full-blown NH4 save handler 19:21 this is part of the reason why #quit doesn't work; I had huge technical problems trying to make it work as an extended command 19:21 and eventually just gave up, deciding it was more trouble than it was worth 19:22 why is that 19:22 isn't that just a Q command 19:23 it's something daniel_t did with the way that commands are represented on the client 19:23 ais523: Honestly, I am tempted to remove quit on philosophical grounds. NetHack is not a game where it's difficult to bring your game to a conclusion quickly if you choose to. 19:23 I think it's something like using a bitfield for two different unrelated purposes 19:24 Using a... my head hurts already. 19:24 which somehow magically avoids clashes in any given case in the existing code, but where bad things happen if you add #quit as an extended command 19:24 my head hurt too when I tried to understand it, which is part of the reason I gave up :-D 19:25 Ah. 19:25 Yeah. 19:25 why would you do that 19:25 are you thinking of the CMD_ARG_* bitfield? 19:25 I'm not sure 19:25 FIQ: You can ask daniel_t why when you see him. 19:25 this is to do with the client side of things, anyway, not the server side 19:25 really the whole way nitro does saves and quits is broken 19:25 I think there's even a security bug in there somewhere in vanilla nitro 19:26 which is fairly impressive 19:26 how do you even... 19:26 how do you introduce a security hole when all you do is tell the server to save or quit? 19:26 it' 19:26 s like 19:26 one command 19:26 with no parameters or such 19:27 Shouldn't telling the server to save be redundant? Can't you just close the connection? 19:28 -!- Webmant has joined #hardfought 19:28 yes, that seems reasonable to me 19:28 ah right, it has a parameter to call panic() in pretty much any context 19:28 not sure what the deal with #quit is though 19:28 jonadab: nitro would write a save backup if you quit cleanly 19:28 and not otherwise 19:28 (also it was deleted on load) 19:28 ais523: I see. 19:28 this is a *good feautre* 19:29 nethack should do the same 19:29 also if you encounter an impossible/panic and Q 19:29 if feasible 19:29 *nethack4 19:29 FIQ: the same in what respect? 19:29 Write a save backup on explicit save? 19:29 anyway, the point in nitro is, you can just randomly make the game panic and free all the data it has 19:29 it should also wirte a temporary binary save if you save cleanly 19:30 jonadab: ah right, I can see the argument behind htat 19:30 so you don't have to wait 5 minutes for it to load 19:30 should it be deleted on load too? 19:30 nh4 would be great if there was an option to make it look like vanilla 19:30 Demo: I've added several of those already on user request 19:30 but it never seems to be enough 19:30 ais523: if you cannot reasonably figure out when the last backup was, yes 19:30 otherwise, no need IMO 19:30 FIQ: ooh, I like this idea 19:30 there needs to be like 1 main option thats just like vanilla ui 19:31 Demo: The problem is everybody has very different ideas what they mean by "look like vanilla", and they disagree with eachother about what that should mean. 19:31 ah yeah thats true 19:31 Demo: fiqhack has gone further than nethack4 and 4k has 19:31 also, 3.4.3's UI sucks 19:31 try the NH3-relevant options for it 19:31 see if you like it 19:31 yeah i have 19:31 some do, some doesn't 19:31 it is good but not quite good enough 19:31 *don't 19:31 still good 19:31 but yes, I was planning to create an "option set" that lets people make things more 3.4.3-like 19:31 even if I can't see why people would use it 19:32 (i.e. fiqhack has classic botl, nethack4 or 4k doesn't) 19:32 things like "menu by pages" and "borderless menus" are there for 3.4.3 fans but I'm not sure why they're considered such a big deal 19:32 ais523: A bad but familiar UI often seems better than a good but unfamiliar AI. This is one reason why UI should not change often. 19:32 and they cause problems when combined with some of the newer options 19:32 Though the NetHack UI was positively overdue for some changes. 19:32 jonadab: generally IMO if you come up with an UI that is theoretically superior 19:32 but not significantly so 19:32 ahhhhh change 19:32 don't bother 19:32 anyway, my plan for vanilla is to have the NH4 UI as a windowport, without an ability to fall back to unix-tty's UI (just use unix-tty if you want that) 19:32 it will confuse and annoy everyone 19:32 nobody asks me for fallbacks to, say, nethack-x11's UI 19:33 dammit i was afraid that was the future 19:33 oh well 19:33 (which sucks even worse than unix-tty's in many ways) 19:33 let progress be progress 19:33 Demo: it'd be an alternative to the other windowports 19:33 rather than a replacement 19:33 Demo: What are you missing from fiqhack's nh3ize? 19:33 i dont remember 19:33 FIQ: Right, minor UI changes are often bad, especially if done frequently. 19:33 jonadab: Google loves those 19:33 Although *major* UI rearrangements done frequently are much, much worse. See Firefox. 19:33 havent looked at it since junethack but i remember it didnt quite feel right 19:33 jonadab: this would be the reason to have it as a new windowport, so that all the change would happen at once 19:33 FIQ: Yahoo Mail. 19:33 Not for its search engine, thanfully, but many other thigns 19:34 Demo: do you turn off hpcolors too? 19:34 ais523: Agreed. 19:34 no oh god no i dont hate myself 19:34 those aren't in vanilla 3.4.3 19:34 Demo: did you turn off *everything* 19:34 or did you miss some 19:34 and don't work in vanilla 3.6.0 :-P 19:34 let me consolidate a list, one sec 19:34 i have no idea 19:34 (for the benefit of myself later) 19:34 Demo: See, this is what I mean. If you left HP colors on, you don't *actually* want the 3.4.3 interface. 19:35 YOu want *certain aspects* of it. 19:35 i want the bulk of it 19:35 But everybody wants _different_ certain aspects. 19:35 yeah 19:35 It's like trying to get a group of fifty teenagers to agree on one set of pizza toppings. 19:35 ill just stick to 3.4.3 configured exactly how i like it i guess 19:35 tfw you see somebody with cleaver, as a healer 19:36 rikersan: Heh. 19:36 Demo: you aren't even playing 3.4.3, you're probably playing 3.4.3-NAO 19:36 is grasshopper running pacifist? 19:36 rikersan: Well, it's not like healers can get skill any any weapons that do actual damage. 19:36 no i mean locally 19:36 which was a variant in its own right, despite claiming not to be 19:36 I mean, he has both a battle axe, but like 3 pets 19:36 one is archon? 19:36 or similar 19:36 Demo: If you're playing vanilla 3.4.3, you don't have HP colors. 19:36 I don't think a pacifist would wield Cleaver 19:36 i havent played any sort of nethack game in months im on the cleansing part of the cycle 19:36 lol 19:37 ais: yea, I should've noted that 19:37 they normally wield a cream pie or an expensive camera 19:37 I can see wielding Cleaver as a healer if you happen to find it. If you can _hit_ with it, which is mostly dependent on XL and Luck, then hey, why not? 19:37 neither of which is capable of accidentally killing a mosnter 19:37 It'll do way more damage than your bloody scalpel. 19:37 i would totally use cleaver as a healer 19:38 but I was mentioning pacifist 19:38 but yes, as a non-pacifist healer, it makes a lot of sense 19:38 if there's a way to play nethack4 without a bunch of persistent windows, I never figured out how to do that 19:38 ais is right for that 19:38 heck, could be a pacifist run that was abandoned when cleaver was found 19:38 aosdict: you have two options: 19:38 you gotta read your way through the options i think 19:38 a) size the terminal smaller 19:38 aosdict: Sure, you have your game window, your IRC window, your Wiki window, ... 19:38 b) turn off the options for frame, sidebar, etc. 19:38 he's got maxed attributes too 19:38 Demo: what are you trying to do? 19:38 and then increase the message area to take up the entirety of the rest of the space on the screen 19:39 NH4 won't let you have large amounts of unused screen space though 19:39 perminv seems like caffeine for breakfast to me 19:39 http://sprunge.us/TFDU is as close as you can get in fiqhack I think 19:39 of course those things were enchant wep when I couldn't hit anything 19:39 mostly because it didn't cross my mind that someone might prefer blank space to more message area space 19:39 [dnh] rikerw (Nob Dwa Mal Law), 5560 points, T:4227, killed by a soldier ant 19:39 like i wanna use perminv but i also dont want to 19:39 variant request: dnh but without ants 19:40 you want that? 19:40 yes 19:40 FIQ: "draw_piles: true"? that option doesn't exist in vanilla 19:40 i should run a nethack dgl server on my aws server 19:40 not at all just salty about farming gone wrong 19:40 ais523: this was for FIQhack 19:40 FIQ: 3.x default for message window is single. Which is the most horrible thing ever, but that's the 3.x default. 19:40 with bastardised dnh and other dumb stuff 19:40 classic_status is not a thing in nethack4 either 19:40 that file is for matching NAO, I guess? 19:40 FIQ: no, I mean 19:40 vanilla can't highlight object piles 19:40 if you're turning that on it's because you want to match NAO 19:40 it can in 3.6.x 19:40 ah, right 19:40 oh man i forgot how much i liked that 19:41 that must have been backported 19:41 ais523: also, generally people want NAO 19:41 not *true* 3.4.3 vanilla 19:41 FIQ: indeed 19:41 yeah thats probably the case actually 19:41 the people who come to us on IRC, anyway 19:41 what people actually mostly want is tiles on Windows 19:41 but we don't see those people online nearly as often 19:42 probably would prefer to play in browser 19:42 Windows users don't know how to IRC. 19:42 with tiles 19:42 They probably use PHP bulletin boards. 19:42 aosdict: You want the ability for NH4 to deliberately have a bunch of free space? 19:42 You can do that actually 19:42 Or Discord. 19:42 * jonadab shudders. 19:42 But only in 4k 19:42 FIQ: for what you were asking earlier: https://imgur.com/a/FAeYV 19:42 demo: browser is painful though it forces giant screen 19:42 I should add the possibility to toggle extrawin on or off 19:42 then fiqhack can have it also 19:42 I didn't stick the planes onto the end though. 19:42 astral splats? 19:43 they're just -1 through -5 19:43 FIQ: extrawin was always meant to be customizable 19:43 I just couldn't think of many good options to put there 19:43 oh, and the title is wrong because I'm lazy 19:43 oh is that for grunt? 19:43 the title is rather misleading, yes 19:43 ais523: monster lookup info 19:43 ais523: The feature of extrawin that everone complains about is the newbie help. 19:43 Demo: it's actually the number of games on NAO arranged by deathlev 19:43 spell memory reminders 19:43 The farlook info would probably be more welcome. 19:43 not counting any game that is a quit or a simple escape 19:43 how do you splat on astral in nao? 19:43 But, of course, it's only relevant when farlooking. 19:44 I can't believe that many people would have 50 astral deaths before they ascended :-P 19:44 vorpal blade kills have got to be pretty rare 19:44 That would be very frustrating. 19:44 Unless you were doing it on purpose. 19:44 thats probably one of the biggest threats? 19:44 Demo: I frequently die on astral due to underpreparartion 19:44 I don't have the actual commands I was using to generate that data anymore 19:44 biggest threat is running out of HP over time, when you only have AC:0 19:44 does this server have a !tell bot? 19:44 maybe im just never underprepared but wouldnt air kill you? 19:44 ais523: How do you get past Rodney, if you aren't prepared for Astral, though? 19:44 And the Sanctum, eep. 19:44 rikersan: yes, although only affecting IRC (it doesn't go in-game) 19:44 conflict on air makes the elementals fight each other 19:44 well yea 19:45 still not enough 19:45 maybe with a tooled horn 19:45 jonadab: rodney dies in a few turns to twoweaponing, or instantly to a wand of death 19:45 Demo: clearly, air is the deadliest of the elemental planes, from the data :) 19:45 the Sanctum is a real problem, although /oDeath works 95% of the time 19:45 you can normally steal Orcus's 19:45 wands of teleportation break astral 19:45 which is why wand balance patch isnt too dumb 19:45 astral is IME easier if it's 1st altar 19:45 but astral is pretty easy if you just stockpile tele wands the whole game 19:45 than air 19:45 otherwise harder 19:46 ais523: You zap wand of death in the Sanctum, take two steps, and are surrounded again, IME. 19:46 i had to hold out on the astral for like 10k turns in dnh once 19:46 !tell Tarmunora_: in case you didn't get the dnethack chan one (I didn't see confirmation from bot), what do you think of mastery artifacts? 19:46 Will do, rikersan! 19:46 Demo: telejump is a strategy I frequently use, it works fairly well 19:46 it sucked 19:46 Sometimes one step. 19:46 jonadab: oh, I was thinking of against the HPoM 19:46 the rest of the sanctum isn't a big deal 19:46 You know, on reflection, I don't think I like astral's main gimmick of RNGing the altars. 19:46 you just melee youe way through 19:46 Well, sure, if you are a big HP sink. 19:46 there are 2 places in fiqhack notorious for summon spam 19:46 that is why the dnethack elder priest exists 19:46 sanctum and astral 19:46 to simply frustrate everyone 19:46 hes not bad 19:46 But it's just as bad as Astal, IME. 19:46 yes he is 19:47 jonadab: the difference is that on Astral, the popcorn can actually kill you 19:47 Unless you happen to get an Archon on Astral, but you usually don't. 19:47 FIQ: so, to confirm, The Policy (tm) is not to discuss any formal dungeon design proposals with ais around? 19:47 dnh elder priest is only bad if you arent prepared 19:47 also you can't just retreat upstairs to heal 19:47 he has like 40-60 hp 19:47 demo: last run I made that far, vamp barbarian (before the change for no blessed armor), he shredded my armor in like 2 turns 19:47 put on a ring of free action and just dont stand next to him 19:47 aosdict: do not discuss conttent in a dungeon proposal when ais523 is around, yes 19:47 demo: hard for barb tho 19:47 i meeleed him as a dragon barb 19:47 aosdict: the original plan was for the NH4 developers to not discuss dungeon redesign content until the competition 19:47 technically ,replace ais with "everyone" but that's kinda moot at this point 19:47 ais523: That's the problem with the Sanctum, you have to tank damage for 500+ turns before you can get back to the stairs. 19:47 with the insane attack count 19:47 I was able to do that once, out of 3 tries 19:47 but literally throwing the flourite octet at him can kill him 19:48 that sort-of changed, though; we realised that it makes more sense for NH4 developers to simply not read other people's plans until they'd written their own 19:48 orc barb suceeeded, with +7 2x dmg full moon axe 19:48 anyway chris intended for barbs to use bows on him 19:48 wait 19:48 vamp with same died 19:48 It's mostly minor damage, but if you don't regen fast enough, it'll eventually wear you down. 19:48 if you want to talk about this stuff, though, I'll gladly /part, because I shouldn't be able to restrict other people's conversation just by my presence 19:48 vamp bar can't have blessed armor anymore? 19:48 or what? 19:48 I don't understand 19:48 it kills regen rate 19:48 ouch 19:48 same with iron on elves/drow 19:48 nah I was just making sure I understood The Policy 19:48 just shoot arrows at him 19:48 used to only be silver for vamps, no blessed/iron things 19:48 the original plan was to have a competition where we invited everyone to come up with plans at the same time 19:48 once NH4 4.3 was released 19:48 jonadab: this is why I nerfed hp regen 19:48 that's kind-of gone by the wayside now thouh 19:48 because it has a tendency to outheal the damage 19:48 makes vampires a lot less appealing imo 19:49 *though 19:49 which I find poor design 19:49 FIQ: Ah. 19:49 I also intend to reduce the damage reduction 19:49 FIQ: it's really only annoying until the end of the quest though, dnethack QA is very useful 19:49 but haven't done so fully yet 19:49 I want to settle on hp regen I like, but can't. 19:49 some are removed, as part of xhity merge 19:49 you can just remove curses if your armor gets cursed and you need it off 19:49 but not everything is chity-merged yet 19:49 FIQ: Perhaps the HP regen curve is wrong as the game progresses. 19:49 Scales too well. 19:49 aosdict: fiqhack hp regen is nearly identical to fiqhack pw regen 19:49 dnh is su unbalanced, its great 19:49 ikr 19:50 just con instead of wis, healer instead of wizard and a slightly different con bonus 19:50 Because in the early game, you can often retreat upstairs to heal and *still* not heal before new monsters generate and find you. 19:50 jonadab: fiqhack makes hp regen faster earlygame 19:50 demo: my orc barb hit WoW after the chaos quest, everything was ridiculously easy with +14 crystal plate mail and +7 artifact shirt 19:50 FIQ: Ah. 19:50 it works as per a regeneration rate 19:50 a rate of 100 means 1 per turn 19:50 I see. 19:51 this is also how pw works in fiqhack 19:51 And slower late game, I think 19:51 yes 19:51 FIQ: also, in the patch incorporating your pw regen formula, I currently have it randomized 19:51 aosdict: Ah. I wasn't sure how i felt about that 19:51 I have it linear 19:51 you get (total/100) points per turn, plus a (total%100) percent chance of an extra point 19:52 got it 19:52 where is the patch? or is it not hosted anywhere atm 19:52 I previously had u.uen changed to a float, but that would prevent it from ever being used by anything ever 19:52 yeah, don't do that 19:52 aosdict: please don't use floating-point in NetHack, there are some good technical reasons not to 19:53 you can use fixed-point if you like 19:53 ais523: sp_lev 19:53 in 3.6.x 19:53 ugh 19:53 fix gogogogo :) 19:53 it's a git branch but I haven't updated it lately 19:53 let me update 19:53 ais523: what are these good technical reasons 19:53 ais: you're devteam, right? why not use floating point? 19:53 NH4 has some functions for fixed-point arithmetic, used in the scoring 19:53 (jk, just wanted you to be made aware of it) 19:53 because other programs seem to use floats just fine 19:53 basically the issue with floating point is that it doesn't work the same way on every platform 19:53 NH4 uses floating point in the windowport 19:53 to determine how much a save is loaded 19:53 FIQ: UI is fine 19:53 probably something about 3 != 3.0 19:54 this hurts, say, save loading in NH4 (and particularly Brogue, which ended up with broken saves frequently because of thisS) 19:54 rikersan: Do you remember the jokes about the Pentium processor when it first came out? 19:54 well 19:54 compilers have a lot of flexibility in compiling float code, processors have a lot of flexibility in interpreting it 19:54 it's not like nethack ever cared about portable save files.. 19:54 ais523: so it's just for cross-platform saves? 19:54 and the code can even be nondeterministic if you don't explicitly state all the floating point settings you're using 19:54 jonadab: ... no 19:54 NH3 that is 19:54 aosdict: even on a single platform if you're unlucky 19:55 rikersan: floating point bug 19:55 wasn't that in 93 19:55 it displayed incorrectly in some corner cases 19:55 but, say, a platform where floats round up could have a gameplay advantage over a platform where floats round down 19:55 but they were m ajor enough to warrant ar ecall 19:55 ais523: somehow, other programs that support a lot of platforms don't have these problems with floats is what I'm getting at 19:55 *major *a recall 19:55 s/displayed/computed/ 19:55 aosdict: many of them do have the problems but haven't noticed or don't care 19:55 rikersan: I think a _little_ later than '93, but I can't swear to it. I wanna say more like '94 or '95? 19:55 yeah, I wasn't even alive in 94 jonadab 19:55 Not absolutely certain. 19:55 wikipedia says 94 19:55 rikersan: Ah. 19:55 Kids. 19:56 shrug 19:56 Get off hothraxxa's lawn :-) 19:56 there's also the issue that floats have a really complex specification 19:56 hothraxxa? 19:56 and programs that try to do float←→anything else conversion tend to have corner cases that can lead to huge problems 19:56 rikersan: He's even older than I am. 19:57 ah 19:57 I assume you're >40 then? 19:57 Yeah. 19:57 did hothraxxa celebrate his 70th birthday yet? 19:57 here's an example of the sort of thing I'm talking about: http://www.exploringbinary.com/java-hangs-when-converting-2-2250738585072012e-308/ 19:57 Not sure. 19:57 didn't realize hothraxxa was that old 19:57 I thought he was in the 30s 19:57 I guess it never came up 19:58 lol 19:58 that bug must have been in Java for years if not decades 19:58 very widely used, portable program, and yet the float handling was broken in a highly exploitable way 19:58 FIQ: It might've come up in a channel you weren't in. 19:58 Clan channel, IIRC. 19:59 ah 19:59 there was a similar bug in PHP, and the fix is kind-of insane: http://www.exploringbinary.com/why-volatile-fixes-the-2-2250738585072011e-308-bug/ 19:59 php fixes are always insane 20:00 I think I just heard hothraxxa mention it in this channel at some point 20:00 A lot about PHP is insane, though I will admit it is much better these days than it used to be. 20:00 aosdict: Possibly. 20:00 I'd have to grep my logs to be sure. 20:00 FIQ: jonadab: this isn't actually PHP's fault though 20:00 oh yeah I remember that bug 20:00 in PHP 20:00 And actually, the wording could vary enough that it would be hard to be sure. 20:00 hadn't heard of the fact that there was a java equavilent 20:00 ais523: Oh, sure, this is probably underlying architecture stuff. 20:00 other than it wrote float code without fully understanding all the corner cases involved 20:00 and there are a lot of them 20:01 let's just say -ffloat-store exists for a reason 20:01 It's easy to underestimate the problems with floating point numbers. 20:01 ais523: I just don't think that these problems with floats are severe or pervasive enough to completely write them off forever 20:01 do ki-rin have arms? 20:01 float-store? 20:02 We're trained from elementary school through graduate school to assume that approximating real numbers by rounding to the nearest N places is reasonable and sane. 20:02 But we're hardly exposed to converting between bases at all, and very seldom in the same context with the real number stuff. 20:02 It would be logical for comp-sci classes to go into this, but AFAIK they never do. 20:02 rikersan: forelegs, I think. 20:03 rikersan: For ki-rin, imagine something along the spectrum between magic flying faerie giraffe and this thing: https://upload.wikimedia.org/wikipedia/commons/5/57/QingQilin.jpg 20:04 ais523: if there *is* ever a problem with e.g. some platforms rounding floats the wrong way, I don't see why that isn't just a normal bug, and one that can be fixed by rounding it explicitly 20:05 ais523: isn't there a standard for floating point? 20:05 that major architectures support 20:05 FIQ: yes, but it has a ton of options 20:06 aosdict: There's no benefit to using floating point instead of fixed point in a roguelike. 20:06 You do NOT need the perf advantages. 20:06 And you do NOT need to store 0.1 times ten to the -2384 20:06 a) it doesn't even uniquely specify the result of, say, adding two numbers (it depends on the rounding settings), b) many widely used architectures (such as x86+x87) don't follow it to the letter 20:07 the PHP bug I linked above is apparently a result of x86+x87 acting differently from the standard 20:07 (the result is more accurate than it should be, which might not sound bad, but certainly can be if you want the result to be consistent but it's sometimes more accurate than it should be and sometimes isn't) 20:10 jonadab: the benefit is ease of development and readability (two things NetHack doesn't care about, but...) 20:11 floating-point code is very hard to read, because what it does may or may not have any relationship to what it appears to do 20:11 so you normally need to flood it with comments explaining exactly how each line works 20:11 even without fixed point, and for rational numbers, you have to carry around the numerator and denominator for everything 20:12 you can't, for example, return an arbitrary rational number from a function like a float 20:13 ais523: if floating-point code was that unreliable, nobody would ever use it. 20:13 floating-point code is mostly only used in very heavily numerical algorithms 20:13 [dnh] rikerw (Kni Clk Mal Law) entered Minetown for the first time, on T:1755 20:13 aosdict: I'm convinced that NH3 usage of floating point is a bad idea. I'm not convinced with NH4 but I don't know floats enough to judge 20:13 notably computer graphics, which tends to not care about rounding much as it looks decent either way 20:13 Personally I have never felt the need for them 20:13 FIQ: I used it in the scoring for a while 20:14 then had to change it to fixedpoint to avoid inconsistent scores 20:14 ais523: I'm thinking mainly of video games here, and not the graphics applications. 20:14 between platforms / compilers / etc. 20:14 In a standard modern rpg-type game where the player has a lot of stats, those stats are fairly commonly floats 20:14 I think scientific computing is the main environment where accurate floating-point matters, and people doing that become experts on the rules of how floats work 20:15 ais523: Or they use Fortran. 20:15 jonadab: even with fortran you need to know how floats work 20:15 Ah. 20:15 also how fortran's optimizer works 20:15 Oh, dear. 20:15 is using FORTRAN still reasonable in today's age 20:15 (it's fairly simple but you need to know the rules) 20:15 from what I've heard, it's ridiculously fast 20:15 FIQ: Only for certain very narrow purposes. 20:15 but it might be moot these days 20:15 e.g. rand()/rand() in FORTRAN always equals 1 20:15 with good C compilers 20:15 FIQ: C99 was an explicit attempt to unseat FORTRAN 20:16 I don't know whether it worked or not 20:16 but FORTRAN was certainly reasonable to use in 1998 20:16 FIQ: ask some older physical scientists from any research university, they'll either use it or know someone who does 20:16 aosdict: the world also has a fair share of people using COBOL 20:16 that was 19 years ago now, so maybe it's finally started dying out 20:16 that doesn't mean COBOL is a good language 20:16 FIQ: I'll say this, Fortran is a *heck* of a lot more reasonable to use than COBOL, despite being slightly older. 20:17 COBOL should have mostly died out in favour of SQL by now 20:17 legacy systems 20:17 but there are plenty of big companies with legacy COBOL codebases they don't want to port 20:17 they're still around 20:17 but getting rarer 20:17 and thus nened someone to maintain 20:17 that's why COBOL programming pays very good to my knowledge 20:17 It gets very expensive to maintain those things, because you need parts for the hardware, and they are NOT CHEAP. 20:17 but is it worth it for writing COBOL in what is probably an unreadable mess? :P 20:18 COBOL is an excessively readable language :-P 20:18 Do you know what it costs to buy parts for a Vax these days, let alone anything older? 20:18 it's so readable that it's hard to get at the ideas underlying the code sometimes 20:18 ais523: Oh, sure, you can read it ALL DAY LONG and still not know anything. 20:18 you know how beginning programs sometimes comment every line? 20:18 x = y; // assigns y to x 20:18 COBOL is basically just the comments 20:18 *beginning programmers 20:18 COBOL has a ton of required boilerplate. 20:18 (actually, I learned asm like that, commenting every line) 20:19 ais523: when I write asm, I comment *a lot* 20:19 (it's a good tool while you're learning, just so long as you don't write like that in production) 20:19 The one I couldn't get over was that you literally have to declare your variables three times each, using similar and highly redundant but slightly different formats. 20:19 jonadab: there's probably an economy of when costs of supporting old equipment rise above the amount of available funding and the costs of porting to new equipment 20:19 because ASM isn't exactly straightforward 20:19 FIQ: but yes, asm needs more comments than most languages 20:19 Because you have to declare them for input, declare them for processing, and declare them for output. In different places. 20:19 as the same command could do wildly different things in different contexts 20:19 and if I were to write asm uncommented and then come back 2 months later 20:19 I would have no idea what I was doing 20:19 most notably, you need to track what each register is doing at any given moment 20:20 Good programmers don;t go // assigns y to x, though. 20:20 They tell you *why* they're assigning y to x. 20:20 I've probably written comments like these at times 20:20 when tired 20:21 I know I have, when first learning a language. 20:21 As notes to self. 20:21 right, the reason you write such a comment is to help you remember what = means 20:21 experienced programmers typically shouldn't need that 20:21 Right. 20:21 while you're first learning, though, it can help 20:21 yeah 20:22 this sort of thing isn't always obvious, either; VHDL has two assignment operators, := and <=, which are subtly different 20:22 when I comment in asm, I generally tend to, when making a new function, comment each time a register is used for what it holds 20:22 and then do stuff like "do this thing" (bunch of asm) "now do this other thing" (...) 20:22 I don't comment nearly as much elsewhere 20:23 generally just commenting function headers unless it's something longer 20:23 even compilers comment what the registers are for when they generate asm 20:23 and generally only when I consider it non-obvious 20:23 at least as an option 20:23 whic h might arguably be too little 20:23 but meh 20:23 haven't had issues 20:28 lol, 2 cockatrices, 1 hole, team a, and a crow 20:28 methinks this is a bones file 20:28 I wonder if anyone's found my dnh bones ~dlvl7 with a pack of olog-hai 20:28 Tarmunora_: Message from rikersan at 2017-09-21 19:46 EDT: in case you didn't get the dnethack chan one (I didn't see confirmation from bot), what do you think of mastery artifacts? 20:30 I haven't, how long ago was that? 20:30 I've played like 3 runs that passed there in the last 2 days 20:31 also, how'd you get htem there? 20:31 Levelported 20:31 From the ana quest 20:31 When I was splatting Drow anachrnonauts 20:31 ah 20:31 TIL they spawn there 20:31 or was it a summon 20:32 Summoned by an intoner 20:32 The portal was right by the stairs, and an intoner was the first spawn 20:32 Bad luck 20:32 ah 20:32 RIP 20:33 somebody must have tried to geno chickatrices this level 20:33 this is like the 6th one i've killed 20:34 I once had a cockatrice nest on a floor with a dread seraph 20:35 RIP 20:35 I had a barb a long time ago that hit a cockatrice nest on the way to vlad's 20:35 it was at hte upstair 20:35 I died 20:35 It was a minor panic when they all started reviving as zombies when I was looting the room 20:36 RIP 20:36 yeah, dnethack zombies are a tad overkill imo 20:36 particulary at the valley of the dead 20:37 that's just annoying at that point, as both nazgul and shades reform 20:42 Yeah 20:43 Once you get polymorph zombies are no biggie 20:43 poly the corpse :P 20:43 YANI: an extremely rare item/artifact that guarantees that you will leave bones when you die, eligibility allowing. 20:45 aosdict: I don't see how that wouldn't just be a magnet for trolls and bones-stuffers 20:46 yes 20:47 I've considered making special nonwishable unique items that would be nice finds 20:47 but I don't think the game needs it 20:52 [4k] Zappi (philbo) (Wiz Elf Fem Cha), 14868 points, T:5730, killed by a white unicorn 20:53 ais523: what is the sanest you think 20:54 making 3 new role/race/polyform flags intended to be treated as extrinsics 20:54 or split off the properties that give extra boosts as extrinsics into their own thing? 20:54 I think long-term, race and polyform shouldn't be distinct 20:54 they sort-of-are and sort-of-aren't at the moment 20:55 what about role? 20:55 then role should be a sort of orthogonal thing to polyform 20:55 should they all be a single flag? 20:55 there's no reason that player-monsters should always be human 20:55 perhaps the actual end goal here is to have every monster described by a race/role pair 20:55 e.g. gnomish wizard is just a gnome that's also a wizard 20:55 the property code actually gives the various elves sleep reas as XL4 as part of being elves 20:55 and in many cases (e.g. unintelligent monsters), the role is blank 20:55 in fiqhack 20:56 ais523: I have a proposal for this somewhere 20:56 but it requires pretty much rewriting monst from scratch 20:56 which sounds painful 20:56 I see the fact that elves get sleep res at xl4 as not really different from the fact that red dragons get fire res 20:57 ais523: I just figured that is how it is for player elves 20:57 and it should be symmetric 20:57 that's why I did it :P 20:57 ultimately the gameplay impact is minimal 20:57 since I think it only affects level drained elves 20:58 (it was not exactly complex to add, but was done more or less automatic by making a potential existing race for a monster give them the relevant PM as race) 20:58 the property code also handles monster polymorph appropriately, kind of 20:59 because I intended to make monster poly behave as player poly 20:59 just that I never finished that part 21:01 ais523: okay, then a rare item that guarantees you WON'T leave bones when you die :) 21:16 -!- rikersan has quit [Ping timeout: 240 seconds] 21:17 FIQ: still want to see the pw regen patch? it's quite small and uninteresting 21:17 I hadn't pushed it till just now 21:21 -!- rikersan has joined #hardfought 21:23 aosdict: yeah I bet it was small 21:23 was just curious 21:23 where? :P 21:23 aosdict: and because I was wondering if you did some changes to it 21:23 which apparently you did (1-99 is random instead of linear) 21:26 -!- rikersan has quit [Ping timeout: 240 seconds] 21:31 -!- rikersan has joined #hardfought 21:35 -!- rikersan has quit [Ping timeout: 248 seconds] 21:37 -!- yuring has quit [Quit: Connection closed for inactivity] 21:41 -!- rikersan has joined #hardfought 21:44 -!- yuring has joined #hardfought 21:45 -!- rikersan has quit [Ping timeout: 240 seconds] 21:46 FIQ: https://github.com/copperwater/xnethack/tree/fiqhack_wizard_patch 21:46 name changed because I intend to make some changes to wizard :) 21:48 ah :P 21:49 aosdict: rip floats 21:49 rip 21:50 I see that you use 1/300 instead of 1/100 21:50 I guess you didn't like the +33 for wizards :P 21:50 common denominator 21:51 -!- rikersan has joined #hardfought 21:55 -!- rikersan has quit [Ping timeout: 240 seconds] 22:01 -!- rikersan has joined #hardfought 22:06 -!- rikersan has quit [Ping timeout: 240 seconds] 22:13 -!- rikersan has joined #hardfought 22:17 -!- rikersan has quit [Ping timeout: 240 seconds] 22:23 -!- rikersan has joined #hardfought 22:27 -!- rikersan has quit [Ping timeout: 248 seconds] 22:31 !tell K2 fh updated 22:31 Will do, FIQ! 22:33 -!- rikersan has joined #hardfought 22:36 [fh] MTF (mtf) (Kni Hum Mal Law), 11623 points, T:449, killed by a small mimic 22:37 -!- rikersan has quit [Ping timeout: 248 seconds] 22:43 -!- rikersan has joined #hardfought 22:48 -!- rikersan has quit [Ping timeout: 252 seconds] 22:58 [fh] MTF (mtf) (Kni Hum Mal Law), 21451 points, T:1088, killed by a little dog 23:03 -!- rikersan has joined #hardfought 23:09 FIQhack updated 23:09 K2: Message from FIQ at 2017-09-21 22:31 EDT: fh updated 23:11 -!- rikersan has quit [Ping timeout: 240 seconds] 23:22 FIQ: so playing around with a healer under your pw regen formula, and with my Wis 18 I ought to gain back 0.57 hit points per turn on average. 23:22 This means that in 10 turns, I can cast healing again... and that seems susceptible to spamming. 23:24 I guess hunger is a limitation? But it only costs 10 hunger per cast, so about the same as if I were wearing a ring of regeneration, except it's probably numerically better than that 23:25 how does Pw regen rate + spamming healing at every opportunity compare to HP regen rate? 23:25 a healer also has boosted natural hp regen in fh 23:25 a healer, however, is not very good at attacking things 23:25 so I considered it OK 23:26 [nh4] Galahad (phollenback) (Kni Hum Mal Law), 49000 points, T:4440, killed by a gnome lord 23:26 fiqhack healers are also guranteed to start with blessed eucalyptus leaves which helps earlygame pet use 23:26 yes, that's also in 4k 23:26 (healer is the role that gets the +33 rate to HP boost, like wiz gets +33 rate in Pw regen) 23:27 so a healer, if played by someone moderately competent, should be fairly invincible, and not moderately difficult like in vanilla. 23:27 hard earlygame, much less spellcasting capabilities lategame (wizard's are stronger than healers) 23:27 so I'd disagree 23:27 however, yes, it is definitely a strong role lategame 23:27 especially so in fiqhack 23:27 -!- rikersan has joined #hardfought 23:28 *wizards 23:28 well, the point of me doing these is so that I don't have to test them all out myself, hopefully 23:28 mhm 23:29 well this is the judgement I make 23:29 I have not thoroughly tested all roles in fiqhack for balance 23:29 I have tried to be reasonable 23:29 but it possible that some might be too strong 23:30 however, I don't really think fh healer is stronger than fh wiz or tou which is generally the goto role for "strong lategame" 23:30 it will survive better early, that's for sure 23:30 but its attacking capabilities is just as crappy as in vanilla 23:31 worse than 3.6.0 even, since in 3.4.3 (which fh is originally based off) they can't multishoot knives 23:32 -!- rikersan has quit [Ping timeout: 252 seconds] 23:33 I need to work on some later-game patches. Power regen is nice because it applies across the whole game, but I haven't really done anything specifically for lategame 23:37 -!- rikersan has joined #hardfought 23:42 -!- rikersan has quit [Ping timeout: 260 seconds] 23:48 -!- rikersan has joined #hardfought 23:55 -!- rikersan has quit [Quit: Lost terminal]