Sonic Unreal Worlds Open source UE4 Sonic Engine

I’ve been tweaking the collision a bit (or a lot, maybe)

  1. Replaced two sphere sensor into two capsules, which takes turn to detect depending whether the pawn is rolling or not

  1. Inserting a failsafe method to detect the last correct coordinates to prevent wall-hacking glitch. Whenever the collision hits, the pawn will immediately teleport back to the last known good location (the distance is not that far, so you won’t even notice it)

To-do list : editing the movement so it will first do a capsule trace for any obstacle before attempting to move the pawn, then will move the pawn to the hit location if occured, but like normal if not. I reckon it’s a much more effective method

  1. Switching the event sequence. Check angles occurs first before checking collision. (might not do anything)

  1. Heavily overhauls the collision detection. Since it will only be one capsule at a time, a trace for the correct direction is needed. Also adds collision switching. Rolling through a narrow hole is possible

Hopefully it can solve most, if not all the high-speed collision problem. At least now Sonic is ‘tripping’ (abrupt stop on a certain angle when moving fast at low FPS) less. I had to adjust the sensor so it is a bit to the top and tightened it to prevent ‘tripping’