00:06 <captain42> that's harsh, jonadab 
00:08 -!- ais523 has quit [Quit: bedtime]
00:10 <Beholder> [un] captain (Hea Gno Mal Neu), 0 points, T:29, killed by a fox
00:13 -!- Webmant9 has quit [Read error: Connection reset by peer]
00:13 -!- Webmant9 has joined #hardfought
00:47 <Beholder> [un] captain (Arc Hum Mal Neu), 138 points, T:731, killed by a wand
00:55 -!- zombifier has quit [Ping timeout: 240 seconds]
01:21 -!- elenmirie has quit [Ping timeout: 260 seconds]
01:33 <captain42> Can anyone tell me how to set my config file to display like this?  https://transfer.sh/a6y44/nice.nethack.configuration.png
01:35 -!- raisse has joined #hardfought
01:35 -!- mode/#hardfought [+v raisse] by ChanServ
01:42 -!- LarienTelrunya has joined #hardfought
01:49 -!- Crawldragon has joined #hardfought
02:24 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 2104 points, T:2055, quit
02:30 <raisse> What do you want to eat? [elmo or ?*] ?
02:30 <raisse> I think I'd rather eat ?*
03:36 -!- Mandevil has quit [Ping timeout: 252 seconds]
03:36 -!- Mandevil has joined #hardfought
03:36 -!- mode/#hardfought [+v Mandevil] by ChanServ
03:54 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 2970 points, T:2006, quit
04:02 -!- Crawldragon360 has joined #hardfought
04:02 -!- Crawldragon has quit [Ping timeout: 240 seconds]
04:02 -!- Crawldragon360 is now known as Crawldragon
04:08 <captain42> EAT ELMO!
04:23 -!- elenmirie has joined #hardfought
04:23 -!- mode/#hardfought [+v elenmirie] by ChanServ
04:25 <LarienTelrunya> !booze
04:25 * Beholder hands LarienTelrunya a glass of blended scotch, fermented by the /dev/null/oracle at 20 degrees Celsius.
04:29 <captain42> !booze
04:29 * Beholder throws captain42 a fifth of the sauce, prayed over by Izchak at 430 Kelvin.
04:29 <captain42> !convert 430K to C
04:30 <captain42> I thought so.  That's HOT!  
04:30 <LarienTelrunya> just subtract 273.1 (I think that's the value) :D
04:31 <captain42> 273.15
04:31 <captain42> Kelvin & Celcius are broken
04:31 <captain42> I thought it was 273K = 0°C
04:32 <captain42> and 0°K should be zero molecular activity
04:38 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 43 points, T:269, killed by a wax bee
04:54 -!- raisse has quit [Ping timeout: 255 seconds]
04:55 -!- raisse has joined #hardfought
04:55 -!- mode/#hardfought [+v raisse] by ChanServ
04:57 -!- Crawldragon has quit [Quit: If beer is liquid bread, what is liquid peanut butter?]
05:16 <LarienTelrunya> EPI: add a "game master" mode to all currently maintained variants. It allows the developer of a variant to actively influence currently running games on the server, by e.g. spawning monsters for the player to fight. Of course it doesn't prevent the developer from surrounding an XL3 character with minotaurs... hence EPI :D
05:21 <LarienTelrunya> Evil Patch idea: you know how DCSS has magical contamination if you fail to cast a spell? Well, let's make it so that a failed spellcasting will give you weeping angel contamination! :D
05:40 <LarienTelrunya> Evil Patch idea (or possibly YASI): consumables (potions, scrolls etc.) will self-destroy a certain amount of turns after being generated. Use them or lose them. If you really want to push players into use-testing stuff more often, also greatly nerf identify sources :)
05:49 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 2626 points, T:2333, killed by a monster (invisible Mr. Sound Impacts, the shopkeeper)
06:02 <Beholder> [nd] Raisse (Cav Dwa Fem Law) had Demonbane bestowed upon her by Anu, on T:7195
06:15 -!- noty_ has quit [Quit: WeeChat 1.9]
06:16 -!- K2-webirc has joined #hardfought
06:16 <K2-webirc> morning
06:18 <Beholder> [nd] Raisse (Cav Dwa Fem Law) had Snickersnee bestowed upon her by Anu, on T:9886
06:24 <Beholder> [nd] elenmirie (Mon Hum Fem Neu), 15390 points, T:9450, killed by a black naga
06:37 <Beholder> [nd] Raisse (Cav Dwa Fem Law), 6646 points, T:12625, killed by a rothe
06:37 <raisse> mostly by a nymph though
06:37 <raisse> the rothe was only her weapon
06:38 <raisse> stripped me of everything including sword and flint stones
06:38 <K2-webirc> :(
07:28 -!- oh6_ has joined #hardfought
07:28 -!- mode/#hardfought [+v oh6_] by ChanServ
07:28 -!- oh6_ has quit [Client Quit]
07:44 -!- K2-webirc has quit [Quit: *poof*]
07:44 -!- K2-webirc has joined #hardfought
07:52 -!- K2-webirc has quit [Quit: *poof*]
07:52 -!- K2-webirc has joined #hardfought
08:21 -!- LarienTelrunya has quit [Ping timeout: 260 seconds]
08:37 -!- K2-webirc has quit [Quit: *poof*]
08:37 -!- K2-webirc has joined #hardfought
08:56 <Beholder> [dyn] groovejumper (Arc Dwa Fem Law), 745198 points, T:54209, ascended
https://www.hardfought.org/userdata/g/groovejumper/dynahack/dumplog/2017-09-12%2008_55_45%2C%20groovejumper-Arc-Dwa-Fem-Law%2C%20ascended.txt
09:10 <K2-webirc> nice groovejumper, congrats!
09:40 <Tangles> ooh congrats groovejumper!
09:43 <K2-webirc> heya Tangles
09:43 <aos> yani: spellbook of summon pets, a level 3 matter spell that duplicates the effect of a magic whistle
09:43 <K2-webirc> ^ that sounds neat
09:44 <aos> the name could use some work
09:44 <K2-webirc> spellbook of 'get the fuck over here'
09:45 <K2-webirc> I think the level is a bit high considering how easy and cheap magic whistles are, but I like the concept a lot
09:46 <Mandevil> Duplicates the effects and is strictly worse than 10 zk magic whistle.
09:46 <aos> but if it duplicates the effects, how is it strictly worse? Besides the Pw cost.
09:47 <Mandevil> pw cost.
09:47 <Mandevil> Book will also be more expensive.
09:50 <K2-webirc> lvl 1 spell then
09:51 <K2-webirc> or introduce cantrips to nethack (lvl 0 spells)
09:53 <FIQ> !tell K2-webirc pushed updates
09:53 <Beholder> Will do, FIQ!
09:53 <FIQ> now object piles shouldn't happen with no objects anymore
09:53 <FIQ> but the solution is a hack.. need to figure out how to properly get rid of it
09:54 <K2-webirc> i'll get to it when I get home FIQ
09:54 <Beholder> K2-webirc: Message from FIQ at 2017-09-12 09:53 EDT: pushed updates
09:55 <K2-webirc> thanks
09:56 -!- raisse has quit [Ping timeout: 240 seconds]
10:01 -!- Webmant9 is now known as Webmant
10:10 <K2-webirc> !tell K2 don't forget to update FIQhack when you get home
10:10 <Beholder> Will do, K2-webirc!
10:12 <aos> kids these days. can't rely on good old fashioned memory.
10:13 <K2-webirc> aos: cantrips would be wicked cool to see in a nethack variant. if you're not familiar with them, look up ad&d's 'unearthed arcana'. cantrips are lvl 0 spells that all apprentice wizards learn to practice with before becoming full-fledged magic users. the vast majority were utility or just fun type enchantments that cost little to no power (or comp
10:13 <K2-webirc> onents on the ad&d side)
10:13 <K2-webirc> kids? I'm old, hence the reminder ;)
10:13 <aos> ad&d? the ones I know of are from 5e
10:13 <K2-webirc> pfft. kids and their 5e ad&d
10:14 <K2-webirc> there's only one tru edition
10:14 <K2-webirc> 1st edition
10:14 <K2-webirc> all others are a mockery
10:30 -!- K2-webirc has quit [Quit: *poof*]
10:30 -!- K2-webirc has joined #hardfought
10:41 <bug_sniper> YASI: Herrings that are usable as axes.
10:41 <bug_sniper> Because monty python's knights say so
10:42 <K2-webirc> rofl
10:42 <K2-webirc> ni!
10:44 <bug_sniper> ow, can you not say ni, before I start using pronouns?
10:49 <aos> K2-webirc: cantrips seem like they would be hard to balance, in the sense that spellcasting is already _pretty_ balanced and adding new ones with low cost means either they have to be useless or spellcasters get overpowered
10:50 <aos> although
10:50 <aos> *next-to-useless* spells that cost, say, d2 power, could be beneficial for starting spellcaster
10:50 <aos> s
10:51 <aos> one I remember from 5e is acid bubble or something, it deals d6 acid damage
10:52 <aos> the only unbalancing thing with that is speed, in that you can kite an enemy and repeatedly cast it until it dies
10:52 <aos> as an offensive spell, it quickly becomes useless
10:59 <FIQ> aos: spellcasters in nethack, balanced?
10:59 <FIQ> hahahahahahaha
10:59 <FIQ> charm monster
10:59 <FIQ> nuff said
11:00 <aos> make it a level 7 spell, remove the confused charging effect, and bingo
11:01 <aos> or nerf its taming some other way
11:08 -!- raisse has joined #hardfought
11:08 -!- mode/#hardfought [+v raisse] by ChanServ
11:15 <K2-webirc> bug_sniper: ni
11:25 -!- zombifier has joined #hardfought
11:34 <Beholder> [dyn] hothraxxa (Hea Gno Mal Neu), 11149 points, T:16045, killed by a mumak
11:34 <hothraxxa> wow. that was sudden
11:36 <K2-webirc> :/
11:36 <aos> mumaks, the silent killer
11:36 <aos> mumakil*
11:36 <K2-webirc> just saw this headline: 
11:36 <K2-webirc> J.J Abrams to direct 'Star Wars: Episode IX'
11:36 <K2-webirc> gdammit
11:37 <jonadab> I still say they should get J.J. Abrams to make some Batman movies.  Because the Batman franchise can't really be tarnished by adding some second-rate movies that don't maintain a consistent cannon with the rest of the Batman stuff.
11:38 <K2-webirc> and you can never have enough lens flare
11:38 <jonadab> It would be, like, the fiftieth time Batman canon has been altered.
11:38 <jonadab> *canon
12:00 -!- K2-webirc has quit [Quit: *poof*]
12:00 -!- K2-webirc has joined #hardfought
12:02 <K2-webirc> I bet optimus prime makes an appearance
12:25 <jonadab> Batman and Optimus Prime team up to defend Earth against the Vogons?
12:33 <K2-webirc> in the millennium falcon
12:33 <K2-webirc> for the united federation of planets
12:43 <hothraxxa> with sonic screwdrivers
12:46 -!- raisse has quit [Ping timeout: 246 seconds]
12:51 -!- K2-webirc has quit [Quit: *poof*]
12:51 <jonadab> Hmm, perhaps Batman should also be a vampire (Vampire Batman), and 5000 years old, and a fourteen-year-old girl should fall in love with him.
12:51 -!- K2-webirc has joined #hardfought
12:51 <jonadab> Clearly that would make the movie even better.  Obviously.
13:03 <FIQ> there
13:03 <FIQ> tracked down the cause of the displacement bugs
13:03 <FIQ> sorry for the hassle, hothraxxa
13:04 <hothraxxa> well don't let it happen again or i shall have to write a stern letter
13:04 <FIQ> :( sorry
13:04 <FIQ> I promise
13:05 * aos gives hothraxxa a stern L
13:05 <hothraxxa> hmm
13:06 <hothraxxa> this is a solid L
13:06 <hothraxxa> a good foundation on which to build
13:06 <jonadab> hothraxxa builds his house up on a lich.
13:07 * hothraxxa paints his L purple
13:07 * FIQ throws a bucket of red color at hothraxxa's L
13:07 <aos> I can't watch games using box-drawing characters for walls... they look like gray L everywhere
13:08 <FIQ> press s
13:08 <aos> sure, then the game is no longer using box-drawing characters :)
13:09 <jonadab> It does cause some weirdness, e.g., with open doors.
13:13 <aos> yani: life saving from HP loss only restores, say, 6d10 hit points. Enough to keep you alive long enough to quaff a potion of full healing, but not enough to just pop on another amulet and wait for your entire HP reserve to be drained again
13:13 <aos> yani: repeated lifesaving has detrimental effects on your character
13:15 <jonadab> What kind of detrimental effects?  Attribute loss?  Gain a level?  Alignment hit?  Luck drain?
13:15 <jonadab> Bad for morale?
13:15 <FIQ> jonadab: LS already reduces your constitution
13:16 <FIQ> but as with all attribute reductions...
13:16 <aos> I was thinking of mental degradation
13:16 <FIQ> it's rendered useless by unihorns
13:16 <jonadab> (I am tempted to implement a morale stat, possibly replacing the severely-underused charisma...  and make it worse every time you eat food that tastes terrible...  but I would have to figure out what its effects would be.)
13:16 <FIQ> aos: If you really wanted to give a permanent penalty, you could reduce the con cap by 2 each time
13:16 <FIQ> and make LS not work if it would be reduced below 3
13:16 <aos> well yeah, I was about to say
13:17 <jonadab> Oh, wow, that could result in life saving leaving you burdened.
13:17 <jonadab> That could be interesting.
13:17 <jonadab> If a bit scary.
13:17 <FIQ> gops prevent the encumbrance issues
13:17 <FIQ> but you will still suffer degraded HP regeneration
13:18 <jonadab> Interesting.
13:18 <FIQ> in particular, if you are lifesaved 4 times (5 for dwarves), it's reduced to 1 per turn
13:18 <FIQ> er, 1 per 3 turns
13:18 <FIQ> and after 7 times (8 for dwarves), the next one will not work
13:19 <FIQ> Personally I never saw an issue with LS though
13:19 <FIQ> The amulet is rare and it prevents you from wearing other amulets
13:20 <aos> FIQ: have you ever polypiled amulets? You can easily get 8-10 of them
13:21 <aos> especially since none of the others are *that* useful and you never need more than 1 of them
13:21 <FIQ> I suppose
13:22 <aos> I like the idea of draining con permanently, though I also think there should be a mental component
13:23 <aos> it's not good for you to die and return from death
13:23 <FIQ> I always imagined LS as applying before you actually die
13:23 <FIQ> you're critically injured, but before death settles in, the ammy fixes stuff
13:24 <jonadab> It's still a near-death experience.
13:24 <K2-webirc> "oLS incurs a 1d3+1 level drain each time it's utilized
13:25 <jonadab> Which suggests you should get experience points for it the first time it happens. <-- YASI
13:26 <aos> level drain, plus experience points. hmm.
13:26 <K2-webirc> so if you're not at least lvl 2 or higher, the life force needed to save your life will kill you
13:26 <K2-webirc> err lvl 3
13:26 <K2-webirc> that sounds like an EPI
13:27 <aos> not really. early characters generally don't have life saving available.
13:27 <jonadab> There's always the Evil Patch nerf to amulets of life saving.
13:27 <jonadab> (If you're wearing one and it gets cursed, this instakills you.)
13:27 <K2-webirc> hah
13:27 <K2-webirc> or revives a dead monster near you instead and leaving you with 1 hp
13:28 <K2-webirc> the amulet begings to glow... but its power is directed elsewhere!
13:28 <K2-webirc> *begins
13:29 <K2-webirc> you need the 1 hp left over so you can see how you just got screwed
13:29 <aos> YASI: a cursed amulet of life saving will save you if and only if you are undead.
13:29 <aos> amulet of death saving
13:30 -!- raisse has joined #hardfought
13:30 -!- mode/#hardfought [+v raisse] by ChanServ
13:30 <K2-webirc> heh
13:30 <K2-webirc> "oDS
13:30 <K2-webirc> collect for your pet vampire lord
13:30 <K2-webirc> hey yeah
13:30 <K2-webirc> "oLS shouldn't work for undead
13:31 <aos> FIQ already added that :)
13:31 <aos> for nonliving
13:32 <K2-webirc> oh neat
13:43 <K2-webirc> wrapping up here at work, see you all later
13:43 -!- K2-webirc has left #hardfought
14:37 <raisse> undead should have amulets of death saving
14:38 <raisse> (which would instantly kill anything living that put it on)
14:40 <winny> :3
14:46 -!- raisse has quit [Quit: Raisse suddenly disappears!]
14:46 -!- raisse has joined #hardfought
14:47 -!- mode/#hardfought [+v raisse] by ChanServ
14:54 -!- raisse has quit [Quit: Raisse suddenly disappears!]
14:54 -!- raisse has joined #hardfought
14:55 -!- mode/#hardfought [+v raisse] by ChanServ
15:22 -!- zombifier has quit [Ping timeout: 260 seconds]
15:37 -!- zombifier has joined #hardfought
15:56 -!- raisse has quit [Ping timeout: 255 seconds]
16:17 <Beholder> [nd] dammitjim (Rog Orc Mal Cha), 907962 points, T:57591, quit
16:18 -!- oh6 has quit [Ping timeout: 260 seconds]
16:18 <Beholder> [nd] junglejim (Ran Orc Fem Cha), 885616 points, T:39407, quit
16:40 -!- elenmirie has quit [Quit: Going offline, see ya! (www.adiirc.com)]
16:41 -!- elenmirie has joined #hardfought
16:41 -!- mode/#hardfought [+v elenmirie] by ChanServ
16:45 -!- noty has joined #hardfought
16:47 -!- NeroOneTrueKing has joined #hardfought
17:40 <aos> yani: you can't write spellbooks by appearance. If you don't know the spell, you can't unknown-ID write it.
17:43 <jonadab> EPI: reading a spellbook has a chance of making its beatitude worse (cursed if it was uncursed, uncursed if it was blessed).  This happens when you start reading, so if you get interrupted, continuing is dangerous unless the book is bknown.
17:43 <jonadab> Naturally, if you get interrupted repeatedly, a book can go all the way from blessed to cursed.
17:50 -!- Tarmunora_ has quit [Ping timeout: 248 seconds]
17:51 -!- raisse has joined #hardfought
17:51 -!- mode/#hardfought [+v raisse] by ChanServ
17:55 <aos> yani: disintegration rays have a 10% or 5% chance not to reflect and instead destroy your reflection source (but nothing else; this terminates the ray). Extrinsic disintegration resistance prevents this.
17:57 -!- oh6 has joined #hardfought
17:57 -!- mode/#hardfought [+v oh6] by ChanServ
17:58 -!- raisse has quit [Ping timeout: 255 seconds]
18:04 <Beholder> [nd] Rx (Hea Gno Fem Neu) eschewed atheism, by dropping 9 darts on an altar, on T:3891
18:05 -!- raisse has joined #hardfought
18:05 -!- mode/#hardfought [+v raisse] by ChanServ
18:06 -!- NeroOneTrueKing_ has joined #hardfought
18:08 <jonadab> aos: EPI: all rays have a chance to do that, unless you have the corresponding resistance.
18:09 -!- NeroOneTrueKing has quit [Ping timeout: 240 seconds]
18:13 -!- raisse has quit [Ping timeout: 248 seconds]
18:22 -!- Tarmunora_ has joined #hardfought
18:50 <Beholder> [nd] Rx (Hea Gno Fem Neu), 2858 points, T:4799, killed by a white unicorn
19:10 <K2> bleh
19:10 <Beholder> K2: Message from K2-webirc at 2017-09-12 10:10 EDT: don't forget to update FIQhack when you get home
19:12 <K2> FIQhack updated
19:25 <K2> !tell Mandevil Tangles recent gh acsension doesnt show on your scoreboard, just an FYI
19:25 <Beholder> Will do, K2!
19:32 -!- Webmant9 has joined #hardfought
19:35 -!- Webmant has quit [Ping timeout: 248 seconds]
19:44 -!- ais523 has joined #hardfought
19:48 -!- NeroOneTrueKing has joined #hardfought
19:48 -!- honu_ has joined #hardfought
19:48 -!- NeroOneTrueKing_ has quit [Ping timeout: 240 seconds]
19:48 -!- honu has quit [Ping timeout: 240 seconds]
19:49 <K2> !tell Mandevil I think I see why... last check on every server you track was 2017-09-10 at 1430 hrs
19:49 <Beholder> Will do, K2!
19:51 -!- ais523 has quit [Remote host closed the connection]
19:51 -!- callforjudgement has joined #hardfought
19:51 -!- callforjudgement is now known as ais523
21:26 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 246 points, T:828, killed by a monster (giant eel)
21:27 <bug_sniper> k2, why did you have to say ni again? it isn't something I wanted to hear.
21:30 <aos> is knight who says ni a slex monster?
21:36 <bug_sniper> I don't know
21:36 <bug_sniper> let me check
21:37 <bug_sniper> nope, unless it's knight of the condemning
21:47 -!- Menche has quit [Ping timeout: 260 seconds]
21:50 -!- NeroOneTrueKing_ has joined #hardfought
21:52 <FIQ> K2: Mandevil's scoreboard is broken
21:52 <FIQ> it isn't listing anything past september 9th
21:52 <FIQ> er, 10th
21:52 <FIQ> https://scoreboard.xd.cm/recent.all.html
21:54 -!- NeroOneTrueKing has quit [Ping timeout: 248 seconds]
22:03 <FIQ> ais523: I was agoing to try to figure out how to fix the crash on too long names
22:03 <FIQ> However, gdb gave me... this http://sprunge.us/fCPP
22:04 <FIQ> Any idea what happened here?
22:04 <ais523> that's clearly a corrupted stack
22:04 <ais523> so the likely cause of the crash is that the name was stored in a buffer that's too small and overeflowed onto a stack address
22:05 <FIQ> ok now I got a saner stack
22:06 <FIQ> #12 0x000000000048d516 in error_reading_save (reason=0x5ad8df "Uncompressed base64 data was too long at %ld\n") at libnethack/src/log.c:81                                                     
22:06 <FIQ> #13 0x000000000048f85f in base64_decode (in=0x7ffe2643b6c0 "YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NQ==", out=0x7ffe2643b754 "abcdefghijklmnopqrstuvwxyz12345", outlen=32)                    
22:06 <FIQ>     at libnethack/src/log.c:586
22:06 <FIQ> hmm
22:06 <jonadab> Hmm, assuming those are UTC times, the last thing there was at 14:28 UTC.  The next notable thing in my IRC log of this channel after that was at 16:19 when K2 said that FIQhack was updated.
22:07 <jonadab> Likely a coincidence.
22:07 <FIQ> jonadab: NAO xlog is likely to be more informative here
22:07 <FIQ> since NAO is more actively played
22:07 <jonadab> Ah, possibly.
22:08 <ais523> FIQ: that strikes me that it's failing to read the player name from the save file because the calling code didn't provide a large enough buffer
22:08 <FIQ> is outlen the buffer?
22:08 <FIQ> because then it is large enough
22:08 <FIQ> it decodes to abcdefghijklmnopqrstuvwxyz12345
22:08 <FIQ> which is a length of 31
22:08 <FIQ> include the null and it's 32
22:08 <FIQ> er, *is outlen the buffer length
22:08 <ais523> it should be
22:09 <ais523> I think we need to decide what we want the player name cap to be
22:09 <ais523> and then enforce it consistently
22:09 <FIQ> I think a cap of 32 is OK
22:09 <ais523> the UI is designed around a cap of 12
22:09 <FIQ> which it was previously
22:09 <FIQ> er, 31
22:09 <ais523> not sure about other parts of the code
22:09 <FIQ> however the code does *not* like a cap like this
22:09 <FIQ> not sure why
22:09 <jonadab> I've had complaints about the 12 cap.
22:10 <jonadab> Granted, these names are going to get inserted into livelog entries that become IRC messages, so you do NOT want to let people have a 150-character name or whatnot.
22:10 <ais523> jonadab: any specifics on why the cap is too small?
22:11 <jonadab> ais523: People have specific names they want to use.
22:11 <ais523> that are that long?
22:11 <jonadab> Grasshopper, for instance.
22:11 <ais523> that's 11
22:11 <jonadab> Oh, hmm.  True.
22:11 <ais523> most computer games have much smaller caps than 12
22:11 <jonadab> I must be misremembering.
22:12 <jonadab> There was somebody in one of the channels I'm in, I think either this one or the clan channel, whose name gets one character cut off every time.
22:12 <jonadab> (Amy also complained, but she complains about a LOT of stuff, so I'm less concerned there.)
22:13 <ais523> someone would need to go over the entire code and find all buffers that can hold the name
22:13 <ais523> and make sure they're consistently sized
22:13 <ais523> hmm… 16 plus a null, perhaps?
22:13 <ais523> if you allow a very long name it's hard to fit it onto the UI
22:13 <jonadab> If we're going to go to all that trouble, shouldn't it be a #define?
22:13 <ais523> PL_NSIZ
22:14 <ais523> but I'm not sure if even that is used consistnetly
22:14 <ais523> it's 32 in vanilla
22:14 <ais523> so perhaps we should keep that value?
22:14 <jonadab> That seems reasonable.
22:14 <ais523> but that number seems to include the NUL
22:15 <jonadab> I mean, there's always going to be somebody who can come up with a _longer_ name, but at some point it's ridiculous.
22:15 <FIQ> jonadab: the limit is 10
22:15 <FIQ> not 12
22:15 <FIQ> in NH4 and 4k
22:15 <jonadab> FIQ: Ah, so it was Grasshopper.
22:15 <FIQ> in fiqhack it is 27 because it was the highest I could get away with before the save would crash on load
22:15 <jonadab> Perhaps my memory is not as bad as I remembered it being.
22:17 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 1727 points, T:1486, killed by a shuriken
22:17 <FIQ> "Uncompression error: pos=32, olen=32" hm
22:18 <FIQ> why is it inserting 32 characters before nul
22:18 <FIQ> when the name has a length of 31
22:20 <jonadab> FIQ: Wait, why is the limit 10?  I see strlen(str) < 12, so shouldn't the limit be 11?  Does strlen count the null or something?
22:20 <FIQ> yes
22:20 <FIQ> wait
22:20 <jonadab> Ah.
22:20 <FIQ> no
22:20 <FIQ> misread the question, sorry
22:20 <ais523> FIQ: the length of the buffer typically /includes/ the NUL
22:21 <ais523> in function arguments
22:21 <ais523> so maybe pos isn't counting correctly?
22:22 <ais523> or maybe the check's just wrong
22:22 <ais523> pos = len would normally be OK as long as no further data were inserted, with standard numbering conventions
22:22 <FIQ> jonadab: the discussion on july 6th 15:xx UTC assumed a length of 10
22:23 <FIQ> ais523: so I did so me tests
22:23 <FIQ> the uncompression thingy returns pos=6 for "wizard"
22:23 <FIQ> but pos=32 for "abcdefghijklmnopqrstuvwxyz12345" for some reason?
22:23 <ais523> try to see if there's a pattern mod 4
22:24 <FIQ> mhm
22:24 <ais523> base64 has a different encoding for the end of the string depending on the length
22:24 <ais523> at a guess, maybe the length for the = is being double-scaled or something like that
22:24 <FIQ> proximo gives pos 8
22:24 <FIQ> K2 pos 3
22:24 <FIQ> DUCKHACK pos 9
22:24 <FIQ> NeroOneTrueKing pos 15
22:25 <FIQ> hothraxxa pos 9
22:25 <FIQ> DUCKHACK Jr. pos 12
22:25 <FIQ> I am not seeing any pattern
22:29 <FIQ> ah
22:29 <FIQ> I see it I think
22:29 <FIQ> all the ones with no padding chars
22:29 <FIQ> is correct
22:29 <FIQ> the others is 1 more than it should
22:30 <jonadab> Only ever 1 more?
22:30 <jonadab> So, if we allowed the name to be, say, up to PL_NSIZ - 2, that would be safe?
22:32 <FIQ> also
22:32 <FIQ> if the name is compressed
22:32 <FIQ> it will also work
22:32 <FIQ> this is why aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa is OK
22:32 <FIQ> also length 31
22:32 <jonadab> I prefer not to assume it's compressible by the compression algorithm we use.
22:33 <FIQ> jonadab: obviously
22:33 <FIQ> just saying what the symptoms are
22:33 <jonadab> Right.
22:33 <FIQ> Amy managed to crash  4k or fiqhack, forgot which, by managing to have a name with exactly 31 characters in it
22:34 <FIQ> and not compressed
22:34 <jonadab> I'm just stating the obvious, because I do that sometimes.
22:34 <jonadab> But if we'd cut her off at 30, she couldn't have?
22:34 <FIQ> looks like it
22:34 <FIQ> but I recall there being another crash
22:34 <jonadab> Ah.
22:35 <FIQ> if you enter a name of 27+ characters in the name prompt after selecting role
22:35 <FIQ> rather than using the options menu
22:35 <FIQ> and selecting certain role+race combos
22:36 <jonadab> So PL_NSIZ - 2 isn't actually completely safe as a limit, then.
22:37 <jonadab> And you think 26 is safe, but we don't know why 26 is safe and 27 is not.
22:37 <jonadab> Hmm, wait.
22:37 <jonadab> You said certain race/role combos.
22:37 <jonadab> Is it possible this is related to the way it formats your rank or something?
22:37 <jonadab> Except race shouldn't matter for that.
22:38 <FIQ> if you play a female neutral human priestess, a name length of at least 27 in the name prompt will crash the game
22:38 <FIQ> it seems to be based off the total length of the role+race+whatever selection, but I didn't confirm this thoroughly
22:39 <bug_sniper> is freezing cloud a good spell to learn as a deep elf fire elementalist?
22:39 <bug_sniper> oops, wrong channel again
22:42 <jonadab> FIQ: Ah, possible.
22:43 <FIQ> bug_sniper: play ice elementalist if you want to cast ice spells
22:43 <jonadab> Are these slex roles?
22:43 <FIQ> probably
22:44 <bug_sniper> but vehumet is giving me that spell
22:44 <FIQ> but I think bug_sniper is referring to DCSS
22:44 <jonadab> Ah.
22:44 <FIQ> bug_sniper: isn't FE apt with ice magic awful though
22:44 <FIQ> I mean, it's the opposing element
22:44 <bug_sniper> aptitudes go with races, not with roles
22:44 <FIQ> oh
22:44 <FIQ> right
22:44 <FIQ> I forgot
22:44 <ais523> FIQ: ice mage is regular Slash'EM
22:44 <FIQ> was a while ago I played :P
22:45 <bug_sniper> fire mage is too
22:45 <FIQ> ais523: yeah but slash'em doesn't add any elemental spells
22:45 <ais523> I assume all the regular Slash'EM content is in slex too
22:45 <FIQ> beside the deferred sphere spells
22:45 <FIQ> so it's a bit redundant
22:45 <FIQ> and pointless
22:50 <FIQ> ais523: so I think this is wrong
22:50 <FIQ> if ((in[i + 2] == '=' || !in[i + 2]) && (in[i + 3] == '=' || !in[i + 3]))
22:50 <FIQ> base64 has ==, = or no padding, right?
22:50 <FIQ> not ===, == or =
22:51 <FIQ> also I think this is an outright typo
22:51 <FIQ> if ((in[i + 1] == '=' || !in[i + 2]) && (in[i + 2] == '=' || !in[i + 3]))
22:51 <ais523> https://en.wikipedia.org/wiki/Base64#Output_padding
22:51 <ais523> you seem to be right
22:51 <ais523> make sure that the /encoder/ is also padding correctly
22:52 <ais523> fixing one place and not the other would be a problem!
22:52 <FIQ> so I think it should be checking i + 3 only, and then i + 2 only
22:52 <FIQ> right
22:53 <FIQ> the encoder already seems to be doing the right thing
22:53 <FIQ> ais523: now... why does this not affect the differ?
22:55 <ais523> differ diffs before compression, not afterwards
22:55 <ais523> err, compression+base64
22:56 <FIQ> I mean, the base64 decode part
22:56 <FIQ> when applying diffs
22:59 <FIQ> this seems to also have fixed the name length crash
22:59 <FIQ> in the name prompt
22:59 <FIQ> !tell K2 fh updated
22:59 <Beholder> Will do, FIQ!
23:01 -!- Menche has joined #hardfought
23:01 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 3122 points, T:1568, killed by a blast of frost
23:40 <Beholder> [slex] Yuring (Pok Dro Fem Neu), 2476 points, T:1680, killed by a monster (expensive secret car)