00:00 (in the overhaul I'm not worrying too much about the present code for things like monster generation and AI as it can be changed if necessary) 00:03 Wait, Endgame can break conducts? ← the idea is to make them physically impossible to break because if the player attempts to break them, we either have to count that as a break (problematic as it's not meant to be able to screw up your win here) or count it as not a break (problematic because it encourages you to change the playstyle you've used all game) 00:04 so preventing the attempt is the only remaining option 00:04 anyway, it's been interesting to read the response 00:04 there are a few fundamental philosophical differences between you and me, I think 00:05 maybe that's something that's worth discussing separately 00:06 Though, in this case, you still haven't acknowleged the gods, so where do you end up if you overcome all these final obstacles and enter the portal? Do you still ascend? ← you just go through the portal and win, we don't find out what happens next 01:56 -!- bug_sniper has quit [Ping timeout: 246 seconds] 01:57 -!- raisse has joined #hardfought 01:57 -!- mode/#hardfought [+v raisse] by ChanServ 02:00 -!- nht has joined #hardfought 02:07 -!- greqrg has quit [Quit: Disconnected] 02:28 -!- raisse has quit [Ping timeout: 258 seconds] 02:40 -!- raisse has joined #hardfought 02:40 -!- mode/#hardfought [+v raisse] by ChanServ 03:05 -!- nht has quit [Read error: Connection reset by peer] 03:05 [nd] Raisse (Wiz Gno Fem Neu) became literate by engraving "Elbereth", on T:3636 03:06 [nd] Raisse (Wiz Gno Fem Neu) rejected atheism with a prayer, on T:3680 03:39 -!- nht has joined #hardfought 03:51 -!- nht has quit [Ping timeout: 246 seconds] 04:22 [nd] Raisse (Wiz Gno Fem Neu) chose a runed dagger to be named "Sting", on T:1669 04:26 -!- ais523 has quit [Quit: quit] 04:51 -!- nht has joined #hardfought 05:06 -!- nht has quit [Read error: Connection reset by peer] 05:08 -!- nht has joined #hardfought 05:25 -!- Grasshopper has joined #hardfought 05:25 -!- mode/#hardfought [+v Grasshopper] by ChanServ 05:35 [nd] Grasshopper (Hea Gno Mal Neu) killed Orcus, on T:62185 05:38 "You now detect it where the vampire bat was." Hmmmmmmmm 06:02 [nd] elagabalus (Pri Hum Fem Neu), 255830 points, T:25941, killed by invisible Nalzok 06:05 !gt Nalzok 06:28 -!- Grasshopper has quit [Ping timeout: 255 seconds] 06:28 aosdict: Yes. 06:37 -!- captain42 is now known as captain 06:37 -!- captain has quit [Quit: drank too much rum and fell overboard] 06:40 -!- captain42 has joined #hardfought 06:49 -!- nht has quit [Ping timeout: 260 seconds] 06:51 -!- nht has joined #hardfought 07:05 -!- tacco has joined #hardfought 07:11 -!- raisse has quit [Quit: Raisse suddenly disappears!] 07:11 -!- raisse has joined #hardfought 07:11 -!- mode/#hardfought [+v raisse] by ChanServ 07:13 -!- captain42 has quit [Changing host] 07:13 -!- captain42 has joined #hardfought 07:15 -!- Grasshopper has joined #hardfought 07:15 -!- mode/#hardfought [+v Grasshopper] by ChanServ 07:16 -!- raisse has quit [Ping timeout: 248 seconds] 07:36 [nd] Grasshopper (Hea Gno Mal Neu) killed Baalzebub, on T:63508 08:35 !tell ais523 I'm always up for a discussion of design philosophy 08:35 Will do, aosdict! 08:38 -!- raisse has joined #hardfought 08:38 -!- mode/#hardfought [+v raisse] by ChanServ 08:53 -!- Grasshopper has quit [Read error: Connection reset by peer] 09:21 -!- noty has quit [Quit: WeeChat 1.9] 09:49 -!- Grasshopper has joined #hardfought 09:49 -!- mode/#hardfought [+v Grasshopper] by ChanServ 09:50 -!- bug_sniper has joined #hardfought 10:35 -!- bug_sniper has quit [Ping timeout: 248 seconds] 11:05 jonadab: so I'm working on porting dynahack's monster lookup thingy 11:05 but is it a good idea? 11:05 jonadab: so you mention liking the NH4 encyclopedia system since it provides useful descriptions and not just random quotes, but couldn't it easily provide both, similar to the "acid blob" entry in the vanilla encyclopedia? 11:06 maybe NH4 does this already and I'm not aware of it? 11:06 I am referring to this http://home.fiq.se/monlookup.png 11:06 The 2nd part there already exist since previously 11:07 The 1st part is the thing I am porting from dyna 11:07 FIQ: you mean the stats and resistances part? 11:07 (It's not finished, i.e. it lacks info on flags and attacks) 11:07 aosdict: yes 11:08 hmm. Not sure I'd want to reveal all of that to an unspoiled player (the fact that magic resistance and corpse-conveyed resistance are a thing) 11:08 aosdict: DynaHack does this, but I'm not sure if it's a good idea or not 11:10 Difficulty is fine. Speed is fine, it can be observed easily enough. AC can be found via stethoscope, so probably fine. Locations of appearance might give away some things, but probably nothing terribly important since there aren't very super specific monsters. 11:12 Resistances... not sure I'd want to give the player a laundry list of a) which resistances exist in the game and b) what that monster is not weak against 11:12 One alternative I am considering is to have a "monster memory" that builds up over time across saves as players discover things 11:13 aosdict: I specifically dislike the random quotes. 11:13 jonadab: ^ what do you think? 11:14 They A) aren't relevant, B) are often misleading if you take them at face value, and C) are probably fair use but it's not worth the risk of getting a lawyer's attention. 11:14 And D) add absolutely nothing to the game. 11:15 FIQ: Is the excerpt at the bottom from data.base and the rest is automatic from monst.c ? 11:15 Yes 11:16 I think I like it. What's the UI for getting it? Same as current Encyclopedia? 11:16 you can get it by pressing : instead of . when farlooking like how you get quotes at the moment 11:16 Oh, one caveat: I agree with ais523 that monmr needs to be called something besides "magic resitance", because confusion. 11:17 aosdict: I'm ok with giving Wiki/spoiler information in-game. 11:17 I don't think making the player look things up on the wiki adds any value. 11:18 jonadab: how informative should conveyances be 11:18 I'm not _adamant_ about the _need_ for all such info to be given in-game, like players of other roguelikes who hate NetHack for even _having_ a wiki. 11:18 FIQ: I'd just list the possibilities, probably wouldn't bother with probabilities? 11:18 "Corpse conveys foo, bar, baz resistances" or "Corpse conveys foo [24%], bar [24%], baz [24%] resistances"? 11:18 jonadab: ok 11:19 Hmm, I suppose the Guidebook does say some corpses give you special powers when you eat them, so that's not a spoiler. 11:19 I'd probably word it "may convey", though. 11:19 aosdict: Again, I'm ok spoiling anything you can look up on the wiki. 11:20 To me, it's not an information leak unless you need to know the RNG state or other unexposed information like that to deduce it. 11:24 jonadab: to what you said about the quotations: A) they're there for flavor and may hint at special behavior, B) doesn't matter if it's always prefixed by an accurate non-quote description, C) if lawyers haven't been a problem for the last 30 years they probably won't be now, and D) see A. 11:26 jonadab: suggestion for a better term than magic resistance? 11:26 FIQ: Hmm. Let me think about that. 11:27 aosdict: Any "hint at special behavior" notion you have about the quotations just proves my point about them being actively misleading. 11:27 They are WAY more likely to hint you in a wrong direction than in a right one. 11:27 And their flavor is usually wrong for NetHack as well. 11:32 FIQ: "warding"? "aegis"? "mastery"? Not sure, maybe we should raise this question separately and get feedback from several people. 11:32 "magic cancellation"? :P 11:32 pls no 11:32 magic cancellation fits just as well as magic resistance 11:33 but is *also* already used 11:33 "magical buffer"? 11:33 it's basically a savign throw 11:33 *saving 11:33 magic protected? 11:33 FIQ: "saving throw"? 11:33 willpower? 11:33 Oooh, I kind of like that one. 11:33 (that would require changing the enlightenment message to "magic-resistant" but that's fine.) 11:34 wait, how is enlightenment relevant? 11:34 it doesn't say anything about monMR 11:34 FIQ: it currently says "magic-protected" for player MR 11:34 oh 11:34 hm 11:34 I think FIQHack has changed this already 11:34 so if you made it the thing here, you should change it 11:35 to be consistent with what the community calls it 11:35 apparently I didn't 11:35 I should 11:35 jonadab: like what? magic protected or willpower? 11:35 Willpower doesn't make sense in all contexts, like elemental attacks or force bolts. 11:36 FIQ: willpower 11:36 -!- rikersan has joined #hardfought 11:36 aosdict: Nothing's going to make sense in all contexts, because it does so many different things. 11:36 That's the one way in which it _is_ the same as player MR. 11:36 Or MC for that matter. 11:37 well, it's a rough measure of a monster's chance to reduce or nullify incoming magical effects 11:37 ^ that I think makes sense in all contexts, but is too long, of course 11:39 * jonadab can imagine the spoiler if we had about six of these properties like this. "To be fully protected against all the weird things the game can throw at you, you need magic protection, magic resistance, magic cancellation, magic buffer, magic defense, and escape magic, plus all the elemental resistances, good AC, and life saving." 11:40 [Insert two-page table summarizing which of the above protect you from each kind of weird thing that can happen.] 11:41 aosdict: "magic nullification"? 11:41 The NetHack codebase also uses the term "magic negation" as a synonym for MC. 11:41 That's not too descriptive though... 11:41 Indeed. 11:42 Also, not everything it defends against is magical. 11:43 jonadab: have you seen the MC table? 11:43 it's pretty much like you describe 11:43 due to how inconsistently it works 11:44 and 3.6 made it even more complicated 11:44 From the wiki: 11:44 https://nethackwiki.com/wiki/Magic_cancellation#What_magic_cancellation_protects_against 11:44 In earlier versions of the game, the idea was that some types of armor covered your entire body surface, so the attacker effectively could not touch you despite his successful attack. Over time, with the addition of the cornuthaum and many types of special attacks, this point has become moot, and the current explanation can only be "it's magic". 11:44 lol 11:45 hence why all the cloaks used to be MC3 11:45 finally a fountain wish :D 11:45 [dnh] rikerw (Brd Clk Mal Neu) wished for "blessed figurine of a tulani eladrin", on T:289 11:45 now he can wind for me :D 11:45 You have a bad feeling about this. 11:45 nope, tame :D 11:50 two bags in a shop, both are bag of tricks 11:51 heh 11:54 [4k] Moo (sk1j) (Hea Gno Fem Neu), 2436 points, T:1072, killed by a cave spider 11:56 [sp] k2 (Pri Hum Mal Law), 1002 points, T:1674, killed by a werejackal 12:17 k2: why do you always pick human priest? 12:17 because most others dont 12:18 I play human priestesses 12:18 -!- greqrg has joined #hardfought 12:18 either neutral or lawful 12:19 how often do you ascend those? 12:19 i tend to go back and forth on those two alignments for priest. depends on what kind of artifacts I am aiming to wish for 12:19 I've seen k2 splat a bunch of sp priests 12:19 so I'm curious how hard sp/priests are 12:19 i splat a lot in general ;) 12:20 I've never gone far with anything except dnh hedrow priests 12:20 me too, and I don't play spork 12:20 and those are stupidly op 12:20 I ascend more priests than archeologists but fewer than wizards. 12:20 my ascension rate is abysmal but that's because I use r-strategy for early characters 12:21 every once in a while one floats on top and then I start making an effort 12:21 lol 12:22 rikersan: Priest is a moderately difficult role. Clearly harder than Valkyrie, Samurai, Ranger; but clearly easier than things like Arc and Hea. 12:22 I've never liked samurai 12:22 ranger isn't difficult? 12:22 I can't get the hang of it 12:22 and ranger is eh for me 12:22 ^ 12:22 I run out of ammo too quickly 12:22 raisse: Ranger is one of the easier roles, once you learn that you A) can and B) should use ranged attacks at point-blank range. 12:23 If you have not-enough arrows, you supplement with daggers. 12:23 and untrap all the traps 12:23 Yes. 12:23 And _eventually_ you get the Longbow. 12:23 and go into the first level of the quest as soon as you get there, never mind your level, and get all the arrows from the centaurs 12:24 isn't that known as the worst designed home level? 12:24 Yes, although, the Ranger quest can be scary if you don't have reflection. High tendency to have attack wands. 12:24 for the maze and attack wands 12:24 (that's what I did with my only fairly successful ranger, died at the castle for lack of MR, I think) 12:24 hm 12:24 I might try another 12:24 when my bard splats or ascends 12:24 rikersan: Yes, but the way it's designed isn't _dangerous_ to the player character, just annoying. 12:24 I think I had an amulet of reflection 12:24 from soo 12:25 jonadab: hm ok 12:25 +k 12:25 I never do soko 12:25 I just can't get it 12:25 I follow the tutorials but i always screw up 12:25 and then have to tele boulders 12:25 At this point I think I have all eight of the vanilla Sokoban levels in muscle memory. 12:25 I've done it maybe 3 times in the last couple months, 2/3 by abusing a binder spirit and 1/3 with lots of teleportation of boulders 12:26 Now, Binder, there is a role I couldn't get the hang of. 12:26 though to be fair I mostly play barbarians, and they're high strength and get MR and reflection from teh QA 12:26 jonadab: startscum for enki, buer 12:26 enki allows you to utilize the short swords you get off kobolds 12:26 I don't startscum. 12:26 I try to ascend every game. 12:27 Unless I'm doing something like Most Unique Deaths for a tournament. 12:27 then get your pet to damage things and try to get the kill on it 12:27 to get levels 12:27 rikersan: I happen to be working on a proposal for quest level redesign. Haven't got to Ranger yet, but don't worry, that level will be killed with extreme prejudice. 12:27 _kill it with fire_ 12:27 aosdict: Have you seen Khor's version of it? 12:27 what's his? 12:27 and does khor do a lot of maps? iirc he did the orc mine's end 12:28 I know Khor said he had a lot of good ideas but I haven't seen a repository of them anywhere 12:28 He's done several. I think four of them are in Fourk. 12:28 Orctown, Peanut Island, Ranger Quest Home, and the "Khortown" that I adapted as a Garden of Temptation variant. 12:29 peanut island? 12:29 something to do with zoos? 12:29 Peanut Island is a BigRoom variant. 12:29 and what's the garden of temptation? 12:29 ah 12:29 I really like his mine's end (I think the .des credits him), if he made that 12:29 Garden of Temptation is a Gehennom special level that features nymphs, foocubi, ... 12:29 the one with a balrog fig 12:29 Yes, that's his. 12:29 cool 12:30 jonadab: so where could I find these maps, other than digging through fourk des files? 12:30 it would be better if it was guarenteed non-cursed 12:30 or maybe deathdropped by something 12:30 Here's his ranger quest home: https://github.com/tsadok/nhfourk/blob/master/libnethack/dat/Ranger.des#L11 12:30 because I've had to run from a randomly formed balrog 12:30 >_> 12:30 ooh, that's nice looking 12:31 aosdict: Dunno. 12:31 still more 1-wide segments than I'd prefer but eh 12:31 aosdict: Most of them were pastebinned when he made them. 12:31 aosdict: Yes, but compare it to the original one. 12:32 Peanut Island is here: https://github.com/tsadok/nhfourk/blob/master/libnethack/dat/bigroom.des#L524 12:33 jonadab: did you make fourk? 12:33 oh I've seen that 12:33 Khortown: https://github.com/tsadok/nhfourk/blob/master/libnethack/dat/garden.des#L265 12:33 rikersan: Yes. 12:33 Ah, so a peanut-shaped island. 12:34 dnh has it as a sunless sea variant 12:34 rikersan: Ah, that would also be reasonable; but Fourk doesn't have Sunless Sea (it's a Slash'EM special level originally).\ 12:34 ya 12:34 it's got a drawbridge instead of the door (2-wide drawbridge) and the magic lamp is in a chest inside the "ship" 12:35 I assume I don't need to link to the Orc Temple Mine's End, as you've likely already seen that. 12:36 -!- hf_guest_86726 has joined #hardfought 12:36 yep and I love it 12:36 it's got a better reward 12:36 plus, when branchporting, it will take you to there 12:36 and you can use the altars if you convert them 12:37 -!- hf_guest_86726 has quit [Client Quit] 12:38 YANI: allow the des parser to interpret < and > on the MAP as specific STAIR commands. 12:38 yes 12:38 would make reading them so much easier 12:39 Ideally I want to get maps as close to pasteable into a wiki replacecharsblock as possible. 12:39 Yeah, I kind of want to be able to put boulders in as 0 as well. 12:40 And traps as ^ with the caveat that if there's not a TRAP listing that tile, it's an error at compile time. 12:40 (Because you've gotta specify what kind of trap.) 12:40 That's a good approach. 12:40 -!- raisse has quit [Ping timeout: 255 seconds] 12:41 Does it already ignore + characters, or do you have to specify a corresponding DOOR? 12:41 Currently, if you forget the DOOR you just don't get a door. I'd rather see that be an error too, yes. 12:41 Of course, the _main_ thing I want to do with des files is provide the ability to give monsters weapons. 12:41 Directly, not just spawning them on the same square and hoping they pick them up. 12:41 s/weapons/items 12:42 The _main_ thing I want to do with des files is be able to use a character (probably ? but I am flexible) to say "this part isn't specified by the MAP, even though it's within the rectangle; fill it in with filler content same as around the edges." 12:42 that might do weird things with filler algorithms though 12:43 currently they only work across an entire level 12:43 I'd also like to be able to specify items by appearance (e.g., "smoky potion", with a flag for whether, if that appearance isn't used in the current game, to turn it into random or omit the item). 12:43 aosdict: Currently, you can already sort of kind of do this, but you have to use multiple MAP segments and piece them together. 12:44 Which is ugly and horrible and bad for maintainability. 12:44 If I didn't want to take Asmodeus' Lair and kill it with fire, my second choice for what to do with it would be to make the whole thing one MAP, with fill-in areas on the top right and lower right corners. 12:45 So the MAP can be all one piece, like it's shown on the wiki. 12:45 -!- raisse has joined #hardfought 12:45 -!- mode/#hardfought [+v raisse] by ChanServ 12:47 Oh, also, another VERY important thing I want to do with .des files is give each level the ability to specify its size (not just of the map, but of the whole level), so that special levels like the Castle, that depend on the player NOT being able to go around the edge, can still be used even if ROWNO and COLNO are larger than the traditional values. 12:47 Oh, so not so much "full level map with 10x10 square of filler" so much as "small irregular special area embedded in filler" 12:47 aosdict: Yes, approximately. 12:48 Oh, I also want to allow randomness within the map, as in, these six tiles here are either floor or lava, at random; and this other set of nine tiles over here, independently, are either floor or lava, at random, etc. 12:48 (I have a level in Fourk that was designed around the idea that would be possible; currently, it's hardcoded and not nearly as interesting.) 12:48 3.6.0 lets you do that with a specified probability with REPLACE_TERRAIN 12:48 for rectangular areas at least 12:48 Yeah, I want non-rectangular areas. 12:49 Actually, backing up, the single _main_ most important thing I want to do with .des files is have the code that reads them not be written in yacc. 12:49 Because I want to be able to make improvements. 12:49 And I feel like learning C is enough of a challenge without adding YACC to it. 12:51 My reasons for wanting to do that are the same as FIQ: I want to be able to modify levels without recompiling. 12:51 Ah, I don't care about that particularly; but if it gets rid of the YACC and gives me a level file parser I can work with... 12:52 yacc can go die in a fire. 12:52 unrelated, but does anyone know off the top of their head of a function call that says if a monster has line-of-sight / can see another monster? 12:52 Downside of that is that you don't get the direct benefits of using a parsing library. Upside is that you no longer depend on or need to code for said parsing library. 12:52 NeroOneTrueKing: Yes in NH4, not sure if the same in NH3. 12:53 NeroOneTrueKing: mcansee and mcouldsee, IIRC? 12:54 Hmm, seems I misremember those function names. 12:54 NH4, looks like. In dnethack it looks like mcansee means that the monster isn't blinded 12:54 Hang on. 12:56 Oh, it was msensem 12:56 Yeah, msensem() 12:56 Alas, thanks. 12:57 [nd] Raisse (Wiz Gno Fem Neu) had Magicbane bestowed upon her by Thoth, on T:2551 12:57 jonadab: I kind of want to tackle that as my next project but *I* don't really know much about yacc or lex 12:58 jonadab: C isn't that hard 12:58 it's pretty simple once you get the hang of it 12:59 rikersan: I'm getting there. 12:59 But it's still way more of a pain to work in than Perl. 12:59 aosdict: I don't think knowing lex and yacc would actually help that much if the goal is to replace them. 13:00 [nd] Raisse (Wiz Gno Fem Neu) became literate by reading a book, on T:3615 13:00 Not just to replace them, but to replace them in such a way that their full functionality and cross-compatibility on all platforms is maintained. 13:01 Yeah, it would probably be easier if I were only worrying about Linux. 13:07 -!- raisse has quit [Ping timeout: 258 seconds] 13:07 -!- nht has quit [Ping timeout: 258 seconds] 13:09 -!- nht has joined #hardfought 13:12 haha, creating two different quest nemeses in wizard mode lets you get two Bells of Opening 13:16 -!- nht has quit [Ping timeout: 240 seconds] 13:22 if you polyself into a unique demon (some code modifications required), all the demons you gate in will be the same unique demon 13:26 that sounds like a bug 13:27 doesn't slex have a polymorphitis race like that? 13:27 that only does uniques or smth 13:31 kindof buggy 13:31 it just makes more demons of the kind you are 13:32 to avoid you gating in a demon lord or something when you're polymorphed into a regular demon 13:32 why not just have a special case for you gating vs enemies gating 13:33 also yani: there should be a message for enemy gating 13:34 http://home.fiq.se/monlookup.png 13:36 FIQ: I bet that would be really useful in slex 13:37 aosdict: that would be really nice 13:39 aosdict: slex has a "pokedex" 13:39 it does basically the same thing 13:39 it's autogenerated from flags though 13:39 except the way slex outputs it confuses the curses UI a lot 13:39 From my perspective of "I like changes that could go smoothly into vanilla NetHack", I think the devteam would not want this, but jonadab's point that basic monster info should not really be spoilers stands 13:39 because apparently real popups was too hard 13:40 I guess my hangup is that it reveals certain systems to the player that normally they would have to figure out themselves. 13:40 FIQ: can you do one for floating eye? 13:41 http://home.fiq.se/floating_eye.png 13:41 -!- nht has joined #hardfought 13:41 FIQ: it wasn't that hard to move into real popups 13:42 NeroOneTrueKing: the slex thing? sure 13:42 you implement it for slex ;) 13:42 I'm sure it's easy 13:42 just amy never bothered 13:42 oh right, it doesn't paralyze in fiqhack 13:42 because she doesn't care about curses UI at all 13:42 lol, there was even code for it but it was commented out 13:42 why? 13:42 because the spacing and newlines didn't work 13:42 lol 13:43 the "figure out how many spaces are needed to pretend to be a newline" stuff, to be precise, didn't work. 13:43 I'm not entirely sure how it's done atm, but from curses UI's POV it's basically a huge pline 13:43 and looks ridiculous 13:44 "Beware, the Monastery of the Earth-Lord is surrounded by a great graveyard." 13:44 um 13:44 no it isn't 13:44 huh? 13:44 this is monk quest text 13:44 lol 13:45 it appears to have been copied from the priest quest text 13:45 as well as the design of the home level 13:45 that's the sort of thing I would expect from slex 13:45 not vanilla 13:45 and the design of the locate level is copied from some other quest 13:45 well it originated in SLASH'EM 13:46 I guess vanilla never bothered doing propoer QA of it 13:48 FIQ: do a side-by-side comparison of monk quest text and priest quest text 13:48 like 80% of the messages are the same 13:48 -!- Tarmunora__ is now known as Tarmunora 13:50 the lair is the exact same too 13:52 !tell K2 pushed a fiqhack update that adds monster lookup 13:52 Will do, FIQ! 13:52 mmmmk 13:52 K2: Message from FIQ at 2017-10-07 13:52 EDT: pushed a fiqhack update that adds monster lookup 13:53 wait 13:53 I broke it 13:53 FIQhack updated 13:55 pushed a fix 13:57 FIQhack updated 13:58 K2: sorry for the hassle 13:58 I feel bad about this sometimes, keeping nagging you :p 13:59 did you make your macro k2? 13:59 heh no 13:59 FIQ: you dont have to apologize, i told you it's not a hassle 13:59 -!- LarienTelrunya has joined #hardfought 14:00 [dnh] rikerw (Brd Clk Mal Neu) entered Minetown for the first time, on T:1085 14:03 I think izchak died :( 14:13 Beholder: automatic messages upon people joining the chat please :D 14:13 LarienTelrunya: Message from aosdict at 2017-10-06 19:46 EDT: You must make dissolved undead potatoes wearable as shoes, jonadab and I demand it 14:13 lol 14:14 well, if you can tame one, you can ride it; that's gotta be close enough 14:16 no 14:16 not enough 14:16 larien: _sigh_ that's what I get for copy pasting 14:16 it works for slex too though 14:16 context: github 14:16 -!- raisse has joined #hardfought 14:16 -!- mode/#hardfought [+v raisse] by ChanServ 14:16 ah, I see 14:16 also you seem to have played some while I was gone; did you enjoy aggravate monster's "Several monsters come out of a portal" feature? 14:17 NO 14:17 not at all 14:17 would not recommend 14:17 -!- nht has quit [Ping timeout: 255 seconds] 14:18 wait, is that from getting agg mon trinsic? 14:18 huh 14:18 heh, bugsniper managed to take a mahou shoujo all the way to Orcustown 14:18 -!- rikersan has quit [Quit: Lost terminal] 14:20 and I was just about to add "yeah, aggravate monster does that in slex, and mahou shoujo start with it" 14:20 rikersan: come back :) 14:20 -!- nht has joined #hardfought 14:21 [nd] Raisse (Wiz Gno Fem Neu) changed form for the first time, becoming a werejackal, on T:5074 14:22 aosdict: Platform compatibility really shouldn't be a problem for parsing .des files. 14:23 If anything, lex and yacc are a *royal* pain to get working on some platforms, notably Windows. 14:23 I am guessing that when they did 3.4.3, they probably had to run lex and yacc on *nix and copy its output over into a tarball to send to the Windows systems for compiling. 14:24 jonadab: you apparently were wondering why Imelda Marcos isn't a slex deity; she's a quest nemesis :P 14:24 Because even these days with MinGW, getting that stuff to work is a pain. 14:25 FIQ: That looks pretty good. 14:25 -!- bouquet has joined #hardfought 14:27 LarienTelrunya: Yeah, we figured it out. 14:28 22:56 YASI: diagonal movement is disallowed on even turns; non-diagonal movement is disallowed on odd turns. <----- idea for an evil artifact :) 14:29 Actually, make diagonal movement disallowed on turns divisible by 3, non-diagonal movement disallowed on turns divisible by 7, and if you forget and try it, you get drained a level. 14:29 EPI: Sword of the Bishop. Very strong sword, autocurses when wielded, forces diagonal movement 14:30 This means on turns divisible by 21 you are not allowed to walk or be running or traveling. 14:30 FIQ: Heh. 14:30 jonadab: haha that would be ultra evil! 14:30 FIQ: thanks! will implement :) 14:35 Mandevil: why doesn't nhs store version number for dnethack and 4k? 14:35 they both do rather significant changes between them 14:36 -!- rikersan has joined #hardfought 14:36 larien: am back, >_> accidentally shutdown computer 14:36 and huh I did'nt realize they started with agg 14:36 that's annoying 14:36 very much so 14:37 ah, welcome back; what I said was: yeah, aggravate monster does that in slex, and mahou shoujo start with it 14:37 fiq: only wieldable when polymorphed intoa grid bug 14:37 larien: ah cool 14:37 btw, are angels supposed to be OP? >_> 14:37 rikersan: play SLEX! *bundlebundlebundle* do you know about the GM mode? 14:37 > bundlebundlebundle 14:37 and no? 14:37 I'll play in a bit 14:37 angels are considered the strongest race currently 14:37 I'm working on homework that's like a wk overdue 14:37 larien: hm 14:37 very much so I detect 14:38 GM mode means that I can interfere with people's games by spawning monsters at will, activated by putting OPTIONS=gmmode in the rcfile 14:38 be intersting to do an angel cruel abuser and kill the quest nemesis 14:38 uh 14:38 I'll pass on that :p 14:38 eh, I've added that into teh rc 14:38 -!- bouquet has quit [Quit: ChatZilla 0.9.93 [Firefox 56.0/20170929100409]] 14:39 FIQ: NHS does store version number for every xlogfile row. 14:39 larien: ^^ 14:39 don't worry, I'll only spawn stuff that's not too terribly dangerous 14:39 *^^^ 14:39 lol 14:39 FIQ: I just chose to not to show them. 14:39 ok 14:39 so you'll play an angelic cruel abuser? 14:39 s/to show/show/ 14:39 well I figured it was useful 14:39 yep 14:39 that's why I asked 14:39 chaotic because its' cool 14:40 holy shit that message spam 14:40 LarienTelrunya: would you spawn nasty stuff if a player was on astral :P 14:40 FIQ: I was trying to show all version numbers. 14:40 that was a good 7 messages 14:40 FIQ: But then I saw what version number is for UnNetHack. 14:40 FIQ: in theory I could spawn some extra Death's and Rodneys on astral :D:D:D 14:40 no plz 14:40 Mandevil: what is it? 14:40 FIQ: And scrapped that idea. 14:40 FIQ: And only started to showing for NetHack after 3.6.0 was released. 14:40 does gm mode also enable wizmode? cc larien 14:40 FIQ: It's something like UNNETHACK-5.2 14:40 ah 14:41 ah nvm 14:41 well I figured you could show them on a case-by-case basis 14:41 * LarienTelrunya opens monst.c to look for interesting monsters to spawn 14:41 and I suggest 4k and dnh 14:41 * rikersan opens monst.c to find what the heck that is 14:41 they're the actively developed variants which do major version changes 14:41 that is in NHS 14:42 FIQ: It's easy to enable it for others. 14:47 > You see here a scroll labeled JONADAB SHOULD BE ABLE TO MAKE A VARIANT THAT IS 14:48 ACTUALLY GOOD {0}.--More-- 14:48 ouch 14:48 rikersan: monst.c is where all the monsters are defined. You want to avoid the slex version of it at all costs, it will crash your text editor or drive you insane. 14:48 I am aware 14:48 I decided against it 14:48 :p 14:54 LarienTelrunya is the Queen of burn. 14:54 there should be a list of burn centers in the game 14:55 Hmm, is she Swiss? I thought she was German. 14:55 german; IIRC bhaak is swiss 14:55 yes 14:55 > disease kick 14:55 So how did a German get to be the queen of Berne? 14:55 _RUNS_ 14:55 nvm have a good unihorn 14:56 * bhaak groans 15:03 -!- nht has quit [Ping timeout: 255 seconds] 15:04 -!- nht has joined #hardfought 15:21 Maybe SLEX should be written in this language: https://github.com/Property404/fetlang 15:22 Is it a variant of malbolge? 15:22 oh my god 15:22 please 15:22 my poor eyes 15:22 jonadab: No. 15:22 my poor eyes did not need to see this 15:22 > Fetlang is not recommended for production use at this moment, especially in medical or military applications 15:22 I wonder wht 15:22 rikersan: Your poor eyes did not need to see this and yet you play SLEX? 15:22 wtf, what is the Amy they're referring to? me??? 15:23 Obviously. 15:23 mandevil: I recant my statement 15:23 LarienTelrunya: Wait, you're not the author? 15:23 https://github.com/Property404/hdbf 15:23 nope 15:23 looks cool though 15:23 *that looks 15:37 FIQ: it's not that I don't bother about curses UI, it's that I really don't know how to make the pokedex render correctly in curses since I'm far from an expert with curses 15:40 NeroOneTrueKing: ^ 15:41 LarienTelrunya: take a look at the dnethack port I did of the pokedex. 15:41 The big thing is using '\n' to create new lines 15:42 uhh... what I need is a diff that I can apply :D 15:42 haha, I'll take a look again once I get some time back in my life 15:43 to actually sit down and do stuff without the dread that is "oh no what about that written report due Tuesday" 15:43 ugh, I know that feeling 16:05 -!- nht has quit [Quit: nht] 16:11 LarienTelrunya: you should add a flavour description for each monster in slex :D 16:11 like what jonadab did, later incorporated in fiqhack 16:11 the "freeform" text here, that is: http://home.fiq.se/floating_eye.png 16:12 for each monster? that's like 16k entries :P 16:12 not my problem ;) 16:12 also, only 16k? 16:12 I thought slex had like 100k monsters 16:13 naaaaaaah 16:13 anyway: 16:13 @le?ultimate giant kraken 16:13 ultimate giant kraken (;) | Lvl: 80 | Diff: 75 | Spd: 20 | Res: fire cold sleep disintegrate shock poison petrification | Confers: fire cold sleep shock poison | MR: 100 | Generates: special | AC: -20 | Attacks: 25d15 hug physical, 25d15 hug physical, 25d15 hug physical, 25d15 hug physical, 15d15 cast clerical, 15d15 breath acid | Alignment: -3 | Flags: genocidable, carnivore, swims, amphibious, oviparous, poisonous, nopoly, infravisible, vegetarian 16:13 flavor text for that would be: This creature is the end of the world as we know it. The mere sight of such a thing means certain and instant death. RUN!!! 16:14 (I think it's the most damaging monster in the entire game right now, capable of dealing 1500 damage in melee per round) 16:15 good thing it's generally genocideable 16:15 @le?death 16:15 Death (&) | Lvl: 30 | Diff: 36 | Spd: 12 | Res: fire cold sleep shock poison petrification drain | Confers: nothing | MR: 100 | Generates: unique | AC: -5 | Attacks: 8d8 touch Death, 8d8 touch Death | Alignment: 0 | Flags: flies, regenerates, seeinvis, nopoly, stalker, infravisible 16:21 !tell K2 pushed a minor fix 16:21 Will do, FIQ! 16:28 -!- rikersan has quit [Quit: Lost terminal] 16:30 LarienTelrunya: Just have a Markov chain generator write the blurbs for all 16 billion monsters. 16:30 EZ 16:31 well, what slex has is about 2500 monsters that I generated with your script :) 16:31 and very theoretically there are special rooms filled with them, but they're so rare as to be a novelty 16:32 jonadab: also, play slex! *bundlebundlebundle* It's fun, and even has a GM mode where I can spawn monsters for you to fight! :) 16:36 Will those monsters primarily consist of troves? An abundance of scroll troves might be nice. 16:38 in theory I could "stuff" a player by spawning lots of troves, but I prefer spawning animated shoes and stuff 16:43 -!- rikersan has joined #hardfought 16:56 [dnh] rikerw (Brd Clk Mal Neu) wished for "blessed fixed +5 tie-dye shirt of shambhala", on T:1663 16:57 forgot greased :/ 17:25 -!- rikersan has quit [Quit: Page closed] 17:27 LarienTelrunya: you should make a monster that can use wands skilled ;) 17:27 LarienTelrunya: You should make a monster that can use wands at master even if they are cursed. 17:27 well, all beams have a chance to ignore reflection in slex, so... 17:28 But only against the player. 17:28 that wand of lightning always has a chance of ruining your stuff 17:28 I thought you said you hated the wand destruction patch 17:28 yeah, I still do 17:28 but in slex, the chances of item destruction are sane, i.e. no "one zap will always destroy fully 33% of your entire vulnerable stuff" 17:28 am I sensing a double standard 17:29 FIQ: the entire slex approach to balance is, "if this is unbalanced, make it less probable in any given case". 17:30 (and then introduce 9098437947 other unbalanced things that are _also_ improbable, so that the chances of ever having an actual playable game are nil.) 17:30 in slex, being hit by lightning means "if you get really unlucky, you might lose a wand or ring, but most of the time you won't"; in fourk, it's "well, say goodbye to every wand and ring that you were carrying, the RNG will make sure those you needed most WILL be destroyed by that 33% chance" 17:33 LarienTelrunya: Are there any monsters that deploy trap/nasty-traps? 17:34 There are monsters that have trap creation attacks, and also ones whose attacks directly give you nasty trap effects :D 17:34 Two steps ahead, aren't you 17:35 Is there a wand/scroll/potion of nastiness? 17:36 scroll of nastiness, yeah; a few monsters are guaranteed to spawn with one 17:42 Is there a wand of lag that monsters can zap at you? 17:43 As I recall there are boots of lag... 17:43 Is that as bad a pun as I think it is? 17:43 heh, there's no such wand, but a scroll of nastiness read by a monster can randomly decide to give you the lag effect 17:44 EPI: wand of capping. If a monster zaps at you, it picks a random one of your stats, and permanently caps it at the current value, so it can never increase again. 17:45 Well, never increase above its current value. 17:45 EPI: besides attributes, the wand of capping can also cap your Hp and Pw. 17:45 And experience. 17:46 there's an anti-experience trap in slex, which makes it so that you cannot gain experience again; only gain level can still level you up in that case 17:47 -!- raisse has quit [Ping timeout: 258 seconds] 17:51 EPI: new type of nasty trap, makes it so input is only accepted if entered when the current second on the computer's clock is divisible by three, otherwise the input is discarded. 17:52 uhh, how would that be done? i.e. what is the function that checks that? 17:52 I know undead check the hour, for double damage at midnight 17:52 but does that use game start time or current time? 17:53 Current time. 17:53 The phase-of-the-moon stuff uses the time when you last loaded your save (or started the game). 17:53 But that's because luck is dead-reckoned. 17:53 ah, so an evil artifact (I'll want to make it into an artifact instead of a trap) that actually has the "has to be divisible by 3" effect would be possible :) 17:54 in fact, I'll want to make plenty of artifacts that are basically "even nastier version of existing nasty trap effect" when equipped 17:54 If it's an artifact, it must autocurse when equipped :-) 17:54 you bet it will 17:55 EPI: a monster attack that causes you to equip any cursed or autocursing items you may be carrying. 17:55 (wield if weapon, wear if armor or jewelry, quaff if potion, etc.) 17:55 Naturally, to be fully evil, this should be a non-reflectable gaze attack that works even if you are blind. 17:55 heh, I think I have a nasty trap on my to-do list that randomly generates negatively enchanted cursed gear, removes whatever you have in the slot that it would occupy, and forces you to wear it 17:57 OBTW, did you hear I am kind of sort of thinking about contemplating considering the option of eliminating MC entirely as a mechanic? 17:58 yes, I thought you were contemplating that before junethack already? I'm surprised you didn't actually do it yet 17:58 I anticipate some complaints during Junethack if I do. 17:58 Though my goal would be to balance all the stuff it defends against so that it's reasonable. 17:58 well, it's not as evil as disintegration melee attacks that disintegrate your cloak even if you're resistant :P 17:59 What about psychic-blast-range wide-angle disintegration attacks? 18:00 are you trying to make sure fourk is more evil than slex, i.e. are you actually going to implement such an attack? 18:00 No. EPI: a monster that reproduces like ZapM tribbles and has a kamikaze/explode disintegration attack. 18:01 And if one dies by being caught in a disintegration blast from another one, its blast radius is doubled. 18:03 hmm, I didn't implement anything from ZAPM yet, but I'll keep it in mind if I do 18:04 anyway, gotta go now, but thanks for the EPIs :) 18:04 -!- LarienTelrunya has quit [Quit: Page closed] 18:05 jonadab: the reason I think platform compatibility should be a problem is because I looked through some of the util files responsible and saw a lot of #ifdef SOME_OS macros 18:07 aosdict: Just because the existing level compiler is a portability pain doesn't mean a replacement one would need to be. 18:07 All the thing really needs to do is read the files (NetHack has to have code for opening/reading files _anyway_) and parse them, and construct the level. 18:08 Defining the entire grammar and parser in the actual code sounds wrong 18:09 Normally I'd say there should be a library for it, but even if one exists, NetJack doesn't like to include libraries if possible. 18:09 "NetJack" 18:09 ha 18:09 Right, my plan was to create a binary format that's better / more flexible than .lev, and create a .des parser that writes it. 18:10 Wait, so you still want levels to be pregenerated during compilation? 18:10 Permissively licensed libraries should be ok, as you can just drop them into your codebase in a subdirectory. 18:10 aosdict: Yes, although I don't have a problem with distributing the (new, improved) level compiler with the game. 18:11 Actually, a level _editor_ might even be cool. 18:11 That's more ambitious, though. 18:11 I want the game to say "need to generate this new level: look up .des, parse it, generate it". 18:11 On the fly, allowing for direct .des editing to be reflected. 18:12 The way the .des files currently are, you'd have to say "need to generate this new level: look up all the .des files, parse them, generate all the levels they describe, then go through the list and see if any of them is the one we need." 18:12 If you want to change that, you have to change .des format. 18:12 Although it might be possible to merely _extend_ .des format, and make all the .des files have e.g. a header at the top that lists all the levels they contain. 18:13 That makes for "I have to edit it on two places" though. 18:13 Which I don't generally like. 18:14 You would only have to edit it at the header if you're changing the dungeon structure, but I can easily imagine throwing out the concept of multiple levels in a single .des file. 18:14 There's already one .lev per level anyway. 18:22 Right, one level per .des file, combined with requiring the .des file's name to be the level name, would solve this. 18:23 YANI: slope terrain, which renders as dark gray | or -. It blocks movement, but since it is not a wall it doesn't block LOS. If you manage to end up on a slope, you aren't embedded in it; you can move to an adjacent space for free. You cannot dig a slope. 18:24 This is prompted by me trying to think up quest level redesigns and being severely limited by a perfectly flat level type. 18:24 With slopes, you would be able to have pyramids and switchbacks and things like that. 18:25 and if you can fly? 18:25 If you can fly or levitate you can move onto the slope, and off either side. 18:25 !tell K2 pushed a minor fix 18:25 Will do, FIQ! 18:27 Actually, never mind it rendering as dark gray. It renders as normal. 18:28 Hmm, pyramids are still a bit of a problem since you don't want to be able to see the back side of the pyramid. 18:29 fully implement multiple z-levels within a single "floor" 18:30 Why though 18:58 Hmm, the complete lack of originality in the Monk quest is leading me to believe it should probably be massively overhauled (in this proposal) 19:00 anyone got any ideas for what the Monk quest narrative should be, assuming we keep the artifact and Master Kaen the same? 19:03 * NeroOneTrueKing thinks of the best way to fit the plot of Kung-fu Panda into nethack 19:06 The association with earth-related stuff seems to be the way vanilla has taken this, but it's still mostly a find and replace of undead in the Priest quest text 19:19 [fh] MTF (mtf) (Kni Hum Mal Law) wished for "blessed fixed greased +3 gray dragon scale mail", on T:9156 19:35 -!- noty has joined #hardfought 20:23 aosdict: I haven't looked at the quest text for Monk (_most_ of the quest texts could stand an overhaul), but I think I did something about a couple of the Monk quest levels. 20:25 Hmm, looks like just one of them, quest locate. 20:25 https://github.com/tsadok/nhfourk/blob/master/libnethack/dat/Monk.des#L110 20:25 I think I looked at the _name_ of the level in the quest text and said, ok, let me draw that, I can't do worse than the vanilla one. 20:28 Honestly, we could do with a "redesign a quest" competition, as a followup to dungeon overhaul. 20:28 -!- hothraxxa has quit [Quit: Page closed] 20:29 -!- hothraxxa has joined #hardfought 20:29 -!- mode/#hardfought [+v hothraxxa] by ChanServ 20:41 [nd] Grasshopper (Hea Gno Mal Neu) destroyed Vlad the Impaler, on T:66532 20:42 heh, it wasn't me... it was my pet trapper (lv38) 20:42 !gt Matt the trapper and Vlad Slayer 20:42 [nd] Grasshopper (Hea Gno Mal Neu) acquired the Candelabrum of Invocation, on T:66545 20:46 !tell K2 pushed a fix 20:46 Will do, FIQ! 20:51 hi 20:51 Hello K2, Welcome to #hardfought 20:51 K2: Message from FIQ at 2017-10-07 16:21 EDT: pushed a minor fix 20:51 K2: Message from FIQ at 2017-10-07 18:25 EDT: pushed a minor fix 20:51 K2: Message from FIQ at 2017-10-07 20:46 EDT: pushed a fix 20:51 :P 20:51 FIQhack updated 20:58 [fh] MTF (mtf) (Kni Hum Mal Law) killed the ghost of noty, the former Reconnoiterer, on T:16353 21:15 K2: can you give me MTF's save? 21:15 he's having an issue 21:15 yup 21:16 seems like he managed to work-around it, but it'd still be cool to have it fixed 21:17 see pm 21:17 ty 21:17 yw 21:18 [nh] William (Pri Elf Mal Cha), 1242 points, T:2609, killed by a dwarf 21:31 !tell K2 fixed 21:31 Will do, FIQ! 21:31 thanks! 21:39 -!- tacco has quit [] 21:43 [dnh] NeroOneTrueKing (Ana Dwa Fem Cha) wished for "the blessed greased rustproof +5 Stormhelm", on T:19374 22:01 [un] William (Pri Elf Mal Cha), 220 points, T:838, killed by a kobold 22:25 -!- Grassy has joined #hardfought 22:25 -!- mode/#hardfought [+v Grassy] by ChanServ 22:29 -!- Grasshopper has quit [Ping timeout: 260 seconds] 22:55 -!- Grasshopper has joined #hardfought 22:55 -!- mode/#hardfought [+v Grasshopper] by ChanServ 22:57 -!- Grassy has quit [Ping timeout: 248 seconds] 23:07 [fh] MTF (mtf) (Kni Hum Mal Law) wished for "blessed spellbook of identify", on T:20370 23:11 -!- Grassy has joined #hardfought 23:11 -!- mode/#hardfought [+v Grassy] by ChanServ 23:13 -!- Grasshopper has quit [Ping timeout: 248 seconds] 23:18 -!- Grasshopper has joined #hardfought 23:18 -!- mode/#hardfought [+v Grasshopper] by ChanServ 23:18 -!- Grassy has quit [Ping timeout: 260 seconds] 23:24 -!- Grasshopper has quit [Ping timeout: 248 seconds] 23:25 -!- Grasshopper has joined #hardfought 23:25 -!- mode/#hardfought [+v Grasshopper] by ChanServ 23:26 [fh] MTF (mtf) (Kni Hum Mal Law) wished for "3 blessed scrolls of charging", on T:20655 23:29 jonadab: I think my proposal might already be doing that as it's redesigning all the quests (levels, at least, I'm not touching leaders, nemeses, artifacts, and not really focusing on monsters or plot) 23:30 main problem is really just making all of the quests _feel_ different 23:30 because cavern-filled levels with the rock replaced with water or trees or whatever doesn't really cut it 23:40 [fh] MTF (mtf) (Kni Hum Mal Law) wished for "blessed fixed +3 Dragonbane", on T:20775 23:44 [dnh] rikerw (Brd Clk Mal Neu) killed the Oracle, on T:6290