MQ2EmuRCChar


Overview


MQ2EmuRCChar lets you remote-control your other characters. You activate it by doing a /RC command. While activated you're character and movements are all normal until you target a character that is in NetBots with you. While that character is targeted your keyboard commands (movements by default but others an be added) are transmitted over EQBC and carried out by your target. It's basically like driving an RC car.

The characters do not need to be on the same computer, they just need to have the plugin loaded and be connected to NetBots and EQBC. You also are not bound to a single character while in RC mode. You can click around and target other characters at will to move them around.

Only the keyboard commands you have specified in the ini file are sent to the remote character, other commands are still carried out by the primary character.

Commands


/RC


This command toggles the remote control state off and on. While it is on your keyboard commands will be sent to your target. If your target is not in NetBots then your commands will continue to move yourself.

Top-Level Object: ${RC}



int Controlling
0: You are not in remote control mode
1: You are in remote control mode but don't have a valid target
2: You are in remote control mode and also have a valid target
${RC.Controlling}

int Controlled
0: You have not recieved a remote control command for at least 10 seconds
1: You have recieved a remote control command within the last 10 seconds
${RC.Controlled}

spawn ControlTarget
Returns a spawn object of your RC target. Returns a NULL if you target is not valid, or if you are not in RC mode.
${RC.ControlTarget}

INI File


There is only one setting and it is a space delimited list of the commands you want to be hijacked and sent remotely. You can add and remove commands from this list. By default only movement commands are hijacked, but a full listing is at the end of this post.

[Settings]
Commands=JUMP FORWARD BACK RIGHT LEFT STRAFE_LEFT STRAFE_RIGHT DUCK




Dependencies



EQBCServer.exe
This requires the eqbcserver compiled on or after 26 september 2010

MQ2EQBC
This requires the mq2eqbc.dll compiled on or after 26 september 2010

MQ2NetBots
This requires the mq2netbots.dll compiled on or after 26 september 2010. Netbots send/grab must also be turned on.

Gold Membership
This does require a gold membership to use. Because of this you'll need to have MQ2VMQNet Loaded, and have type /login <user> <pass>, or have set your user and pass in the VMQNet INI file for autologin. You can sign up for membership here.

Limitations


Not available on SoF

Full Command List


Any of these commands can be placed into the INI. When present they will be hijacked and sent remotely.

AUTORUN
JUMP
FORWARD
BACK
RIGHT
LEFT
STRAFE_LEFT
STRAFE_RIGHT
MOUSELOOK
MOUSELOOK_ENGAGE
AUTOPRIM
CONSIDER
DUCK
HAIL
INVENTORY
TELL
USE
PITCHUP
PITCHDOWN
CENTERVIEW
ZOOMIN
ZOOMOUT
TOGGLECAM
FULLSCREEN
TARGETME
PARTY1
PARTY2
PARTY3
PARTY4
PARTY5
TARGETPC
CYCLEPCTARGETS
TARGETNPC
CYCLENPCTARGETS
TARGETCORPSE
CYCLECORPSETARGETS
NETSTAT
HOT1_1
HOT1_2
HOT1_3
HOT1_4
HOT1_5
HOT1_6
HOT1_7
HOT1_8
HOT1_9
HOT1_10
HOT1_11
HOT1_12
HOT2_1
HOT2_2
HOT2_3
HOT2_4
HOT2_5
HOT2_6
HOT2_7
HOT2_8
HOT2_9
HOT2_10
HOT2_11
HOT2_12
HOT3_1
HOT3_2
HOT3_3
HOT3_4
HOT3_5
HOT3_6
HOT3_7
HOT3_8
HOT3_9
HOT3_10
HOT3_11
HOT3_12
HOT4_1
HOT4_2
HOT4_3
HOT4_4
HOT4_5
HOT4_6
HOT4_7
HOT4_8
HOT4_9
HOT4_10
HOT4_11
HOT4_12
HOT5_1
HOT5_2
HOT5_3
HOT5_4
HOT5_5
HOT5_6
HOT5_7
HOT5_8
HOT5_9
HOT5_10
HOT5_11
HOT5_12
HOT6_1
HOT6_2
HOT6_3
HOT6_4
HOT6_5
HOT6_6
HOT6_7
HOT6_8
HOT6_9
HOT6_10
HOT6_11
HOT6_12
HOT7_1
HOT7_2
HOT7_3
HOT7_4
HOT7_5
HOT7_6
HOT7_7
HOT7_8
HOT7_9
HOT7_10
HOT7_11
HOT7_12
HOT8_1
HOT8_2
HOT8_3
HOT8_4
HOT8_5
HOT8_6
HOT8_7
HOT8_8
HOT8_9
HOT8_10
HOT8_11
HOT8_12
HOT9_1
HOT9_2
HOT9_3
HOT9_4
HOT9_5
HOT9_6
HOT9_7
HOT9_8
HOT9_9
HOT9_10
HOT9_11
HOT9_12
HOT10_1
HOT10_2
HOT10_3
HOT10_4
HOT10_5
HOT10_6
HOT10_7
HOT10_8
HOT10_9
HOT10_10
HOT10_11
HOT10_12
HOTPAGE1_1
HOTPAGE1_2
HOTPAGE1_3
HOTPAGE1_4
HOTPAGE1_5
HOTPAGE1_6
HOTPAGE1_7
HOTPAGE1_8
HOTPAGE1_9
HOTPAGE1_10
HOTPAGE2_1
HOTPAGE2_2
HOTPAGE2_3
HOTPAGE2_4
HOTPAGE2_5
HOTPAGE2_6
HOTPAGE2_7
HOTPAGE2_8
HOTPAGE2_9
HOTPAGE2_10
HOTPAGE3_1
HOTPAGE3_2
HOTPAGE3_3
HOTPAGE3_4
HOTPAGE3_5
HOTPAGE3_6
HOTPAGE3_7
HOTPAGE3_8
HOTPAGE3_9
HOTPAGE3_10
HOTPAGE4_1
HOTPAGE4_2
HOTPAGE4_3
HOTPAGE4_4
HOTPAGE4_5
HOTPAGE4_6
HOTPAGE4_7
HOTPAGE4_8
HOTPAGE4_9
HOTPAGE4_10
HOTPAGE5_1
HOTPAGE5_2
HOTPAGE5_3
HOTPAGE5_4
HOTPAGE5_5
HOTPAGE5_6
HOTPAGE5_7
HOTPAGE5_8
HOTPAGE5_9
HOTPAGE5_10
HOTPAGE6_1
HOTPAGE6_2
HOTPAGE6_3
HOTPAGE6_4
HOTPAGE6_5
HOTPAGE6_6
HOTPAGE6_7
HOTPAGE6_8
HOTPAGE6_9
HOTPAGE6_10
HOTPAGE7_1
HOTPAGE7_2
HOTPAGE7_3
HOTPAGE7_4
HOTPAGE7_5
HOTPAGE7_6
HOTPAGE7_7
HOTPAGE7_8
HOTPAGE7_9
HOTPAGE7_10
HOTPAGE8_1
HOTPAGE8_2
HOTPAGE8_3
HOTPAGE8_4
HOTPAGE8_5
HOTPAGE8_6
HOTPAGE8_7
HOTPAGE8_8
HOTPAGE8_9
HOTPAGE8_10
HOTPAGE9_1
HOTPAGE9_2
HOTPAGE9_3
HOTPAGE9_4
HOTPAGE9_5
HOTPAGE9_6
HOTPAGE9_7
HOTPAGE9_8
HOTPAGE9_9
HOTPAGE9_10
HOTPAGE10_1
HOTPAGE10_2
HOTPAGE10_3
HOTPAGE10_4
HOTPAGE10_5
HOTPAGE10_6
HOTPAGE10_7
HOTPAGE10_8
HOTPAGE10_9
HOTPAGE10_10
CAST1
CAST2
CAST3
CAST4
CAST5
CAST6
CAST7
CAST8
CAST9
CAST10
CAST11
CAST12
REPLY
CYCLEREPLY
CYCLEREPLY_BACK
BACKDROP
TOGGLETARGET
SPELLBOOK
ABILITIES
COMBAT
SOCIALS
MAIN
WHO
INVITE_FOLLOW
DISBAND
CAMP
SIT_STAND
RUN_WALK
CLIP_IN
CLIP_OUT
VOICE_ON
SCREENCAP
HISTORY_UP
HISTORY_DOWN
PAGEUP
PAGEDOWN
CMDMODE_SAY
CMDMODE_EMOTE
LOCK_WINDOWS
TOGGLE_PLAYERWIN
TOGGLE_PARTYWIN
TOGGLE_TARGETWIN
TOGGLE_SPELLSWIN
TOGGLE_BUFFWIN
TOGGLE_HOTBOX1WIN
TOGGLE_HOTBOX2WIN
TOGGLE_HOTBOX3WIN
TOGGLE_HOTBOX4WIN
TOGGLE_HOTBOX5WIN
TOGGLE_HOTBOX6WIN
TOGGLE_HOTBOX7WIN
TOGGLE_HOTBOX8WIN
TOGGLE_HOTBOX9WIN
TOGGLE_HOTBOX10WIN
TOGGLE_CHATWIN
TOGGLE_MAILWIN
TOGGLE_MAILCOMPWIN
TOGGLE_MAINMENUWIN
TOGGLE_ALTADVWIN
TOGGLE_BAZAARWIN
RTARGET
TOGGLE_FRIENDSWIN
TOGGLE_PETINFOWIN
TOGGLE_OPTIONSWIN
TOGGLE_HELPWIN
TOGGLE_SELECTORWIN
TOGGLE_VIDEOMODEWIN
TOGGLE_BAZAARSEARCHWIN
TOGGLE_COMPASSWIN
TOGGLE_RAIDWIN
TOGGLE_MUSICPLAYERWIN
FORWARD_CAM
BACK_CAM
RIGHT_CAM
LEFT_CAM
PITCHUP_CAM
PITCHDOWN_CAM
TOGGLE_JOURNAL
TOGGLE_SDBUFFWIN
RELEASE_MOUSE_CURSOR
TOGGLE_STORYWIN
TOGGLE_MAPWIN
TOGGLE_GUILDMGMTWIN
TOGGLE_FELLOWSHIPWIN
TOGGLE_LFGROUPWIN
TOGGLE_LFGUILDWIN
TOGGLETWOTARGETS
TOGGLE_CONTEXTMENUS
FIRST_PERSON_CAMERA
OVERHEAD_CAMERA
CHASE_CAMERA
USER1_CAMERA
USER2_CAMERA
TETHER_CAMERA
TOGGLE_ADVREQUESTWIN
CLOSE_TOP_WINDOW
CLEAR_TARGET
CMD_TOGGLE_FIND_WINDOW
TOGGLE_LEADERSHIPWIN
TOGGLE_TRIBUTEBENEFITWIN
CMD_OPENING_ATTACK1
CMD_OPENING_ATTACK2
CMD_OPENING_ATTACK3
CMD_OPENING_ATTACK4
CMD_OPENING_ATTACK5
CMD_OPENING_ATTACK6
CMD_OPENING_ATTACK7
CMD_OPENING_ATTACK8
CMD_TOGGLE_COMBAT_ABILITY_WIN
CMD_TOGGLE_DYNAMIC_ZONE_WIN
CMD_TOGGLE_PVP_LEADERBOARD
CMD_TOGGLETASKWIN
CMD_TOGGLE_TICKET_WND
CMD_STOP_CAST
CMD_TOGGLEVOICEWIN
CMD_TOGGLE_TITLE_WND
POTION_SLOT_1
POTION_SLOT_2
POTION_SLOT_3
POTION_SLOT_4
TOGGLE_POTION_BELT
TOGGLE_BANDOLIER
OPEN_INV_BAGS
CLOSE_INV_BAGS
TOGGLE_INV_BAGS
TOGGLE_SKILLS_WND
OPEN_ETN_HELP
CMD_TOGGLE_BLOCKEDBUFFWIN
CMD_TOGGLE_AUDIO_TRIGGER_WINDOW
CMD_CLIPBOARD_PASTE
CMD_UPDATE_EQPLAYERS
CMD_OPEN_EQPLAYERS
CMD_TOGGLE_AURAWND
CMD_TOGGLE_BLOCKEDPETBUFFWIN
CMD_TOGGLE_REWARD_SELECTION_WIN
CMD_TOGGLE_CLAIM_WIN
CMD_TOGGLE_VOICE_BAR
CMD_TOGGLE_AS_LIST
CMD_PUSH_TO_TALK
CMD_PUSH_TO_TALK_SAY
CMD_PUSH_TO_TALK_GROUP
CMD_PUSH_TO_TALK_RAID
CMD_PUSH_TO_TALK_GUILD
CMD_MERCENARIES
CMD_MARKETPLACE
CMD_WELCOMESCREEN
CMD_EXTENDED_TARGET_WINDOW
CMD_ACHIEVEMENT_WINDOW
TARGET_XTARGET_1
TARGET_XTARGET_2
TARGET_XTARGET_3
TARGET_XTARGET_4
TARGET_XTARGET_5
TARGET_XTARGET_6
TARGET_XTARGET_7
TARGET_XTARGET_8
TARGET_XTARGET_9
TARGET_XTARGET_10
TARGET_XTARGET_11
TARGET_XTARGET_12
TARGET_XTARGET_13
TARGET_XTARGET_14
TARGET_XTARGET_15
TARGET_XTARGET_16
TARGET_XTARGET_17
TARGET_XTARGET_18
TARGET_XTARGET_19
TARGET_XTARGET_20
ADD_XTARGET
REMOVE_XTARGET
CYCLE_XTARGET
REMOVE_XTARGET_BY_SLOT
CMD_REAL_ESTATE_ITEMS_WINDOW
CMD_REAL_ESTATE_MANAGE_WINDOW
CMD_REAL_ESTATE_TROPHIES_WINDOW
CMD_REAL_ESTATE_PLOT_SEARCH_WINDOW
CMD_REAL_ESTATE_HELP_WINDOW
CMD_REAL_ESTATE_ITEM_PLACEMENT_TOGGLE_M...
CMD_REAL_ESTATE_ITEM_PLACEMENT_SET_MODE...
CMD_REAL_ESTATE_ITEM_PLACEMENT_SET_MODE...
CMD_REAL_ESTATE_ITEM_PLACEMENT_SET_MODE...
CMD_REAL_ESTATE_ITEM_PLACEMENT_SET_MODE...
CMD_REAL_ESTATE_ITEM_PLACEMENT_RESET_IT...
CMD_REAL_ESTATE_ITEM_PLACEMENT_RESET_IT...
CMD_REAL_ESTATE_ITEM_PLACEMENT_RESET_IT...
CMD_REAL_ESTATE_ITEM_PLACEMENT_RESET_IT...
CMD_REAL_ESTATE_ITEM_PLACEMENT_ROTATE_I...
CMD_REAL_ESTATE_ITEM_PLACEMENT_ROTATE_I...
CMD_REAL_ESTATE_ITEM_PLACEMENT_ROTATE_I...
CMD_REAL_ESTATE_LEAVE
CMD_VOTE_RESULTS
CMD_TOGGLE_TCG
CMD_MOVE_DOWN
CMD_STOP_ACTION
POTION_SLOT_5
CMD_TOGGLE_ALARM
CMD_TOGGLE_BANK_BAGS
TOGGLE_ZONE_GUIDE_WINDOW
TOGGLE_ZONE_PATH_WINDOW
CMD_MARKETPLACE_SILVER
CMD_MARKETPLACE_GOLD
CMD_HISTORIC_ALERTS
CMD_SOCIAL_SHARE
CMD_TOGGLE_AGGRO
CMD_LOCK_AGGRO
CMD_TOGGLE_BARTER_SEARCH
TOGGLE_FPS
TOGGLE_AVATAR
TOGGLE_PETITION
TOGGLE_MEMINFO
FLY_UP
FLY_DOWN
ADD_ROUTE
LAY_PPOINT
LAY_LINK
CONFIRM_YES
CONFIRM_NO
TARGET_PREV_NPC
TARGET_NEXT_NPC
ROTATE_STATS
TOGGLE_NPC_TUNE
TOGGLEQAMARKER
Last edited by Maudigan on Wed Jun 08, 2016 8:54 pm; edited 3 times in total
Tue Jun 07, 2016 7:20 pm
Project Lead
Dependencies

EQBCServer.exe
This requires the eqbcserver compiled on or after 26 september 2010


Does this version contain the fixes documented by ptarp/froak? Mentioned here and here.
Wed Jun 08, 2016 12:32 pm
Senior Project Member
Man, I remember this, but I'm not positive if I ever merged it in. I need to check. I think that date in the post (which I copied and pasted from another post) was when I increased the message buffer size because it was getting overflowed with the extra data and crashing the app.
Last edited by Maudigan on Wed Jun 08, 2016 5:07 pm; edited 1 time in total
Wed Jun 08, 2016 4:49 pm
Project Lead
I read through it a little more, I'm relatively certain I didn't do it. I'm not 100% sure what all I've changed in EQBCServer so we're kinda forked from ptarps build. It'll take me a bit to merge the two. You're running his and it's been pretty stable?
Wed Jun 08, 2016 5:05 pm
Project Lead
Yes. ptarp's build is very stable. I've had no EQBC related crashes/hangs/freezes using that version of EQBCServer.
Wed Jun 08, 2016 9:14 pm
Senior Project Member