I got the chance to participate in a GM event that I’d never seen before: Russian roulette! The event is, well, basically what it sounds like. There are a handful of platforms, and the game proceeds in a series of rounds. For each round, a platform is selected at random, and all PCs on that platform are killed — representing that platform being the “loaded chamber” of the “gun”. This event takes place on the same map as the very different Bomberman event, which I have shown in a previous diary entry. I attended this particular event on my vicloc clericlet d33r:
As you can see, we’ve all been stunned, so that we cannot change our minds about what platform we want, after a losing platform has already been picked… But in between rounds, players are allowed to move freely, in case they want to choose a different platform than the one that they are already on.
Choosing a winner is simple: whoever is last standing wins. Once the group starts to thin out, the GM(s) who are administrating the game can choose to eliminate platforms at will, so that players cannot pick those platforms at all. This allows the game to accelerate towards the end, where eventually there are only two platforms to choose from, and ultimately just one player is left standing.
Although I just mentioned that players are allowed to move freely in between rounds, you might reasonably wonder whether or not this can possibly confer an advantage. The answer, of course, is “no” (and still “no”, even if we phrase the question in terms of disadvantage). The only way that such an advantage is even possible (as far as I can tell) would be if MapleLegends’s implementation of the
@roll command were implemented naïvely enough as to be nonuniform. You could try to argue that it would suffice if the PRNG that the implementation uses merely fails a (reasonably insensitive) next-bit test (regardless of whether or not the ultimate output is uniform w.r.t. this less-than-perfect entropy source), but I’m just going to call such a strategy impractical. The PRNG would almost certainly be shared in a way that makes introspection into its state — which would allow some level of nontrivial prediction about the next value(s) that it’s going to produce — practically impossible. See, for example,
java.lang.Math.random(), which persistently shares a single PRNG instance across all threads in the runtime, using it to provide the result of any call to said function. Any time that
Math.random() is called — whether it’s because someone somewhere else in a map that you are unaware of used the
@roll command, or any(!) number of other possible things (
@roll is very unlikely to be the only use of this PRNG within the server’s codebase) — you would be missing unknown lengths and unknown positions of substrings of the PRNG’s bitwise output. So, I expect such a strategy to have negligible impact at best. On the other hand, if the output of
@roll is improperly distributed (read: nonuniform), then knowing something about the true distribution (other than the obvious fact that it reasonably approximates a discrete uniform distribution) could confer an actual (although still likely very slight) advantage. However, even then, the most reasonable strategy would involve never moving in between rounds! — although it would at least be true that such movements, in general, have the possibility of conferring (dis)advantage.
Unfortunately for us, there appears (as far as I can tell — please do email me your sophisticated hypothetical attacks on this game of roulette that require in-depth knowledge of numerical analysis so that I can fail to understand them) to be no such practical exploits. OpenJDK’s standard, default implementation of a PRNG appears to be an LCG with a modulus of 248 (i.e. 48-bit arithmetic), a multiplier of 5DEECE66D16 (25 214 903 91710), an increment of 1110, and an output that takes only the most significant 32 bits of the result (which largely eliminates the issue that LCGs have with the less-significant bits having rather small periods). Although obviously LCGs are totally unsuitable for cryptographic purposes (please, for the love of god, use a widely-accepted CSPRNG in such a case!), this is a pretty good LCG algorithm from what I can tell. POSIX uses it too. And OpenJDK’s API for generating random numbers appears to be well-designed enough to prevent programmers from making those dumb old mistakes, e.g. using
rand() % n to get a “random” integer in [0,
So really, this game consists of picking a platform (any platform will do) and AFKing until you die (or conversely, until you win!). There’s no other strategy that wins more often, so fuck it. Definitely my least favourite GM event that I’ve participated in, but it is what it is.
Anyways, I died.
To be more clear, I died not once, not twice, but thrice. Once for each game of roulette played! At least I got a SoS out of it!!
Any readers who are familiar with playing a dark knight (that is, the fourth job warrior class that comes after dragon knight) will know that dark knights don’t really have that many skills. They definitely have skills, but, you know, they aren’t super important. They are basically permanently third job. Which is really cool if you ask me, and the main attraction is obviously Berserk, which allows the dark knight to deal two(!) times as much damage, provided that they
kill themselves carefully balance the bright red bar at the bottom of their screen. Personally, I’m a huge fan of Achilles for its passive defence (which notably “stacks” with everything else in the game and works on a multiplicative basis instead of a subtractive one), but it’s not really the first thing that most people think of; it’s not unique to dark knights (all fourth-job warrior classes get access to it), and as a passive ability with no readily apparent effects from the third person viewpoint, it doesn’t often come to mind. So, now that my darksterity knight rusa has maxed zerk, Achilles, Beholder, and Aura of the Beholder, and has a point in Rush and Hero’s Will… Well… I think we all know what time it is.
Maple Warrior time!! And not just any Maple Warrior, but the twentieth level of it. Of course, obtaining the book to take MW beyond level ten is no small feat. The only source of such “MW20” books is — you guessed it — the horned tail. As Maple Warrior is generally very useful (all fourth-job classes have access to it, and the buff benefits anyone), and killing Horntail is a difficult task in itself, is time-consuming, and only rarely yields any actual MW20 books, these books are highly prized. An individual MW20 book costs so much that it’s very common for players to bypass purchasing the books altogether, in favour of purchasing a MW20 “100% service”, effectively lifting all economic risk off of the buyer and placing it onto the seller. In exchange, the seller charges more than the expected cost, at current market prices, to deliver the service of “I will keep giving you MW20 books until you pass one”. As you’d intuitively expect, this expected cost (assuming that the market price of a single book is 𝑏) is 𝑏⧸𝑝 (as the expected value of a geometric distribution is 1⧸𝑝). In the case of MW20, 𝑝 = 0.7.
I really kinda thought that I would end up using individual books until I passed one. I’ve seen other people have their Maple careers destroyed in this way, by failing one too many MW20 books. It is a sad thing: to pay your life savings only to pray that you don’t merely lose it all. Hence, the existence of MW20 services. But I had a lot of mesos lying around because I’m a compulsive hoarder (my brain is perpetually in poor person mode, where any expenditure that I make is surrounded by irrational fear that I may actually need that money later — yes, even though it’s just a videogame -_-), and I came to realise that I just need to start spending at some point. On average, buying individual books is cheaper than buying a 100% service, so fuck it :P
But STRginner Cortical (GishGallop, Medulla, Subcortical, SussyBaka, CokeZeroPill) has had a dream of selling MW20 100% service for a while now, and only recently saved up the money to buy a few books when the market prices took a dip. I was aware of the market dipping, as I was in the habit of doing HT runs myself and profiting from the occasional MW20 drop, so I figured that it was a good time to buy MW20 book(s) or MW20 100% service for myself. Thus, it was only natural for me to be the one to help fulfil Cort’s dream:
Congrats Cort :] And congrats to me for now having MW20!! :D
One such HT run that I did had not two, but three mages. We had on our side Baboom of the Funk guild, a fire/poison archmage. At one point, two of our mages died simultaneously, but thankfully, one of them was Baboom, so we still had a live bishop (Pebbytan) to Resurrect them :P
⚠️ CAUTION: horned reptiles within ⚠️
With two bishops and a F/P archmage, you might reasonably be worried about triggering mass seduce early. Well… As prophesied…
GG indeed. Thankfully, we were able to identify which arm was in mass seduce range, and finish the run without too many additional issues :P
After that run, I was recruited by marksman xBowtjuhNL to help sell HTPQ (Horntail Party Quest) services to a neophyte bishop by the name of micaheldum, who needed Life Roots for their Genesis quest. Unfortunately for everyone involved, this particular HTPQ run was somehow bugged. Typically, it only takes around ≈2 minutes (or less) to farm a Life Roots out of the Skelegons in the Cave of Light, thus achieving the goal of going into HTPQ in the first place. However, even after grinding in this map as a party of about three PCs for upwards of 15 minutes, there were no Life Roots to be found. It’s tempting to think that something was done wrong; maybe micaheldum wasn’t actually on the appropriate quest to make the Life Roots drop (as Life Roots is a quest-only item). But I made pretty damn sure (including confirming the exact text displayed by micaheldum’s Quest Helper) that we didn’t do anything wrong, so we tried
@gming in the desperate hope of having this bugged HTPQ fixed for us. Unfortunately, this was done to no avail, so we ultimately had to leave, and hope that our buyer would find another seller that was capable of not bugging the damn PQ!!:
Readers who have played MapleLegends before may recall a certain MapleTip: “Bad luck is not a bug”. So you might reasonably wonder if perhaps this HTPQ was not bugged at all, and we merely had extremely poor luck. We can sensibly ask the question: how unlucky would you have to be to get a failed HTPQ of this kind? We can model Life Roots drops using a simple Poisson* distribution; we know that the mean time taken to produce a single Life Roots drop is roughly two minutes, and we can very reasonably assume (assuming that the MapleLegends server doesn’t have some horrible bug in their monster drop implementation) that item drops are independent events — i.e., one item drop does not influence how long it will take for the next item drop to occur.
We’ll say that we only spent about 15 minutes farming Skelegons. The parameter λ of our Poisson distribution is the mean number of drops produced in such a 15-minute interval. Because we estimate the mean time to produce one drop to be about 2 minutes, λ = 15⧸2 = 7.5. The Poisson distribution describes how likely it is for the number of drops that occur during some 15-minute interval to be a given value 𝑘 (𝑘 ∈ ℕ). In the case of a failure, obviously 𝑘 = 0 (no Life Roots are dropped at all). The PMF of a Poisson distribution as described here is λ𝑘𝖾−λ⧸(𝑘!). So, for our particular case, we have λ𝑘𝖾−λ⧸(𝑘!) = 7.50𝖾−7.5⧸(0!) = 𝖾−7.5 ≈ 0.05531% ≈ 1⧸1808. It is left to the reader to decide whether “one in two thousand” seems like enough for an
In any case, during another HT run, woosa hit level 167~! :3
Missing out on having HS when an HT body part dies always makes me a lil sad, but hey — I still levelled up :P
I also got my first taste of being a sed target! Shadower Harlez (VigiI) let me go into the second prehead map first so that I could try it out:
It went pretty well, although being a sed target during preheads is really not very difficult. I did have one incident where I accidentally touched the head; but I didn’t die, thanks to Pebbytan’s expert sed bish skills:
I hope that in the future, I might have the privilege of trying out the sed target role for real! I’ll have to try my hand at making some high-AVOID gear, like a Sauna Robe and some Yellow Strap Shoes!!
I also experienced an unnaturally cleave-heavy HT run, wherein HT got down nearly as low as ⅓ of its total HP, without any of the three heads dying!!
I also did a pair of HT runs with bishop beegoratto, who brought some Christmastime letters to entertain us with:
Apparently, Horntail was rather offended by the holiday season graffiti, and took it out on poor Pebbytan — our only other bishop — by disconnecting her from the run :[ Now it was up to beegoratto to take care of the Dark Wyverns — amongst many other bishop duties, including switching between parties to provide/receive buffs — with far less assistance:
Although being a solo bishop in a two-party HT run is certainly gruelling and stressful, we were able to make it through the rest of the run relatively smoothly!
We also sold a Horntail Necklace (HTP) to a bishop by the name of FinalHealth. Although this might seem perfectly normal, the catch was that FinalHealth is level 200~! She originally came to us trying to buy an AFK run, but we convinced her that an AFK run surely must not be necessary for a character of two hundred levels:
Indeed, FinalHealth was simply unfamiliar with Horntail! We had to explain some of the basic mechanics involved, like the fact that HT can dispel (DP), and that the Dark Wyverns that spawn are capable of doing the same thing via their ranged attacks. Several of the other runners were confused as to how a level 200 bishop had simply never gone anywhere near HT, although I was less surprised, myself. Give enough leech, and you eventually hit level 200, right? Leeching oneself (and/or others) at 5–6 F is quite typical — particularly as a mage duo, as I understand it. And that’s no small quantity of EPH for the one(s) giving the leech! Of course, that doesn’t quite explain how they’ve never gone near HT on any of their other character(s) either, but it’s plausible that they just didn’t want to participate in such activities until reaching a very high level (presumably via leech) — or that they are just not interested at all! After all, many MapleStory players — perhaps understandably, given the structure of the game — are really there for the grinding!
In any case, I died.
Oops. This is my first time dying by touching the right head, and this death really was my fault. An unfortunately-timed Weakness debuff prevented me from jumping when I thought that I would be able to, causing my left arrow key presses to push me further to the left than I expected…
And, finally, I did another HT run that got… well… a little bit scuffed. Just a little.
Ouf, that’s two deaths right there. But it’s okay, right? We have two bishops and two buccaneers; that’s the potential for six Resurrections in rapid succession!
As it turned out, these were indeed last words, in some sense. We seemed to have lost both of our bishops at once…
We seriously considered crystalling out after finishing off the left head, but we estimated that it would be possible to at least finish the run and get some EXP (albeit without the benefit of HS, of course 😕) and the loot.
And then markswoman bweee died…
And then dark knight Erick died…
At this point, I think a buccaneer(?) had disconnected, and we were down to like seven characters remaining >w< Some number of Onyx Apples later, though (including two that I sold during the fight to a nightlord in my party), and we were at least able to clear the damn thing! For no impressive drops… Oh well.
And then, in the next run, we were similarly unlucky! We lost a bishop & a buccaneer again!! :[
Not so great runs that day…
Later on in the run, nightlord MeandU had a poopmergency:
They survived the poopmergency (thanks to Pebbytan’s Healing), but shortly after coming back from the little Maplers’ room, they got disconnected :[ Eventually, we got to the point where we actually merged both parties into a single six-Mapler party:
This only lasted as long as it took for Pebbytan’s Resurrection to come off of its cooldown so that she could resurrect SmallMight (SiriusPlaque), at which point we split back into a party of three and a party of four. Again, after much struggling and Onyx Appling, we were eventually able to finish this cursed HT run and get our meagre drops :P
It’s time for another installation of Questing With tara™!!!! With your host, my shield pugilist tarandus :]
…For The Sakura Garden. Plus, I had to kill even more kittycats for Orbis In Danger. Also as part of Orbis In Danger, I had to collect some Cloud Pieces from the pixies that inhabit the Cloud Park. I found out the hard way that most pixies are pretty tough opponents for a level 36 tara. So I farmed them from Star Pixies, the weakest of the pixie species:
While farming the Cloud Pieces, was getting really close to hitting level 37, so I needed to put on my intelligent pyjamas. Unfortunately, none of the Orbis monsters are really very trivial to kill (Jr. Sentinels are probably the weakest), so I took a trip to Japan to find monsters that I was capable of killing with Three Snails:
And the aforementioned Jr. Sentinels…
Hughes’ desire for beating the shit out of adorable sea creatures is insatiable, so for Hughes’ Weird Invention, I needed some 50 Snorkles [sic]. For this, I headed to floor B2 of the Orbis Tower to hunt me some Scuba Pepes:
Of course, the first part of said questline only requires you to collect 100 Jr. Pepe’s Fish. This is 100⧸750, because the questline requires 600 in total, in addition to 100 for Maya’s Concern and 50 for Master Sergeant Fox’s Secret! So I was stuck on the first floor of the Orbis Tower for a while…
Heyo, 291k EPH at level 38 is actually really good!! I won’t complain :P
With that kind of EPH, I had to put on the ol’ smartypants and find some Jr. Sentinels to throw some Red Snail Shells at…
I then moved on to some more Aqua-Road-oriented quests, including Kenta’s Research. Kenta’s Research is a questline that proceeds in the form of three quests; in turn, each quest requires three distinct DNA samples. Each of the nine DNA samples is dropped from a distinct monster species, starting with Cico & Seacle (both hippocampee)…
And the crowd favourite Pinbooms…
The second quest in the line then asks for some DNA from Bubble Fish…
And Mask Fish…
And, I stumbled upon a Seruf while I was there :P
Take that, you oversized oyster!!!
In the previous diary entry, I had a hell of a wild ride trying to CS myself a cape. With the determination to finish what I started, I bought CS service from none other than STRginner uayua (shadowban, tb303)! Because of the way that CSs (and WSs) are currently implemented in MapleLegends, it makes sense to sell these scrolls as a service (unless you actually plan on using them yourself), if you’re lucky enough to get them from Gachapon or similar. The scrolls themselves are untradeable, so selling them directly is not an option. On the other hand, you could use the Prestige Shop to trade one CS/WS in for a MCP5. But the expected number of pCoins that a MCP5 contains is only 90, whereas making a CS/WS yourself would cost 100 pCoins and an additional 10M mesos! As a result, you can effectively sell the scroll itself as a service (only as a service because, again, CSs/WSs are untradeable) for somewhat more than 90 pCoins — because the MCP5 is only worth 90 pCoins, selling service for >90 pCoins represents a better deal for the seller. If the price of a service is, furthermore, ≤100 pCoins, it represents a better deal for the buyer as well, because it would “normally” cost 100 pCoins + 10M mesos for the buyer if they did things the “normal” way. This straightforward economic situation makes scams more likely, or puts additional technological burden on the process of selling CSs/WSs due to the necessity of livestreaming video of the scroll usage in order to give reasonable proof of good faith. Somewhat ironically, this additional technological burden makes the CS/WS mechanics somewhat more pay-to-win (P2W), but oh well.
uayua tried to sell the service to me for 90 pCoins. She insisted that this was still a win for her, as it means that I am effectively couching the economic risk of her opening the MCP5 herself and possibly getting <90 pCoins as a result. But I didn’t want her to just break even, and furthermore, she could sell the MCP5 herself (without opening it) and break even (albeit in terms of mesos, rather than pCoins) that way too. So I took the price that she was trying to sell service for in the FM: 92 pCoins.
Aaaaand it failed :]]]]]]
Oh, well. R.I.P. my cape dreams… At least uayua has 92 pCoins to work with now :P
You can see what alces looks like when training on CDs in this video; it’s a little awkward, but Shadow Web helps a lot. The benefit is that I can train with Lvl1Crook, who unfortunately cannot jump over Kid Mannequins due to their tall hitboxes. Hopefully, in the future, after many soul-crushing hours of CD grind, we can escape CDs together!!
Well, alces probably won’t ever truly grow out of KMs/CDs, unless maybe she gets really good gear and a whole lot of SP in Venomous Star (which works with any weapon, despite its name & in-game description)… Then maybe she could 7 F…? LOLLL
I did a pair of Zakum runs with a rather unusual party composition on my darksterity knight rusa; we had two bishops!
As you can see, one of the bishops (idoybh2) came over to my lonely side of the Zakum body where I usually hide, cowering from the deadly Heals of the party’s bishop. But because we already had a bishop (Pebbytan) on the left side, idoybh2 was free to pamper me as my own personal bishop :P It’s pretty nice. Used a lot fewer ACPs and got stunned a lot less!
More importantly, however, my woodsmaster capreolina got to do her very first Zakum runs!!! :D
On the second run, I even did a quick
@dpm 5 test to see how I was doing with my PSB and birdie:
I got the Zakum Chair!!:
Looking good. B)
In another run, we found out that Speed Infusion (SI) is epic, even for bowmasters (BMs)!:
During another run with buccaneer Buccon (who also has a woodsman, by the name of Buwwon!), I died during the arms stage. 🤦🏽♀️ Despite the fact that I had Ginger Ales (heals 75% HP & 75% MP) bound to both my pet autoHP and autoMP, at an HP threshold of 65%(!), I was nevertheless getting multiple autopot fails per minute. One such autopot fail was quickly noticed by me, and I immediately pressed Shift (to which I had Honsters bound, each of which heals 60% HP) at least thrice, before I ended up croaking anyways :[ Thankfully, bishop Alectra was able to Resurrect me, so I finished the run :]
And finishing the run meant level 137 for capre!!:
I also did one run where I tried using my bow during the arms stage:
Again, even with a bow, the lack of Power Stance is annoying, especially for an archer with basically no AVOID like capre 🙄
Now that capre was level 137, she finally had level ≥20 Hurricane, so I tried another
@dpm 15 test during the body fight:
And finally, I had some fun Zak runs as rusa, in which we did incredibly chaotic — but speedy — two-party (12-Mapler) runs:
Ever finished a Zakum run in 15 minutes flat? I have!
Picking up where I left off, within the previous diary entry, in the Temple of Time (ToT), I did some Memory Guardian slaying on my darksterity knight rusa. I was accompanied & assisted by shadower Harlez (VigiI)!:
Harlez noticed that the party member indicators that show up on the in-game world map have special behaviour for married couples!:
The map that Harlez is in shows up with a pink* heart ❤ icon above the arrow. Cute :']
With a thousand of those Memory Guardians slain, we moved on to Chief Memory Guardians:
Somehow, I actually managed to get a full card set out of these damn things:
And now, to cap off this region of ToT, a boss fight with our giant flying whale friend:
With that, it was time to transition to the next region of ToT, which meant going back to Victoria Island and talking to my first job instructor, D-Dubs†:
Now I could go to the icy parts of ToT, and fight the blue Qualm Monks!:
Later, I came back to ToT on my own and solo’d the 999 Qualm Monk Trainee quest~:
*I was going to use the Pink Heart emoji (potentially U+1fa77) here, but it’s currently only a proposal and won’t be subject to approval (or, less likely, disapproval) until later this year (2022). Would be a bit unfortunate to try to use it here, only to lack actual user agent support for a while, and possibly have to go back & change it when the draft is potentially not approved…
†Dances With Balrog → DWB → “Dee Double-you Bee” → D-Dubs.
If you thought that this diary entry was all done with bossing, I’ve some bossy news for you…
Plus, I did some Jiaocengs (JCs)! Here’s one that I trioed with Harlez and bowmaster kwychan (helloooo):
And another, with Harlez and markswoman bweee!:
WHEW that is the big 190, holy moly guacamole. Alright, fine. I won’t smega… This time. :P
😌 Feels good. Now my zerk threshold will be 16 500 forevermore, instead of changing every time I level up or change gear!! :D
And, finally, equipped with my new shiny 30k MAXHP, I set out to help Harlez, marksman xBowtjuhNL, hero Mightyboosh, and corsair Dabulator with a pair of Berga runs:
I’ve gotten a bit better at surviving Berga runs, although I admit that I continue to be mildly terrified by Berga — particularly the third body, for obvious reasons. I’ve found out that it does help to dodge the big front laser(?) burst-of-red-light attack during the third body fight, even though people seem to mostly ignore it. Dodging it appears to be pretty easy and only require crouching for a very short amount of time, and a successful dodge means that you definitely won’t get stunned, stun seduced, nor hit by the attack’s damage. It seems that the attack is a bit selective (just because you fail to dodge it does not mean that it will even target you at all), so that probably is why so many people choose to ignore it.
In any case, one of the neat things about Neo Tokyo (NT) bosses is that they can give some juicy and interesting drops, in addition to their EXP. Check it out…:
Oh. Well, you know, you win some, you lose some… 🤦🏽♀️