Blood Mage Macros: Difference between revisions

From CLUMP
Jump to navigationJump to search
Line 70: Line 70:


== Misc Osha Macros (windows) ==
== Misc Osha Macros (windows) ==
: These tend to be more code heavy macros that have multiple checks so that the macro is relatively certain what is going on.  This can cause issues though between windows and Mac, any "/use ~" or "/pose ~" action in Windows includes a built in "pause 1" after it.  I attempted to mark these locations in the macros so any Mac user can hopefully fix it.
: These tend to be more code heavy macros that have multiple checks so that the macro is relatively certain what is going on.  This can cause issues though between Windows and Mac.  These macros are thoroughly tested in Windows only.  Hypothetically they will work in Mac if after any "/use ~" or "/pose ~" there is an added "pause 1" (Windows client automatically causes a pause 1 after any of those commands).  I attempted to mark these locations in the macros so any Mac user can hopefully fix it.


Control Mode
Control Mode

Revision as of 16:01, 19 October 2024

Manjushri Blood Mage Macros

Macro Contributed by Shaky originally from Zelkhorn

f1 "/use /hamstring \r"
f2 "/use /disable \r"
f3 "/use /hemo \r"
f5 "/use /inferno \r"
f4 
{
   if @my.right_item != "bloodblade"
   "/equip bloodblade" "\r"
   end if

   "/use /hemo" "\r"
   "/use /hamstring" "\r"
}
f6 
{
   if @my.right_item != "bloodblade"
   "/equip bloodblade" "\r"
   end if

   "/use /hemo" "\r"
   "/use /hamstring" "\r"
  "/use /disable" "\r"
}
f8 "/useitem bloodstone /set \r"
f9 "/useitem bloodstone /clear \r"
f10 "/useitem bloodblade /reflect \r"
f11 "/use /control \r"
f12 "/use /absorb \r"
f13 "/use /absorb /report \r"
 
//    Shieldstone 
shield
{
if @my.finger_item == "Shieldstone"
 "/equip bloodstonering\r"
else
 "/equip shieldstone\r"
 "/useitem finger\r"
end if
}

Tab call shield
shift-tab "/useitem shieldstone /cancel\r"

Silphene’s Bloodstone Ring Macros

"/bbs"
{
if @my.finger_item != "Bloodstone Ring"
    "/equip Bloodstone Ring\r"
end if
"/usei bloodstone /set\r"
}

"/bba"
{
if @my.finger_item != "Bloodstone Ring"
    "/equip Bloodstone Ring\r"
end if
}

"/bbr"
{
if @my.finger_item == "Bloodstone Ring"
    "/unequip Bloodstone Ring\r"
end if
}

Misc Osha Macros (windows)

These tend to be more code heavy macros that have multiple checks so that the macro is relatively certain what is going on. This can cause issues though between Windows and Mac. These macros are thoroughly tested in Windows only. Hypothetically they will work in Mac if after any "/use ~" or "/pose ~" there is an added "pause 1" (Windows client automatically causes a pause 1 after any of those commands). I attempted to mark these locations in the macros so any Mac user can hopefully fix it.

Control Mode

Toggling control mode while swinging (or possibly feigned) will throw off any tracking of control mode. These checks fix 99% of that. It allows big bold declarations (easy to catch while in combat) of which mode you just toggled into.

shift-tab call bloodbladeControl_Toggle

bloodbladeControl_Toggle
{
	"/use /control \r"
	//pause 1 //uncomment if mac
	set loglineBleed @env.TextLog
	if loglineBleed >= "• You channel your"
		setglobal bleedToggled 1
		call OnBleedToggleMessages
	else if loglineBleed >= "• Your blade feeds"
		setglobal bleedToggled 0
		call OnBleedUntoggleMessages
	else if loglineBleed >= "To use an item equipped"
		//no bloodblade equipped
		message ""
	else
		//mystery because unfortunately timed logline interfering.
		setglobal bleedToggled 0
	end if
}
OnBleedToggleMessages
{
	//however apparent you want it to be in the log that you just toggled control.  Handy if you routinely forget which mode you are in (like I do)
	message "+++bleed ON+++"
	message "+++bleed ON+++"
	message "+++bleed ON+++"
}
OnBleedUntoggleMessages
{
	//however apparent you want it to be in the log that you just untoggled control.  Handy if you routinely forget which mode you are in (like I do)
	message ""
	message "---bleed OFF---"
	message "---bleed OFF---"
	message "---bleed OFF---"
	message ""
}

2 Button Feign

Guaranteed no macro mishaps and this can unfeign faster after feigning (for a quick flop-unflop). One hotkey causes the mage to feign, one causes it to end.

Can change to any hotkeys, but this is currently using click4 and click5. These are the 2 buttons on the left side of a mouse (in most cases).

'$any_click' is important if a 'click' is the hotkey and you don't want it to only happen when clicking on an exile.

setglobal magicWord "Nacreus" //or whatever your bloodmage's magic word is
click4 
{
	$any_click
	call feignDeath_On
}
click5 
{
	$any_click
	call feignDeath_Off
}

feignDeath_On
{
 	"/useitem bloodstone /dead\r"
}
feignDeath_Off
{
 	call unFeignStyle
}

unFeignStyle
{
	//can either get up with the magic word, or through unequipping and reequipping the ring.
	
	//"/whisper " magicWord "\r"
	
	"/unequip bloodstone\r"
	//pause 1 //uncomment if mac
	"/equip bloodstone\r"
}

1 Button Feign

can sometimes be thrown off but multiple checks mitigate the vast majority of it. The macro will have "You wish." show up in the message log after feigning. This means nothing, just an unfortunate side effect of the macro being sure.

In the rare situation it does get thrown off (thinking you are feigned when not actually feigned or vice versa) it will take 2 presses for the macro to work.

Can change the macro to any hotkey, but it is currently using click4. This one of the 2 buttons on the left side of a mouse (in most cases).

'$any_click' is important if a 'click' is the hotkey and you don't want it to only happen when clicking on an exile.

setglobal magicWord "Nacreus" //or whatever your bloodmage's magic word is

click4 
{
	$any_click
	call feignDeath_Toggle
}

setglobal isFeigned 0
feignDeath_Toggle
{
			// isFeigned: 
			//(0) = not feigned. 
			//(1) = am feigned.  
			//(2) = in the process of feigning.
	if isFeigned == 0
			//FEIGNING DEAD
		//attempting to feign twice, this makes you feign even if you used it in the middle or end of attacking.
		setglobal isFeigned 2
		"/useitem bloodstone /dead\r"
		//pause 1 //uncomment if mac
		pause 1
		"/useitem bloodstone /dead\r"
		//pause 1 //uncomment if mac
		pause 1
		setglobal isFeigned 1
		
		// double checking if feigned or not (if things get off, this resets it)
		pause 1
		"/pose stand\r"
		//pause 1 //uncomment if mac
		if @env.TextLog >= "You wish."
			message ""
		else
			message "not actually feigned"
			setglobal isFeigned 0
		end if
	else if isFeigned == 1
		//STANDING BACK UP
		call unFeignStyle
		setglobal isFeigned 0
	else
		//SOMETHING WEIRD
	end if
}

unFeignStyle
{
	//can either get up with the magic word, or through unequipping and reequipping the ring.
	
	"/whisper " magicWord "\r"
	
	//"/unequip bloodstone\r"
	//pause 1 //uncomment if mac
	//"/equip bloodstone\r"
}

quick commands for changing ring values

"/5" "/useitem bloodstone /set 5%\r"
"/10" "/useitem bloodstone /set 10%\r"
"/15" "/useitem bloodstone /set 15%\r"
"/20" "/useitem bloodstone /set 20%\r"
"/25" "/useitem bloodstone /set 25%\r"
"/30" "/useitem bloodstone /set 30%\r"
"/35" "/useitem bloodstone /set 35%\r"
"/40" "/useitem bloodstone /set 40%\r"

Checking and equipping bloodblade

Can be thrown at the start of any macro where you personally find it helpful to automatically equip the bloodblade if it is not equipped.

CheckBlade
{
	if @my.right_item != "bloodblade"
		"/equip bloodblade" "\r"
	end if
}

Like...

f1 
{
	"/use /hamstring \r"
}
f1
{
	call CheckBlade
	"/use /hamstring \r"
}