Workshop.codes
Login
Create
BellaLabs

Customizable Aim Trainer

+ 3 sources

This code is over 6 months old. The code may have expired and might no longer function.

19 Comments

Log in or Sign up to leave a comment.
roofrob#0 over 1 year ago

Super good aimtrainer that I personally use for warming up! Would love to see some more niche options for aimtraining, such as airshot only, but other than that this is perfect. Thank you for making this <3

n8-g over 1 year ago

I'm been using this code for a little while now and I'm loving it! One thing I just noticed is there may be an off-by-one error with Bot Brigitte's behavior. She's (index 31) reading Baptiste's enabled abilities (index 30), at least for her ultimate.

Faxmine almost 2 years ago

This looks amazing and I will try it once I get back home. Thank you. I am trying to get better in overwatch and want to just start from the basics since I just don't know where to start, so thank you again. Things like these really help people like me who are just so dog shit. <3

Xelorz over 2 years ago *

After using a saved version of this code for a while, I just imported a new version and its unusable. Server closes due to excessive load. The worst part is I overwrote the version I had before so now I can't use it at all. Can anyone share a code from a working version?

BellaLabs creator over 2 years ago

Hi, here's a backup of 4.2.1: 5ERSC. Not sure why it's overloading, sometime it's a server thing but I'll have to look into it.

mjh14 almost 3 years ago

Hi, thank you so much for the gamemode! I really appreciate the addition of features of JPYHG! Can you add an option for the player speed to also increase at the same rate the bot speed increases? Ideally this would be configurable as tracking characters like tracer need to aim with their movement as much as their cursor. <3

Nextis about 3 years ago

Hey, could you consider adding a way to be randomly teleported on the map in a situation and then spawn a bot? This would be nice to train reaction/adaption and the response

Snazzy_Susan about 3 years ago *

Great work! It would be cool for console players if we had to hold down on the interact button to get to the menu. The interact button is bound by default to the R3 stick button/directional controller - so it is very easy to press it during normal movements. I think a delay of one second to get into the menu would be perfect.

BellaLabs creator about 3 years ago

Hi I just posted an update. I included a toggle in the UI Settings of the workshop settings called "Console UI". It adds a 1 second delay for opening / closing the menu. I also found it was awkward to navigate the menu using the joystick, so I made a new control scheme for controllers. Let me know if you have any problems with the console ui.

-lysine about 3 years ago

Great mode! Very user-friendly and flexible
One change I would suggest: simulating nano boost with the nano effect + changing damage dealt/damage received numbers may be better than having an ana bot since the repetitive voice lines and sound effects get annoying after a while.

BellaLabs creator about 3 years ago

That's a really good idea, It'd also help with server load which is nice. The sounds really get to me too, I usually test this with the audio muted lol.

Jinko#2838 about 3 years ago

This looks insane!
Pro tip: add 4 spaces at the start of all your small message strings to make them centered in the red box.

BellaLabs creator about 3 years ago

thank you so much! that looks way better.

rkrams about 3 years ago

Hi Bella great mode been using it extensively for aim training, i mostly train projectile heroes and this help me a lot.

Can you add support for hanzo too with projectile guide.

Or can you modify yurrods code, to include other enemies and stuff. Will be very thankful.

Great work keep it up,.

Im thinking of doing 100 days of aim routine and this would greatly help.

rkrams about 3 years ago *

So digged up a little and replaced the projectile lead code with yurrods hanzo code, im mainly training hanzo so i can just made it for hanzo, def CalculateProjectileLead():
@Name "SUB: CalculateProjectileLead (KJRR5P)"
if eventPlayer.ProjSpeed != 0:
eventPlayer.VarA = eventPlayer.ProjSpeed ** 2 - dotProduct(eventPlayer.ClosestTarget.getVelocity(), eventPlayer.ClosestTarget.getVelocity())
eventPlayer.VarB = dotProduct(eventPlayer.ClosestTarget.getVelocity(), eventPlayer.ClosestTarget.getEyePosition() - eventPlayer.getEyePosition())
eventPlayer.VarC = dotProduct(eventPlayer.ClosestTarget.getEyePosition() - eventPlayer.getEyePosition(), eventPlayer.ClosestTarget.getEyePosition() - eventPlayer.getEyePosition())
eventPlayer.VarP = eventPlayer.VarB **2 + eventPlayer.VarA * eventPlayer.VarC

if eventPlayer.VarP >= 0:
eventPlayer.VarT = (eventPlayer.VarB + sqrt(eventPlayer.VarP)) / eventPlayer.VarA
if eventPlayer.VarT < 0:
eventPlayer.VarT = 0
eventPlayer.AimSpot = eventPlayer.ClosestTarget.getEyePosition() + eventPlayer.ClosestTarget.getVelocity() * eventPlayer.VarT + 0.5 * vect([], 3.1, []) * eventPlayer.VarT ** 2

Is this correct it feels so from the little i played, also can you give a template so that i can add other gravity projectiles too instead of replacing and how did yurrod come up with these projectile formula for each hero.

Thanks so much for making this gem, would appreciate any help i can get from you.

BellaLabs creator about 3 years ago *

Yeah, I tried for a bit to recreate yurrods version, but I'm not very good at linear algebra so I couldn't decode how he got his numbers so I could generalize it for all heroes.

I've found this table recently and thought about trying to figure it out, but again the solution is very mathy so it's hard to decode.
https://workshop.codes/wiki/articles/projectile+data+table

From the limited testing I've done with yurrods code, your solution looks like it should work for hanzo, but I find it hard to notice hanzo's arc at most distances so I may be wrong.

I don't really have a template for it since I just copied his mei/genji code because those projectiles don't have an arc. For abilities with an arc, the dot will still be correct for the x,z direction, you just have to adjust for the y direction yourself.

rkrams about 3 years ago

Awesome thanks im not great with math either but this looks interesting i will see if i can understand it and figure something out, really appreciate the trainer, its the best in the workshop now, you should publicize it a bit more. Also another query is VAXTA strafe moment dependent on bots moving away from your crosshair position or how.

BellaLabs creator about 3 years ago *

I really appreciate that, I'm glad people find it helpful! I definitely need to redo the video to show all the new stuff I've added.

The way movement in VAXTA and this code work is that the bots randomly path towards one of 8 directions. If you look at the subroutine "ResetBotPathing" you'll see how that is determined. I think some bots have "zones" that they'll stay within depending on their slot number, but bots in slot 1,2,7 and 12 just move around the entire area you give them.

The difficulty determines how often the bots change directions, basically it just tells a bot to strafe in a direction for x seconds, and then randomly pick a new one. The rule for that is "Bot Pathing: Movement Handler" and subroutine "ChangePathing". I've actually found for projectiles using a slightly lower difficulty is harder since the bots kinda bait you leading your shots.

I also added a setting you can find in the workshop settings page called "Advanced Strafes" that gives the bots a 30% chance of switching to basic ADAD strafing for 5 seconds, which can be more difficult for certain hitboxes like tracer. It's used in the 'extreme' movement difficulty, but you can turn it on for any difficulty if you configure the movement using the settings page. I use that setting to try and implement really annoying movement, like Bap's exo boot spam and Mercy's ga in valk.

rkrams about 3 years ago

Thanks really appreciate it, that gives a lot of insight.

Workshop.codes