Code:
/////////////////////////// // *Auto Enhancer 1.2 * *// // By: Aethius (Kujata) *// // [email][/email] // /////////////////////////// // Release Notes // 1.0 *- Original Release. // 1.1 - Fixed jeuno facing direction problem, thanks to Sniper. // * *- Removed all references to the word BOT (GM Friendly). // 1.2 - Fixed jeuno problem for good! // * - Simplified many procedures. // * - Tested for over 12 hours with no problems // * - Made universal (can use any spell you want). // * - Made use of in game macros rather than typing the commands (prevents GM dections, runs smoother). // * - Does not use the /echo command. // * - Made use of global hotkeys to start and stop macro. // This script allows you to stand outside your mog house and continuosly cast any spell on yourself // to raise your magic skill to cap. *The script will calculate how much MP you have left // based on user input below and make your char enter your MH to revive MP to full then exit your // MH and continue casting. // ********************** BEFORE YOU BEGIN (VERY IMPORTANT!!!!!) ************************ // Go into config and set your font color for /tell to True Red. // Turn red hue up all the way and blue and green down all the way. // // Then be sure to set your keyboard type to "compact" under config->misc2 // This macro uses the default key bindings that comes with the came. // if you changed them, you'll have to change the constants in this script // or change the keybindings back to default in the game. // IMPORTANT NOTICE 5/12/04: // This macro does not time your login, IE: you have 80 seconds before it starts. // instead I encourage the use of the start/stop hotkeys that you can assign with this program // see instructions below. //***************** INSTRUCTIONS ******************** // 1. Be sure to read ALL the above information! // 2. Run ACTool and load this macro. DO NOT CLICK START // 3. Go to the menubar and click Editor->Preferences, then click "Global HotKeys". // 4. Set start/pause/resume to F12 and Stop Macro to F11 (These keys are RARELY used in FFXI) // *NOTE: You set the hotkeys by clicking in the box and pressing the key you want to use. // *The program will enter in the ASCII value of the keys, you should see // *123 for F12 and 122 for F11. // 5. Log into your character and enter macros config // 6. Setup a new macro set for this macro: // *ALT-1: /ma "Protect" <me> or whatever spell you want to cast (IE: Cure). // *ALT-2: /targetnpc without this the script will not exit your MH. // 7. Go to config->misc2 and set your keyboard mode to "compact". // 8. Make sure your key bindings are setup as stated in Before you Begin above. // 9. Exit your Mog House and face the direct oposite direction of the entrance. // *you want to be facing in a manner so that when the macro holds down the // *backwards movement key you will rezone to your MH. // 10. Press F12 on your keyboard, the macro will type some stuff then it will // *send you a message in /party mode saying "Initialization Complete". // 11. Type: /tell <me> START to begin the operation. // 12. Come back in a few hours or when you wake up and press F11 to stop the macro. // *your magic skill should be capped to maximum. CONSTANTS * *// Key Assignments (You probably wont have to change these unless you changed your key bindings) *move_forw = w // Key to move character foward *move_back = s // Key to move character backward *move_left = a // Key to move character left *move_right = d // Key to move character right *menu_up = i // key to move menu cursor up *menu_down = k // key to move menu cursor down *menu_left = j // key to move menu cursor left *menu_right = l // key to move menu cursor right *cancel_key = n *chview_key = v // Key to change views * *// Player Config YOU MUST SET THESE!!!!!!!!!!!!!!!!!! *max_mp = 100 // IMPORTANT: Enter you MAX mp here (how much you have when fully healed). *back_ally = 0 // IMPORTANT: Do you have back ally access in your current MH? 1= yes 0= no *is_jeuno = 0 // IMPORTANT: Are you running this at a Jeuno MH? 1= yes 0= no *mp_usage = 9 // How much MP does the enhancing spell consume? *spell_macro = @1 // Which (in-game) macro do you want to use for casting?* *target_macro = @2 // Which (in-game) macro contains the command /targetnpc?* *cast_delay = 7000 // Wait 7 seconds and cast again (You'll have to change this if you change above directive) * *// *NOTE: @=ALT ^=CTR * */////////////////////Resolution Constants/////////////////////////////////////////// *// (Uncomment the Res you want to use and comment the rest) *//////////////////////////////////////////////////////////////////////////////////// *//////////////////////////1280 x 1024/////////////////////////////////////////////// *//chatx1 = 20 // 1280x1024 first character of chat bar *//chaty1 = 989 // 1280x1024 first line in chat bar * *//////////////////////////////////////////////////////////////////////////////////// *//////////////////////////1024 x 768//////////////////////////////////////////////// *chatx1 = 20 // 1024 x 768 first character of chat bar *chaty1 = 733 // 1024 x 768 first line in chat bar * *//////////////////////////////////////////////////////////////////////////////////// *//////////////////////////800 x 600///////////////////////////////////////////////// *//chatx1 = 20 // 800 x 600 first character of chat bar *//chaty1 = 565 // 800 x 600 first line in chat bar * *// You may have to change this if your computer is slow or the server is overloaded. *zone_time = 15000 // 10 secs to reload zone (better to have to high than too low) * *//*************** NO NOT EDIT BELOW THIS LINE ******************* *ver = 1.2 *idle = 1 *chatxmax = 200 *chatxtemp = 0 *chatdelay = 0 *current_mp = 0 * END //delay 80000 // wait for player to login (Default: 80secs) setconst $Chatxtemp = $Chatx1 setconst $current_mp = $max_mp ObjVar 4 // Initialize bot keys /hide delay 400 keys {return} delay 400 keys /cm party delay 400 keys {return} delay 400 keys /p Auto Enhancer $ver Initialization Complete. delay 400 keys {return} delay 400 //************** MAIN FUNCTION *************** while 1=1 // Loop this script until we tell it to stop *if $idle = 1 * *call idle_check *else * *call main_loop *END *delay 350 END //*************** PROCEDURES ***************** procedure idle_check *setconst $chatxtemp = 50 *While $chatxtemp <= $chatxmax * *call start_check * *compute $chatxtemp = $chatxtemp + 1 * *If $chatdelay = 1 * * *delay 1 * * *setconst $chatdelay = 2 * *Else * * *setconst $chatdelay = 1 * *End *end end Procedure start_check *IsObject start_text at $chatxtemp, $chaty1 * *setconst $idle = 0 * *keys /p Starting Procedures... * *delay 400 * *keys {return} * *delay 400 *END End procedure main_loop *if $current_mp < $mp_usage * *call fix_mp *else * *compute $current_mp = $current_mp - $mp_usage * *keydown $spell_macro 100 * *delay $cast_delay *end end procedure fix_mp *keydown $move_back 3000 *delay $zone_time *if $is_jeuno = 0 * *keydown $move_forw 1000 * *delay 200 * *keydown $cancel_key 100 * *delay 200 *else * *keydown $move_back 100 * *delay 200 * *keydown $chview_key 100 * *delay 1000 * *keydown $chview_key 100 * *delay 400 *end *keydown $target_macro 100 *delay 400 *keydown {return} *delay 400 *if $back_ally = 1 * *keydown $menu_down 100 * *delay 200 * *keys {return} *else * *keydown $menu_left 100 * *delay 200 * *keys {return} *end *delay $zone_time *setconst $current_mp = $max_mp end //**************** OBJECTS ****************** Object start_text *255=2,2|255=4,2|255=6,2|255=10,2|255=12,2|255=14,2|255=16,2|255=24,2|255=32,2|255=34,2|255=36,2|255=42,2|255=44,2|255=46,2|255=48,2| *255=6,4|255=24,4|255=32,4|255=38,4| *255=2,6|255=4,6|255=22,6|255=26,6|255=32,6|255=36,6| *255=6,8|255=22,8|255=26,8|255=32,8|255=36,8| *255=2,10|255=6,10|255=26,10|255=32,10|255=36,10| *255=2,12|255=4,12|255=20,12|255=28,12|255=32,12|255=38,12| End Object //EOF





[/email] //
///////////////////////////
// Release Notes
// 1.0 *- Original Release.
// 1.1 - Fixed jeuno facing direction problem, thanks to Sniper.
// * *- Removed all references to the word BOT (GM Friendly).
// 1.2 - Fixed jeuno problem for good!
// * - Simplified many procedures.
// * - Tested for over 12 hours with no problems
// * - Made universal (can use any spell you want).
// * - Made use of in game macros rather than typing the commands (prevents GM dections, runs smoother).
// * - Does not use the /echo command.
// * - Made use of global hotkeys to start and stop macro.
// This script allows you to stand outside your mog house and continuosly cast any spell on yourself
// to raise your magic skill to cap. *The script will calculate how much MP you have left
// based on user input below and make your char enter your MH to revive MP to full then exit your
// MH and continue casting.
// ********************** BEFORE YOU BEGIN (VERY IMPORTANT!!!!!) ************************
// Go into config and set your font color for /tell to True Red.
// Turn red hue up all the way and blue and green down all the way.
//
// Then be sure to set your keyboard type to "compact" under config->misc2
// This macro uses the default key bindings that comes with the came.
// if you changed them, you'll have to change the constants in this script
// or change the keybindings back to default in the game.
// IMPORTANT NOTICE 5/12/04:
// This macro does not time your login, IE: you have 80 seconds before it starts.
// instead I encourage the use of the start/stop hotkeys that you can assign with this program
// see instructions below.
//***************** INSTRUCTIONS ********************
// 1. Be sure to read ALL the above information!
// 2. Run ACTool and load this macro. DO NOT CLICK START
// 3. Go to the menubar and click Editor->Preferences, then click "Global HotKeys".
// 4. Set start/pause/resume to F12 and Stop Macro to F11 (These keys are RARELY used in FFXI)
// *NOTE: You set the hotkeys by clicking in the box and pressing the key you want to use.
// *The program will enter in the ASCII value of the keys, you should see
// *123 for F12 and 122 for F11.
// 5. Log into your character and enter macros config
// 6. Setup a new macro set for this macro:
// *ALT-1: /ma "Protect" <me> or whatever spell you want to cast (IE: Cure).
// *ALT-2: /targetnpc without this the script will not exit your MH.
// 7. Go to config->misc2 and set your keyboard mode to "compact".
// 8. Make sure your key bindings are setup as stated in Before you Begin above.
// 9. Exit your Mog House and face the direct oposite direction of the entrance.
// *you want to be facing in a manner so that when the macro holds down the
// *backwards movement key you will rezone to your MH.
// 10. Press F12 on your keyboard, the macro will type some stuff then it will
// *send you a message in /party mode saying "Initialization Complete".
// 11. Type: /tell <me> START to begin the operation.
// 12. Come back in a few hours or when you wake up and press F11 to stop the macro.
// *your magic skill should be capped to maximum.
CONSTANTS
*
*// Key Assignments (You probably wont have to change these unless you changed your key bindings)
*move_forw = w // Key to move character foward
*move_back = s // Key to move character backward
*move_left = a // Key to move character left
*move_right = d // Key to move character right
*menu_up = i // key to move menu cursor up
*menu_down = k // key to move menu cursor down
*menu_left = j // key to move menu cursor left
*menu_right = l // key to move menu cursor right
*cancel_key = n
*chview_key = v // Key to change views
*
*// Player Config YOU MUST SET THESE!!!!!!!!!!!!!!!!!!
*max_mp = 100 // IMPORTANT: Enter you MAX mp here (how much you have when fully healed).
*back_ally = 0 // IMPORTANT: Do you have back ally access in your current MH? 1= yes 0= no
*is_jeuno = 0 // IMPORTANT: Are you running this at a Jeuno MH? 1= yes 0= no
*mp_usage = 9 // How much MP does the enhancing spell consume?
*spell_macro = @1 // Which (in-game) macro do you want to use for casting?*
*target_macro = @2 // Which (in-game) macro contains the command /targetnpc?*
*cast_delay = 7000 // Wait 7 seconds and cast again (You'll have to change this if you change above directive)
*
*// *NOTE: @=ALT ^=CTR
*
*/////////////////////Resolution Constants///////////////////////////////////////////
*// (Uncomment the Res you want to use and comment the rest)
*////////////////////////////////////////////////////////////////////////////////////
*//////////////////////////1280 x 1024///////////////////////////////////////////////
*//chatx1 = 20 // 1280x1024 first character of chat bar
*//chaty1 = 989 // 1280x1024 first line in chat bar
*
*////////////////////////////////////////////////////////////////////////////////////
*//////////////////////////1024 x 768////////////////////////////////////////////////
*chatx1 = 20 // 1024 x 768 first character of chat bar
*chaty1 = 733 // 1024 x 768 first line in chat bar
*
*////////////////////////////////////////////////////////////////////////////////////
*//////////////////////////800 x 600/////////////////////////////////////////////////
*//chatx1 = 20 // 800 x 600 first character of chat bar
*//chaty1 = 565 // 800 x 600 first line in chat bar
*
*// You may have to change this if your computer is slow or the server is overloaded.
*zone_time = 15000 // 10 secs to reload zone (better to have to high than too low)
*
*//*************** NO NOT EDIT BELOW THIS LINE *******************
*ver = 1.2
*idle = 1
*chatxmax = 200
*chatxtemp = 0
*chatdelay = 0
*current_mp = 0
*
END
//delay 80000 // wait for player to login (Default: 80secs)
setconst $Chatxtemp = $Chatx1
setconst $current_mp = $max_mp
ObjVar 4
// Initialize bot
keys /hide
delay 400
keys {return}
delay 400
keys /cm party
delay 400
keys {return}
delay 400
keys /p Auto Enhancer $ver Initialization Complete.
delay 400
keys {return}
delay 400
//************** MAIN FUNCTION ***************
while 1=1 // Loop this script until we tell it to stop
*if $idle = 1
* *call idle_check
*else
* *call main_loop
*END
*delay 350
END
//*************** PROCEDURES *****************
procedure idle_check
*setconst $chatxtemp = 50
*While $chatxtemp <= $chatxmax
* *call start_check
* *compute $chatxtemp = $chatxtemp + 1
* *If $chatdelay = 1
* * *delay 1
* * *setconst $chatdelay = 2
* *Else
* * *setconst $chatdelay = 1
* *End
*end
end
Procedure start_check
*IsObject start_text at $chatxtemp, $chaty1
* *setconst $idle = 0
* *keys /p Starting Procedures...
* *delay 400
* *keys {return}
* *delay 400
*END
End
procedure main_loop
*if $current_mp < $mp_usage
* *call fix_mp
*else
* *compute $current_mp = $current_mp - $mp_usage
* *keydown $spell_macro 100
* *delay $cast_delay
*end
end
procedure fix_mp
*keydown $move_back 3000
*delay $zone_time
*if $is_jeuno = 0
* *keydown $move_forw 1000
* *delay 200
* *keydown $cancel_key 100
* *delay 200
*else
* *keydown $move_back 100
* *delay 200
* *keydown $chview_key 100
* *delay 1000
* *keydown $chview_key 100
* *delay 400
*end
*keydown $target_macro 100
*delay 400
*keydown {return}
*delay 400
*if $back_ally = 1
* *keydown $menu_down 100
* *delay 200
* *keys {return}
*else
* *keydown $menu_left 100
* *delay 200
* *keys {return}
*end
*delay $zone_time
*setconst $current_mp = $max_mp
end
//**************** OBJECTS ******************
Object start_text
*255=2,2|255=4,2|255=6,2|255=10,2|255=12,2|255=14,2|255=16,2|255=24,2|255=32,2|255=34,2|255=36,2|255=42,2|255=44,2|255=46,2|255=48,2|
*255=6,4|255=24,4|255=32,4|255=38,4|
*255=2,6|255=4,6|255=22,6|255=26,6|255=32,6|255=36,6|
*255=6,8|255=22,8|255=26,8|255=32,8|255=36,8|
*255=2,10|255=6,10|255=26,10|255=32,10|255=36,10|
*255=2,12|255=4,12|255=20,12|255=28,12|255=32,12|255=38,12|
End Object
//EOF
