02:26 [hdf-us] [evil] love2hack (Sam Hum Mal Law), 9121 points, T:6113, killed by a boiling potion 02:38 -!- hackemslashem has joined #evilhack 02:39 K2: Anytime! 02:41 And happy Friday morning! Definitely needed to build a fire, it gettin cold here 02:43 [hdf-au] [evil] Arahael (Mon Hum Fem Neu), 4514 points, T:2344, killed by a vampire queen, while praying 02:49 -!- mobileuser has joined #evilhack 02:51 -!- mobileuser has quit [Client Quit] 03:02 [hdf-us] [evil] dbanethacker (Sam Hum Mal Law) killed the Goblin King, on T:879 03:02 -!- Umbire has quit [Remote host closed the connection] 03:03 -!- Umbire has joined #evilhack 03:18 [hdf-us] [evil] dbanethacker (Sam Hum Mal Law), 2368 points, T:1758, killed by a hallucinogen-distorted gnome queen, while praying 03:39 -!- amateurhour has joined #evilhack 04:38 -!- Umbire has quit [Ping timeout: 272 seconds] 04:41 I always thought magic beam traps were completely random with their rays, but they have a set ray type when they are generated... 04:43 -!- lacca[m] has quit [Quit: Bridge terminating on SIGTERM] 04:44 I guess you're smart enough to only stand on them once :P 04:46 Indeed 04:49 -!- lacca[m] has joined #evilhack 05:05 Cool I figured out how to randomize the beams 05:17 [hdf-au] [evil] Arahael (Mon Hum Fem Neu) killed the Goblin King, on T:1140 06:14 -!- mobileuser has joined #evilhack 07:42 [hdf-us] [evil] krm26 (Inf Elf Fem Una) had Dragonbane bestowed upon her by Moloch, on T:26691 08:27 no dagger??? 08:50 i know right? weird morning 08:50 cuz it is dragonbane i can't even complain about not getting frostbrand 08:51 i just don't know what to do with this infidel, running around swinging a dagger as if it were a weapon 08:59 I like Angelslayer best for infidel 08:59 i'll take it if moloch will give it 09:00 oh, wield a trident when you get crowned (except if you already have spellbook of fireball) 09:01 is it possible to revgeno balrogs for angelslayer? 09:01 your trident will likely get a fire property then 09:01 guessing not 09:01 I used a trident of fire for a large part of the game 09:02 amateurhour I think revgenoed creatures are never generated with stuff 09:05 also, aklys production is nice for infidel (I forged an aklys of shock), but don't use silver of course 09:30 [hdf-us] [evil] lgxia (Rog Hum Mal Neu) changed form for the first time by mimicking a pile of gold, on T:3483 09:33 [hdf-us] [evil] lgxia (Rog Hum Mal Neu) eschewed atheism, by dropping 7 daggers on an altar, on T:3958 09:51 -!- mobileuser has quit [Quit: Connection closed] 10:25 -!- jonadab has quit [Ping timeout: 252 seconds] 10:27 -!- jonadab has joined #evilhack 10:28 come on if the aklys isn't silver what are you even doing dude 10:29 argh wtf systemd! why won't you let me umount! 10:31 it isn't marked automount in fstab -- blarfff, need k2 to administer this box for me 10:32 using *nix since '79, still can't remember anything from one moment to the next 11:11 [hdf-us] [evil] lgxia (Rog Hum Mal Neu), 2224 points, T:5528, killed by a giant mosquito 11:13 -!- hackemslashem has quit [Ping timeout: 246 seconds] 11:19 i can't believe i just had to reboot a linux machine 11:20 do you do any kernel hotpatching, or do you just not ever upgrade your kernel? 11:22 kernel hotpatching! 11:23 although now i'm on a zombie distro so no more of that 11:24 -!- Umbire has joined #evilhack 11:27 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 123 points, T:393, killed by a grid bug 11:27 [hdf-us] [evil] Gutso (Inf Hum Mal Una) murdered Hecubus, his faithful lesser homunculus, on T:79 11:50 [hdf-us] [evil] lgxia (Rog Hum Mal Neu) became literate by reading a scroll, on T:3570 12:07 [hdf-eu] [evil] lacca (Inf Ith Fem Una) had Secespita bestowed upon her by Moloch, on T:1567 12:21 [hdf-us] [evil] Gutso (Inf Hum Mal Una) killed the Goblin King, on T:2252 12:52 [hdf-us] [evil] Gutso (Inf Hum Mal Una) changed form for the first time, becoming an owlbear, on T:3103 13:23 -!- mobileuser has joined #evilhack 13:36 -!- hackemslashem has joined #evilhack 13:45 [hdf-us] [evil] Nightsorrow (Sam Hum Mal Law), 2275 points, T:4184, killed by an elven arrow 13:57 -!- Umbire has quit [Remote host closed the connection] 13:57 -!- Umbire has joined #evilhack 14:36 [hdf-us] [evil] Gutso (Inf Hum Mal Una) eschewed atheism, by dropping 4 bone crude daggers on an altar, on T:8541 14:50 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 19289 points, T:10123, killed by a blue jelly 15:04 [hdf-us] [evil] Gutso (Inf Hum Mal Una) killed the Goblin King, on T:2273 15:06 [hdf-us] [evil] Gutso (Inf Hum Mal Una) rejected atheism with a prayer, on T:3646 15:09 [hdf-us] [evil] Nightsorrow (Sam Hum Mal Law), 1175 points, T:2357, killed by a hill orc 15:15 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 2418 points, T:4850, killed by a piranha 15:47 [hdf-us] [evil] Nightsorrow (Sam Hum Mal Law) rejected atheism with a prayer, on T:4958 15:59 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 299 points, T:832, killed by falling down a mine shaft 16:06 -!- elenmirie has joined #evilhack 16:06 [hdf-us] [evil] Gutso (Inf Hum Mal Una) killed the Goblin King, on T:1289 16:13 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 1823 points, T:2643, killed by a giant mosquito 16:14 [hdf-us] [evil] Nightsorrow (Sam Hum Mal Law), 10838 points, T:7801, killed by a jaguar 16:51 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)] 17:02 -!- hackemslashem has quit [Quit: Leaving] 17:06 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) performed the invocation, on T:78644 17:15 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) killed the elven high priestess of Moloch, on T:78873 17:15 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) acquired the Amulet of Yendor, on T:78877 17:21 [hdf-eu] [evil] lacca (Inf Ith Fem Una) killed the Goblin King, on T:3841 17:22 go go bouquet! 17:22 -!- mobileuser has quit [Quit: Ping timeout (120 seconds)] 17:23 [hdf-eu] [evil] lacca (Inf Ith Fem Una) made her first wish - "blessed fixed +3 bone gauntlets of power", on T:4249 17:39 [hdf-eu] [evil] lacca (Inf Ith Fem Una) stole 75 zorkmids worth of merchandise from Gweebarra's rare books, on T:5931 17:52 [hdf-us] [evil] KingGizzard (Wiz Ith Mal Cha) was chosen to take lives for the Glory of Anhur, on T:29559 17:54 [hdf-eu] [evil] lacca (Inf Ith Fem Una), 10044 points, T:8512, killed by an ogre 18:33 -!- elenmirie has joined #evilhack 18:45 -!- Umbire has quit [Ping timeout: 272 seconds] 18:45 oh my god i hate this infidel...never gonna be able to do anything but poke a dagger at stuff 18:47 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) entered the Planes, on T:80492 18:50 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) genocided giant eels, on T:80596 18:50 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) genocided krakens, on T:80596 18:51 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) genocided electric eels, on T:80597 18:54 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) killed the Wizard of Yendor (5 times), on T:80701 18:57 [hdf-us] [evil] Gutso (Inf Hum Mal Una), 144 points, T:257, killed by a hallucinogen-distorted water moccasin 19:00 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) killed Pestilence, on T:80741 19:02 qt do you remember the conversation here back on oct 6th, regarding muse.c and find_offensive and the wand recharging bit? 19:02 yeah I remember the charging thing 19:02 why? 19:02 i'm working on it based on your feedback 19:02 [hdf-us] [evil] bouquet (Ran Cen Fem Neu) killed the White Horse, on T:80777 19:02 does this look right to you? https://termbin.com/7xtb 19:03 ^ not all of it, just the first couple 19:03 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)] 19:04 yeah that makes sense to me 19:04 ok 19:04 thanks 19:04 [hdf-us] [evil] bouquet (Ran Cen Fem Neu), 5899813 points, T:80792, ascended https://www.hardfought.org/userdata/b/bouquet/evilhack/dumplog/1665355576.evil.html 19:05 whoa bouquet congrats \o/ 19:06 yay 19:07 strangly easy game despite the painful lack of good scrolls and potions. 19:07 what was easy about it 19:08 for one, rodney didn't show up an obnoxious times and he never had MR so I could wand of death him to death 19:08 this is ur team whinge union representative speaking: do not say anything that could lead to the game being made more difficult 19:08 the RNG blessed you this day 19:08 oh too late now he will show up guaranteed every few turns :((( 19:08 just kidding 19:09 I started the game on a full moon. Maybe that was where my persistent luck came from 19:09 hah 19:09 I think that's the first time I've ascended never wielding an artifact. Just two spears, one with frost the other silver. 19:11 nice 19:13 -!- amateurhour has quit [Quit: leaving] 19:14 watched 'Clerks III' earlier today, it was really good 19:20 what's the process to change alignments? Very low alignment and then sacrifice at the altar you want to convert to? 19:23 bouquet, see https://nethackwiki.com/wiki/Sacrifice#Cross-aligned_altars I think 19:24 -!- elenmirie has joined #evilhack 19:46 hmm got some weird behavior 19:46 with monster recharging wands, not clear if this was prior behavior or if it's cropped up now with the changes 19:48 scenario: give a hostile monster a wand of magic missile and two scrolls of charging (not cursed). monster uses up wand, recharges it. player moves so not in line with monster. monster travels to you, gets right next to you. reads 2nd charging scroll even though the wand is already charged from the first reading 19:51 only does it if they are standing right next to you 19:51 weird 19:55 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)] 19:57 [hdf-us] [evil] Frozty (Wiz Gno Mal Neu), 472 points, T:1560, killed by a hobbit, while sleeping 20:05 -!- elenmirie has joined #evilhack 20:11 that is after the changes you made? because that sounds like the behavior i'd expect from before the change, not caring if the wand is already charged 20:40 [hdf-us] [evil] Frozty (Wiz Gno Mal Neu) killed the Goblin King, on T:1696 20:59 qt yeah seeing this after the changes 20:59 this is what I have so far - https://termbin.com/t4gd 21:02 oh 21:02 i think I know why it happens 21:03 i think MUSE_SCR_CHARGING never clears m.tocharge, so it keeps the stale value from when it selected the empty wand 21:03 so if the monster has multiple charging scrolls it will recharge the same wand a second time 21:04 try adding 'm.tocharge = (struct obj *) 0;' right by the end of the 'case MUSE_SCR_CHARGING:' part of use_offensive 21:04 just above the return 21:04 K2 ^ 21:08 ok 21:08 thanks 21:09 right after m_useup? 21:09 am i understanding you correctly? 21:10 yeah that's what I was thinking 21:10 k 21:10 try it and see if it fixes that behavior 21:10 testing 21:11 had been feeling fine pretty much all day (except still tired), but recently I feel a lil foggy again 21:11 bleeeh 21:12 ok weird 21:13 so before when the monster read the scroll a 2nd time, it returns 'they feel disappointed' meaning it didnt charge 21:13 now, it's still reading the second scroll, but this time the wand is being charged again 21:14 k - an uncursed wand of magic missile (2:1) 21:14 oh wait 21:14 lemme do this again 21:14 i think it used up the wand again 21:16 ok same behavior qt, nothing changed 21:17 ok let me reproduce it myself to see if i can figure it out 21:17 thanks 21:20 i would argue that the monster using unnecessary charging right in front of your face is in fact quite evil 21:21 now i'm picturing a goblin charging up to you, pulling out a wand of wishing, and wishing for a donut while the wand turns to dust 21:23 actually my original theory was wrong, it gets reset at the top of find_offensive_recurse 21:23 i see what the problem is 21:23 https://termbin.com/2gjbd <-- krm26 you see the problem with this?? 21:24 lemme finish my sangria and take a look 21:25 actually without context/more information about the intent it may be hard to tell what the issue is 21:25 i'm starting out counting parentheses 21:25 the idea is basically "if you find a wand of teleportation, and you can use it, use it. otherwise, if it needs charging and you haven't found something more important to charge, keep it in mind as a charging candidate" 21:27 obj->spe is like charges? 21:27 yeah 21:28 and i'm guessing TELEP_TRAP is a 1-based index to provoke the -1 on the bit shift mask 21:29 yeah that's whether it has seen a teleport trap failing to work, I guess? 21:29 that clause looks weird actualoly, either level permits teleport OR haven't seen a teleport trap? 21:29 no, that wouldn't be them seeing it fail would it, it would be them seeing it used? 21:30 yeah it would be if they've seen someone step a teleport trap/know where the teleport traps are 21:30 anyway, spoilers, the issue is that it needs to be something like this i think https://termbin.com/vb8g 21:30 that's basically the same code as in vanilla 21:31 i don't know why it would be "and either level permits tp or seen someone step in a tp trap" 21:31 the second part of that clause looks silly 21:31 i think maybe the idea is "it doesn't know it's no-teleport until it sees the hero step on a TP trap and fail to teleport"? 21:31 wait wait don't rush me! i'm not totally drunk 21:32 ok the wand being the item type is elided out of the outer else 21:32 wait, how does this tie in with the 2nd unneccesary recharge? 21:32 could be checking the charges of anything 21:32 yeah 21:33 K2 the idea is, 'obj' can be a dagger or some other random item with spe == 0 21:33 without context coloring of parentheses that took me quite a bit, i was concerned about goofy parens 21:33 oh 21:33 because it will hit the 'else' there if obj->otyp != WAN_TELEPORTATION 21:34 that code screams: give me a helper function that takes an obj type and tells me the level of recharge desirability 21:34 that's a nice idea to clean it up 21:35 we were talking about how ugly it is last time we looked at it, it came from grunthack or something 21:35 GOD DAMMIT MY DAUGHTER JUST TOLD ME SHE DOESN'T LIKE STEELY DAN 21:35 qt yes 21:35 krm26 WAT?? 21:35 too many honrs? too many FING HORNS? dfkdjfdkjdkf 21:35 lol 21:35 she's going to bed right now 21:35 get rid of her. you can make a new one that looks just like her 21:35 i'm def gonna tell her that 21:36 hah 21:36 if she likes van halen then all can be forgiven though 21:36 she just played a van halen song with this crazy electric strings guy last night 21:37 guy who makes electric violins and cellos 21:37 \o/ 21:37 K2 to demonstrate the problem: I just reproduced it and the object the monster was trying to charge (which hit the WAN_TELEPORTATION 'else') was the scroll of charging itself 21:37 lol 21:37 hahah wow 21:37 recharging recharging! brilliant 21:38 so https://termbin.com/vb8g - which one is the fix? or are both? 21:38 they are the same i think, i prefer first 21:38 but i'm an early exit kinda guy 21:39 yeah either one works i think, you just need to make sure both of them are applied only to the particular otyp you're looking at 21:39 both of them meaning the 'if' and the 'else if' conditions 21:40 oh so this isnt just for tele wand? 21:40 I assume it is true of all of them but I didn't actually look at them all 21:40 int how_sexy_to_recharge(objotype) {} 21:40 anywhere it does 'if (obj->otyp == X && spe > 0) { } else if (spe < 1) { }' will have this problem that any otyp other than 'X' will hit the else 21:41 lovely 21:41 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)] 21:42 i think that might be the only one 21:47 oh yeah you're right, the other ones all seem to be nested inside a big if (otyp == X) { } 21:48 this appears to do the trick 21:48 how odd... great find qt 21:49 vanilla doesnt allow monsters to use scrolls of charging, but it would run into the same problem if it did - start at https://github.com/NetHack/NetHack/blob/NetHack-3.7/src/muse.c#L1287 21:55 [EvilHack] k21971 pushed 1 commit to master [+0/-0/±2] https://github.com/k21971/EvilHack/compare/925601c50a88...a2b2680d143b 21:55 [EvilHack] k21971 a2b2680 - Fix: logic with monsters recharging wands. 21:55 dang 21:55 ^ thanks qt 21:55 i was working on something but i can show you anyway 21:55 working on krm26's sexiness meter 21:55 oh that's pegged at 10 all the time isnt it? 21:55 am i being pegged again because of my sexiness 21:56 so while tucking her in my daughter promised to try listening to another steely dan song if i would just stop crying 21:57 lol 21:57 dont force her to like a band 21:57 she'll hate you 21:58 i remember this day like it was yesterday: driving mini-me home from day care, she was 4 yrs old. whitesnakes 'still of the night' queued up on the radio, and she said 'daddy, turn it up!' 21:58 so proud 21:59 whitesnake had so much hair 22:00 i think that song came out during my first year of college 22:08 K2 take a look at this https://termbin.com/b64y 22:09 krm26: is that like what you were thinking, or is there a better way to do the item preferences? 22:10 sexiness 22:12 i like this qt 22:12 makes it way easier to read 22:12 that's exactly what i was talking about; best approach when your codebase has ossified c data structures you don't want to touch if you don't have to 22:13 (surely npcs want to recharge drum of earthquake!) 22:14 this should make it easier to add new items as charging targets too, just slot them into the list in order of how important they are to charge or whatever 22:14 yup 22:14 oh man and now i really want to see an npc poof an artifact weapon by overenchanting it before the player can get ahold of it 22:15 any changes to that ptach qt or is it ready to ship? 22:15 i would probably change it so the variable isn't called 'sexiness' 22:15 lol 22:15 but 22:15 ... 22:15 but that's up to you 22:15 lol 22:15 the other thing is the formatting in that function, i started out trying to indent the 'sexiness++' so they are all lined up but then gave up 22:16 like the first 5, they're all indented to the same level, ones after that aren't -- should probably be one or the other 22:16 so they all fall thru on purpose? 22:16 yeah 22:16 ok 22:17 the idea is if you are near the top, it falls through so it hits all the other ones below 22:17 and that makes the number bigger 22:17 so the order of the list translates into the return value 22:17 i'll change 'sexiness' to 'use' or something 22:17 so krm26 doesnt blush 22:18 krm26 was the one who suggested the function be called how_sexy_to_recharge 22:18 hahah 22:18 that's why i used 'sexiness' 22:19 asexual_desirability_all_adults_here(otype) 22:22 heh knew i'd have to do this - get a bunch of warning: this statement may fall through [-Wimplicit-fallthrough=] during compile, gotta comment the fallthru 22:24 sorry :( 22:25 no worries. i've seen it before 22:26 [EvilHack] k21971 pushed 1 commit to master [+0/-0/±2] https://github.com/k21971/EvilHack/compare/a2b2680d143b...0fc4b31adef4 22:26 [EvilHack] k21971 0fc4b31 - Refactor intelligent monster recharging code. 22:27 priority was exactly the word i was trying to think of earlier 22:27 should have called it charge_priority 22:28 heh 22:28 i changed it to 'want' 22:28 i was trying to remember it but closest I could come was precedence 22:28 haz_cheezeburger_want 22:28 btw one potentially odd behavior I noticed 22:30 https://termbin.com/khr5 <-- because it's structured like this, with the "reflection skip" also skipping the recharging evaluation 22:30 if the monster is next to you, it will charge teleportation or something over any attack wands 22:30 right 22:31 maybe that makes sense, but it feels a little weird 22:31 since charging a wand of death could be a good move even if you don't intend to use it right away 22:32 it feels like "too bad, I'd like to charge my wand of death and smoke him in a couple turns but the guy's next to me so instead I will charge my wand of slow monster, better than missing an opportunity to recharge something!!" 22:33 plus reflection isnt 100% for player 22:33 hmm 22:33 -!- elenmirie has joined #evilhack 22:34 i was going to suggest doing it like this instead https://termbin.com/ep2g 22:34 where the "reflection skip" skips zapping the wand, but not necessarily charging it if that's necessary 22:36 that makes sense 22:42 huh somehow github actions has been activated on my own copy of evilhack 22:43 i didn't do that on purpose... but it happened and now it is failing a build every time i push 22:43 skynet 22:43 https://github.com/entrez/EvilHack/actions/runs/3301640589/jobs/5447345749 22:43 any idea how to fix that? 22:44 you cant, its because the necessary file wasnt pulled down in an earlier step 22:44 i run into this periodically 22:44 i re-run the build until it can grab what it needs 22:47 interesting 22:47 i re-ran it manually and it passed 22:52 yay 22:52 i've sometimes have had to re-run commits several times over the span of a few days 22:53 brb 22:56 oh lol 22:56 I made a mistake there 22:56 not very important but i put #undef pick_to_charge in the wrong place, I just grepped for undef nomore and ended up in the wrong function 22:57 https://termbin.com/8f0o needs something like this, maybe you can throw it in if you are going to change the "reflection skip" thing 22:57 it doesn't really make a significant difference though 23:32 [hdf-us] [evil] bouquet (Inf Hum Fem Una), 485 points, T:635, zombified by a diseased dwarf corpse, while helpless 23:32 sux 23:36 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)] 23:48 -!- Umbire has joined #evilhack 23:52 -!- elenmirie has joined #evilhack 23:53 [hdf-us] [evil] bouquet (Pri Hum Fem Neu), 538 points, T:1600, killed by a gnome lord, while fainted from lack of food