Rolo 21 Posted February 23 Posted February 23 (edited) The information is more relevant for Interlude, but will work for the chronicles above as well. According to this example, you can bind any function (from calling the window for inserting a LAN, to your unique bypass, or some function like "target loss protection") to any hotkey or key combination. First of all, go to xdat, Interface \ Shortcuts \ GamingStateShortcut and select a key / key combination, for example like this: <ShortcutItem Key="IK_Space" SubKey1="IK_Alt">SelfTarget</ShortcutItem> Now for target self you need to hold down the viola and click the space bar. The key codes are sometimes obvious (IK_F1, IK_B, IK_Enter), and sometimes not very, just in case: Spoiler IK_None = 0 IK_LeftMouse = 1 IK_RightMouse = 2 IK_Cancel = 3 IK_MiddleMouse = 4 IK_Unknown05 = 5 IK_Unknown06 = 6 IK_Unknown07 = 7 IK_Backspace = 8 IK_Tab = 9 IK_Unknown0A = 10 IK_Unknown0B = 11 IK_Unknown0C = 12 IK_Enter = 13 IK_Unknown0E = 14 IK_Unknown0F = 15 IK_Shift = 16 IK_Ctrl = 17 IK_Alt = 18 IK_Pause = 19 IK_CapsLock = 20 IK_Unknown15 = 21 IK_Unknown16 = 22 IK_Unknown17 = 23 IK_Unknown18 = 24 IK_Unknown19 = 25 IK_Unknown1A = 26 IK_Escape = 27 IK_Unknown1C = 28 IK_Unknown1D = 29 IK_Unknown1E = 30 IK_Unknown1F = 31 IK_Space = 32 IK_PageUp = 33 IK_PageDown = 34 IK_End = 35 IK_Home = 36 IK_Left = 37 IK_Up = 38 IK_Right = 39 IK_Down = 40 IK_Select = 41 IK_Print = 42 IK_Execute = 43 IK_PrintScrn = 44 IK_Insert = 45 IK_Delete = 46 IK_Help = 47 IK_0 = 48 IK_1 = 49 IK_2 = 50 IK_3 = 51 IK_4 = 52 IK_5 = 53 IK_6 = 54 IK_7 = 55 IK_8 = 56 IK_9 = 57 IK_Unknown3A = 58 IK_Unknown3B = 59 IK_Unknown3C = 60 IK_Unknown3D = 61 IK_Unknown3E = 62 IK_Unknown3F = 63 IK_Unknown40 = 64 IK_A = 65 IK_B = 66 IK_C = 67 IK_D = 68 IK_E = 69 IK_F = 70 IK_G = 71 IK_H = 72 IK_I = 73 IK_J = 74 IK_K = 75 IK_L = 76 IK_M = 77 IK_N = 78 IK_O = 79 IK_P = 80 IK_Q = 81 IK_R = 82 IK_S = 83 IK_T = 84 IK_U = 85 IK_V = 86 IK_W = 87 IK_X = 88 IK_Y = 89 IK_Z = 90 IK_Unknown5B = 91 IK_Unknown5C = 92 IK_Unknown5D = 93 IK_Unknown5E = 94 IK_Unknown5F = 95 IK_NumPad0 = 96 IK_NumPad1 = 97 IK_NumPad2 = 98 IK_NumPad3 = 99 IK_NumPad4 = 100 IK_NumPad5 = 101 IK_NumPad6 = 102 IK_NumPad7 = 103 IK_NumPad8 = 104 IK_NumPad9 = 105 IK_GreyStar = 106 IK_GreyPlus = 107 IK_Separator = 108 IK_GreyMinus = 109 IK_NumPadPeriod = 110 IK_GreySlash = 111 IK_F1 = 112 IK_F2 = 113 IK_F3 = 114 IK_F4 = 115 IK_F5 = 116 IK_F6 = 117 IK_F7 = 118 IK_F8 = 119 IK_F9 = 120 IK_F10 = 121 IK_F11 = 122 IK_F12 = 123 IK_F13 = 124 IK_F14 = 125 IK_F15 = 126 IK_F16 = 127 IK_F17 = 128 IK_F18 = 129 IK_F19 = 130 IK_F20 = 131 IK_F21 = 132 IK_F22 = 133 IK_F23 = 134 IK_F24 = 135 IK_Unknown88 = 136 IK_Unknown89 = 137 IK_Unknown8A = 138 IK_Unknown8B = 139 IK_Unknown8C = 140 IK_Unknown8D = 141 IK_Unknown8E = 142 IK_Unknown8F = 143 IK_NumLock = 144 IK_ScrollLock = 145 IK_TRACKIR_PITCHUP = 146 IK_TRACKIR_PITCHDOWN = 147 IK_TRACKIR_YAWRIGHT = 148 IK_TRACKIR_YAWLEFT = 149 IK_TRACKIR_ROLLRIGHT = 150 IK_TRACKIR_ROLLLEFT = 151 IK_TRACKIR_MOVEUP = 152 IK_TRACKIR_MOVEDOWN = 153 IK_TRACKIR_MOVELEFT = 154 IK_TRACKIR_MOVERIGHT = 155 IK_TRACKIR_MOVEFORWARD = 156 IK_TRACKIR_MOVEBACKWARD = 157 IK_Unknown9E = 158 IK_Unknown9F = 159 IK_LShift = 160 IK_RShift = 161 IK_LControl = 162 IK_RControl = 163 IK_UnknownA4 = 164 IK_UnknownA5 = 165 IK_UnknownA6 = 166 IK_UnknownA7 = 167 IK_UnknownA8 = 168 IK_UnknownA9 = 169 IK_UnknownAA = 170 IK_UnknownAB = 171 IK_UnknownAC = 172 IK_UnknownAD = 173 IK_UnknownAE = 174 IK_UnknownAF = 175 IK_UnknownB0 = 176 IK_UnknownB1 = 177 IK_UnknownB2 = 178 IK_UnknownB3 = 179 IK_UnknownB4 = 180 IK_UnknownB5 = 181 IK_UnknownB6 = 182 IK_UnknownB7 = 183 IK_UnknownB8 = 184 IK_Unicode = 185 IK_Semicolon = 186 IK_Equals = 187 IK_Comma = 188 IK_Minus = 189 IK_Period = 190 IK_Slash = 191 IK_Tilde = 192 IK_Mouse4 = 193 IK_Mouse5 = 194 IK_Mouse6 = 195 IK_Mouse7 = 196 IK_Mouse8 = 197 IK_UnknownC6 = 198 IK_UnknownC7 = 199 IK_Joy1 = 200 IK_Joy2 = 201 IK_Joy3 = 202 IK_Joy4 = 203 IK_Joy5 = 204 IK_Joy6 = 205 IK_Joy7 = 206 IK_Joy8 = 207 IK_Joy9 = 208 IK_Joy10 = 209 IK_Joy11 = 210 IK_Joy12 = 211 IK_Joy13 = 212 IK_Joy14 = 213 IK_Joy15 = 214 IK_Joy16 = 215 IK_UnknownD8 = 216 IK_UnknownD9 = 217 IK_UnknownDA = 218 IK_LeftBracket = 219 IK_Backslash = 220 IK_RightBracket = 221 IK_SingleQuote = 222 IK_UnknownDF = 223 IK_UnknownE0 = 224 IK_UnknownE1 = 225 IK_UnknownE2 = 226 IK_UnknownE3 = 227 IK_MouseX = 228 IK_MouseY = 229 IK_MouseZ = 230 IK_MouseW = 231 IK_JoyU = 232 IK_JoyV = 233 IK_JoySlider1 = 234 IK_JoySlider2 = 235 IK_MouseWheelUp = 236 IK_MouseWheelDown = 237 IK_Unknown10E = 238 UK_Unknown10F = 239 IK_JoyX = 240 IK_JoyY = 241 IK_JoyZ = 242 IK_JoyR = 243 IK_UnknownF4 = 244 IK_UnknownF5 = 245 IK_Attn = 246 IK_CrSel = 247 IK_ExSel = 248 IK_ErEof = 249 IK_Play = 250 IK_Zoom = 251 IK_NoName = 252 Next, you need to describe the "SelfTarget" command itself. The easiest option is to go into the Interface \ Classes \ Shortcut scripts and find function HandleShortcutCommand (String a_Param) there and add: case "SelfTarget": RequestSelfTarget(); break; But, of course, you can insert a command into any class, but then you will have to create in it: function OnEvent( int a_EventID, String a_Param ) { switch( a_EventID ) { case EV_ShortcutCommand: HandleShortcutCommand( a_Param ); break; } } as well as the Handler itself : function HandleShortcutCommand( String a_Param ) { local String Command; if( ParseString( a_Param, "Command", Command ) ) { switch( Command ) { case "SelfTarget": RequestSelfTarget(); break; } } } That's all, with the help of these examples, you can call any function, in any class, to any key combination you need. Please note that if you call two different functions with one key, from different classes, but with the same name, they will be called simultaneously. It is convenient to use, for example, to simultaneously enable auto-buff and skill-spam panels from different classes. Edited February 23 by Celestine 1 2 Quote Share this post Link to post Share on other sites
Vision 49 Posted February 23 Posted February 23 Thanks for the Guide dude. Quote Share this post Link to post Share on other sites
CriticalError 36 Posted February 26 Posted February 26 thanks a lot for the guide buddy, look to nice, I see you dominate a little Unreal Scripts, keep going. Quote Share this post Link to post Share on other sites
lolpwnz89 3 Posted February 26 Posted February 26 its possible makes form this assist party target on button? Quote Share this post Link to post Share on other sites
Rolo 21 Posted February 26 Posted February 26 52 minutes ago, lolpwnz89 said: its possible makes form this assist party target on button? Yes, of course. Quote Share this post Link to post Share on other sites
lolpwnz89 3 Posted February 26 Posted February 26 (edited) but i must in code write nickname or can use party window 1,2,3,4 etc? how it work on Interlude? Edited February 26 by lolpwnz89 Quote Share this post Link to post Share on other sites
Rolo 21 Posted February 26 Posted February 26 27 minutes ago, lolpwnz89 said: but i must in code write nickname or can use party window 1,2,3,4 etc? how it work on Interlude? No, you don't need to enter character nicknames in the code. You need the index of the group member, in default it looks like this: rectWnd = m_wndTop.GetRect(); if (X > rectWnd.nX + 13 && X < rectWnd.nX + rectWnd.nWidth -10) { if (GetPlayerInfo(userinfo)) { idx = (Y-rectWnd.nY) / NPARTYSTATUS_HEIGHT; RequestAssist(m_arrID[idx], userinfo.Loc); } } As you can see, the position of the mouse and the index of the window by which the assist is taken are calculated. Accordingly, you can always set an assist by the party leader (as an example), or by a group member with an index of 1-8 (also, for example, you can add a form for entering the index of a group member for which the assist will be made). Quote Share this post Link to post Share on other sites
lolpwnz89 3 Posted February 26 Posted February 26 this code is in interfece.xdat? or .u? Quote Share this post Link to post Share on other sites
Rolo 21 Posted February 26 Posted February 26 Just now, lolpwnz89 said: this code is in interfece.xdat? or .u? It's * u, the functions themselves are there, * xdat is just markup, this file does not contain functions. Quote Share this post Link to post Share on other sites
lolpwnz89 3 Posted February 26 Posted February 26 ah ok very thx man Quote Share this post Link to post Share on other sites
Rolo 21 Posted February 26 Posted February 26 Just now, lolpwnz89 said: ah ok very thx man You are welcome. 😉 Quote Share this post Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.