[Release] Recall User At Same Position - New GM Command

08/26/2019 02:41 #HB#1
Hey there,

I don't have a good intro for this, so let's just get into it.

Introduction Video

A lot of people hate teleporting back to town or something to have an effect on something. Well, I got you here bud.

Using my [Only registered and activated users can see links. Click Here To Register...], and a little touch with your hand, you achieve your own gm commands.

About server-side and specifically game server, it basically does a security check with the command id, checking whether this command exists or not and if the user meets security requirements. So, I hooked where the security check function is called with our new command id, and replaced our new command id with RecallUser's command id, because server doesn't know about our command id and I was lazy finding out how game server adds it to the list.

I think the command doesn't have logs in the account database, if you have a look there, you'll see the function that logs in the database. So, do it yourself if you needed it.


My only wish now, is to stop using bots doing such a job...

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]


Download: Attached below.

Note: Any addresses given above were found on VSRO 1.88 sro_client and game server, so they are most likely different on any other version.
Note: Structures found in the files are for VC80 libs, back when strings were 28 bytes. You'll face errors, if you work with any later version.
Note: Always compile on Release!

Special Thanks To: florian0 :rolleyes:
08/26/2019 05:15 Mr.Awesome1337#2
Epic release, works fine, thank you.
08/26/2019 09:32 _SGA_#3
Now this is what I call release.
Thanks for it :)
08/26/2019 11:59 Mr.Awesome1337#4
Feedback: any ideas why it disconnects the account using it sometimes? I mean the GM account.
08/26/2019 14:40 Laag#82#5
good job (Muhab Fawzy) :)
08/26/2019 16:04 Isoline*#6
Quote:
Originally Posted by #HB View Post
Hey there,

I don't have a good intro for this, so let's just get into it.

Introduction Video

A lot of people hate teleporting back to town or something to have an affect on something. Well, I got you here bud.

Using my [Only registered and activated users can see links. Click Here To Register...], and a little touch with your hand, you achieve your own gm commands.

About server-side and specifically game server, it basically does a security check with the command id, checking whether this commands exists or not and if the user meets security requirements. So, hooked where the security check function is called with our new command id, and replaced our new command id with RecallUser's command id, because server doesn't know about our command id and I was lazy finding out how game server adds it to the list.

I think the command doesn't have logs in the account database, if you have a look there, you'll see the function that logs in the database. So, do it yourself if you needed it.


My only wish now, is to stop using bots doing such a job...

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]


Download: Attached below.

Note: Any addresses given above were found on VSRO 1.88 sro_client and game server, so they are most likely different on any other version.
Note: Structures found in the files are for VC80 libs, back when strings were 28 bytes. You'll face errors, if you work with any later compiler.
Note: Always compile on Release!

Special Thanks To: florian0 :rolleyes:
TL;DR
Just type /resetq it will reset your pos to the current location.
08/26/2019 16:12 Hercules*#7
Quote:
Originally Posted by Isoline* View Post
TL;DR
Just type /resetq it will reset your pos to the current location.
and it can done by bot use /movetouser then /recalluser :)
08/26/2019 16:45 $WeGs#8
Quote:
Originally Posted by Isoline* View Post
TL;DR
Just type /resetq it will reset your pos to the current location.
resetq cmd only used to reset the gm pos
Quote:
Originally Posted by Hercules* View Post
and it can done by bot use /movetouser then /recalluser :)
what if u have to teleport multiple users at the same time ? ur bot will get rekt , beside using 1 packet or 2 packets and waiting ur bot to reach the user's pos to recall it again ?

OP: Well done , keep going dude ^^
08/26/2019 16:51 Hercules*#9
Quote:
Originally Posted by $WeGs View Post
resetq cmd only used to reset the gm pos


what if u have to teleport multiple users at the same time ? ur bot will get rekt , beside using 1 packet or 2 packets and waiting ur bot to reach the user's pos to recall it again ?

OP: Well done , keep going dude ^^
your right ;)
08/26/2019 17:29 ownkhan#10
Quote:
Originally Posted by $WeGs View Post
resetq cmd only used to reset the gm pos


what if u have to teleport multiple users at the same time ? ur bot will get rekt , beside using 1 packet or 2 packets and waiting ur bot to reach the user's pos to recall it again ?

OP: Well done , keep going dude ^^
resetQ
initQ
compQ
for quests not reset pos
08/26/2019 17:29 #HB#11
Quote:
Originally Posted by Mr.Awesome1337 View Post
Feedback: any ideas why it disconnects the account using it sometimes? I mean the GM account.
Follow the notes. Besides, set up some breakpoints and find out where your char gets disconnected.

My prediction is this point:
Code:
cmdmsg->ReadString(targetcharname);
My prediction is about not using VC80, you can make it work with a higher ver than VC80, if you create your own string class with 4 extra padding bytes at the beginning.

Any exceptions caught in the handling code will of course disconnect your gm character.
08/26/2019 17:40 $WeGs#12
Quote:
Originally Posted by ownkhan View Post
resetQ
initQ
compQ
for quests not reset pos
all i meant that resetq is only teleporting a GM CHARACTER at the SAME PLACE and cannot be used for certin charname(by default)
08/26/2019 18:28 B1Q#13
or give all users gm access
deny client -> filter gm packets and control it using a filter
LOL
08/26/2019 21:31 #HB#14
Quote:
Originally Posted by B1Q View Post
or give all users gm access
deny client -> filter gm packets and control it using a filter
LOL
Yeah, I heard that idea from Royaleblade before, and yeah, it's a good idea.

But you'll still have to inject the sro_client to prevent showing console from normal users, you don't have to, but it will be annoying since they'll be able to use normal internal commands. So, being original isn't bad too :v
08/26/2019 21:35 B1Q#15
Quote:
Originally Posted by #HB View Post
Yeah, I heard that idea from Royaleblade before, and yeah, it's a good idea. But you'll still have to inject the sro_client to prevent showing console from normal users, you don't have to, but it will be annoying since they'll be able to use normal internal commands. So, being original isn't bad too :v
don't know about royaleblade but I had that implemented back in 2015
also hiding the console should be easy