Advertisement
Guest User

Untitled

a guest
Apr 26th, 2017
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.41 KB | None | 0 0
  1.  
  2.  
  3.  
  4. -- 12/02/2016 19:30 - Added Hetairoi, moved Apate a bit
  5. -- 19/12/2015 03:30 - Added Abnoba Kaftan to various sets
  6. -- 09/12/2015 01:00 - Swapped Qaaxo feet for Rawhide in several sets. Added Herc hands/feet to TP sets.
  7. -- 21/09/2015 22:00 - Prosilio belt for Grunfeld Rope. Swapped Windbuffet+1 to Grunfeld in some WS normal. Removed Fotia from some WS acc. Added Lilitu Headpiece to WS sets.
  8. -- 28/08/2015 01:30 - Added Empath Necklace, removed Puppetry Torque. Swapped Pitre Taj+1 for Rawhide Mask in Pet midcast spell.
  9. -- 09/08/2015 19:30 - Added Leyline Gloves in place of Taeon for spell precast
  10. -- 08/08/2015 03:00 - Added Ta'lab trousers in TP sets (in place of Quiahuiz) and in multiple WS sets.
  11. -- 19/07/2015 18:30 - Added Karagoz Head/Body/Legs/Feet +1. Swapped body Pitre+1 for Kara+1 in WSsets and TPacc sets.
  12. -- 11/07/2015 22:30 - Updated DT sets with Dring. Swapped Colossus Earring for Steelflash in PDT
  13. -- 25/04/2015 03:00 - Swapped Otronif/Nilas for Count's Cuffs in TP and Raging Fists set. (actually reverted to Otronif+1 in TP until I get an 8% haste head)
  14. -- 03/04/2015 01:00 - Added Textbox thing to track TP/Pet/Idle sets, removed related add_to_chat lines
  15. -- 20/02/2015 22:30 - Added Fotia Gorget/Belt in place of old elemental Gorgets/Belts
  16. -- 07/02/2015 05:00 - Incorporated the new kbind system for G19 keyboard
  17. -- 23/12/2014 20:00 - Added Nilas Gloves, Prosilio Belt, added madrigal checks for Kuwunga Earring
  18. -- 20/12/2014 04:00 - Added Moonshade Earring and rules for TP > 2900
  19. -- 15/12/2014 20:00 - Removed Orvail body from Idle, swapped Orvail legs with Kaabnax in precast, consolidated Utsusemi sets for precast and midcast, removed Cirque Earring, added Rimeice Earring and Ukko Sash to Pet mode, changed send_command to add_to_chat,
  20. -- 19/09/2014 19:00 - Pitre Tobe +1 on TP and various WS set, added Domesticator's Earring, added Dread Jupon and fixed WS/TP sets, removed Twilight Belt, added Foire feet/legs +1
  21. include('organizer-lib.lua')
  22.  
  23. function get_sets()
  24. --send_command('exec PUPkbind.txt')
  25. --send_command('text SET delete')
  26. --send_command('text SET create')
  27. --send_command('text SET pos 90 0')
  28. WeaponskillMode = 'Normal'
  29. send_command('bind @f9 gs c toggle TP set')
  30. send_command('bind @f10 gs c toggle Pet Mode')
  31. send_command('bind @f11 gs c PDT set')
  32. send_command('bind @f12 gs c MDT set')
  33. send_command('bind #r gs equip sets.regen')
  34. --Idle Sets
  35. sets.Idle = { ammo="Automat. Oil +3",
  36. head="Pitre Taj +1",
  37. body="Councilor's Garb",
  38. hands="Herculean Gloves",
  39. legs={ name="Taeon Tights", augments={'Pet: Damage Taken -3%','Pet: Accuracy+15: Tng. Acc.+15','"Dbl. Atk."+5',}},
  40. feet="Hermes' Sandals",
  41. neck="Twilight Torque",
  42. waist="Isa Belt",
  43. left_ear="Handler's Earring",
  44. right_ear="Handler's Earring +1",
  45. left_ring="Thurandaut Ring",
  46. right_ring="Defending Ring",
  47. back="Contriver's Cape"}
  48.  
  49. sets.regen = {
  50. head="Pitre Taj +1",
  51. body="Pitre Tobe +1",
  52. hands="Ryuo Tekko",
  53. legs="Kara. Pantaloni +1",
  54. feet="Hermes' Sandals",
  55. neck="Empath Necklace",
  56. waist="Isa Belt",
  57. left_ear="Pratik Earring",
  58. right_ear="Guignol Earring",
  59. left_ring="Thurandaut Ring",
  60. right_ring="Defending Ring",
  61. back="Contriver's Cape",
  62. }
  63. --TP Sets
  64. sets.TP = {}
  65. sets.TP.index = {'Normal', 'Acc', 'Farming', 'Hybrid', 'Pet_DD', 'Pet_Tank', 'PDT', 'MDT'}
  66. -- Normal is average att/acc for DDing, Acc focuses on Accuracy, Farming is optimized for targets where you're att/acc capped, Hybrid is a set with master and automaton stats together
  67. TP_ind = 1
  68. sets.TP.Normal = {head="Karagoz Chapeau",
  69. body="Qaaxo Harness",
  70. hands="Herculean Gloves",
  71. legs="Kara. Pantaloni +1",
  72. feet="Ryuo Sune-Ate",
  73. neck="Asperity Necklace",
  74. waist="Windbuffet Belt +1",
  75. left_ear="Cessance Earring",
  76. right_ear="Brutal Earring",
  77. left_ring="Apate Ring",
  78. right_ring="Epona's Ring",
  79. back="Visucius's Mantle",}
  80.  
  81.  
  82. sets.TP.Acc = {head="Rao Kabuto",
  83. body="Pitre Tobe +1",
  84. hands="Herculean Gloves",
  85. legs="Kara. Pantaloni +1",
  86. feet="Herculean Boots",
  87. neck="Empath Necklace",
  88. waist="Hurch'lan Sash",
  89. left_ear="Mache Earring",
  90. right_ear="Mache Earring",
  91. left_ring="Varar Ring",
  92. right_ring="Epona's Ring",
  93. back="Visucius's Mantle",
  94. }
  95.  
  96.  
  97. sets.TP.Farming = set_combine(sets.TP.Normal, {head="", back="Dispersal Mantle",})
  98.  
  99.  
  100. sets.TP.Hybrid = {
  101. head="Rao Kabuto",
  102. body="Pitre Tobe +1",
  103. hands="Ryuo Tekko",
  104. legs="Ryup Hakama",
  105. feet="Herculean Boots",
  106. neck="Empath Necklace",
  107. waist="Hurch'lan Sash",
  108. left_ear="Cessance Earring",
  109. right_ear="Rimeice Earring",
  110. left_ring="Thurandaut Ring",
  111. right_ring="Varar Ring",
  112. back="Visucius's Mantle",
  113. }
  114.  
  115.  
  116. sets.TP.Pet_DD = {
  117. head={ name="Taeon Chapeau", augments={'Pet: Haste+2%','Pet: Accuracy+20 Rng. Acc.+20','Pet: "Dbl. Atk."+3',}},
  118. body={ name="Taeon Tabard", augments={'Pet: Haste+5%','Pet: Accuracy+24 Rng. Acc.+24','Pet: "Dbl. Atk."+4',}},
  119. hands={ name="Taeon Gloves", augments={'Pet: Damage taken -4%','Pet: Attack+25 Rng. Atk.+25','Pet: "Dbl. Atk."+4',}},
  120. legs={ name="Taeon Tights", augments={'Pet: Damage taken -3%','Pet: Accuracy+15 Rng. Acc.+15','Pet: "Dbl. Atk."+5',}},
  121. feet={ name="Taeon Boots", augments={'Pet: Haste+3%','Pet: Attack+21 Rng. Atk.+21','Pet: "Dbl. Atk."+5',}},
  122. neck="Empath Necklace",
  123. waist="Ukko Sash",
  124. left_ear="Rimeice Earring",
  125. right_ear="Domes. Earring",
  126. left_ring="Thurandaut Ring",
  127. right_ring="Varar Ring",
  128. back="Visucius's Mantle",
  129. }
  130.  
  131.  
  132. sets.TP.Pet_Tank = {ammo="Automat. Oil +3",
  133. head="Anwig Salade",
  134. body="Taeon Tabard",
  135. hands={ name="Taeon Gloves", augments={'Pet: Damage taken -4%','Pet: Attack+25 Rng. Atk.+25','Pet: "Dbl. Atk."+4',}},
  136. legs={ name="Taeon Tights", augments={'Pet: Damage taken -3%','Pet: Accuracy+15 Rng. Acc.+15','Pet: "Dbl. Atk."+5',}},
  137. feet={ name="Taeon Boots", augments={'Pet: Damage taken -4%','Pet: Accuracy+17 Rng. Acc.+17','Pet: "Dbl. Atk."+4',}},
  138. neck="Empath Necklace",
  139. waist="Isa Belt",
  140. left_ear="Handler's Earring",
  141. right_ear="Handler's Earring +1",
  142. left_ring="Thurandaut Ring",
  143. right_ring="Varar Ring",
  144. back="Visucius's Mantle",}
  145.  
  146. sets.TP.PDT = {head="",
  147. neck="",
  148. ear1="",
  149. ear2="",
  150. body="",
  151. hands="",
  152. ring1="",
  153. ring2="Defending ring",
  154. back="",
  155. waist="Windbuffet Belt +1",
  156. legs="",
  157. feet=""}
  158.  
  159. sets.TP.MDT = {head="",
  160. neck="",
  161. ear1="",
  162. ear2="",
  163. body="",
  164. hands="Regimen Mittens",
  165. ring1="",
  166. ring2="Defending Ring",
  167. waist="Windbuffet Belt +1",
  168. legs="",
  169. feet=""}
  170.  
  171. --WS Sets
  172. sets.precast = {}
  173. sets.precast.WS = {head="Sukeroku Hachi.",
  174. body="Qaaxo Harness",
  175. hands="Ryuo Tekko",
  176. legs="Ta'lab Trousers",
  177. feet="Ryuo Sune-Ate",
  178. neck="Bilious Torque",
  179. waist="Windbuffet Belt +1",
  180. left_ear="Cessance Earring",
  181. right_ear="Moonshade Earring",
  182. left_ring="Apate Ring",
  183. right_ring="Epona's Ring",
  184. back="Dispersal Mantle"}
  185. sets.precast.WS.madri = {}
  186. sets.precast.WS.maxTP = {}
  187. sets.precast.WS.maxTP.Normal = {ear1="Cessance Earring", ear2="Ishvara Earring"}
  188. sets.precast.WS.maxTP.Acc = {ear1="Cessance Earring", ear2="Ishvara Earring"}
  189. sets.precast.WS.maxTP.Mod = set_combine(sets.precast.WS.maxTP.Normal, {})
  190. sets.precast.WS['Stringing Pummel'] = {}
  191.  
  192. sets.precast.WS['Stringing Pummel'].Normal = {head="Sukeroku Hachi.",
  193. body="Qaaxo Harness",
  194. hands="Ryuo Tekko",
  195. legs="Ta'lab Trousers",
  196. feet="Ryuo Sune-Ate",
  197. neck="Bilious Torque",
  198. waist="Windbuffet Belt +1",
  199. left_ear="Cessance Earring",
  200. right_ear="Moonshade Earring",
  201. left_ring="Apate Ring",
  202. right_ring="Epona's Ring",
  203. back="Dispersal Mantle",
  204. }
  205. sets.precast.WS['Stringing Pummel'].Acc = set_combine(sets.precast.WS['Stringing Pummel'].Normal, {head="Sukeroku Hachi."})
  206. sets.precast.WS['Stringing Pummel'].Mod = set_combine(sets.precast.WS['Stringing Pummel'].Normal, {hands="Regimen Mittens"})
  207. sets.precast.WS['Victory Smite'] = {}
  208. sets.precast.WS['Victory Smite'].Normal = sets.precast.WS['Stringing Pummel'].Normal
  209. sets.precast.WS['Victory Smite'].Acc = set_combine(sets.precast.WS['Victory Smite'].Normal, {head="Sukeroku Hachi."})
  210. sets.precast.WS['Victory Smite'].Mod = set_combine(sets.precast.WS['Victory Smite'].Normal, {hands="Regimen Mittens"})
  211. sets.precast.WS['Spinning Attack'] = {}
  212. sets.precast.WS['Spinning Attack'].Normal = {head="Sukeroku Hachi.",
  213. body="Qaaxo Harness",
  214. hands="Ryuo Tekko",
  215. legs="Ta'lab Trousers",
  216. feet="Ryuo Sune-Ate",
  217. neck="Bilious Torque",
  218. waist="Windbuffet Belt +1",
  219. left_ear="Cessance Earring",
  220. right_ear="Moonshade Earring",
  221. left_ring="Apate Ring",
  222. right_ring="Epona's Ring",
  223. back="Dispersal Mantle"}
  224. sets.precast.WS['Spinning Attack'].Acc = set_combine(sets.precast.WS['Spinning Attack'].Normal, {})
  225. sets.precast.WS['Spinning Attack'].Mod = set_combine(sets.precast.WS['Spinning Attack'].Normal, {})
  226. sets.precast.WS['Raging Fists'] = {}
  227. sets.precast.WS['Raging Fists'].Normal = {}
  228. sets.precast.WS['Raging Fists'].Acc = set_combine(sets.precast.WS['Raging Fists'].Normal, {head="", neck="Bilious Torque", ear1="Cessance Earring", body="Karagoz Farsetto", back="Dispersal Mantle", waist="Windbuffet Belt +1", legs="Ta'lab Trousers"})
  229. sets.precast.WS['Raging Fists'].Mod = set_combine(sets.precast.WS['Raging Fists'].Normal, {})
  230.  
  231. --Precast stuff for JAs and various
  232. sets.precast.Maneuver = {main = "", neck="Buffoon's Collar +1", body="Karagoz Farsetto", hands="Foire Dastanas +1", back="Dispersal Mantle"}
  233. sets.precast['Repair'] = {main = "", ear1="Guignol Earring", ear2="Pratik Earring", legs="Karagoz Pantaloni +1", feet="Foire Babouches +1"}
  234. sets.precast['Tactical Switch'] = {feet="Karagoz Scarpe +1"}
  235. sets.precast['Overdrive'] = {body="Pitre Tobe +1"}
  236. sets.precast['Ventriloquy'] = {legs="Pitre Churidars +1"}
  237. sets.precast['Role Reversal'] = {feet="Pitre Babouches"}
  238. sets.precast['Ninjutsu'] = {head="", neck="", ear1="", ear2="", body="", hands="", ring1="", ring2="", back="", legs="", feet=""}
  239. sets.precast['Utsusemi: Ichi'] = set_combine(sets.precast['Ninjutsu'], {neck=""})
  240. sets.precast['Utsusemi: Ni'] = set_combine(sets.precast['Ninjutsu'], {})
  241.  
  242. --Midcast sets
  243. sets.midcast = {}
  244. sets.midcast.sheltered = {ring1="Sheltered Ring"}
  245. sets.midcast.spellcasting = {head="Pitre Taj +1",
  246. hands="Regimen Mittens",
  247. legs="Pitre Churidars +1",
  248. feet="Pitre Babouches",
  249. neck="Empath Necklace",
  250. left_ear="Charivari Earring",
  251. body="Foire Tobe",
  252. right_ear="Burana Earring",
  253. back="Visucius's Mantle"}
  254.  
  255. sets.midcast.petcure = {
  256. head="Pitre Taj +1",
  257. body="Foire Tobe",
  258. hands="Regimen Mittens",
  259. legs="Foire Churidars +1",
  260. feet="Naga Kyahan",
  261. neck="Empath Necklace",
  262. waist="Isa Belt",
  263. left_ear="Domes. Earring",
  264. right_ear="Charivari Earring",
  265. left_ring="Thurandaut Ring",
  266. right_ring="Varar Ring",
  267. back="Visucius's Mantle",
  268. }
  269.  
  270. sets.midcast['Ninjutsu'] = {neck="Voltsurge Torque", back="Mujin Mantle", waist="Hurch'lan Sash"}
  271.  
  272. sets.midcast.PetWS={
  273. head="Karagoz Capello +1",
  274. body="Pitre Tobe +1",
  275. hands={ name="Taeon Gloves", augments={'Pet: Damage taken -4%','Pet: Attack+25 Rng. Atk.+25','Pet: "Dbl. Atk."+4',}},
  276. legs="Kara. Pantaloni +1",
  277. feet={ name="Taeon Boots", augments={'Pet: Haste+3%','Pet: Attack+21 Rng. Atk.+21','Pet: "Dbl. Atk."+5',}},
  278. neck="Empath Necklace",
  279. waist="Ukko Sash",
  280. left_ear="Domes. Earring",
  281. right_ear="Rimeice Earring",
  282. left_ring="Thurandaut Ring",
  283. right_ring="Varar Ring",
  284. back={ name="Visucius's Mantle", augments={'Pet: Acc.+20 Pet: R.Acc.+20 Pet: Atk.+20 Pet: R.Atk.+20','Accuracy+20 Attack+20','Pet: "Regen"+10',}},
  285. }
  286.  
  287. send_command('text SET text '..sets.TP.index[TP_ind]..'')
  288.  
  289. end
  290.  
  291. function precast(spell,action)
  292. if spell.english:endswith('Maneuver') then
  293. equip(sets.precast.Maneuver)
  294. elseif sets.precast[spell.english] then
  295. equip(sets.precast[spell.english])
  296. elseif sets.precast[spell.type] then
  297. equip(sets.precast[spell.type])
  298. elseif sets.precast[spell.action_type] then
  299. equip(sets.precast[spell.action_type])
  300. elseif sets.precast.WS[spell.english] then
  301. equip(sets.precast.WS[spell.english][WeaponskillMode])
  302. end
  303. if (spell.english == "Stringing Pummel" or spell.english == "Victory Smite" or spell.english == "Raging Fists") and player.tp > 2900 then
  304. equip(sets.precast.WS.maxTP[WeaponskillMode])
  305. end
  306. if spell.prefix == "/weaponskill" and WeaponskillMode ~= "Acc" and (buffactive['Blade Madrigal'] or buffactive['Sword Madrigal']) then
  307. equip(sets.precast.WS.madri)
  308. end
  309. end
  310.  
  311. function midcast(spell,action)
  312. if sets.midcast[spell.type] then
  313. equip(sets.midcast[spell.type])
  314. elseif sets.midcast[spell.action_type] then
  315. equip(sets.midcast[spell.action_type])
  316. end
  317. end
  318.  
  319. function aftercast(spell,action)
  320. if player.status == 'Engaged' then
  321. equip(sets.TP[sets.TP.index[TP_ind]])
  322. elseif pet.status == 'Engaged' and TP_ind == 5 then
  323. equip(sets.TP.Pet_DD)
  324. elseif pet.status == 'Engaged' and TP_ind == 6 then
  325. equip(sets.TP.Pet_Tank)
  326. else
  327. equip(sets.Idle)
  328. end
  329. end
  330.  
  331.  
  332.  
  333. function pet_midcast(spell)
  334. if spell.english:startswith('Cure') then
  335. equip(sets.midcast.petcure)
  336. elseif spell.english:startswith('Protect') or spell.english:startswith('Shell') then
  337. equip(sets.midcast.sheltered)
  338. elseif spell.skill == 'Elemental Magic' or spell.english:startswith('Drain') or spell.english:startswith('Aspir') then
  339. equip(sets.midcast.spellcasting)
  340. elseif (spell.english == "Arcuballista" or spell.english == "Chimera Ripper" or spell.english == "Bone Crusher" or spell.english == "Daze" or spell.english == "String Shredder") then
  341. equip(sets.midcast.PetWS)
  342.  
  343. end
  344. end
  345.  
  346. function pet_aftercast(spell)
  347. if player.status == 'Engaged' then
  348. equip(sets.TP[sets.TP.index[TP_ind]])
  349. elseif pet.status == 'Engaged' and TP_ind == 5 then
  350. equip(sets.TP.Pet_DD)
  351. elseif pet.status == 'Engaged' and TP_ind == 6 then
  352. equip(sets.TP.Pet_Tank)
  353. else
  354. equip(sets.Idle)
  355. end
  356. end
  357.  
  358. function status_change(new,old)
  359. if new == 'Engaged' then
  360. equip(sets.TP[sets.TP.index[TP_ind]])
  361. elseif pet.status == 'Engaged' and TP_ind == 5 then
  362. equip(sets.TP.Pet_DD)
  363. elseif pet.status == 'Engaged' and TP_ind == 6 then
  364. equip(sets.TP.Pet_Tank)
  365. else
  366. equip(sets.Idle)
  367. end
  368. end
  369.  
  370. function pet_status_change(new,old)
  371. if new == 'Engaged' and TP_ind == 5 then
  372. equip(sets.TP.Pet_DD)
  373. elseif pet.status == 'Engaged' and TP_ind == 6 then
  374. equip(sets.TP.Pet_Tank)
  375. elseif player.status ~= 'Engaged' then
  376. equip(sets.Idle)
  377. end
  378. end
  379.  
  380. function self_command(command)
  381. --This handles commands to equip specific sets directly from the console
  382. if command == 'PDT set' then
  383. TP_ind = 7
  384. equip(sets.TP.PDT)
  385. send_command('@input /echo <----- PDT Mode Set '..sets.TP.index[TP_ind]..'')
  386. end
  387. if command == 'MDT set' then
  388. TP_ind = 8
  389. equip(sets.TP.MDT)
  390. send_command('@input /echo <----- MDT Mode Set '..sets.TP.index[TP_ind]..'')
  391. end
  392. if command == 'toggle Pet Mode' then
  393. if TP_ind ~= 5 then
  394. TP_ind = 5
  395. else
  396. TP_ind = 6
  397. end
  398. send_command('@input /echo <----- Pet Mode Set changed to '..sets.TP.index[TP_ind]..' ----->')
  399. equip(sets.TP[sets.TP.index[TP_ind]])
  400. --send_command('text SET text '..sets.TP.index[TP_ind]..'')
  401. end
  402. if command == 'toggle TP set' then
  403. TP_ind = TP_ind +1
  404. if TP_ind > 4 then
  405. TP_ind = 1
  406. elseif TP_ind == 2 then
  407. WeaponskillMode = 'Acc'
  408. elseif TP_ind == 3 then
  409. WeaponskillMode = 'Mod'
  410. else
  411. WeaponskillMode = 'Normal'
  412. end
  413. send_command('@input /echo <----- TP Set changed to '..sets.TP.index[TP_ind]..' ----->')
  414. --send_command('text SET text '..sets.TP.index[TP_ind]..'')
  415. equip(sets.TP[sets.TP.index[TP_ind]])
  416. end
  417. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement