-
@czechhek thank you it's almost that. It detects arrows very well but when it detects that the player can be hit by an arrow it teleports him up. Teleporting a player up (Y) causes an immediate setback. I know it is possible to convert this (mc.thePlayer.posX, mc.thePlayer.posY + 2, mc.thePlayer.posZ) to this (mc.thePlayer.posX + 2, mc.thePlayer.posY, mc.thePlayer.posZ) but it would work only in one direction.
Could someone change "TeleportUp" section in this code in such a way that the script would teleport the player perpendicular to the arrow's trajectory? Instead, it could also simply teleport the player two blocks to the left or right (the player himself would have to position himself perpendicular to the arrow's trajectory). Thanks.
Edit
@Gabriel I think it's WatchDog. Exactly the same cheats work on derpmc as on hypixel. Configs are almost identical on both servers. Moreover when you add derpmc.pl to the server list in the minecraft client, you will see [WatchDog] inscription next to the server name. -
@gabriel Yes it will autoban on BW with "watchdog cheat detection" message but autoban is disabled on MM/MM:infection. On these modes you can use fly (hypixel mode), LongJump (NCP with boost 5.00 continually with no lags), Speed (almost all modes, "onground" is the fastest), Phase (AAC3.5.0 - only through trapdoors), Strafe etc.
-
@asd-dsa
hmm actually in some cases (when the arrow is heading to the player's head/foot) it has a big possibility of not triggering it (should be able to fix it by checking intersection between 2 bbox).
Iirc it should have a horizontal speed mode, but it is annoying to lock the view.
The code is spaghetti, but I would try to improve it when I have time. (Probably in a few days) -
@commandblock2 ok, thank you for your interest in the topic. As I mentioned before it would be perfectly and luxuriously if you would change code in such a way that the script would teleport the player horizontal intelligently. Thank you in advance for your involve
-
@commandblock2 I did a little research and found that if I change this
mc.thePlayer.setPosition(mc.thePlayer.posX, mc.thePlayer.posY + 2, mc.thePlayer.posZ)
to this
mc.thePlayer.setPosition(mc.thePlayer.posX + Math.cos(Math.toRadians(mc.thePlayer.rotationYaw)) * -1, mc.thePlayer.posY, mc.thePlayer.posZ + Math.sin(Math.toRadians(mc.thePlayer.rotationYaw)) * -1)
it would teleport player one block to the right relatively to his rotation (perpendicular to his view as I mentioned a few post before). Can of course be set "1" intstead of "-1" to teleport player to the left. Maybe it will help you with improving the code.
I found in the internet Java code doing a similar thing to code no2 I wrote above and rewrote it to JS by trial and error method (idk any scripting language, just imagine how it mindfuked me when I saw it worked xD). I tried to make it teleport the player alternataly or randomly - once to the right, once to the left and so on but I didn't get it. I tried also my best to make it teleport player relatively to the arrow rotation but it didn't work out either. I need to learn JS xD -
@asd-dsa
Yes but the challenging part is to make it theblink
way. This is definitely fine and good work.blink
teleport is kind of holding the movement packets and sending them in a instant, but the currentsetPosition
is more like the clip thing (some ac may flag you for speed).
If you want to have it this way you might have to calculate the positions of the position packets in advance (and probably lower the timer(< 1) after dodging the arrow in case the ac flags you for timer).btw we can make the tp direction perpendicular to the velocity of the incoming arrow, and see left/right is closer. (This would be easier than
blink
and already inhorizontalSpeed
mode). Alsoleft
/right
variable in that part might not be reallyleft
/right
, it could be opposite.Anyway the scripts was originally for trolling only, never thought someone would need it but I am happy to see someone actually used it.
Also +1 for the effort. -
@cancer said in [Request] Arrow avoidance script (like Enderman):
@gabriel thats a gpl violation
that's not, marco allowed them to private the source codes
-
@commandblock2 blink tp was just example, actually there is no need to make script doing it that way, because teleporting player just one block by setPosition doesn't flag AC. I tried to use left/right code from horizontal speed but it didn't work for me (I'm probably doing something wrong). I tried also make script teleporting player perpendicular to arrow trajectory but it didn't work either. Hope you know how to do that.
I also thought about making the script check if there is possibility to teleport a player, if not - it should teleport him to the other side (to prevent teleporting player in the walls for example) but I had no idea how to do this. But if this function is difficult to perform, it does not need to be done, it will be ok without it too.
As I said the script is very useful, I'm almost immune to arrows on MM:I. Even skilled players have a problem to hit me. -
@asd-dsa
now the script is updated with horizontaltp and horizontalmotion. The direction is perpendicular to arrow trajectory.But there is not yet a check for tp into blocks, and still sometimes you could get shot. Might just going to look into
FallingPlayer
/Projectiles
for reference.Edit: hmm the it should be same as Projectiles but still strange, maybe later then.
the related code is here, but that is spaghetti anyway. you might want to give time the sin/cos since I think it might be a bit long.
if (dodgeMode.get() == "HorizontalTp") { mc.thePlayer.setPosition(mc.thePlayer.posX + Math.sin(Math.toRadians(rot.yaw)), mc.thePlayer.posY, mc.thePlayer.posZ + Math.cos(Math.toRadians(rot.yaw))) dodging = null return } if (dodgeMode.get() == "HorizontalMotion") { mc.thePlayer.motionX = Math.sin(Math.toRadians(rot.yaw)) // * 0.5 // or something like that mc.thePlayer.motionZ = Math.cos(Math.toRadians(rot.yaw)) dodging = null return }