rangifer’s diary: pt. cxxxi
New! List of odd jobs~! ✨
You’d never believe it, but I spent nearly a month of work upgrading the mfing list of odd jobs on the Oddjobs website!! Wowowow!!! Checc it out!!!!
The new version has neato burrito features like:
- New formatting! ✨
- Better definitions/ontology!
- Moar jobs!
- Superjobs & subjobs!
- Groups of odd jobs! And “related” jobs too!!
- I fixed some blatant errors! Cool!
- Info about skill usability! Please help me with it!!
- DPM infos! Please help me again!!
- A place for guides & other info to go! Know a guide? Send that shiRt directly @ my inbox!!
And speaking of DPM infos…
Comparing high-level odd DPM
Back in the þͤ olde R>1 ␣ for ␣ series, we compared sustained, theoretical single-target DPM[1] — so basically, training-dummy DPM, but with 600 DEF — for most of the odd jobs in the list on the Oddjobs website. The results are useful, & to that end, I’ve gone back & fixed ’em up a bit.
But there are limitations, as always. I wrote that series aimed at the MapleLegends forum (🤮), and I wrote it aimed at characters with crummy (by MapleLegends standards) gear & no real hope of getting to levels ≥120. But now we, like, do Zaqqūm, & have epic gear, & people are constantly begging us to fund them. I receive so many applications for the élite guild known as “Oddjobs” every week that I have a dedicated assistant just to screen them for me.[2]
So it’s time to do the same thing again, but with different limitations this time. With any luck, the table below will be sortable, should you press the headers at the top:
A | job | mode | E | 1.2k⁢ DEF | 3.2k⁢ DEF | |||
---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 1 | of 1.2k | ||||
🏴☠️ | swashbuckler | boat | 4.43 | 4.50 | 5.15 | 2.78 | 62.8% | |
🏴☠️ | summoner | gun | 4.19 | 4.31 | 4.43 | 4.07 | 97.2% | |
⚔️ | DEXadin | holy BW | ✨ | 4.15 | 5.33 | 7.99 | 3.50 | 84.3% |
⚔️ | DEXadin | holy sword | ✨ | 4.10 | 5.26 | 7.89 | 3.45 | 84.1% |
⚔️ | DEXadin | fire BW | ✨ | 3.91 | 5.04 | 7.56 | 3.26 | 83.4% |
⚔️ | DEXadin | fire sword | ✨ | 3.86 | 4.98 | 7.46 | 3.21 | 83.1% |
🏹 | woodsmarksman | ✨ | 3.81 | 4.09 | 5.19 | 3.11 | 81.6% | |
🏹 | woodsmarksman | 3.71 | 3.87 | 4.87 | 3.01 | 81.1% | ||
🏴☠️ | summoner | pacifist | 3.69 | 3.81 | 3.94 | 3.69 | 100.0% | |
🏴☠️ | swashbuckler | gun | 3.55 | 3.62 | 4.33 | 2.52 | 70.9% | |
🥷 | DEX shad | 3.03 | 3.08 | 3.73 | 2.79 | 92.2% | ||
🏴☠️ | swashbuckler | spear | 2.89 | 3.85 | 4.81 | 2.76 | 95.5% | |
⚔️ | DEX hero | sword | 2.84 | 4.94 | 7.41 | 2.29 | 80.7% | |
⚔️ | DEX hero | axe | 2.71 | 4.70 | 7.04 | 2.16 | 79.8% | |
⚔️ | DEXadin | holy BW | 2.65 | 3.54 | 5.31 | 2.00 | 75.4% | |
⚔️ | DEXadin | holy sword | 2.61 | 3.50 | 5.25 | 1.96 | 75.1% | |
🏴☠️ | shield pugilist | 2.50 | 2.62 | 2.74 | 2.35 | 94.2% | ||
⚔️ | DEXadin | fire BW | 2.49 | 3.35 | 5.02 | 1.84 | 73.8% | |
⚔️ | DEXadin | fire sword | 2.45 | 3.31 | 4.96 | 1.80 | 73.5% | |
⚔️ | dagger DK | 2.32 | 2.50 | 3.75 | 1.94 | 83.6% | ||
⚔️ | dagger hero | 2.32 | 2.49 | 3.74 | 2.01 | 86.7% | ||
🏴☠️ | DEX bucc | knuckle | 1.95 | 2.04 | 2.12 | 1.64 | 84.0% | |
⚔️ | DEX DK | 1.91 | 3.81 | 5.72 | 0.92 | 48.5% | ||
🏹 | woodsmaster | ✨ | 1.90 | 2.16 | 2.41 | 0.93 | 48.6% | |
🏴☠️ | armed bucc | EC | 1.85 | 1.85 | 2.13 | 1.58 | 85.4% | |
🏹 | woodsmaster | 1.79 | 1.92 | 2.06 | 0.81 | 45.2% | ||
🥷 | claw shad | 1.78 | 1.78 | 1.78 | 1.40 | 78.8% | ||
🧙 | F/Plet | ✨ | 1.67 | 1.82 | 2.56 | 1.55 | 92.8% | |
🥷 | daggerlord | 1.42 | 1.42 | 1.42 | 1.15 | 81.5% | ||
🧙 | I/Llet | ✨ | 1.40 | 2.18 | 2.65 | 1.27 | 91.1% | |
🧙 | F/Plet | 1.14 | 1.29 | 1.80 | 1.02 | 89.5% | ||
🏴☠️ | DEX bucc | gun | 1.12 | 1.12 | 1.12 | 0.89 | 79.3% | |
🧙 | bishlet | ✨ | 1.08 | 1.17 | 1.67 | 0.96 | 88.9% | |
🧙 | I/Llet | 0.97 | 1.53 | 1.90 | 0.84 | 87.1% | ||
🥷 | LUKless NL | claw | 0.90 | 1.22 | 1.82 | 0.90 | 100.0% | |
🧙 | bishlet | 0.73 | 0.82 | 1.18 | 0.61 | 83.6% | ||
🏴☠️ | armed bucc | no EC | 0.71 | 1.42 | 2.13 | 0.60 | 85.4% | |
🔰 | STRginner | 0.43 | 0.43 | 0.43 | 0.36 | 84.3% |
What’s going on?
- For all figures, higher is better. All absolute figures (that is, those not expressed as percentages) are in millions of damage per minute.
- The first three values in each row are against 1, 2, or 3 boss targets, respectively, each of which has 1.2k DEF (for fairness, WDef = MDef). This DEF value was chosen because it’s the highest WDef value encountered in the Zakum battle (viz. that of the 3rd body).
- The fourth value in each row is against a single boss target with 3.2k DEF, equivalent to the WDef of Kacchuu Musha.
- The fifth value in each row is the fourth value divided by the first. This is a rough measure of how “efficient” the model’s single-target damage is in surmounting DEF. However, it’s here given only for single-target DPM, which is an important caveät in some cases.
- Sometimes, we want to make distinctions between different ways in which the same model PC can approach the same fight. When relevant, these are specified in the “mode” column.
- The “E” column stands for elemental weakness. Some model PCs are pitted against targets that’re weak to all elementally-typed damage, in which case they get an emoji in this column. Monsters are never strong against, nor immune to, any damage types.
- All models are notionally level 163 (the highest Elemental Staff level), have Cider (+20 WAtk), Echo of Hero, MW20, SE, & SI.
For the filthy, disgusting details, see “Assumptions” below. For the somehow even filthier source of the infernal table that you see above, check out the TypeScript source-code in the mini_calc/
subdirectory. You can even run it yourself, with deno main.ts
(or however you like — I only used Deno because it worked effortlessly).
Assumptions
- All PCs are notionally level 163, & have base stats to match.
- All of MapleLegends’s skill changes (on top of its vanilla GMS v62 base) as of 2025-04-22 are incorporated. In numerous cases, these changes diverge greatly from GMS v62.
- No skill-builds are used; instead, all skills are implicitly at their maximum levels. In most cases, this assumption is immaterial. In some cases, however, this may imply a tacit splitting of a single job into multiple models with different SP builds.
- All PCs have Cider, MW20, SE, SI, & Echo.
- All targets are immobile bosses, and all have identical positions & hitboxes. All monsters have levels at or below the PCs’ levels.
- The PC never “MISS”es, never “whiffs” (i.e. all attacks connect with their intended target(s)), is never struck, never takes damage, is never debuffed, never moves, never hits the attack limit (i.e. never “goes stale”), never stops attacking for any reason, is never interrupted in any way, has zero networking latency, & has no delays due to inputs, input handling, queueing, &c..
- The PC attacks continuously for an arbitrarily long period of time, over which an average DPM is taken.
- The damage cap is 199 999 (consistent with MapleLegends, but higher than the vanilla GMS v62 value of 99 999).
- PCs are equipped with gear as follows (mostly just modelled on my own gear):
- A hat is essentially one of Scarlion or Targa: 31 of either DEX or INT, 19 of the next-best (or best) stat, & 15 of the other two stats.
- A top or bottom is level ≈90, perfect clean, & then scrolled for an additional +13 stats.
- An overall is either of the following:
- Level ≈100, perfect clean, & then scrolled for an additional +20 stats.
- A Blood Fitted Mail with 25 STR, for the DEX warriors.
- Bathrobe scrolled for 25 stats.
- A shoe is either of the following:
- 7 STR, 11 DEX.
- 4 INT.
- A glove is either of the following:
- 16 WAtk.
- 8 MAtk, 10 INT.
- A cape is either of the following:
- 12 WAtk.
- 19 INT, 4 STR, 4 DEX, 4 LUK (Crimsonheart Cloak).
- A shield is perfect clean, & then either successfully scrolled with seven 70% scrolls (if it started with seven slots), or else with nine (if it started with ten slots).
- A face accessory is 6 DEX.
- An eye accessory is either of the following:
- 5 STR, 5 DEX.
- 11 INT.
- An earring is any one of the following:
- A Single Earring scrolled for 12 stats.
- 2 STR, 10 DEX, 2 INT, 2 LUK (Glittering Altaire Earrings).
- 14 MAtk, 11 INT (Red Emerald Earrings).
- A pendant is either of the following:
- An average Horntail Necklace (+22 allstat).
- A Mark of Naricain with 5 WAtk & otherwise average stats (+5 allstat).
- All PCs wear all of the following rings:
- Monster Book Ring ⟨Tier 10⟩ (+10 allstat).
- Ephenia’s Ring (+2 allstat).
- [Random mystery event garbo] (+4 allstat).
- A weapon is perfect clean, & then has four 30% scrolls passed on it. The following types of weapons may be used:
- A level 110 non-“common” (i.e. having nontrivial archetype requirements) weapon.
- A level 64 Mapleversary weapon.
- A Purple Surfboard (STRginner).
- A Stonetooth Sword (DEXadin, DEX hero).
- A Maple Steel Axe (DEX hero).
- A Duck tube [level 100] (DEXadin).
- A Sky Ski (various DKs & pirates).
- A generic level 163 Elemental Staff (all magelets).
- The following ammunitions are used:
- Diamond Arrows for (cross)bow (+5 WAtk).
- Magic Throwing Knife (+31 WAtk).
- Armor-Piercing Bullet (+22 WAtk).
- Blaze/Glaze capsules (+16 WAtk, but only with Flamethrower/Ice Splitter).
- Dark knights Berserk at an aftermod of 210% (for reference, the absolute maximum is 220%, typically achieved via active Berserk).
- Against a single target, the DEX hero Brandishes until ten orbs are achieved, & then immediately Panicks before immediately going back to Brandishing. For mathematical details, see Appendix A below.
- The paladin models are the only ones to benefit from Threaten’s −100 WDef.
- Enrage & Concentrate are used, & have their usual ⅔ uptimes.
- Elemental Staff users (i.e. magelets) use theoretic “generic” staves that confer a uniform +25% elemental bonus to all attacks, but that leave summons entirely unaffected.
- The beknuckled & weaponless buccaneers always cancel their Barrage animations with Oak Barrel. This brings down the Barrage → Dragon Strike total cycle time to 2.64 s.
- The delay that’s added to attacking with Assassinate that’s incurred by (optionally) casting Dark Sight is taken to be 100 ms. See: Appendix D.
If you somehow need even more detail, see the TypeScript source-code in the mini_calc/
subdirectory.
Commentary
At this level, the way to top the damage charts is — typically — to have a way around DEF:
- Our corsairs benefit massively from their frankly ridiculous summons’ DPM — which ignores DEF. However, the fact that the boated swashie manages to top the single-target chart here belies the fact that — in spite of nearly half(!) of its DPM coming from summons — their damage falls precipitously with increased DEF. This is, however, less true for the melee swashie, who enjoys a much larger PSM & primary stat.
- Users of ACA or WK/pally elemental charges naturally benefit from the resultant large pre-DEF multipliers.
- The woodsmarksman has an easy time of it, given that Snipe simply unconditionally deals 200k damage.
- Assassinate’s new IED feature (see: Appendix D) benefits the DEX shad enormously.
- Our beknuckled & our weaponless buccaneers benefit greatly from Demolition ignoring DEF. In fact, this ignorance is so powerful that these models — in spite of largely taking on the fighting styles of nonodd melee jobs — are shockingly allergic to cleaving. I originally had the shield pugilist cleaving for 3 targets, but later realised that it was somehow even more overall DPM to simply continue to spam Demo whenever physically possible. This (for the benefit of our sanity) stops being true for the pugilist fighting 4 targets — albeit not in the 3.2k DEF case…
The reader may’ve noticed that the only mage representation is due to magelets. On the one hand, the STR mage is represented reasonably well by the STRginner model. On the other hand, gishes are difficult to incorporate, due to the inherent diversity & complexity of their builds. Hopefully, the magelet models give an idea of what a gish’s magic DPM can look like; although the gish can have higher base INT, the magelet compensates by dedicating their gear to TMA. Thus, we have the two extremes: the STRginner is the gish who errs on the side of simply being a STR mage instead, whereas the magelets are gishes who, inexplicably, have no regard for balancing their magic damage with their physical at any target count, & have no MAcc issues. Navigating the grey areas in between is the impossible, yet honourable, task of the gish, & therefore cannot be represented in this kind of analysis.
It’s difficult to overstate how truly unreasonable the summoner’s DPM is. Moreover, it should be noted how much of a difference the summoner’s attacks make: although its DPM is clearly mostly that of its summons, merely basic-attacking with a gun alone already puts it clearly above the STRginner’s entire DPM output.
Two models are truly outstanding in their ability to suffer massively from increases in DEF: the DEX DK & the woodsmaster. Good thing noöne would ever play those jobs.
To the surprise of approximately noöne, DEX warriors tend to be the best at cleaving. Nonetheless, by chucking in as many Piercing Arrows as possible in between Snipes, the woodsmarksman puts up impressive cleave DPM as well.
The claw shad & daggerlord compete well here, & it’s perhaps surprising that the daggerlord’s damage seems to be slightly more DEF-wise efficient.
The swashie model demonstrates what’s possible in a truly hybrid-attacking build: whereas its gun packs an incredible punch at range, at low target counts, and/or at low DEF values, their spear picks up the slack (especially when their boat is, or would be, destroyed anyway) for the other cases: melee, mobbing, and/or high DEF.
The armed bucc presents another interesting case. Although not achieving the overall biggest numbers on the chart, its damage is consistently respectable (especially with multiple targets to charge EC with), & cleanly transitions from single-target to cleave at ≥3 targets.
Speaking of buccs, this chart more-or-less conclusively demonstrates the strength of the pugilist over the DEX bucc when hybrid-attacking is not a concern (given that 1.12M DPM is quite respectable for our bepistol’d bucc, who is truly ranged in this capacity). Not only are the pugilist’s numbers more impressive, but the gap only widens with higher DEF.
Like in R>1 ␣ for ␣, the STRmit — now a fully-fledged STRlord — still relies on its Shadow Meso for single-target DPM. This time, however, it doesn’t stack up quite as favourably. However, it should be noted that even at a target count of just 2, the unlucky nightlord’s Avenger already outdamages SM. Cleave for the win!
If there’s some data or model that you’d like to see represented here, just let me know!
Footnotes for “Comparing high-level odd DPM”
- [↑] Actually DPS, because for some reason, I thought that people actually used DPS for measurement…
- [↑] Some of these things might even be true. Join Oddjobs today!
Appendix A: The Brandish → Panic sequence
Due largely to a MapleLegends-specific change whereby the Combo Attack finisher Panic now consumes 5 orbs instead of all orbs (a change that neatly preserves the old behaviour for 3rd-grade crusaders), the highest single-target DPM for sword/axe heroes involves incorporating Panic into what’s otherwise Þe Olde Way™ of simply holding down the Brandish button.
This implies that, to maximise single-target DPM, the hero must Panic as often as possible. However, because more orbs implies more damage with all attacks, the strategy cannot be “greedy” in the sense of “immediately Panic whenever possible”; instead, the hero only Panics when at the maximum number of orbs (= 10).
Strictly speaking, this does not maximise the expected number of Panics per unit time. This is because, if the hero has 9 orbs, then there’s a 75% probability that they effectively “lose” an orb as a result of their next attack: they “gain 2 orbs”, but because , that second orb is “clamped” to a total of a mere orbs. Thus, to actually maximise Panic frequency, the orb threshold must be lowered from 10 to 9.
Nonetheless, this increase in Panic frequency doesn’t necessarily outweigh the damage loss of having nearly one fewer orb on average. Moreover, this strategy would be particularly delicate, & we shouldn’t expect the hero to act quickly enough to execute it consistently.
But because what’s at stake here is purely-theoretic DPM calculation, we do need a fixed strategy. Thus, assuming the “Panic as soon as the hero hits 10 orbs” strategy, we might first think to ask: how many Brandishes are there in between each pair of consecutive Panics?
However, this question asks too little. The damage dealt by each Brandish depends directly upon how many orbs the hero has at the time, & so we need to know exactly how many orbs that is, for every single Brandish! Thus, the question that we really mean to ask is: what’s the probability distribution of orb sequences that lead from 5 to 10 orbs?
Calculating this exact distribution is implemented by the orbFillSeqs()
function that can be found in mini_calc/1.ts. However, that implementation is kind of a shitty TypeScript implementation that works fine, but is inefficient & boilerplatey & I’m not gonna rewrite it. Here’s a Python implementation instead:
from fractions import Fraction as Q
def orb_fill_dist():
def f(orbs, p):
if orbs == 9:
return [([9], p)]
if orbs >= 10:
return [([], p)]
gain_one = [([orbs] + seq, p1) for seq, p1 in f(orbs + 1, p * Q(1, 4))]
gain_two = [([orbs] + seq, p1) for seq, p1 in f(orbs + 2, p * Q(3, 4))]
return gain_one + gain_two
return f(5, Q(1))
Printing the result
for seq, mass in sorted(orb_fill_dist(), key=lambda p: p[1]):
print(f"{mass.numerator}\u2044{mass.denominator: >3} {seq + [10]}")
The idea is very simple: f(orbs, p)
returns the possible sequences of orbs that start at exactly orbs
orbs, where each sequence gets its own probability, assuming a prior probability of p
. f()
then simply calls itself recursively with the two possibilities: either one orb is gained (with ¼ probability), or two are (with ¾ probability). The if orbs == 9
case is not totally necessary insofar as the result can be cleaned up later, but it prevents duplicating (seq, p)
as two separate entries (seq, p1)
& (seq, p2)
, where p == p1 + p2
.
Anyway, we get the following distribution (omitting the 5 orbs that start, & the 10 that end, every sequence):
orbs | |
---|---|
Appendix B: (Advanced) Combo Attack’s pre-DEF modifier
The classic MapleStory formula compilation, which is reproduced by Ayumilove here, seems to have an (A)CA formula that doesn’t apply to MapleLegends, & presumably not to GMS v62 at all. This doesn’t necessarily mean that it’s wrong — it might just be from a different version — but the error is very typo-like (perhaps a difference in skill descriptions between different versions?). You have to subtract 100 percentage points from the values given by Combo Attack’s description.
Use Nise’s Formula Compilation as a reference here. This was what initially made my hero models inexplicably deal ridiculously high DPM.
Appendix C: The Heaven’s Hammer (= Sanctuary) animation
Nonetheless, as expected, Nise’s compilation cannot really be trusted either. Putting aside all the info completely missing from it, testing reveals that its values for Heaven’s Hammer’s attack period are, at the very least, inaccurate for MapleLegends as of 2025-04-22.
With the help of SwordFurb (SwordFurbs, Yoshis, Furbs, Fabiennes, CowSmiley), I got some footage to analyse frame-by-frame (fun!), & obtained the following results (∆ values normalised to speed 6 = “normal”):
speed | T (ms) | ∆ | speculated T |
---|---|---|---|
2 | 810 | −270 | |
3 | 900 | −180 | |
4 | 990 | − 90 | |
5 | 1020 | − 60 | |
6 | 1080 | ?1110 | |
7 | ?+ 90 | ?1170 | |
8 | 1230 | +150 |
This is on the order of ≈500 ms faster than the figures reported in Nise’s compilation.
Of course, the damage itself is easy: in MapleLegends, Heaven’s Hammer can deal no more & no less than 50k damage to a given boss monster.
Appendix D: Assassinate
ℹ️ Most of the info in this appendix is due to Harlez (Gock, VigiI, Murhata), who, in addition to explaining some of it, allowed me to abuse her shadower for the glory of science.
How in all of hell does Assassinate work? This is a good place to come asking that question, because you won’t find info about it anywhere else, apparently.
The basics
Traditionally, Assassinate cannot be used unless the shadower is in Dark Sight. MapleLegends eventually fixed this little “feature”, which means that we don’t really have to deal with the… regrettable fact that the need for Dark Sight would introduce a large quantity of networking latency into many of the shadower’s attack sequences.
When Assassinate is used without charging it up first, it first deals 4×625% damage (that is, four damage lines of 625% each).[1] These damage lines cannot crit.
There’s then an optional bonus attack (if you will), which we’ll call the dash, because it causes the shadower to perform an Assaulter-like (you know, the other ⟨Ass-⟩ skill) dash to the left or the right, at the shadower’s option. Again, this fifth attack doesn’t have to be performed at all. Its damage is, as far as we’re yet concerned, the same as any given one of the nonoptional damage lines, except that it can crit.
In fact, not only can the dash crit, but it has its own built-in crit probability & crit dmg multi: 90% & 250% respectively, at max level. This “stacks” with SE in the usual way, so that max SE brings these figures to 100% & 390%, respectively. Therefore, a noncrit dash deals 625% damage, a crit 625% + 250% = 875%, or with SE, 625% + 250% + 140% = 1015%.
Timings
The period of the main Assassinate attack (the first four lines) & of the dash are both given by Nise’s Formula Compilation.
The compilation also claims that using Dark Sight at the beginning incurs a 100 ms penalty, & I’ve used that exact figure for these theoretic calculations. However, this figure is suspiciously not a multiple of 30 ms, & we’d expect it to be at least partially networking-latency-dependent (unless MapleLegends changed how specifically Dark Sight works). But whatever.
Charging
ℹ️ Editor’s note: The original version of this section was… wrong! It was so very wrong. After properly analysing some footage, this version should, at the very least, be reasonably accurate.
Assassinate’s real connexion with Dark Sight consists in that Dark Sight allows the shadower to charge up their Assassinate before unleashing it upon an unsuspecting enemy. During this charge time, the shadower naturally cannot attack nor consume Use items (because they’re in Dark Sight), so be sure to Dispel your suspiciously-translucent shadowers as necessary.
The charge increases Assassinate’s damage by as little as a factor of 1× (= no charge) up to as much as 5× (= full charge). This applies to the main four lines, as well as to the dash. The factor increases linearly over time until hitting full charge at 12 s (all times given in seconds):
As a table:
(s) | aftermod |
---|---|
0 | 1× |
3 | 2× |
6 | 3× |
9 | 4× |
12 | 5× |
+∞ | 5× |
This damage modifier is indeed an aftermod. It is not a pre-DEF modifier. This makes it functionally identical to Berserk for damage calculation purposes.
IED
IED stands for ignore enemy defence. This aspect of Assassinate was introduced by MapleLegends.
When a fully-charged (meaning ≥12 s of charge time) Assassinate connects with an enemy, it grants the shadower an IED buff for 30 s. This buff applies to the shadower, not to the enemy. At max level, 80% of base (i.e. ignoring buffs) defence is ignored, effectively multiplying the shadower’s targets’ base WDef values by ⅕ (but only for the shadower, & not for anyone else).
IED is applied to the shadower before the respective fully-charged Assassinate’s damage is calculated.
Footnotes for “Appendix D: Assassinate”
- [↑] This is ordinarily three lines in pre-BB, but MapleLegends upped it to four. Also, I believe the damage value to be 600% in vanilla GMS v62.
Appendix E: Shadow Meso
O, Shadow Meso. Wherefore hath the Maplers forsaken thee…?
Meso-tossing
MapleLegends’s SM implementation is — according to their official list of skill changes — unchanged from GMS v62. At any given level of the skill, however, only one number of mesos is listed in the description — viz. 570 at max level. I cannot find even one other version of MapleStory that describes the skill in this way. Outside of MapleLegends, we get two meso numbers per level: a minimum & a maximum, viz. 340 & 800 at max level (note that the midpoint is 570).
To my knowledge, however, there are no MapleStory versions whatever that actually have more than one meso value per level in the Skill.wz data. We simply have e.g. Skill.wz/411.img/skill/4111004/level/30/moneyCon
= 570.
But I have reasons to believe that the skill descriptions which list meso ranges (e.g. at max level) are not closely related to the relevant damage calculation, for at least some versions of MapleStory:
- The damage values actually observed in-game in MapleLegends cannot be explained in this way.
- The only video that I could find of SM being used (Ayumilove’s MapleStory 3rd Job Hermit + Chief Bandit Skill Details) shows a pre-BB (dating from before ) version of TMS with, as far as I can tell, an SM damage formula distinct from MapleLegends’s.
- At least one major open-source pre-BB server implementation seems to agree with the MapleLegends client that SM’s damage is calculated in another way.
For raw damage (that is, ignoring DEF), we have basically two axes of disagreement. One is how the range of notional “mesos thrown” is calculated:
- SM α
- SM β
And the other is how these thrown mesos are translated into damage:
- SM I
- The number of mesos is sampled continuously uniformly from the range, then multiplied by 10, & then rounded to an integer.
- SM X
- The number of mesos is sampled discretely uniformly as an integer from the range, & then multiplied by 10.
Here’s the evidence so far:
axis | var | evidence |
---|---|---|
range | α | MapleLegends, Cosmic[1] |
β | every skill description ever | |
sampling | I | MapleLegends |
X | Ayumilove video, formula compilations |
It strikes me as likely (but of course, not certain, unless tested directly) that MapleLegends’s behaviour is unmodified from GMS v62. Not only do they tacitly claim to’ve left it unchanged, but… why would they bother tampering with it? It seems that retail versions of MapleStory were probably never consistent with each other, nor internally within a given version.
Meso expenditure
Faithful to the Skill.wz data, the MapleLegends server removes exactly moneyCon
mesos from the hermit’s inventory when SM is used. In principle, the notional number of mesos thrown could — in cases where SM connects with a target & doesn’t “MISS” — be inferred from the damage dealt, & this amount could be deducted instead. But the difference is basically immaterial, so long as the expected meso consumption is roughly the desired value. (Also, the server doesn’t consistently know whether any given damage line is a crit. Heh.)
Defences
Nullification
Earlier versions of SM have descriptions that claim that it “ignores” WDef-up & MDef-up buffs. Later versions, however, change the wording so that these buffs are said to be “nullified” by the skill, thus apparently combining SM with the effects of both Armour Crash & Magic Crash. Some MSPSes (MapleRoyals & DreamMS, at least) do seem to implement SM in the latter way.
MapleLegends has in no way implemented this stated feature (that is, stated by the in-game description). I tested in-game at Dual Birks on both WDef-up & MDef-up.
According to xDarkomantis’s Darko’s Night Lord Guide, SM in MapleRoyals dispels DEF-up buffs 10% of the time. It’s unclear whether this is tied to skill level (is it the same as the crit probability?).
According to Study’s Night Lord Guide (or rather, due to waiting), SM in DreamMS dispels DEF-up buffs 100% of the time at all skill levels.
Cosmic implements SM’s dispel feature in the same way as DreamMS (more likely, DreamMS is based on Cosmic or its predecessor). See: src/main/java/net/server/channel/handlers/AbstractDealDamageHandler.java, lines 819〜822; src/main/java/server/life/Monster.java, lines 1375〜1380.
Ignorance
Relatedly, if SM specifically “ignores” such buffs, then we might wonder whether this extends to ignoring weapon-cancels & magic-cancels. These aren’t “DEF buffs” per sē, but given that SM is essentially a fixed-damage skill — akin to e.g. Three Snails — it sounds vaguely plausible. However, there’s no evidence (to my knowledge, as always) for such an interpretation. Boymoder (Taima, Yunchang, Hitodama) & I tested against both weapon-cancel & magic-cancel in MapleLegends, at Deep Sea Gorge I. The results were as expected: SM ignores magic-cancel, but cannot bypass weapon-cancel.
There is, however, evidence for an interpretation whereby, as a result of SM’s fixed-damage nature & its vaguely-defined relationship to DEF, it ignores DEF entirely (both base & buffed) under certain circumstances.
The Ayumilove video gives fairly clear evidence of a hermit with level 11〜17 SM ignoring the defences of a Spirit Viking.
Evidence from in-game in MapleLegends is more difficult to analyse. Because ML has SM I, we can’t tell whether some sort of DEF effect is at play simply by looking at the divisibility (by 10, or by 5 in the case of crits) of observed damage numbers.
By testing against ≈0-DEF monsters (at L Forest I) & at relatively high-DEF monsters (Mini Gold Martial Artists, with 1.3k of both WDef & MDef), I was able to establish that SM’s damage didn’t decrease at all as a result of the immense DEF increase.
However, thanks to the valiant efforts (& Safety Charm expenditure) of Boymoder, I was supplied with photographic evidence(!) of the following damage lines due to a level 103 hermit attacking Kacchuu Musha[2] with level 26 SM (crits are marked with an asterisk ⟨*⟩):
- 5944.
- 3443.
- *4100 (corresponding to a noncrit of 2734).
It’s not difficult to accept that SM might observe DEF calculations only when the hermit’s level is strictly less than the target’s; after all, this wouldn’t even be the first 3rd-grade thief skill with this mechanic: Assaulter also ignores DEF when the CB is at or above the target’s level.
However, the DEF calculation going on here cannot be the expected one (viz. usual WDef calculation), because this would imply that the highest possible noncrit damage line[3] would be 4749 — far below the observed 5944.
Instead, it seems that DEF per sē actually is unconditionally ignored (or rather, considered to be 0), but the level-difference portion of the calculation still applies. This results in a minimum damage of 2116, & a maximum of 6349 — both consistent with the photographed figures.
Crits
SM ignores all sources of crits, active or passive. Instead, it has built-in crits that work basically as described in the skill description; at max level, it has a 10% probability of dealing 1.5× as much damage. Only the probability (not the multiplier) changes with skill level.
Footnotes for “Appendix E: Shadow Meso”
- [↑] See: src/main/java/net/server/channel/handlers/AbstractDealDamageHandler.java, lines 670〜673.
- [↑] Kacchuu Musha is level 120, and has 3200 WDef & 1200 MDef.
- [↑] It’s always implied here that we also mean non-SP damage lines. The SP line is always exactly half (rounded towards 0) of the main line, meaning that it doesn’t carry any additional information.
Appendix F: Outlaw/corsair summoning animations
For outlaws & corsairs, summons are an important source of DPM. But they also cut into the DPM dealt with attacks, because they take time to summon!
For the purpose of the theoretic DPM calculations that I’ve done so far, I’ve used the following figures for how long it takes to summon an Octopus:
- Tested on an outlaw with weapon speed category 3: ≈840 ms.
- Tested by Gock (Harlez, VigiI, Murhata) on a Battleshipped corsair with weapon speed category 3: ≈630 ms.
However, both of these figures seem to measurably vary, so in the above list, I give only the smallest values. For the latter, I approximated a typical case as roughly 660 ms, which I think is realistic.
For Gaviota, the animation time spent summoning it is either nonexistent or to small to measure, so I approximate it as ≈0 ms.