Chatwiththisname
Learning2Code
I knew zero C++ prior to creating mq2bot. Literally knowing anything is more than i had. I just looked at other plugins for reference and googled/asked htw. I still only know enough to write that specific plugin. i can plan out how i would like things to function but coding them is sometimes problematic because I dont always know what is going to cause issues/crashes. i've never used C++ outside of mq2.Like Pete, I've quit playing the game and any coding I do is purely beneficial to the community. Sadly, I don't have near the skill in programming as Pete does, as I'm just now taking my first C++ class. I'd be happy to help with the code however I can, but without direction I'd be just as lost as any typical user. I've recently covered the topic of struct's and classes for C++.
Also an unfortunate/fortunate thing depending on how you look at it, my class on C++ isn't just about C++. It also covers unix, including compilation in Unix. So any source I create must work in both windows and Unix. As Unix is a new concept for me it has added an additional challenge to my coding. Something I make in C++ may work in VS but not in g++ compilation. So I have to go the extra mile to make sure everything is done correctly for cross platform compilation.
I have downloaded the GIT and pending any homework I have to complete this semester I will look over it. However, some more refined direction on what is needed to be done would be awesome as I can treat it as an assignment and research specific portions of coding to help me with anything I create/add to the functionality. I don't think I am reading to try and understand the monster that is MQ2Bot.cpp in its entirety.
~Chat
I apologize this is a bit off topic, but this made me wonder, what language script language is used by mq2?
MQ2 macro's are their own language more or less. As all TLO's are declared variables referencing some memory index inside of EQ. When you type ${Me.PctHPs} you are telling the game to find you in EQ, then locate the health as predefined in the MQ2 source in some location.
${Group.Member[${i}].ID}
Group is a TLO, one of the members of that TLO Struct/Class is Member[] which is an Array of information. In this case I'm moving through a for loop, and I've /declared i int local 0 and the range of ${i} is to ${Group} which returns an int according to the size of the group, which is drawn from some predefined memory location from EQ. Then Group.Member[#].ID gets a specific ID from the predefined memory in EQ etc etc etc.....
So the main program is created using C++, and the scripting language that is defined within MQ2 is an API (Application Program Interface) for creating macros.
To the best of my knowledge ${variable} is used in Javascript. Which would make sense because macro's are an API for scripting. Additionally, the $ is found in Unix. I'm sure there are other languages that use the Bash that i'm unaware of or have no experience with.
Obviously my response is all speculation. I don't know that is isn't based on a specific language. Suppose nobody but the original creators/collaborators would know unless informed by the latter
Last edited: