Requirements:
Code:
/////////////////////////// // *Auto Enhancer 1.2 * *// // By: Aethius (Kujata) *// // [email][Only registered and activated users can see links. Click Here To Register...][/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