|
A RDM Gearswap...
Cerberus.Tikal
Serveur: Cerberus
Game: FFXI
Posts: 4945
By Cerberus.Tikal 2023-05-23 20:15:04
Gravity is also a spell where potency matters very little. More often than not, landing the spell is more important than landing a high potency Gravity. This is because, regardless of potency, Gravity landing does the job its designed to do.
Quetzalcoatl.Jakey
Serveur: Quetzalcoatl
Game: FFXI
Posts: 300
By Quetzalcoatl.Jakey 2023-05-23 21:34:29
Gravity is also a spell where potency matters very little. More often than not, landing the spell is more important than landing a high potency Gravity. This is because, regardless of potency, Gravity landing does the job its designed to do. well also the potency was capped after a glitch.
YouTube Video Placeholder
[+]
By Argisto 2023-05-23 23:43:52
Was it capped? And if so, what is the cap? Under the patch notes I found they just list it as a graphical error.
Edit: Is it the 80% listed on the table on BG?
Necro Bump Detected!
[98 days between previous and next post]
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-08-30 08:29:49
Did this GS break recently?
I try to cure and it always throws errors w/ rdm_lib.lua
attempt to index field 'precast' (a nil value)
same with 'me'
happens when i try to cure.
i've not modified the lib
only my gearsets.
edit: I reverted earlier version and it works, so not corrupted file, juat a pain to debug cuz the errors are all in the rdm_lib file.
Cerberus.Natsuhiko
Serveur: Cerberus
Game: FFXI
Posts: 191
By Cerberus.Natsuhiko 2023-08-30 12:04:20
Quetzalcoatl.Xilkk said: »Did this GS break recently?
I try to cure and it always throws errors w/ rdm_lib.lua
attempt to index field 'precast' (a nil value)
same with 'me'
happens when i try to cure.
i've not modified the lib
only my gearsets.
edit: I reverted earlier version and it works, so not corrupted file, juat a pain to debug cuz the errors are all in the rdm_lib file.
My version still works on my machine.
Edit: When you reverted to an earlier version, did you replace the lib file or both files?
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-08-30 14:04:44
I reverted to an earlier copy of the file that had my gear in it.. basically from before I made changes this morning... so the gearsets are not as good.
and I do not know what changes are the problem, there were alot so I have to go through it again. just ran out of time this morning.
but I do know that I'm only making changes in the xilkk_rdm.lua but all the errors reference the rdm_lib.lua or flow.lua
I did fix one of the errors by getting rid of the augmented armor alias for amalric coif +1.
so they probably reference a piece of gear that has a bad spelling maybe? or maybe I should just get rid of all the aliases. not sure.
Serveur: Asura
Game: FFXI
Posts: 137
By Asura.Chendar 2023-08-30 14:07:04
Sounds like you may have deleted some of the empty sets from your job file that need to be there for it to work properly?
There should be empty sets for: (technically they don't need to be empty, but the lua doesn't use these sets directly for anything by default)
Code
sets.me = {} -- leave this empty
sets.buff = {} -- leave this empty
sets.me.idle = {} -- leave this empty
sets.me.melee = {} -- leave this empty
sets.weapons = {} -- leave this empty
Code
sets.precast = {} -- Leave this empty
sets.midcast = {} -- Leave this empty
sets.aftercast = {} -- Leave this empty
sets.midcast.nuking = {} -- leave this empty
sets.midcast.MB = {} -- leave this empty
sets.midcast.enhancing = {} -- leave this empty
Around line 200-205 and 420-425 by default I think, but that would obviously change depending on your sets, if you remove any of these things will break and you'll get the "nil value" errors
Cerberus.Natsuhiko
Serveur: Cerberus
Game: FFXI
Posts: 191
By Cerberus.Natsuhiko 2023-08-30 14:27:20
Quetzalcoatl.Xilkk said: »I reverted to an earlier copy of the file that had my gear in it.. basically from before I made changes this morning... so the gearsets are not as good.
and I do not know what changes are the problem, there were alot so I have to go through it again. just ran out of time this morning.
but I do know that I'm only making changes in the xilkk_rdm.lua but all the errors reference the rdm_lib.lua or flow.lua
I did fix one of the errors by getting rid of the augmented armor alias for amalric coif +1.
so they probably reference a piece of gear that has a bad spelling maybe? or maybe I should just get rid of all the aliases. not sure.
I think Asura.Chendar has the right of it. The errors reference the lib file because that's where it says "equip set x" but if the empty sets are missing it'll throw errors for sets that build off of them. That would also be why changing only the gear file fixes it.
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-08-30 18:04:01
Code
--[[
Custom commands:
Becasue /sch can be a thing... I've opted to keep this part
Shorthand versions for each strategem type that uses the version appropriate for
the current Arts.
Light Arts Dark Arts
gs c scholar light Light Arts/Addendum
gs c scholar dark Dark Arts/Addendum
gs c scholar cost Penury Parsimony
gs c scholar speed Celerity Alacrity
gs c scholar aoe Accession Manifestation
gs c scholar addendum Addendum: White Addendum: Black
Toggle Function:
gs c toggle melee Toggle Melee mode on / off for locking of weapons
gs c toggle idlemode Toggles between Refresh, DT and MDT idle mode.
gs c toggle nukemode Toggles between Normal and Accuracy mode for midcast Nuking sets (MB included)
gs c toggle mainweapon cycles main weapons in the list you defined below
gs c toggle subweapon cycles main weapons in the list you defined below
Casting functions:
these are to set fewer macros (1 cycle, 5 cast) to save macro space when playing lazily with controler
gs c nuke cycle Cycles element type for nuking
gs c nuke cycledown Cycles element type for nuking in reverse order
gs c nuke enspellup Cycles element type for enspell
gs c nuke enspelldown Cycles element type for enspell in reverse order
gs c nuke t1 Cast tier 1 nuke of saved element
gs c nuke t2 Cast tier 2 nuke of saved element
gs c nuke t3 Cast tier 3 nuke of saved element
gs c nuke t4 Cast tier 4 nuke of saved element
gs c nuke t5 Cast tier 5 nuke of saved element
gs c nuke helix Cast helix2 nuke of saved element
gs c nuke storm Cast Storm buff of saved element if /sch
gs c nuke enspell Cast enspell of saved enspell element
HUD Functions:
gs c hud hide Toggles the Hud entirely on or off
gs c hud hidemode Toggles the Modes section of the HUD on or off
gs c hud hidejob Toggles the Job section of the HUD on or off
gs c hud lite Toggles the HUD in lightweight style for less screen estate usage. Also on ALT-END
gs c hud keybinds Toggles Display of the HUD keybindings (my defaults) You can change just under the binds in the Gearsets file. Also on CTRL-END
// OPTIONAL IF YOU WANT / NEED to skip the cycles...
gs c nuke Ice Set Element Type to Ice DO NOTE the Element needs a Capital letter.
gs c nuke Air Set Element Type to Air DO NOTE the Element needs a Capital letter.
gs c nuke Dark Set Element Type to Dark DO NOTE the Element needs a Capital letter.
gs c nuke Light Set Element Type to Light DO NOTE the Element needs a Capital letter.
gs c nuke Earth Set Element Type to Earth DO NOTE the Element needs a Capital letter.
gs c nuke Lightning Set Element Type to Lightning DO NOTE the Element needs a Capital letter.
gs c nuke Water Set Element Type to Water DO NOTE the Element needs a Capital letter.
gs c nuke Fire Set Element Type to Fire DO NOTE the Element needs a Capital letter.
--]]
include('organizer-lib') -- optional
res = require('resources')
texts = require('texts')
include('Modes.lua')
-- Define your modes:
-- You can add or remove modes in the table below, they will get picked up in the cycle automatically.
-- to define sets for idle if you add more modes, name them: sets.me.idle.mymode and add 'mymode' in the group.
-- Same idea for nuke modes.
idleModes = M('refresh', 'dt', 'mdt')
meleeModes = M('normal', 'acc', 'dt', 'mdt')
nukeModes = M('normal', 'acc')
------------------------------------------------------------------------------------------------------
-- Important to read!
------------------------------------------------------------------------------------------------------
-- This will be used later down for weapon combos, here's mine for example, you can add your REMA+offhand of choice in there
-- Add you weapons in the Main list and/or sub list.
-- Don't put any weapons / sub in your IDLE and ENGAGED sets'
-- You can put specific weapons in the midcasts and precast sets for spells, but after a spell is
-- cast and we revert to idle or engaged sets, we'll be checking the following for weapon selection.
-- Defaults are the first in each list
mainWeapon = M('Vitiation sword', 'Naegling', 'Daybreak', 'Tauret', 'Aern Dagger')
subWeapon = M('Daybreak', 'Sequence', "Gleti's Knife", "Sakpata's Sword", 'Demers. Degen +1', 'Ammurapi Shield', 'Qutrub Knife' )
------------------------------------------------------------------------------------------------------
----------------------------------------------------------
-- Auto CP Cape: Will put on CP cape automatically when
-- fighting Apex mobs and job is not mastered
----------------------------------------------------------
CP_CAPE = "Mecisto. Mantle" -- Put your CP cape here
----------------------------------------------------------
-- Setting this to true will stop the text spam, and instead display modes in a UI.
-- Currently in construction.
use_UI = true
hud_x_pos = 1400 --important to update these if you have a smaller screen
hud_y_pos = 200 --important to update these if you have a smaller screen
hud_draggable = true
hud_font_size = 10
hud_transparency = 200 -- a value of 0 (invisible) to 255 (no transparency at all)
hud_font = 'Impact'
-- Setup your Key Bindings here:
windower.send_command('bind insert gs c nuke cycle') -- insert to Cycles Nuke element
windower.send_command('bind delete gs c nuke cycledown') -- delete to Cycles Nuke element in reverse order
windower.send_command('bind f9 gs c toggle idlemode') -- F9 to change Idle Mode
windower.send_command('bind f11 gs c toggle meleemode') -- F11 to change Melee Mode
windower.send_command('bind !f9 gs c toggle melee') -- Alt-F9 Toggle Melee mode on / off, locking of weapons
windower.send_command('bind !f11 gs c toggle mainweapon') -- Alt-F11 Toggle Main Weapon
windower.send_command('bind ^f11 gs c toggle subweapon') -- CTRL-F11 Toggle sub Weapon.
windower.send_command('bind !` input /ma Stun <t>') -- Alt-` Quick Stun Shortcut.
windower.send_command('bind home gs c nuke enspellup') -- Home Cycle Enspell Up
windower.send_command('bind PAGEUP gs c nuke enspelldown') -- PgUP Cycle Enspell Down
windower.send_command('bind ^f10 gs c toggle mb') -- F10 toggles Magic Burst Mode on / off.
windower.send_command('bind !f10 gs c toggle nukemode') -- Alt-F10 to change Nuking Mode
windower.send_command('bind F10 gs c toggle matchsc') -- CTRL-F10 to change Match SC Mode
windower.send_command('bind !end gs c hud lite') -- Alt-End to toggle light hud version
windower.send_command('bind ^end gs c hud keybinds') -- CTRL-End to toggle Keybinds
--[[
This gets passed in when the Keybinds is turned on.
IF YOU CHANGED ANY OF THE KEYBINDS ABOVE, edit the ones below so it can be reflected in the hud using the "//gs c hud keybinds" command
]]
keybinds_on = {}
keybinds_on['key_bind_idle'] = '(F9)'
keybinds_on['key_bind_melee'] = '(F8)'
keybinds_on['key_bind_casting'] = '(ALT-F10)'
keybinds_on['key_bind_mainweapon'] = '(ALT-F11)'
keybinds_on['key_bind_subweapon'] = '(CTRL-F11)'
keybinds_on['key_bind_element_cycle'] = '(INS + DEL)'
keybinds_on['key_bind_enspell_cycle'] = '(HOME + PgUP)'
keybinds_on['key_bind_lock_weapon'] = '(ALT-F9)'
keybinds_on['key_bind_matchsc'] = '(F10)'
-- Remember to unbind your keybinds on job change.
function user_unload()
send_command('unbind insert')
send_command('unbind delete')
send_command('unbind f9')
send_command('unbind !f9')
send_command('unbind f8')
send_command('unbind !f8')
send_command('unbind ^f8')
send_command('unbind f10')
send_command('unbind f12')
send_command('unbind !`')
send_command('unbind home')
send_command('unbind !f10')
send_command('unbind `f10')
send_command('unbind !end')
send_command('unbind ^end')
end
include('RDM_Lib.lua')
-- Optional. Swap to your sch macro sheet / book
set_macros(1,8) -- Sheet, Book
refreshType = idleModes[1] -- leave this as is
-- Setup your Gear Sets below:
function get_sets()
-- JSE
AF = {} -- leave this empty
RELIC = {} -- leave this empty
EMPY = {} -- leave this empty
-- Fill this with your own JSE.
--Atrophy
AF.Head = "Atro.Chapeau +3"
AF.Body = "Atrophy Tabard +3"
AF.Hands = "Atrophy Gloves +3"
AF.Legs = "Atrophy Tights +3"
AF.Feet = "Atrophy Boots +2"
--Vitiation
RELIC.Head = "Viti. Chapeau +3"
RELIC.Body = "Viti. Tabard +3"
RELIC.Hands = "Viti. Gloves +3"
RELIC.Legs = "Viti. Tights +3"
RELIC.Feet = "Vitiation Boots +3"
--Lethargy
EMPY.Head = "Leth. Chappel +3"
EMPY.Body = "Lethargy Sayon +3"
EMPY.Hands = "Leth. Gantherots +2"
EMPY.Legs = "Leth. Fuseau +3"
EMPY.Feet = "Leth. Houseaux +3"
Refresh.Hands={ name="Merlinic Dastanas", augments={'Pet: DEX+9','Pet: STR+8','"Refresh"+2',}}
-- Capes:
-- Sucellos's And such, add your own.
RDMCape = {}
RDMCape.TP = { name="Sucellos's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dual Wield"+10','Phys. dmg. taken-10%',}}
RDMCape.MACC = { name="Sucellos's Cape", augments={'MND+20','Mag. Acc+20 /Mag. Dmg.+20','MND+10','Weapon skill damage +10%','Magic dmg. taken-10%',}}
RDMCape.MAB = { name="Sucellos's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Damage taken-5%',}}
DW_feet = { name="Taeon Boots", augments={'Accuracy+24','"Dual Wield"+5','STR+1 CHR+1',}}
MB_head = { name="Merlinic Hood", augments={'Mag. Acc.+7 "Mag.Atk.Bns."+7','Magic burst dmg.+10%','DEX+3',}}
MB_body = { name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+30','Magic burst dmg.+11%','CHR+3',}}
MB_legs = { name="Merlinic Shalwar", augments={'Mag. Acc.+25 "Mag.Atk.Bns."+25','Magic burst dmg.+9%','INT+10','"Mag.Atk.Bns."+9',}}
MB_feet = { name="Merlinic Crackows", augments={'Mag. Acc.+14 "Mag.Atk.Bns."+14','Magic burst dmg.+9%','"Mag.Atk.Bns."+15',}}
-- SETS
sets.me = {} -- leave this empty
sets.buff = {} -- leave this empty
sets.me.idle = {} -- leave this empty
sets.me.melee = {} -- leave this empty
sets.weapons = {} -- leave this empty
-- Optional
--include('AugGear.lua') -- I list all my Augmented gears in a sidecar file since it's shared across many jobs.
-- Leave weapons out of the idles and melee sets. You can/should add weapons to the casting sets though
-- Your idle set
sets.me.idle.refresh = {
ammo = "Homiliary", --1
head = "Vitiation chapeau +3", --3
body = "Lethargy Sayon +3", --4
hands = Refresh.Hands, --2
legs = "Nyame Flanchard",
feet = "Nyame Sollerets",
neck = "Sibyl Scarf", --1
waist = "Flume Belt +1",
left_ear = "Etiolation Earring",
right_ear = "Odnowa Earring +1",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"}, --1
right_ring = {name="Stikini Ring +1", bag="wardrobe7"}, --1
back = RDMCape.TP,
}
-- Your idle DT set
sets.me.idle.dt = set_combine(sets.me.idle.refresh,{
neck = "Loricate torque +1",
head = "Malignance Chapeau",
body = EMPY.Body,
hands = "Malignance gloves",
legs = "Malignance tights",
feet = "Malignance Boots",
--left_ring = "Ayanmo Ring",
right_ring = "Defending Ring",
})
sets.me.idle.mdt = set_combine(sets.me.idle.refresh,{
})
-- Your MP Recovered Whilst Resting Set
sets.me.resting = {
}
sets.me.latent_refresh = {waist="Fucho-no-obi"}
-- Combat Related Sets
------------------------------------------------------------------------------------------------------
-- Dual Wield sets
------------------------------------------------------------------------------------------------------
sets.me.melee.normaldw = set_combine(sets.me.idle.refresh,{
ammo = "Coiste Bodhar",
head = "Malignance Chapeau",
body = "Malignance Tabard",
hands = "Malignance Gloves",
left_ring = "Chirich Ring +1", --
right_ring = "Chirich Ring +1",
legs = "Malignance tights",
feet = "Malignance boots",
neck = "Anu Torque",
waist = "Orpheus's sash",
left_ear = "Dedition Earring",
right_ear = "Sherida earring",
right_ring = "Chirich Ring +1",
back = RDMCape.TP,
})
sets.me.melee.accdw = set_combine(sets.me.melee.normaldw,{
--head = Carm.Head.D,
-- neck = "Sanctity Necklace",
--right_ear = "Mache Earring +1",
--waist = "Grunfeld Rope",
})
sets.me.melee.dtdw = set_combine(sets.me.melee.normaldw,{
neck = "Loricate torque +1",
--head = "Aya. Zucchetto +2",
--body = "Ayanmo Corazza +2",
--hands = "Aya. Manopolas +2",
--legs = RELIC.Legs,
--feet = "Aya. Gambieras +2",
--left_ring = "Ayanmo Ring",
right_ring = "Defending Ring",
})
sets.me.melee.mdtdw = set_combine(sets.me.melee.normaldw,{
--head="Umuthi hat",
ear1="Telos Earring",
hands="Aya. Manopolas +2" ,
--back="Ghostfyre cape",
})
------------------------------------------------------------------------------------------------------
-- Single Wield sets. -- combines from DW sets
-- So canjust put what will be changing when off hand is a shield
------------------------------------------------------------------------------------------------------
sets.me.melee.normalsw = set_combine(sets.me.melee.normaldw,{
legs = RELIC.Legs,
})
sets.me.melee.accsw = set_combine(sets.me.melee.accdw,{
})
sets.me.melee.dtsw = set_combine(sets.me.melee.dtdw,{
})
sets.me.melee.mdtsw = set_combine(sets.me.melee.mdtdw,{
})
------------------------------------------------------------------------------------------------------
-- Weapon Skills sets just add them by name.
------------------------------------------------------------------------------------------------------
sets.me["Savage Blade"] = {
ammo = "Oshasha's treatise",
head = "Nyame Helm",
body = "Nyame Mail",
--hands = AF.Hands,
hands = "Jhakri cuffs +2",
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Rep. Plat. Medal",
waist = "Sailfi belt +1",
left_ear = "Moonshade Earring",
right_ear = "Ishvara Earring",
left_ring = "Epaminondas's ring",
right_ring = "Metamorph Ring +1",
back = RDMCape.MACC,
}
sets.me["Black Halo"] = {
ammo = "Oshasha's treatise",
head = "Nyame Helm",
body = "Nyame Mail",
hands = "Jhakri Cuffs +2",
--legs = RELIC.Legs,
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Dls. Torque +1",
waist = "Sailfi belt +1",
left_ear = "Moonshade Earring",
right_ear = "Sherida Earring",
left_ring = "Epaminondas's ring",
right_ring = "Metamorph Ring",
back = RDMCape.MACC,
}
sets.me["Requiescat"] = {
ammo = "Voluspa tathlum",
head = "Nyame Helm",
body = "Ayanmo Corazza +2",
hands = "Jhakri Cuffs +2",
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Fotia Gorget",
waist = "Fotia Belt",
left_ear = "Malignance earring",
right_ear = "Sherida Earring",
left_ring = "Hetairoi Ring",
right_ring = "Metamorph Ring",
back = RDMCape.TP,
}
sets.me["Chant du Cygne"] = {
ammo = "Yetshila",
head = "Blistering Sallet +1",
body = "Lethargy Sayon +3",
hands = "Malignance gloves",
legs = "Zoar Subligar +1",
feet = "Thereoid greaves",
neck = "Fotia Gorget",
waist = "Fotia Belt",
left_ear = "Sherida Earring",
right_ear = "Mache Earring +1",
left_ring = "Begrudging Ring",
right_ring = "Ilabrat Ring",
back = RDMCape.TP,
}
sets.me["Sanguine Blade"] = {
ammo = "Sroda Tathlum",
head = "Pixie Hairpin +1",
body = "Nyame Mail",
hands = "Jhakri Cuffs +2",
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Sibyl Scarf",
waist = "Orpheus's sash",
left_ear = "Moonshade Earring",
right_ear = "Malignance Earring",
left_ring = "Archon Ring",
right_ring = "Epaminondas's Ring",
back = RDMCape.MACC,
}
sets.me["Red Lotus Blade"] = {
ammo = "Sroda Tathlum",
head = "Nyame Helm",
body = "Nyame Mail",
hands = "Jhakri Cuffs +2",
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Sibyl Scarf",
waist = "Orpheus's sash",
left_ear = "Moonshade Earring",
right_ear = "Malignance Earring",
left_ring = "Freke Ring",
right_ring = "Epaminondas's Ring",
back = RDMCape.MACC,
}
sets.me["Seraph Blade"] = {
ammo = "Sroda Tathlum",
head = "Nyame Helm",
body = "Nyame Mail",
hands = "Jhakri Cuffs +2",
legs = "Nyame Flanchard",
feet = "Leth. Houseaux +3",
neck = "Baetyl pendant",
waist = "Orpheus's sash",
left_ear = "Moonshade Earring",
right_ear = "Malignance earring",
left_ring = "Weather. Ring +1",
right_ring = "Epaminondas's Ring",
back = RDMCape.MACC,
}
sets.me["Seraph Strike"] = sets.me["Seraph Blade"]
sets.me["Shining Blade"] = sets.me["Seraph Blade"]
sets.me["Burning Blade"] = sets.me["Ret Lotus Blade"]
sets.me["Aeolian Edge"] = sets.me["Ret Lotus Blade"]
sets.me["Evisceration"] = {
ammo = "Yetshila",
head = "Blistering Sallet +1",
body = "Lethargy Sayon +3",
hands = "Malignance gloves",
legs = "Zoar Subligar +1",
feet = "Thereoid greaves",
neck = "Fotia Gorget",
waist = "Fotia Belt",
left_ear = "Sherida Earring",
right_ear = "Mache Earring +1",
left_ring = "Begrudging Ring",
right_ring = "Ilabrat Ring",
back = RDMCape.TP,
}
-- Feel free to add new weapon skills, make sure you spell it the same as in game. These are the only two I ever use though
---------------
-- Casting Sets
---------------
sets.precast = {} -- Leave this empty
sets.midcast = {} -- Leave this empty
sets.aftercast = {} -- Leave this empty
sets.midcast.nuking = {} -- leave this empty
sets.midcast.MB = {} -- leave this empty
sets.midcast.enhancing = {} -- leave this empty
----------
-- Precast
----------
-- Generic Casting Set that all others take off of. Here you should add all your fast cast RDM need 50 pre JP 42 at master
sets.precast.casting = {
main = "Vitiation sword", --15
head = AF.Head, --14
body = RELIC.Body, --15
legs = "Aya. Cosciales +2", --6
neck = "Orunmila's Torque", --5
waist = "Embla Sash", --5
left_ear = "Malignance Earring", --4
right_ear = "Lethargy Earring +1", --7
left_ring = "Kishar Ring", --4
right_ring = "Weather. Ring +1", --6
} --Total: 71 -- To Do: overkill need to slot DT / HP
sets.precast["Stun"] = set_combine(sets.precast.casting,{
})
-- Enhancing Magic, eg. Siegal Sash, etc
sets.precast.enhancing = set_combine(sets.precast.casting,{
})
-- Stoneskin casting time -, works off of enhancing -
sets.precast.stoneskin = set_combine(sets.precast.enhancing,{
})
-- Curing Precast, Cure Spell Casting time -
sets.precast.cure = set_combine(sets.precast.casting,{
back = "Pahtli Cape",
--feet = "Telchine Pigaches",
left_ring = "Lebeche Ring",
})
---------------------
-- Ability Precasting
---------------------
sets.precast["Chainspell"] = {body = RELIC.Body}
----------
-- Midcast
----------
-- Just go make it, inventory will thank you and making rules for each is meh.
sets.midcast.Obi = {
waist="Hachirin-no-Obi",
}
sets.midcast.Orpheus = {
waist="Orpheus's Sash", -- Commented cause I dont have one yet
}
-----------------------------------------------------------------------------------------------
-- Helix sets automatically derives from casting sets. SO DONT PUT ANYTHING IN THEM other than:
-- Pixie in DarkHelix
-- Belt that isn't Obi.
-----------------------------------------------------------------------------------------------
-- Make sure you have a non weather obi in this set. Helix get bonus naturally no need Obi.
sets.midcast.DarkHelix = {
head = "Pixie Hairpin +1",
waist = "Sacro Cord",
left_ring = "Archon Ring",
}
-- Make sure you have a non weather obi in this set. Helix get bonus naturally no need Obi.
sets.midcast.Helix = {
waist = "Sacro Cord",
}
-- Whatever you want to equip mid-cast as a catch all for all spells, and we'll overwrite later for individual spells
sets.midcast.casting = {
left_ring = "Metamorph Ring +1",
main = "Bunzi's Rod",
sub = "Ammurapi Shield",
ammo = "Pemphredo Tathlum",
head = "Leth. Chappel +3",
body = "Lethargy Sayon +3",
hands = "Leth. Ganth. +3" ,
legs = "Leth. Fuseau +3",
feet = "Leth. Houseaux +3",
neck = "Dls. Torque +1",
waist = "Sacro Cord",
left_ear = "Malignance Earring",
right_ear = "Regal Earring",
back = RDMCape.MACC,
right_ring = "Freke Ring",
}
sets.midcast.nuking.normal = {
main = "Bunzi's Rod",
sub = "Ammurapi Shield",
left_ring = "Metamorph Ring +1",
ammo = "Ghastly Tathlum +1",
head = "Leth. Chappel +3",
body = "Amalric Doublet +1",
hands = "Amalric gages +1",
legs = "Amalric Slops +1",
feet = "Amalric nails +1",
neck = "Sibyl Scarf",
waist = "Sacro Cord",
left_ear = "Malignance Earring",
right_ear = "Regal Earring",
back = RDMCape.MAB,
right_ring = "Freke Ring",
}
-- used with toggle, default: F10
-- Pieces to swap from freen nuke to Magic Burst
sets.midcast.MB.normal = set_combine(sets.midcast.nuking.normal, {
left_ring = "Mujin Band", --5 (II)
--head = MB_head,
body = MB_body, --11
--legs = MB_legs, --9
feet = MB_feet, --9
neck = "Mizu. Kubikazari", --10
--left_ring = "Locus Ring",
})
sets.midcast.nuking.acc = {
main = "Bunzi's Rod",
sub = "Ammurapi Shield",
left_ring = "Metamorph Ring +1",
ammo = "Ghastly Tathlum +1",
head = "Leth. Chappel +3",
body = "Lethargy Sayon +3",
hands = "Leth. Ganth. +3" ,
legs = "Leth. Fuseau +3",
feet = "Leth. Houseaux +3",
neck = "Sibyl Scarf",
waist = "Sacro Cord",
left_ear = "Regal Earring",
right_ear = "Lethargy Earring +1",
back = RDMCape.MAB,
right_ring = "Freke Ring",
}
-- used with toggle, default: F10
-- Pieces to swap from freen nuke to Magic Burst
sets.midcast.MB.acc = set_combine(sets.midcast.nuking.acc, {
left_ring = "Mujin Band", --5 (II)
--head = MB_head,
body = MB_body, --11
--legs = MB_legs, --9
feet = MB_feet, --9
neck = "Mizu. Kubikazari", --10
--left_ring = "Locus Ring",
})
-- Enfeebling
sets.midcast.Enfeebling = {} -- leave Empty
--Type A-pure macc no potency mod (bind, gravity...)
sets.midcast.Enfeebling.macc = {
main = "Maxentius",
sub = "Ammurapi Shield",
ammo = "Regal Gem",
head = AF.Head,
body = AF.Body,
hands = "Leth. Ganth. +3" ,
legs = "Leth. Fuseau +3",
feet = "Leth. Houseaux +3",
neck = "Dls. Torque +1",
waist = "Acuity belt +1",
left_ear = "Regal Earring",
right_ear = "Leth. Earring +1",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ring = {name="Stikini Ring +1", bag="wardrobe7"},
back = RDMCape.MACC
}
sets.midcast["Stun"] = set_combine(sets.midcast.Enfeebling.macc, {
})
--Type B-potency from: Mnd & "Enfeeb Potency" gear slow, para, etc
sets.midcast.Enfeebling.mndpot = {
main = "Daybreak",
sub = "Ammurapi Shield",
ammo = "Regal Gem",
head = RELIC.Head,
body = "Leth. Sayon +3",
hands = "Leth. Ganth. +3",
legs = "Leth. Fuseau +3",
feet = RELIC.Feet,
neck = "Dls. Torque +1",
waist = "Sacro Cord",
left_ear = "Regal earring",
right_ear = "Obstinate Sash",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ring = "Metamorph Ring +1",
back = RDMCape.MACC
}
-- Type C-potency from: Int & "Enfeeb Potency" gear
sets.midcast.Enfeebling.intpot = {
main = "Maxentius",
sub = "Ammurapi Shield",
ammo = "Regal Gem",
head = RELIC.Head,
body = "Leth. Sayon +3",
hands = "Leth. Ganth. +3",
legs = "Leth. Fuseau +3",
feet = RELIC.Feet,
neck = "Dls. Torque +1",
waist = "Obstinate Sash",
left_ear = "Malignance earring",
right_ear = "Snotra Earring",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ring = "Metamorph Ring +1",
back = RDMCape.MACC
}
--Type D-potency from: Enfeeb Skill & "Enfeeble Potency" gear
sets.midcast.Enfeebling.skillpot = {
main = "Contemplator +1", --skill +20
sub = "Khonsu",
ammo = "Regal Gem",
head = RELIC.Head, --skill +26
body = "Atrophy Tabard +3", --skill +21
hands = "Leth. Ganth. +3", --skill +29
legs = "Leth. Fuseau +3",
feet = RELIC.Feet, --skill +16
neck = "Incanter's Torque", --skill +10
waist = "Obstinate Sash", --skill +15 (not yet)
left_ear = "Malignance earring",
right_ear = "Snotra Earring",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"}, --skill +8
right_ring = "Kishar Ring", --
back = RDMCape.MACC, --
}
-- Tpe E-potency from: Enfeeb skill, Mnd, & "Enfeeb Potency" gear
sets.midcast.Enfeebling.skillmndpot = {
main = "Maxentius",
sub = "Ammurapi Shield",
ammo = "Regal Gem",
head = RELIC.Head,
body = "Amalric Doublet +1",
hands = "Malignance gloves",
legs = MB_legs,
feet = RELIC.Feet,
neck = "Incanter's Torque",
waist = "Obstinate Sash",
left_ear = "Malignance earring",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ear = "Snotra Earring",
right_ring = "Globidonta Ring",
back = RDMCape.MACC
}
-- Type F-potency from "Enfeebling potency" gear only
sets.midcast.Enfeebling.skillmndpot = {
main = "Maxentius",
sub = "Ammurapi Shield",
ammo = "Regal Gem",
head = RELIC.Head,
body = "Amalric Doublet +1",
hands = "Malignance gloves",
legs = MB_legs,
feet = RELIC.Feet,
neck = "Incanter's Torque",
waist = "Obstinate Sash",
left_ear = "Malignance earring",
right_ear = "Snotra Earring",
left_ring = "Sangoma Ring",
right_ring = "Globidonta Ring",
back = RDMCape.MACC
}
-- Enhancing yourself
sets.midcast.enhancing.duration = {
main = "Pukulatmuj +1",
sub = "Ammurapi Shield",
ammo = "Staunch tathlum +1",
head = "Telchine Cap",
body = RELIC.Body,
hands = AF.Hands,
legs = "Telchine Braconi",
feet = EMPY.Feet,
neck = "Dls. torque +1",
waist = "Embla Sash",
left_ear = "Mimir Earring",
right_ear = "Lethargy Earring +1",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ring = {name="Stikini Ring +1", bag="wardrobe7"},
back = "Ghostfyre cape",
}
-- For Potency spells like Temper and Enspells
sets.midcast.enhancing.potency = set_combine(sets.midcast.enhancing.duration, {
main = "Pukulatmuj +1",
sub = "Ammurapi Shield",
ammo = "Staunch tathlum +1",
head = "Befouled crown",
body = RELIC.Body,
hands = RELIC.Hands,
legs = AF.Legs,
feet = EMPY.Feet,
neck = "Incanter's torque",
waist = "Olympus Sash",
left_ear = "Mimir Earring",
right_ear = "Andoaa Earring",
left_ring = {name="Stikini Ring +1", bag="wardrobe6"},
right_ring = {name="Stikini Ring +1", bag="wardrobe7"},
back = "Ghostfyre Cape",
})
-- This is used when casting under Composure but enhancing someone else other than yourself.
sets.midcast.enhancing.composure = set_combine(sets.midcast.enhancing.duration, {
head = EMPY.Head,
hands = AF.Hands,
legs = EMPY.Legs,
back = "Ghostfyre Cape",
})
-- Phalanx
sets.midcast.phalanx = set_combine(sets.midcast.enhancing.duration, {
main = "Sakpata's sword",
sub = "Ammurapi shield",
--head = Taeon.Head.Phalanx,
--body = Taeon.Body.Phalanx,
--hands = Taeon.Hands.Phalanx,
--legs = Taeon.Legs.Phalanx,
--feet = Taeon.Feet.Phalanx,
})
-- Stoneskin
sets.midcast.stoneskin = set_combine(sets.midcast.enhancing.duration, {
neck = "Stone Gorget",
left_ear = "Earthcry Earring",
hands = "Stone Mufflers",
waist = "Siegel Sash",
legs = "Shedir Seraweels",
})
sets.midcast.refresh = set_combine(sets.midcast.enhancing.duration, {
head = "Amalric Coif +1",
body = AF.Body,
waist = "Gishdubar sash",
legs = EMPY.Legs,
})
sets.midcast.aquaveil = set_combine(sets.midcast.enhancing.duration, {
head = "Amalric Coif +1",
waist = "Emphatikos rope",
legs = "Shedir Seraweels",
})
sets.midcast["Drain"] = set_combine(sets.midcast.nuking, {
main = "Rubicundity",
head = "Pixie Hairpin +1",
neck = "Erra Pendant",
waist = "Fucho-no-obi",
ring1 = "Archon Ring",
ring2 = "Evanescence Ring",
feet = "Merlinic crackows"
})
sets.midcast["Aspir"] = sets.midcast["Drain"]
sets.midcast.cure = {} -- Leave This Empty
-- Cure Potency
sets.midcast.cure.normal = {
main = "Daybreak", --Potency 30; MND 30
sub = "Ammurapi Shield", --MND 13
ammo = "Regal Gem", -- MND 7
head = "Vanya Hood", -- Potency 10, skill 20; MND 27
body = RELIC.Body, -- skill 23, MND 45
hands = "Telchine Gloves", --Potecny 10, MND 33
legs = "Atrophy Tights +3", --Potency 12, Skill 17, MND 39 --
feet = "Medium's sabots", --Potency 11; mnd 28
neck = "Incanter's torque", -- Skill 10
waist = "Gishdubar sash", --Self potency 10
left_ear = "Mendi. Earring", --Potency 5, conserve mp 2
right_ear = "Meili Earring", -- skill 10
left_ring = "Menelaus's ring", --Potency 5, skill 15,
right_ring = "Stikini Ring +1", --skill 8, mnd 8
back = RDMCape.MACC, --MND 30
}
sets.midcast.cure.weather = set_combine(sets.midcast.cure.normal, {
waist="hachirin-no-obi",
})
------------
-- Regen
------------
sets.midcast.regen = set_combine(sets.midcast.enhancing.duration, {
})
------------
-- Aftercast
------------
-- I don't use aftercast sets, as we handle what to equip later depending on conditions using a function.
end
not a bad idea, but doesn't look like that is the case
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-08-30 19:10:44
Found it
I made an alias for augmented hands and changed to follow style in the lua...
I called them Refresh.Hands and it doesn't like that
change them to Refresh_Hands and its fine.
thank you for the helping eyes and ideas.
By drakefs 2023-08-30 19:20:20
Quetzalcoatl.Xilkk said: »I called them Refresh.Hands and it doesn't like that
the reason does not work, is because does not exist before declaring
If you want to make that naming scheme work use Code Refresh = {}
Refresh.Hands={ name="Merlinic Dastanas", augments={'Pet: DEX+9','Pet: STR+8','"Refresh"+2',}}
This is also assuming that is not defined elsewhere in the lua or lib.lua
Asura.Sechs
Serveur: Asura
Game: FFXI
Posts: 10136
By Asura.Sechs 2023-08-31 01:31:35
Gravity is also a spell where potency matters very little. More often than not, landing the spell is more important than landing a high potency Gravity. This is because, regardless of potency, Gravity landing does the job its designed to do. Welllll...
I dunno man.
If we're talking about NMs where you're deploying a kiting strategy then I'd say Gravity potency matters!
I'm not saying that if you're lacking a couple of potency steps such strategies become unviable, but I wouldn't go as far as to say that the additional potency is irrelevant either. It does make a difference imho!
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-08-31 10:48:58
I'm not saying that if you're lacking a couple of potency steps such strategies become unviable, but I wouldn't go as far as to say that the additional potency is irrelevant either. It does make a difference imho!
potency is only affected by saboteur and enfeebling potency+ on some gear....
So what slots is there actually a conflict between MACC and Enfeeblig potency + ?
Vitiation boots +3 only has 46 Macc but also has 16 enfeebling skill, I don't think 2 more macc from Lethargy feet +3 is really comparable..
Nothing competes with Regal Gem or Duelists Torque +2
Only Atrophy body compares w/ Lethargy Body, but its only 3 skill and 3 macc higher on atrophy body WHEN you get the af set bonus with regal earring.
Then there is Aurists's Cape +1 to compete with Sucellos's cape
You can have 30 macc on the Sucellos cape but 43 on the Aurists +1
so,... If my quick comparison is correct, you only gain 16 macc and 3 skill from a pure MACC build vs potency set for Gravity.
I would go for the potency. I don't think that macc/skill difference will be significant.
Does Int Affect Macc in this case? if so you get another 13 Int from the cape also..
Carbuncle.Maletaru
Serveur: Carbuncle
Game: FFXI
Posts: 2685
By Carbuncle.Maletaru 2023-08-31 11:26:59
Ullr is significantly more macc than Regal Gem, FWIW
[+]
By Lili 2023-08-31 16:15:04
Potency VS macc mattered a lot more before empy+3 was a thing, certainly, as did Sabo up or not - nowadays empy gloves are basically bis either way. But that doesn't mean it is not still relevant.
Quetzalcoatl.Xilkk said: »so,... If my quick comparison is correct, you only gain 16 macc and 3 skill from a pure MACC build vs potency set for Gravity.
And that's almost 20% additional chance of landing the spell if you're in the correct macc/meva ranges!
It's easy to underestimate how much +10 macc can do, because for stuff like WSD or MAB it's irrelevant to add 10 when you already have 500. But Magic Hit Rate is a straight subtraction of your target Magic Evasion from your Magic Accuracy, so even 10 points of difference are huge, and can make or break the fight.
https://www.bg-wiki.com/ffxi/Magic_Hit_Rate for reference. The verbiage there can be a bit hard to parse, but basically it means that:
- If the target Meva is 1000, and your Macc is 1000, your landing rate is 50%.
- If you raise your macc to 1010, your landing rate is 60%
- If you reduce your macc to 990, your landing rate is 45%.
- To cap hit rate, you need to raise your macc to just 1045.
Things get a bit more complicated with status-specific or element-specific resists, but the crux of the matter is that really, every +1 can matter in the right ranges.
Carbuncle.Maletaru said: »Ullr is significantly more macc than Regal Gem, FWIW
And I hate it because I have to lose TP everytime I need to sleep something very hard to sleep >_>
Asura.Sechs
Serveur: Asura
Game: FFXI
Posts: 10136
By Asura.Sechs 2023-09-01 08:17:24
Quetzalcoatl.Xilkk said: »So what slots is there actually a conflict between MACC and Enfeeblig potency + ? Since after the release of Empy+3 not many, but I guess the Range/Ammo slot (Ullr vs Regal Gem) and the Body slot (AF+3 vs Empy+3).
In the case of the body slot though it's not pure macc, but I'm accounting Enf Skill as if it were Macc 1:1. It's not exactly like that... but if you consider things that way then AF body is ~26 more macc than Empy. (including the set bonus with Regal Earring, of course)
Personally I don't bother with such a swap and basically always keep Empy body. There's one more aspect someone might be forgetting though.
Empy+3 body won't affect those enfeebling spells that don't have variable potency, right? Right.
So for that category you might be leaning to go for AF body for the ~26 macc increase.
And that's a viable option for sure.
But Empy body can still do something for those spells unaffected by potency, and that's duration through the set bonus when applying debuffs with Composure up (i.e. always? lol)
Serveur: Cerberus
Game: FFXI
Posts: 1809
By Cerberus.Shadowmeld 2023-09-01 08:34:24
Empy+3 body won't affect those enfeebling spells that don't have variable potency, right? Right.
It does actually, in conjunction with the use of Composure and other pieces of Empy gear, it increases the duration of enfeebling magic.
Edit: Guess I should have read to the end of your post... :D
Quetzalcoatl.Xilkk
Serveur: Quetzalcoatl
Game: FFXI
Posts: 1419
By Quetzalcoatl.Xilkk 2023-09-01 10:09:15
n the case of the body slot though it's not pure macc, but I'm accounting Enf Skill as if it were Macc 1:1. It's not exactly like that... but if you consider things that way then AF body is ~26 more macc than Empy. (including the set bonus with Regal Earring, of course)
Actually this is a bit inaccurate. I missed part of it also, so I'll go detail. Regal Earring actually does NOT have macc unless you get the set bonus... I didn't consider malignance or lethargy earrings before.
I think its best to compare head, body and earring in groups. Mainly because the set bonus from atrophy set is largely compensated for with other options.
Empy body, Relic head + Lethargy earring +1 (11~15):
Macc: 112~131 (variation depends on earring augment AND merit points)
Enfeebling Effect: +18
Enfeebling duration: +15s from merits and also set bonus + composure
Enfeebling Skill: 26
AF body& head + Regal earring
Macc: 139
Enfeebling Skill: 21
IF you have a good enough sortie earring, there is no need for the regal earing for this set.
It really then depends on merits. the Macc difference goes down to 8, but its offset a bit by 5 more skill on vitiation headpiece.
macc difference will only be about 3 Macc, but you get enfeebling potency and duration from the relic head + empy body combo.
edit: well actually i didn't consider pairing lethargy + regal in the atrophy set.. so you could squeeze another 5 Macc by omitting snotra earring, and losing another 10% in duration.
By Lili 2023-09-05 11:03:27
I think the only spell where neither potency nor duration matter is Stun. Tho maybe the Composure bonus applies since it also applies to Klimaform? Not sure, probably not.
Asura.Rekcuf
Serveur: Asura
Game: FFXI
Posts: 219
By Asura.Rekcuf 2023-09-05 12:07:21
I just play with manual macros there is no need with gearswap with the new changes because of Empy +3 lol
Necro Bump Detected!
[67 days between previous and next post]
Serveur: Asura
Game: FFXI
Posts: 127
By Asura.Skyekitty 2023-11-11 13:27:16
Sorry for necro post on this.
Trying out RDM and came across this gearswap.
When using this amazing gearswap I get stuttering during fps60 cutscenes using fastcs.
Anyone else have this? Know how to fix it? It kills the usefulness of this amazing gearswap.
By Nsane 2023-11-11 14:35:05
Its the windower.register_event('prerender', function() in the lib its constantly spamming to see if it needs to update functions like MatchSC, mBurst, selectSCElement and MB_Window. I just Block Commented it out and took the lost on those functions since I didn't use them anyways... If you wanna see how much this is spamming type in //gs debugmode
If you don't use the Auto Burst or MatchSC functions you probably wont even notice it being disabled tbh.
[+]
Serveur: Asura
Game: FFXI
Posts: 127
By Asura.Skyekitty 2023-11-11 14:49:53
thank you!
Serveur: Asura
Game: FFXI
Posts: 127
By Asura.Skyekitty 2023-11-17 09:15:31
Just a thought. Could there be a line of code that says, "Do not check prerender functions unless Match SC, etc. is turned to On?"
So you could essentially use those functions but toggle the spam checking off and on?
Thanks!
Serveur: Shiva
Game: FFXI
Posts: 26
By Shiva.Seraphione 2023-11-18 10:10:28
I do not know how to conditionally trigger those registered event. It seems just putting the function inside an if statement will cause that function to stop working altogether.
If that prerender function is causing a problem and you do not want to comment out the entire function block, I think changing the string 'prerender' to 'time change' might solve your problem. This will cause the event to be triggered every Vana'diel minute, roughtly 2.4 earth seconds. However, this will make the calculation of MB window in the function coarser.
[+]
By Sgtsalt 2023-11-18 12:09:00
I just play with manual macros there is no need with gearswap with the new changes because of Empy +3 lol
I'm not really sure how Empy +3 is relevant since it doesn't have any fast cast (and even if it did, it would only work without GS for some enhancing spells). Getting both FC and Midcast sets is 95% of the reason to use Gearswap for any job with spells.
[+]
Cerberus.Natsuhiko
Serveur: Cerberus
Game: FFXI
Posts: 191
By Cerberus.Natsuhiko 2023-11-18 15:09:52
Just a thought. Could there be a line of code that says, "Do not check prerender functions unless Match SC, etc. is turned to On?"
So you could essentially use those functions but toggle the spam checking off and on?
Thanks!
It's probably possible, but would take some rewriting to pull the function out of the event register and use the Match SC toggle to un/register the event as needed. Pseudocode inc.
Instead of: Code
windower.register_event('prerender',mbfunction is here...)
Something like: Code
mbfunction(
doing the checking in here...
)
---elsewhere in the lib file---
if(matchsc) then
id = windower.register_event('prerender',mbfunction)
else
if id then
windower.unregister_event(id)
end
end
I don't use that functionality so I'm not too likely to do it myself, but it'd probably look something like this.
[+]
Serveur: Shiva
Game: FFXI
Posts: 26
By Shiva.Seraphione 2023-11-18 15:29:19
Another possible solution might be using windower.raw_register_event('prerender',mbfunction...)? I am not too sure about this because I never truly understand what it does. This is actually used in just a few lines above the code in question.
The only thing I know is that if we ever register 'incoming chunk' or 'outgoing chunk' events inside a gearswap lua we should always use this (instead of the normal windower.register_event), otherwise we will suffer from tremendous stutter.
Edit: After some testing I think I get it now. Basically Gearswap is designed to allow us to define our own trigger to swap gear, in addition to the standard pre_cast, mid_cast, etc. For that purpose, we could use windower.register_event to put in things like equip(). In case of prerender (or worse, incoming chunk), Gearswap will be constantly called to see what gear we want to change (even if there is nothing). This results in some waste of memory resources and is reflected in the debug spam.
If we use raw_register_event, things like setting variables will still work, but this will not cause Gearswap to think we want to change gear (so if we use equip() in raw register event it will not work). Since that MB function is only used to calculate MB window and set relevant variables, changing it to raw register event will not impact its role, while the debug spam will stop.
Here is a link to a relevant discussion where Byrth suggested the same solution to a similar issue.
Cerberus.Natsuhiko
Serveur: Cerberus
Game: FFXI
Posts: 191
By Cerberus.Natsuhiko 2023-11-18 15:42:51
Another possible solution might be using windower.raw_register_event('prerender',mbfunction...)? I am not too sure about this because I never truly understand what it does. This is actually used in just a few lines above the code in question.
The only thing I know is that if we ever register 'incoming chunk' or 'outgoing chunk' events inside a gearswap lua we should always use this (instead of the normal windower.register_event), otherwise we will suffer from tremendous stutter.
Maybe that's what it should actually be? I can't find anything on raw_register_event except a GitHub issue page with the incoming/outgoing chunk issue and a comment about it not triggering memory intensive update functions. If it's listed in their wiki Google and I aren't seeing it.
Edit: Changed it and tested, it still works without the debug spam.
Edit2: Beaten.
[+]
Serveur: Asura
Game: FFXI
Posts: 127
By Asura.Skyekitty 2023-11-18 16:09:38
Changing it to raw did work! thank you both!
[+]
|
|