• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Macro - Quest journal information (BigDorf 1st macro)

Joined
Jun 7, 2020
RedCents
1,814¢
Hello

tl;dr
If you arent interested in macro development, then there isnt much more to read here.
This is me pushing some code I have written today, to the forum to share for others interested in making macros to use n abuse.


Background
Ok, slight misdirect, its not "the first" but it is the first that is going public onto forums as I learn the codes!
( and there was no way, a public push of " /echo hello world! " was going to make it! ).

This isnt going to solve the world problems, but it is intended to poke around the quest journal, to see what quests a character has and the status of the quests.
Idea being, breadcrumbs, some proof of concept code that may help in other macros that look to do quest related activities.

In that this is not for people to download and run, but is for developers like me, starting out and getting a feel for things.



Details

The main sub, is just the driver of the test cases with some output. A number of sub procs / sub funcs / sub methods, do some more interesting bits.
  • OpenQuestJournal - open the journal window
  • CloseQuestJournal - close the journal window
  • OutputNamesOfAllQuests - simply echo out info to mq2 window, the titles of quests
  • IsQuestInJournal(string name) - return boolean, true yes, false no
  • GetQuestIndex(string name) - return int, quest index +ve, -ve not there.
  • OutputQuestObjectives - simply echo out info to mq2 window, the quest ojbjective and its status.
I found that to navigate around and find information out, the quest journal window does not require to be open!
Although, later i also found it does require to have been opened during the session at some point.

If call those two Open and Close back to back, I dont see it appear on screen but is enough MQ2 to have an understanding nad populated the quest structures.

In the test cases, i make obvious booboo and then looking for good.
/call IsQuestInJournal "BigDorfs Amazing Adventures"
/call IsQuestInJournal "Beginner Brewer Test"

/call GetQuestIndex "BigDorfs Amazing Adventures"
/call GetQuestIndex "Beginner Brewer Test"


For me they returned respective; FALSE, TRUE; -1, 2.

Blindly, i change the quest focus, by selecting the result from the GetQuestIndex.
/echo set focus on the required quest in the journal
/notify TaskWnd Task_TaskList listselect ${QuestIndex} leftmouseup


Lastly, a call to OutputQuestObjectives iterates over the objectives for that quest and outputs them.
/echo output some details of quest objectives
/call OutputQuestObjectives



A quick grab of the output for the brewers quest ( searched for using the name, and then the returned index of "2" to set focus) :-

set focus on the required quest in the journal
output some details of quest objectives
Quest journal has 20 objectives entries for this task
objective line 1 name is:= Create 1 Malted Milk using tradeskills status is:= Done
objective line 2 name is:= Create 1 Flask of Sylvan Berry Juice using tradeskills status is:= 0/1
objective line 3 name is:= Create 1 Bottle of Kalish using tradeskills status is:= 0/1
objective line 4 name is:= Create 2 Short Beer using tradeskills status is:= 0/2
objective line 5 name is:= Create 1 Fizzle Pop using tradeskills status is:= 0/1
objective line 6 name is:= Create 2 Mead using tradeskills status is:= Done
objective line 7 name is:= Create 1 Honey Mead using tradeskills status is:= 0/1
objective line 8 name is:= Create 2 Heady Paeala using tradeskills status is:= Done
objective line 9 name is:= Create 2 Short Ale using tradeskills status is:= Done
objective line 10 name is:= Create 2 Lemonade using tradeskills status is:= 0/2
objective line 11 name is:= Deliver 1 Malted Milk to Judge Marion Teld`mare status is:= Done
objective line 12 name is:= ? ? ? status is:=
objective line 13 name is:= ? ? ? status is:=
objective line 14 name is:= ? ? ? status is:=
objective line 15 name is:= ? ? ? status is:=
objective line 16 name is:= Deliver 2 Mead to Judge Marion Teld`mare status is:= 0/2
objective line 17 name is:= ? ? ? status is:=
objective line 18 name is:= Deliver 2 Heady Paeala to Judge Marion Teld`mare status is:= Done
objective line 19 name is:= Deliver 2 Short Ale to Judge Marion Teld`mare status is:= Done
objective line 20 name is:= ? ? ? status is:=

...and the screen shot of the quest journal that inspired to write this code...

tsgod-brewer-test.jpg
 

Attachments

Last edited:
Macro - Quest journal information (BigDorf 1st macro)

Users who are viewing this thread

Back
Top
Cart