|
Using Python3 to estimate BIS gear sets for Ninja.
Bahamut.Belkin
Serveur: Bahamut
Game: FFXI
Posts: 474
By Bahamut.Belkin 2021-08-23 15:10:09
Any particular reason to use GKT with Jinpu/Koki over Heishi with Chi/Tekki/To?
Asura.Arico
Serveur: Asura
Game: FFXI
Posts: 535
By Asura.Arico 2021-08-23 17:12:04
weak to wind/fire
By Izanami 2021-08-23 19:04:31
Any particular reason to use GKT with Jinpu/Koki over Heishi with Chi/Tekki/To?
I don't think so. The enemy would have to be weak to both slashing and Wind/Fire/Light/Thunder for the great katana hybrids to potentially be worth using on Ninja. I only included these great katana sets because I wanted to quickly test if 2-handed weapons worked in my code.
Slightly related: I tried a few of these great katana hybrids in the Ramuh v1 Ambuscade that is currently available, but the damage was only about 10k~15k without multi-attack procs. I did do a 37k Kagero once on Shiva, but you can't really rely on multi-attack procs for good damage. For reference my katana hybrids were doing ~35k average with spikes up to 75k damage.
Here's another link to the code since we started a new page and older readers seeing this thread pop up again might not see that I finally posted it. https://github.com/IzaKastra/wsdist
By AegParm 2021-09-02 22:39:48
Are the mpaca and nyame in the sets NQ or augmented?
By Izanami 2021-09-03 00:04:07
Are the mpaca and nyame in the sets NQ or augmented?
The sets posted all use max rank augments where available. So the Mpaca is R20, the Nyame is path B R20, and the UNM gear is R15.
The TP Bonus is the most important stat on Mpaca's Cap. I recommend using Mpaca's Cap even if you don't plan to augment it.
By AegParm 2021-09-03 16:05:54
Awesome, thank you!
Serveur: Odin
Game: FFXI
Posts: 17
By Odin.Wangwang 2021-09-07 13:54:53
Thanks for all the info here, had a blast updating my entire gearswap.
Question - Is this your primary TP set for haste cap currently? https://www.ffxiah.com/item-sets/381438
By Izanami 2021-09-07 15:25:44
Question - Is this your primary TP set for haste cap currently? ItemSet 381438
That is my go-to TP set for things like Ambuscade, Odyssey, and Dynamis when haste capped. It uses Adhemar Bonnet +1 path A (accuracy) and Adhemar Wristbands +1 path B (attack) and an Andartia's Mantle with DEX +30, Acc/Atk +20, Store TP +10, and DT -5%. The Herculean Boots in my TP set have the following augments.
I haven't studied TP sets for Ninja, but that set works well for me in situations that don't need high accuracy or high magic evasion. I wouldn't use Tatenashi on Ninja due to the lack of Ranged Accuracy, though. Samnuha Tights are really nice with max augments, but they have low accuracy so I only use them in my 0% haste set.
The front page of the main FFXIAH Ninja thread has some nice looking TP sets. Maybe I should swap the Hetairoi Ring for Epona's Ring.
Necro Bump Detected!
[106 days between previous and next post]
By Wyrmnax 2021-12-22 11:22:29
This sheds a nice light on WS sets, but what about TP sets?
I have the 2021 guide for before odyssey tp sets, but what changed since then?
Serveur: Sylph
Game: FFXI
By Sylph.Brahmsz 2021-12-22 11:43:46
Nothing. lol
By Izanami 2021-12-22 13:06:43
This sheds a nice light on WS sets, but what about TP sets?
I have the 2021 guide for before odyssey tp sets, but what changed since then?
I ran a basic test for TP sets with 1150, 1200, 1350, and 1500 accuracy requirements at 0%, 15%, 30%, and capped haste, but I'm currently ~1300 miles away from my computer with the results. I'd like to modify the TP set code a bit before I update this thread with the final results.
I was getting good results with my preliminary sets for 1200 and 1350 accuracy with all haste values on Kei/Kin solo kills while farming Shamash/Dagon, which still haven't dropped... Checking the past videos of a few of these kills, I can at least share the sets that I used for those fights. Note that these were created by minimizing the average number of attack rounds per weapon skill, which is decent way to do this, but probably not the best since it ignores white damage, which is typically ~30% of your total damage. I don't expect white damage to be significantly better with other sets if properly accounted for.
1200 Acc (midboss), Haste Cap: Code
main Heishi R15
sub Kunimitsu R20
ranged Empty
ammo Seki Shuriken
head Malignance Chapeau
body Tatenashi Haramaki +1 R15
hands Malignance Gloves
legs Samnuha Tights
feet Malignance Boots
neck Ninja Nodowa +2 R25
waist Sailfi Belt +1 R15
ear1 Dedition Earring
ear2 Telos Earring
ring1 Gere Ring
ring2 Epona's Ring
back Andartia's Mantle DEX Store TP
1350 Acc (boss), Haste Cap: Code
main Heishi R15
sub Kunimitsu R20
ranged Empty
ammo Date Shuriken
head Malignance Chapeau
body Malignance Tabard
hands Malignance Gloves
legs Malignance Tights
feet Malignance Boots
neck Ninja Nodowa +2 R25
waist Kentarch Belt +1 R15
ear1 Brutal Earring
ear2 Telos Earring
ring1 Gere Ring
ring2 Epona's Ring
back Andartia's Mantle DEX Store TP
1350 Acc (boss), 15% Haste (Ulmia only): Code
main Heishi R15
sub Kunimitsu R20
ranged Empty
ammo Date Shuriken
head Kendatsuba Jinpachi +1
body Mochizuki Chainmail +3
hands Malignance Gloves
legs Malignance Tights
feet Malignance Boots
neck Ninja Nodowa +2 R25
waist Reiki Yotai
ear1 Suppanomimi
ear2 Telos Earring
ring1 Gere Ring
ring2 Chirich Ring +1
back Andartia's Mantle DEX Dual Wield
1350 Acc (boss), 30% Haste (Koru-Moru only): Code
main Heishi R15
sub Kunimitsu R20
ranged Empty
ammo Date Shuriken
head Malignance Chapeau
body Mochizuki Chainmail +3
hands Malignance Gloves
legs Malignance Tights
feet Malignance Boots
neck Ninja Nodowa +2 R25
waist Reiki Yotai
ear1 Eabani Earring
ear2 Telos Earring
ring1 Gere Ring
ring2 Chirich Ring +1
back Andartia's Mantle DEX Store TP??
I recall that the low haste and low accuracy sets used Ryuo Somen +1C and Tatenashi hands & feet +1 R15. I did not use those sets in the videos, so I can't confirm the entire sets.
These sets likely perform nearly identically to the 2021 Ninja Gearsets thread, anyway. Note that you won't be capped Subtle Blow with these sets, but you can likely swap in one or two pieces of Kendatsuba +1 for Subtle Blow without losing a significant amount of time per weapon skill. The set I posted before the Necro-bump is good and nearly identical to the main Ninja thread TP set, but I've been testing these new sets recently.
I'll update this thread with "best" TP sets after I've modified the code to be a bit more sophisticated than "fewest attack rounds per WS" sometime later.
[+]
Serveur: Asura
Game: FFXI
Posts: 1326
By Asura.Azagarth 2021-12-22 17:21:54
are you doing these sets under the effect of sange? I cant understand the body.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2021-12-22 17:44:24
if you mean the chainmail, he's not capped on haste in those sets.
[+]
Asura.Otomis
Serveur: Asura
Game: FFXI
Posts: 166
By Asura.Otomis 2022-01-04 12:14:44
Why does it feel, after reading through 3 Ninja Forums today; Ninja has been cornered into Savage Blade job like half the other jobs in the game. Sad face.
Lakshmi.Watusa
Serveur: Lakshmi
Game: FFXI
Posts: 702
By Lakshmi.Watusa 2022-01-04 12:27:03
Why does it feel, after reading through 3 Ninja Forums today; Ninja has been cornered into Savage Blade job like half the other jobs in the game. Sad face.
Not really, Blade: Ten is pretty great.
[+]
Asura.Saevel
Serveur: Asura
Game: FFXI
Posts: 9933
By Asura.Saevel 2022-01-04 12:37:49
Savage Blade 50% STR / MND
fTP: 4.0 / 10.25 / 13.75 (+1 hit)
Blade: Ten 30% STR / DEX
fTP: 4.5 / 11.5 / 15.5
It's down to Naegling vs Heishin. Heishin Ninja can already get +950 TP Bonus without offhand, looks very interesting with Nyame.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-11 21:17:56
Your hit rate calculation takes into account level correction for hit rate, nothing after SoA should have level correction. this doesn't seem to affect pdif that I can find. I verified by adjusting mob's level to 200 instead of 130 and got a drastic change in gear to accommodate the needed accuracy
in wsdist.py it is under the get_hitrate() function, changing to this will resolve it. it also doesn't get floored so you can have half a percentage of hit rate, i don't know if you intend that or not Code acc_check = (
75 + 0.5 * (player_accuracy + 100 * first + ws_acc - enemy_eva)
) / 100
[+]
By Izanami 2022-01-11 21:36:10
Your hit rate calculation takes into account level correction for hit rate, nothing after SoA should have level correction. this doesn't seem to affect pdif that I can find. I verified by adjusting mob's level to 200 instead of 130 and got a drastic change in gear to accommodate the needed accuracy
Thanks for the note, I didn't realize that the enemy level didn't affect accuracy after SoA. I see now that BG states "The dLVL term only applies in areas with level correction." I'll update that bit of code soon.
I skipped the level correction step in the pdif function, so it shouldn't affect PDIF.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-12 10:53:19
You also seem to have specific bonuses, like relic/mythic/ambuscade additive with weapon skill damage instead of multiplicative. it only appears to apply to the main hit since additional and offhand hits pass in 0 for WSD
get_phys_damage() Code
phys = int(
(wpn_dmg + fstr_wpn + wsc)
* ftp
* pdif
* (1 + crit * crit_dmg)
* (1 + ws_bonus + wsd * (total_hits == 1))
)
return phys
and get_avg_phys_damage() Code phys = int(
(wpn_dmg + fstr_wpn + wsc)
* ftp
* pdif
* (1 + crit_rate * crit_dmg)
* (1 + ws_bonus + wsd)
)
return phys
[+]
By Izanami 2022-01-12 14:50:22
You also seem to have specific bonuses, like relic/mythic/ambuscade additive with weapon skill damage instead of multiplicative. I looked into this and agree that it should be multiplicative. The spreadsheet also appears to use multiplicative. Correcting this brings Metsu 3% closer to the spreadsheet value (from 6% to 3%) The other weapon skills that I checked that would be affected were already in good agreement with the spreadsheet, but still see small (<1.0%) corrections. For example, Blade: Shun saw a 0.5% correction when attack capped (~0.1% correction when underbuffed).
I'm not sure why I used additive. It may simply be a typo if I was distracted in the middle of writing that one line of the code.
it only appears to apply to the main hit since additional and offhand hits pass in 0 for WSD In the current version, the wsd=0 for additional and off-hand hits does not affect ws_bonus since they were added together. If I had multiplied them instead, then the additional and off-hand hits would also cancel the ws_bonus. The corrected code will use (1+wsd)*(1+ws_bonus) as it should've been from the beginning.
Thanks for taking a look at the code in detail. It's nice to finally have a 2nd set of eyes trying to find issues. I wouldn't be surprised if there were a few more issues throughout the code.
After I've fixed these issues, I'll rerun the code using R25 Odyssey gear.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-12 15:04:38
In the current version, the wsd=0 for additional and off-hand hits does not affect ws_bonus since they were added together. If I had multiplied them instead, then the additional and off-hand hits would also cancel the ws_bonus. The corrected code will use (1+wsd)*(1+ws_bonus) as it should've been from the beginning. as long as wsd is 0, which you were passing 0 for wsd for any additional hits:
x * (1 + wsd) * (1 + ws_bonus) = x * (1 + wsd + ws_bonus)
so it shouldn't have cancelled any ws_bonus, only main was affected, particularly larger single hit ones like savage/metsu/hi to a lesser extent
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-14 23:55:11
qultada buffs aren't static, naegling has it's attack increased during ws, and are you sure you didn't miss hits somewhere or kill the mob prematurely? and is your sample size just one ws each?
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-15 00:03:18
it's not impossible with the ws attack feature of naegling.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-15 00:10:13
The link shows all his results from different levels of buffs. Your ten numbers are still pretty low, though. Are you sure roll potency was the same, food, dia, etc?
By Izanami 2022-01-28 23:44:42
I've finally gotten around to updating my code. The sets on the first post of this thread are now up-to-date for Master Level 20 Lv.99NIN/53WAR with R25 Odyssey gear. There is a Master Level increase coming soon, but I don't expect R30 Odyssey gear for many months. Running this with R30 Odyssey gear is meaningless right now, but I do have R30 Odyssey gear in the gear.py file if you wanted to mess with it yourself. The Imgur links to distribution images have also been updated to show up-to-date distributions for these new sets and corrected code. Additionally, since FFXIAH has added Crepuscular gear to their gearsets, I've properly added Crepuscular Pebble/Knife where appropriate to each of the sets, rather than the placeholders I was using previously.
I've updated the front page post to show sets for Tachi: Kasha/Jinpu/Koki/Goten/Kagero sets.
I'm not familiar with Github's version control when adding new files and deleting old files, so I've simply created a new Github repository for the updated code and new files: https://github.com/IzaKastra/wsdist_v2.
Changes to the code:
The ws_bonus issue brought up by Austar has been fixed.
The level correction term for hit-rate calculation has been removed. Thanks again, Austar.
I've moved a few of the functions to separate files to reduce the number of lines and clutter in the main file.
The references to "/Windower/res/items.lua" and "equipviewer/icons/" have been removed. I instead created(copied) a modified version of these files and included them on the Github project repository. Since this now includes icons for every item in the /equipviewer/icons/ folder, the total size of all of the files for this code is now >20 MB.
Up to three gear slots may be modified simultaneously when finding the best set. I don't recommend going above two, though. Three slots has a runtime of about 60 minutes per set, while two is about five minutes for the same results.
Things I noticed while updating the sets:
Gleti's Knife R25 has been replacing Crepuscular Knife on many of the high-buff sets when compared to ML0 99NIN/49WAR with R20 Odyssey gear. This is good since NextGames/Logical's recent video on Ninja TP sets suggests that Gleti's Knife R25 is also best for TPing.
Nyame Path B R25 has replaced Malignance Gloves, Relic Feet +3, and Relic Legs +3 in many sets.
Future direction:
It turns out Python has a native GUI package (tkinter). I'll be playing with this and trying to create a fancy-looking GUI interface over the next few months since I can use what I learn about tkinter now for my real-world job in about 2 years.
The original post contains a ton of useful information, but it creates a problem for quickly accessing just the sets themselves. I'm slowly working on creating a fancy FFXIAH "node" to make everything more presentable and easier to access. Nodes are frequently used to format the job guides we see throughout this website.
Even though I've done some cleaning up with the code on this iteration, there are likely still small issues throughout. There is even a decent chance that I created more issues with how I rearranged the code. I believe I've already fixed the newer issues created from rearranging things, but let me know if you spot anything else that needs fixing. The output damage values and distributions seem reasonable for ML20 stats. Hopefully there are no major issues. I do not want to rerun everything again for another few weeks.
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2022-01-29 09:18:39
It turns out Python has a native GUI package (tkinter). I'll be playing with this and trying to create a fancy-looking GUI interface over the next few months since I can use what I learn about tkinter now for my real-world job in about 2 years. in my experience and opinion, tkinter is a bit clunky. i like to use ronpython, make my guis in C# and the backend in python. everything is easy to lineup, will snap to a "grid" of sorts so you can make even different sized objects lineup and all you do is drag it from the toolbox and apply some settings to it. it's way easier and looks better since tkinter you have to write out the code to generate every object. microsoft even has some documentation for working with pyton in visual studio.
https://ironpython.net/
https://docs.microsoft.com/en-us/visualstudio/python/overview-of-python-tools-for-visual-studio?view=vs-2022
This is just an example of setting it up for what I do for full simulations. The combo boxes would be gear lists. Obviously I'd add more check boxes for buffs and an other objects to adjust potency and gear to swap when using certain abilities, like cyclas for impetus on mnk for example. But imo it's a lot easier and more crisp looking
Node 456
Updated: 2022 January 28:
ML20 NIN99/WAR53 & R25 Odyssey.
Slightly updated code for easier reading (see Github link below).
While a simple average is nice and convenient for DPS spreadsheets, it does not tell the whole story for most weapon skills. To know exactly how your weapon skill damage will be distributed, you need detailed information about your stats, the enemy you're fighting, and the mechanics of weapon skill damage. As a side-project to learn a bit of basic Python3 programming and about the FFXI damage formulae, I've written a Python3 code to simulate weapon skills and obtain distributions of the damage being dealt given a set of gear and an enemy.
I'm not very familiar with GitHub, but I've put the code on my newly-created GitHub page ( https://github.com/IzaKastra/wsdist_v2).
The code is not meant to replace DPS spreadsheets, but the gear sets provided here should agree with the spreadsheets reasonably well. I believe the sets presented here are the best in slot sets currently available, but you may find marginally better sets for specific enemies. I therefore encourage you to play around with these sets using the spreadsheets to try to find potentially better or worse options that fit within your gear budget.
In addition to finding the best katana weapon skill sets, the code has the added benefit of working with all jobs and all physical and hybrid weapon skills (after minor modifications to adjust for different player race/job stats). This allowed me to also check the best Evisceration, Savage Blade, and Tachi: Jinpu/Koki/Kagero/Goten/Kasha sets for Ninja. I have a version of the code that works for SAM and nearly works for DRK. I "simply" need to work out the DRK Smite trait before it's finished. This is technically the second of three parts of a Python3-based DPS simulator. It currently has everything it needs to be a full DPS simulator, including real-world time between attacks, TP return, and auto-attack/WS damage, but it seems appropriate to stop where I am for now.
I've tested the code's output against SimonSes' NIN Hybrid WS spreadsheet for Blade: Chi and find the difference to be within 0.5%-2% depending on the TP range and buffs used. For physical weapon skills, I tested the results against the Ninja DPS spreadsheet and found that Blade: Shun, Kamu, Hi, and Ku all agree within 5% or better, while Blade: Metsu shows 10% differences due to incorrect Aftermath: Attack+10% handling in the spreadsheet (see the spoiler below). This of course does not mean that I've done everything perfectly.
The spreadsheet is applying Kikoku's aftermath only to the Ninja's base attack (Lv99+STR+Skill), not including BRD songs, attack traits from /WAR, or the +70 attack from job gifts. My in-game testing has shown that Kikoku's AM is applied additively with the other percentage-based boosts like Fury, Chaos, and Berserk; Attack = (Base+BRD)*(1+Berserk+Chaos+Fury+Kikoku_AM)+Food. The image below shows my observed and calculated Attack values with different buffs up.
I've modified the code to automatically adjust a given gearset until it finds the "best" piece in each slot for a specified weapon skill. I then ran the code for 3 different buff states and 3 different TP ranges that I consider to be typical low/mid/high buffs for content in-game:
Low Buffs: Only Grape Daifuku and Dia2, not even trust buffs (but we know you'd end up with March, Paeon, and Evoker's Roll anyway)
Standard Buffs: Grape Daifuku, Dia2, Minuet5, Minuet4, Honor March, Victory March, Lucky Chaos Roll (Songs+7, Rolls+7, HonorMarch+4)
High Buffs: Grape Daifuku, Dia2, Minuet5, Minuet4, Honor March, Victory March, Lucky Chaos Roll, Fury, Frailty (Songs+7, Rolls+7, Geomancy+6, HonorMarch+4)
High Buffs (Hybrid): Grape Daifuku, Dia2, Minuet5, Minuet4, Honor March, Victory March, Lucky Chaos Roll, Fury, Malaise (Songs+7, Rolls+7, Geomancy+6, HonorMarch+4) -- Only used for Blade:Chi
tp = [1000,1300]
tp = [1500,1800]
tp = [2000,2300]
I use max skill-potency geomancy bubbles and songs with 5/5 Minuet merits and 20/20 Minuet job gifts. I did not use any buff-enhancing abilities such as Crooked Cards, Marcato, Blaze of Glory, etc.
My earlier testing suggested that Hitaki is by far the best off-hand weapon for "damage varies with TP" weapon skills. However, it also only showed ~30-70% off-hand hit rate on the Apex Toad target that I'm simulating against (Evasion:1103~1163, Lv131-133), which would likely translate to significantly reduced TP gain and thus significantly reduced WS frequency. Because of this, I removed Hitaki and reran my simulations without it being an option. If you are able to make up for the significantly reduced accuracy and auto attack damage, then Hitaki should probably be your go-to for "damage varies with TP" weapon skills.
I did not test any Herculean gear since I believed it would be a waste of time given the accessibility of Nyame R10+ and the random nature of obtaining "good" augments behind multiple layers of RNG. I encourage you to input the sets I present here into the spreadsheets and see how your Herculean gear compares, though.
It should be noted that these sets are based raw weapon skill damage values. Stats such as Skillchain Bonus (see Nyame) have no effect as a result until I finish the code to be a proper DPS simulator with auto-attacks, TP rounds, auto-WS, and SCs. Swapping some pieces listed in these sets with Nyame will lower weapon skill damage, but the skillchain bonus stat will likely result in larger overall damage.
The details of the code's algorithm are explained in a bit of detail below, but the process is likely very well known to most of you. For now, here is the list of "best average" gear sets for each buff state for a few of Ninja's available weapon skills at specific TP ranges. Each one contains an imgur link to the simulated distributions, which display the gear used and basic player stats for all tests run on that specific weapon skill. A representative image is also presented in each section. The list of all sets can also be found on my FFXIAH item sets page. The comments within each gear set may provide swaps for varying TP ranges.
Note that these gearsets are for a Master Level 20 Lv.NIN99/WAR53, R25 Odyssey gear, and R15 UNM gear.
Blade: Chi
ItemSet 380757
To nobody's surprise, with the release of augmented Nyame gear, the "best average damage" gearset for Blade: Chi is incredibly easy to predict. Blade: Teki and Blade: To likely use an identical weapon skill set, but I did not test them. I would not be surprised if To/Teki used Fotia Belt, though. Since both of them are single-hit weapon skills.
Note that these tests were done on a neutral monster with 100 Magic Defense and no Magic Evasion. I believe many relevant enemies have something like 150 Magic Defense or an SDT value that would guarantee at least a 50% magic damage resist.
Blade: Hi
ItemSet 380758
ItemSet 380759
ItemSet 380760
Kannagi (R15) was locked into the main hand.
Andartia Mantle AGI+Crit Rate for low buffs
Andartia Mantle AGI+WSD for standard/high buffs
Critical hit weapon skill damage varies wildly based on the AGI stat of your target. This is because up to 15% of your Crit Rate comes from dDEX. Unfortunately, Blade: Hi has an 80% AGI modifier, which is essentially useless for meleeing. I'm still convinced the developers accidentally swapped the modifiers for Jishnu's Radiance (80% DEX) and Blade: Hi (80% AGI) and refuse to admit it.
Since Apex Toads do not have a published AGI value to calculate dDEX from, I ended up performing about 2 hours worth of auto-attacks in various sets to estimate it myself (AGI ~ 354-358). Either way, I don't necessarily recommend the Blade: Hi sets presented here. I don't think Blade: Hi is a good weapon skill in general compared to the other Katana options. The conditions required for critical hit weapon skills to perform well are too variable to simply stick with a single set based on a spreadsheet or code. You should do your own research based on exactly what you plan to use the weapon skill on and build your set around that.
Blade: Kamu
Blade: Ku
ItemSet 380763
ItemSet 380764
ItemSet 380765
Blade: Ku is surprisingly powerful when compared to Blade: Shun. The +60% damage on Gokotai, 1.25 FTP, and 30% STR+DEX modifier put in a lot of work to boost the damage. Unfortunately the skillchain properties are not great compared to Blade: Shun with Heishi.
Blade: Metsu
ItemSet 380766
ItemSet 380768
These sets are a good example of not using a lot of Nyame where Nyame would likely win. Blade: Metsu has excellent skillchain properties so I expect at least 4/5 Nyame with Relic legs to win in most cases considering they provide +24% skillchain damage.
With the release of R25 Nyame, most of these sets actually use Nyame for maximum physical damage. The skillchain damage stat on Nyame is just a bonus on top now.
Blade: Shun
Blade: Ten
Savage Blade
ItemSet 380771
ItemSet 380772
ItemSet 380773
For Naegling's "Weaponskill: Attack bonus based on number of upgrades" stat, I assumed the player had at least eight buffs up (protect, shell, haste, utsusemi, kakka, yonin, food, signet) for all sets. Standard buffs added 4 songs and 2 rolls for 14 total buffs, and high buffs added a single GEO bubble for 15 total buffs. The player's base attack then received +1% per buff present. This bonus attack was added to the player's base attack before any other buffs were added.
Evisceration
ItemSet 380942
ItemSet 380770
ItemSet 380943
Tauret was locked into the main hand.
Ryuo Tekko Path A or D
Andartia Mantle DEX+Crit Rate
Kendatsuba Samue +1 or Mpaca Doublet R25 are generally the go-to body slots for Evisceration.
Similar to Blade: Hi, critical hit weapon skill damage will vary wildly depending on the AGI of your target. Your dDEX provides as much as 15% critical hit rate that you're potentially missing on high AGI targets unless you stack more DEX. Luckily, Evisceration has a 50% DEX modifier, so this is not likely to be a problem. I still recommend finding your own set that works well on the content you plan to use Evisceration on (Odyssey Lamia/Aquans or that one Master Trial) instead of just sticking with this set or one from the spreadsheet.
Tachi: Goten
ItemSet 383500
Tachi: Goten is the Lightning-elemental hybrid weapon skill. The Donar Gun would likely be fantastic for this weapon skill, but it would require that you never unequip the gun since you would lose TP to swap to Shuriken for TPing.
Be sure to weaponskill above 2000 TP.
You may want to use Samurai subjob for Hasso/Zanshin in order to increase your TP gain rate when relying on the Great Katana weapon skills.
Tachi: Jinpu
ItemSet 383497
Nyame Path B
Andartia Mantle STR+WSD
Ninja Nodowa +2 when attack capped and TP>2000.
Fotia Belt > Orpheus's Sash when below 1500 TP. You should always weapon skill above 2000 effective TP, though.
Tachi: Jinpu is a powerful tool for a Ninja to have available against Earth-based enemies weak to magic and slashing damage. This is essentially the Great Katana version of Blade: Chi, so you'll want to WS above 2000 effective TP.
You may want to use Samurai subjob for Hasso/Zanshin in order to increase your TP gain rate when relying on the Great Katana weapon skills.
The best part of Tachi: Jinpu is that it creates and endless skillchain loop with itself. When fully buffed, you are able to simply spam Tachi: Jinpu and create powerful skillchains with every use. It's unfortunate that the developers did not allow Blade: Chi to self-skillchain endlessly as well.
Tachi: Kagero
ItemSet 383499
Tachi: Kagero is the Fire-elemental hybrid weapon skill. Tachi: Kagero is especially potent on a few enemies in Odyssey C, such as Puks and Bomb Clusters. Be sure to weaponskill above 2000 TP.
You may want to use Samurai subjob for Hasso/Zanshin in order to increase your TP gain rate when relying on the Great Katana weapon skills.
Tachi: Kasha
ItemSet 383491
ItemSet 383492
Nyame Path B
Andartia Mantle STR+WSD
I don't expect anyone to use Tachi: Kasha on Ninja, but it is a pretty weapon skill.
You may want to use Samurai subjob for Hasso/Zanshin in order to increase your TP gain rate when relying on the Great Katana weapon skills.
Tachi: Kasha is the Great Katana version of Blade: Retsu, since it can Paralyze the enemy. I'm not sure if it is as potent as Blade: Retsu, though.
Tachi: Koki
ItemSet 383498
Nyame Path B
Andartia Mantle STR+WSD
Tachi: Koki is a single-hit weaponskill. Ninja Nodowa +2 will likely not beat Fotia Gorget unless you hold until 3000 TP for some reason.
Epaminondas's Ring can replace Gere Ring when near attack cap, but you lose those rare triple attack procs.
Tachi: Koki is the light-elemental hybrid weapon skill, which means it benefits greatly from Weatherspoon Ring (SoA final reward option). Despite the boost in power from Weatherspoon Ring, I don't see Koki getting much use.
You may want to use Samurai subjob for Hasso/Zanshin in order to increase your TP gain rate when relying on the Great Katana weapon skills.
As a side note: Blade: Ei is a Darkness-based magical Katana weapon skill. There is no Darkness-based hybrid weapon skill. This is unfortunate because it would likely be very powerful with Archon Ring and Pixie Hairpin +1
Based on the sets listed above, we can make a short list of gear priority for a newer Ninja to reference.
Odin: Gere Ring
UNM: Lugra Earring +1 (Aug) > Sailfi Belt +1 (Aug) >= Seething Bomblet +1 (Aug) > Blistering Sallet +1 (Aug)
Lilith: Malignance Gloves > Malignance Tabard > Malignance Boots > Malignance Tights >= Malignance Chapeau
Bumba: Nyame Mail > Nyame Sollerets > Nyame Gauntlets > Nyame Flanchard >= Nyame Helm
Arebeti: Mpaca Cap > Mpaca Hose > Mpaca Doublet > Mpaca Gloves >= > Mpaca Boots
Ngai: Gleti's Knife
Xevioso: Kunimitsu
Relic: Legs > Head > Hands >= Feet > Body(TP low haste)
AF: Head
Adhemar: Head(A) > Body(B) > Hands(B) > Feet(A)
However, just because an item didn't show up here doesn't mean it doesn't hold a best-in-slot position in some situation. The 2021 Ninja Gearsets thread provides excellent gear to use for many weapon skills without considering Odyssey gear. Many of these sets are well within uncertainty of my "best average" sets presented here.
Here I give a "brief," but relatively detailed, description of how the damage was calculated within the code. Let me know if there are any mistakes or inaccuracies that need to be corrected. I'm confident in the algorithm, but I may have done a poor job explaining in some places.
The simulations were based on Apex Toads with three sets of possible stats, excluding their innate -25% MDT. This can be thought of as having three unfortunate Apex Toads in a room and each weapon skill hit one of them randomly. Taken directly from my code, the stats used were:
Code
e_mdef = 0-malaise*(15+3*nbubble) if 0-malaise*(15+3*nbubble) > -50 else -50
apex_toad = {'Level': [131, 132, 133],
'Defense': [1206*(1-dia[dia_potency]-frailty*(0.148+0.027*nbubble)), 1239*(1-dia[dia_potency]-frailty*(0.148+0.027*nbubble)), 1272*(1-dia[dia_potency]-frailty*(0.148+0.027*nbubble))],
'Evasion': [1103, 1133, 1163],
'VIT': [264, 270, 276],
'AGI': [354, 356, 358], # AGI roughly measured using Scoreboard on two different toads.
'MND': [218, 224, 228],
'INT': [285, 293, 299],
'CHR': [270, 277, 284],
'Magic Defense': [e_mdef, e_mdef, e_mdef]} # Enemy Magic Defense has a floor of 50
For Physical weapon skills, I used the standard BG-wiki formula to calculate damage: Due to the random nature of PDIF, a new value is calculated for each hit individually.
Additional hits after the first main-hand hit, whether they be from multi-hit weapon skills or multi-attacks, were performed in the order suggested by the testing of Austar. In the case of multi-attack procs on weapon skills, testing by Saevel and Austar show that there can be no more than two multi-attack checks of any kind per weapon skill and that the off-hand weapon will always get one of these two checks if you have an off-hand weapon equipped, otherwise the main-hand will get both checks only if the weapon skill has at least two natural hits.
In addition to the testing of Saevel and Austar, I tested this by using 404 Blade: Retsu while dual-wielding (2+1 hits) with 29% DA and 31% TA on Apex Toads. The observed TP return distribution from 404 Blade: Retsu closely matches the expected distribution assuming that only the first two hits (the first main hit and the one sub hit in this case) can multi-attack. Any assumptions that all weapon skill hits can multi-attack (6 chances for Blade: Shun for example) quickly cause the expected distribution to diverge from the observed.
For Hybrid weapon skills, I used the equation provided by Bahadir's Blade: Chi testing, Jakey's YouTube video, and SimonSes' NIN Hybrid Damage calculator, which splits the weapon skill damage into two parts
Hybrid = Physical + Magical
The physical damage is calculated using the exact same method as mentioned previously for purely physical weapon skills, with the important change that FTP is 1.0 and non-replicating for the physical portion of Hybrid weapon skills (see Bahadir's testing). The magical damage is calculated using the physical damage and the player's "Magic Damage" stat as a base:
In addition to the basic formula for damage, it is important to explicitly mention the following special cases that are included in the damage calculations:
Unlike the first main-hand hit, the first off-hand hit does not gain the bonus from the standard weapon skill damage stat.
Certain "weapon skill damage" stats on weapons apply to all hits. Examples of this include Naegling Savage Blade Damage +15%, augmented REMA weapons, and the hidden weapon skill damage bonus on Mythics and Relics.
Weapon skills gain a hidden ~+100 accuracy to their first hit. My testing of 1745 unbuffed (Brygid+KuyinHathdenna+YoranUC) Blade: Chi on Apex toads heavily suggests that this bonus applies to the first off-hand hit as well.
Buffs to player Attack are applied in a specific order:
Attack = (8+Gear+Traits+Gifts+Skill+STR+STR(food)+STR(buffs)+BRD)*(1+COR+GEO+Kikoku10%+Berserk)+Attack(food)
The player's secondary/auxiliary/off-hand attack is calculated using only half of their STR stat (see BG-wiki: "Attack")
STR from food is immediately used to calculate base attack, but "Attack+" from food is not applied until all other buffs have taken effect.
Before running the code, I manually selected equipment for each equipment slot that I wanted to test. This allowed me to exclude testing items like Mummu Kecks for Blade: Chi, which would obviously be a waste of time. To allow the output of my code be easily compared to the spreadsheets, the code uses a distribution's average damage to determine which piece of gear is "better" than another. It should be noted that the average is not a good summary statistic for multi-peaked distributions, though. The algorithm itself is simple:
(Edit 2021-08-23: I've adjusted the code's algorithm to use averages for intermediate steps, and 50,000 simulations as the last step. The process for finding best sets is now identical to manually selecting gear in a spreadsheet and checking the DPS value. The advantage is that this code is automated and provides expected damage distributions at the end for further analysis.)
1) For each item slot (or for each pair of two item slots simultaneously), cycle through all selected equipment and calculate the average weapon skill damage from that test gear set.
2) If the average damage is higher than the previous highest, then keep that item equipped, otherwise ignore it and try another combination of gear.
3) After all slots (or all combination of two slots simultaneously) have been tested and the best item in each slot determined, restart from the beginning with the previous best set as the starting place, checking each slot (or combination of two slots simultaneously) again, up to 20 times until. This allows for some gear to change based on changes to already tested slots.
4) Stop early if gear changes result in an average damage increase less than 0.5%, or if no changes are made within two consecutive iterations. This is the convergence criterion and it usually triggered before iteration 7.
With the above algorithm, the code's runtime is ~3 seconds to find a best set while swapping only one slot at a time, or ~180 seconds if changing two slots simultaneously. An additional 10 seconds is required to build a distribution of 50,000 simulations for the fancy output plots.
The list of gear tested in each slot is presented here. All weapon skills used the same pool of gear. All UNM gear is R15. All Odyssey gear is R25. Code
mains = [Heishi, Kannagi, Kikoku, Nagi, Gokotai]
subs = [Ternion, Kunimitsu, Gleti_Knife, Tauret, Gokotai, Crepuscular_Knife]
grips = [Alber_Strap]
ammos = [Yetshila, Seething_Bomblet, Cath_Palug_Stone, Aurgelmir_Orb, Pemphredo_Tathlum, Ghastly_Tathlum, Crepuscular_Pebble]
heads = [Adhemar_Bonnet_A, Adhemar_Bonnet_B, Hachiya_Hatsuburi, Mochizuki_Hatsuburi, Malignance_Chapeau, Kendatsuba_Jinpachi, Mummu_Bonnet, Nyame_Helm, Mpaca_Cap, Blistering_Sallet]
necks = [Ninja_Nodowa, Fotia_Gorget, Caro_Necklace, Baetyl_Pendant]
ears = [Ishvara_Earring, Lugra_Earring_Aug, Moonshade_Earring, Brutal_Earring, Friomisi_Earring, Crematio_Earring, Balder_Earring, Mache_Earring1, Mache_Earring2, Odr_Earring, Crepuscular_Earring]
ears2 = [Ishvara_Earring, Lugra_Earring_Aug, Moonshade_Earring, Brutal_Earring, Friomisi_Earring, Crematio_Earring, Balder_Earring, Mache_Earring1, Mache_Earring2, Odr_Earring, Crepuscular_Earring]
bodies = [Kendatsuba_Samue, Adhemar_Jacket_A, Adhemar_Jacket_B, Malignance_Tabard, Nyame_Mail, Samnuha_Coat, Gyve_Doublet, Abnoba_Kaftan, Mpaca_Doublet, Tatenashi_Haramaki, Ryuo_Domaru_A, Agony_Jerkin]
hands = [Adhemar_Wristbands_A, Adhemar_Wristbands_B, Mochizuki_Tekko, Mummu_Wrists, Malignance_Gloves, Kendatsuba_Tekko, Nyame_Gauntlets, Mpaca_Gloves, Tatenashi_Gote, Ryuo_Tekko_A, Ryuo_Tekko_D]
rings = [Gere_Ring, Hetairoi_Ring, Shukuyu_Ring, Apate_Ring, Ilabrat_Ring, Regal_Ring, Epona_Ring, Petrov_Ring, Rufescent_Ring, Begrudging_Ring, Epaminondas_Ring, Mummu_Ring, Beithir_Ring, Dingir_Ring, Metamorph_Ring, Shiva_Ring1, Shiva_Ring2, Weatherspoon_Ring]
rings2 = [Gere_Ring, Hetairoi_Ring, Shukuyu_Ring, Apate_Ring, Ilabrat_Ring, Regal_Ring, Epona_Ring, Petrov_Ring, Rufescent_Ring, Begrudging_Ring, Epaminondas_Ring, Mummu_Ring, Beithir_Ring, Dingir_Ring, Metamorph_Ring, Shiva_Ring1, Shiva_Ring2, Weatherspoon_Ring]
capes = [Andartia_DAdex, Andartia_DAstr, Andartia_DAagi, Andartia_Critagi, Andartia_Critdex, Andartia_WSDstr, Andartia_WSDdex, Andartia_WSDagi, Andartia_Nuke]
belts = [Windbuffet_Belt, Fotia_Belt, Grunfeld_Rope, Kentarch_Belt, Sailfi_Belt, Orpheus_Sash]
legs = [Kendatsuba_Hakama, Adhemar_Kecks_A, Adhemar_Kecks_B, Mochizuki_Hakama, Samnuha_Tights, Jokushu_Haidate, Malignance_Tights, Mummu_Kecks, Gyve_Trousers, Hizamaru_Hizayoroi, Nyame_Flanchard, Mpaca_Hose, Tatenashi_Haidate, Ryuo_Hakama_A, Rao_Haidate_B]
feet = [Mochizuki_Kyahan, Adhemar_Gamashes_A, Adhemar_Gamashes_B, Malignance_Boots, Mummu_Gamashes, Kendatsuba_Sune_Ate, Nyame_Sollerets, Mpaca_Boots, Tatenashi_SuneAte, Ryuo_SuneAte_D, Rao_SuneAte_D]
Finally, since this post is already pretty long, I may as well link my official forum post from last year. This post details my requested Ninja job adjustments. Feel free to give it a like/comment.
https://forum.square-enix.com/ffxi/threads/57263-2020-2021-Ninja-Job-Adjustment-and-Feedback?s=66c8aaed6a12e3a576c9ee8f403e1174
|
|