Spellcast Delay Commands

Language: JP EN DE FR
New Items
2025-11-14
users online
Forum » FFXI » Jobs » Beast Master » Spellcast delay commands
Spellcast delay commands
 Sylph.Peldin
Offline
Server: Sylph
Game: FFXI
Posts: 837
By Sylph.Peldin 2012-10-20 04:35:54
Link | Quote | Reply
 
I just wrote up a simple BST XML for myself. Everything works correctly except one thing... and it has me worried about everything else with spellcast.

I have a rule for "Call Beast" that goes like this:
Code xml
			<if spell="Call Beast">
				<equip when="precast" set="Call Beast"/>
				<if status="idle">
					<equip when="aftercast" set="BSTIdle"/>
				</if>
				<elseif status="engaged">
					<equip when="aftercast" set="BSTTP"/>
				</elseif>
			</if>


Here is the "Call Beast" set:
Code xml
				<set name = "Call Beast">
					<ammo>D. Herbal Broth</ammo> <!-- CHANGE THIS TO WHATEVER PET YOU WANT TO SUMMON -->
					<hands>Monster Gloves +2</hands>
				</set>


Here's the issue that I ran in to. I would hit my Call Beast macro... which is simply
/ja "Call Beast" Peldin

I expected everything to go fine. It should equip my food, call my pet, then swap back to the appropriate gear. But instead, this is the message I got:
"You do not have the necessary item equipped to call a beast."

So that makes me think, is it sending the "Call Beast" command before it sends the appropriate gear swaps to the server?? If so, it makes me worry, because it may be possible that my other XML's are doing this for other job abilities??
 Diabolos.Yugl
Offline
Server: Diabolos
Game: FFXI
user: Yugl
Posts: 138
By Diabolos.Yugl 2012-10-20 05:06:39
Link | Quote | Reply
 
Actions that require an item equipped for performance (ex: Angon, Impact, BRD Relic Songs, etc.) need a delay before performing the action because the game doesn't register them. You are correct though that sometimes precast won't let the game recognize the item equipped before the action happens.

In short:
- Items that enable you to take the action (ex: Angon): Use 1 delay
- Items that just need to be equipped before the action (ex: Warcry): Use 0.3 delay
- Fast Cast gear spells could use a 0.2 delay for relevant spells

The command is:
<castdelay delay="NumberHere" />

So for Call Beast:
<castdelay delay="1" />

You can also use variables so you don't need to remember each one.

<var name="Required-Delay">1</var>
<var name="Ability-Delay">0.3</var>
<var name="Magic-Delay">0.2</var>

<castdelay delay="$Required-Delay" /> is the same as <castdelay delay="1" />
 Sylph.Peldin
Offline
Server: Sylph
Game: FFXI
Posts: 837
By Sylph.Peldin 2012-10-20 05:14:56
Link | Quote | Reply
 
Ah thanks a bunch.
So I assume <castdelay delay="1"/> should go above any <equip> or <if> arguments, like this:
Code xml
			<if spell="Call Beast">
				<castdelay delay="1"/>
				<equip when="precast" set="Call Beast"/>
				<if status="idle">
					<equip when="aftercast" set="BSTIdle"/>
				</if>
				<elseif status="engaged">
					<equip when="aftercast" set="BSTTP"/>
				</elseif>
			</if>



But doesn't spellcast already have a 0.3 delay for the other two situations you're referring to (items that need to be equipped before the action... and fast cast gear spells)?

If not, I guess I need to add a <castdelay delay="X"/> line to every JA and Spell for all my XMLs?

*edit* Side note, but why do people put a space between " and /> in their code? Just to make it look cleaner?
 
Offline
Posts:
By 2012-10-20 06:06:10
 Undelete | Edit  | Link | Quote | Reply
 
Post deleted by User.
 Diabolos.Yugl
Offline
Server: Diabolos
Game: FFXI
user: Yugl
Posts: 138
By Diabolos.Yugl 2012-10-20 06:15:27
Link | Quote | Reply
 
The placement is correct.

Inherent delay I don't know, but I do recall WS tests not equipping fast enough. I also did fast cast tests during the Abyssea area at dolls as a strain test. I'll test again using Aht Urghan or during Besieged before making my new XML though.

You probably want to add the delay to all precast JAs because there's no way to capture a broader set of JAs. However, for spells, you can specify a set of spells if needed. For instance:

<if CastTimeGT="2" Type="WhiteMagic|BlackMagic">

You can tweak the type, but you get that to work for a good majority of spells.
 Sylph.Peldin
Offline
Server: Sylph
Game: FFXI
Posts: 837
By Sylph.Peldin 2012-10-20 06:37:05
Link | Quote | Reply
 
Alright. Thanks a bunch Yugl
Log in to post.