Everquest 1 Bard Macro Fun Thread - Ask for Help (2024)

Hello all, I'm relatively new to the community but very excited about this great program that I've found and doing my best to learn it with very little background to writing languages of these type. I'm essentially trying to make 2 macros to assist me in playing the Bard class on an emulated Everquest PVP server.

There are two scripts that I want to make. One, that auto-twists my songs (spells). As a bard in classic EQ, you sing a song for 3 seconds, which gives you a buff dependent on the song sung for 15 seconds. Thus, with 3 second cast delays you can usually twist 5 songs at a time if you're good. There is a /melody command in EQ which twists your songs for you, but if you "miss a note" (fizzle a spell) then your /melody is interrupted. This can be troublesome if you NEED to cast a spell at least once every 15 seconds like snare (for kiting) or charm (for swarm kiting).

They key strokes involved in this macro are as such:
Alt + {1-8} will cast one of the 8 spells you can have memorized. As a bard, when you sing a song it will loop continuously until you disable it, so to cast another song you need to press Ctrl+ {Any number} to turn it off, then Ctrl + {1-8} to start another song. The resulting sequence for 5 songs goes something like

Ctrl+1 > 3 seconds > Ctrl+4 > Ctrl+4 > 3 seconds > Ctrl+6 > Ctrl+6 > 3 sec > Ctrl+8 > Ctrl+8 > 3 sec > Ctrl+1 > return

I've attempted to design a macro which will toggle on/off this key sequence with F1 for now. I've had a lot of help from the guys in the Live Chat, and I cannot thank them enough for helping me hit the ground running with this stuff.

The closest I've gotten to working is the following. F1 successfully turns it on and off, and it appears to work at first, but for some reason it will only work for the first two songs, but quit once it gets to it's 4th send it seems (send !6). After that it seems as if the script breaks completely and doesn't do anything until I toggle it off then on again.

toggle = 0#MaxThreadsPerHotkey 2F1::Toggle := !ToggleWhile Toggle{send !1if (!Getkeystate("F1", "P"))breaksleep, 3500send !4sleep, 250send !4if (!Getkeystate("F1", "P"))breaksleep, 3500send !6sleep, 250send !6if (!Getkeystate("F1", "P"))breaksleep, 3500send !8sleep, 250send !8if (!Getkeystate("F1", "P"))breaksleep, 3500send !1sleep, 250}return

Someone else wrote this script for me since he wasn't too fond of the While command. The script is also somewhat functional but has 2 notable problems. One, F1 does not toggle it on / off, and two the delay doesn't seem to be activating as when I run the script in notepad, I get like a 10ms delay between the numbers.

Toggle := 0KeyList := "1,8,8,4,4,6,6,1" ; Defines what key to sendWaitList := "3500, 250, 3500, 250, 3500, 250, 3500, 250" ; Defines how long to wait forF1::Toggle := ((Toggle=1) ? 0 : 1)If (Toggle = 0)returnWhile Toggle{Loop, Parse, KeyList, `, ; Does the loop once per key (1, 8, 8 etc.){If (Toggle = 0)breakSend %A_LoopField% ; Sends the keyindex := A_IndexLoop, Parse, WaitList{If (A_Index = Index) ; If the Sleep time corresponds with the key to sendSleepTime := A_LoopField}Sleep %SleepTime%}}return

The second script that I want to write concerns mouse clicks instead of key strokes. In order to change your weapons in Everquest, one must left click the weapon you wield which places it on your cursor, then place it in your bag (can be done atop another item to switch) with a left click, then left click on your empty equipment slot to place the new weapon in your hand. Basically this boils down to three clicks. Swapping weapons is vital to a bard, because in order to play some songs, you MUST have a stringed instrument equipped, whereas with others you must have a horn out. If you want to twist these, there is a lot of weapon switching and micromanagement to do.

I'm no where near advanced enough to write a code that will automatically switch my weapon based upon which song I sing, though I do understand that the possibilities of this program are boundless. My best bet was to write 5 different codes, each of which correspond to a slot in my inventory to switch, and I can manually choose which button to press by observing which instrument is in the slot I want. I am still experimenting, but the code that I have is working for moving the mouse to the correct location, but is NOT registering a left click, and thus not picking up or switching my weapons. I have no idea what to do about this, and someone in chat suggested that Everquest may have some sort of blocker for third party programs built in, preventing me from using it to submit mouse clicks. Any ideas about this? Here's the code I wrote for this.

NumpadEnd::SetMouseDelay, 700MouseClick, left, 1517, 586sleep 100MouseClick, left, 1555, 420sleep 100MouseClick, left, 1517, 586

Anyway, I'm very excited to be playing around with this, and while I'm enthralled, I'm also very lost and would love all the help that I can get with this. I'm using AHK version 1.1.0.0. Thank you very much for reading and I hope to hear some of your thoughts on this soon!

Everquest 1 Bard Macro Fun Thread - Ask for Help (2024)

References

Top Articles
Latest Posts
Article information

Author: Cheryll Lueilwitz

Last Updated:

Views: 6546

Rating: 4.3 / 5 (74 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Cheryll Lueilwitz

Birthday: 1997-12-23

Address: 4653 O'Kon Hill, Lake Juanstad, AR 65469

Phone: +494124489301

Job: Marketing Representative

Hobby: Reading, Ice skating, Foraging, BASE jumping, Hiking, Skateboarding, Kayaking

Introduction: My name is Cheryll Lueilwitz, I am a sparkling, clean, super, lucky, joyous, outstanding, lucky person who loves writing and wants to share my knowledge and understanding with you.