Hi there! First of all I have to say that this problem is driving me crazy and could make me go many steps back and lost almost a month of work, please I need help and different ideas.
The thing is that I wanted in my multiplayer game to change the gameplay I was using before and make it more realistic with smooth movements using BLUEPRINTS. I know its not polished enought, walk and sprint velocities are not accurate to avoid the slide of foots, turning left when sprintting have a little fail on the animation I did, turning left to right without going forward is not working well…etc
BTW Its a close gameplay movements to my objective, with free movements of the camera which makes the head rotate (which is using multicast and works over the net).
This is the link to the movement Im talking about:
The main logic is based on Event Tick inside CharacterBP and InputMovementForward and Right inside Controller. Ill add two screenshots of them. Notice that EventTick and GetWorldDeltaSeconds are based on FPS and I think its one of the biggest problem Im getting. My second computer is very old and I get low FPS at the end. The problem is that is not synchronized the movement between server and client and client turns are horrible and very fast, not like the good computer which gets a high rate of fps and movements I get are smooth.
**So, I tried tons of things and none of the changes I have been testing have really solved my problem, I got mad and restarted from the point I got it working on server and before I started to replicate everything. **Have been using Multicast/RunonServer logic to the Event Tick with TurnSpeed, AimTurnSpeed, ForwardSpeed, AimForwardSpeed as Replicated.
My questions are, from this point, how can I replicate it well and stop using Event Tick and GetWorldDeltaSeconds so old computers will not have problems with smooth movements?
Thank you all!