Yes, i assumed that was a “fix” to bigger problem, you are probably 100% right about that and most of my players will suffer but for those immune to neusia players like me any stuttering is completely fine for longer periods of time, and thats why i would like to test it
It may benefit with a more nuanced approach, i’ll think about if there is a clean way of separating which ones get pushed and which ones block and maybe roomscale walking only pushing while locomotion blocks.
There is a climbing step up height in the movement component, that defines how far down to your feet an edge has to be before it tries and steps up on to it.
You can also optionally turn it off all together and run your own logic if you wish.
Finished Lever momentum system
Now essentially works like a door if you want it to. (Set lerp mode to RetainMomentum)
Also fixed a bug with ticking, and changed it so that lerping works off of the
full precision of the rotation and not off of the public and (rounded to closest
int) CurrentLeverAngle.
Includes "LeverMomentumFriction" to set the ramp down on the velocity, and
"LeverMaxMomentum" to limit speed. Also has "FramesToAverage" which sets
a frame duration that it will RollingLowPassAverage the momentum across,
lets you avoid the "waggle" effect of quickly gripping and flinging it to maximum
velocity.
MovementAction_SnapTurn seems to be not enough reliable for smooth turn: testing it in multiplayer environment, it spams network connection (to turn in fact you are calling that function repeatedly) until player starts to stutter and move in circle instead of rotating in place. A start/stop smoothing turn function will be definitely better. Should I code it by myself or you have any other suggestions?
Hi , i’m been offline a long time for personal reasons, it’s all fine now. Whatever, i got a few questions…
With Run Euro Smooth, we can change Euro Smooth filter in a Grippable Mesh on the fly? pressing a button, trigger or something? I see your video and readed the wiki. But, Run Euro Smooth return a smoothed vector, but how we apply it? is there any function to do on the fly as your video with the slider? I work with multiplayer, and i want to give to the user a way to smooth the controllers. As mouse sensivity. In a certain situations (Sniper Rifle)
And if you can, fix my title, es ViarWarfare, not warefare. Thanks for all, plugin is great tool and is become bigger each time.
Its not a network spam issue, it only adds a quantized vector to the movement list, it is because rollback of characters doesn’t include rotation so if you have a missed packet that isn’t eventually played back then it doesn’t receive the location change from an offset rotation, only the rotation itself (characters are client side rotation authoritative). I have a branch to look at that, but will be a major overhaul of sections of the default engine character.
Start / Stop is better anyway for smooth turning, however it should be queued in with the movement system or it will be out of sync. You can use a custom movement action for that, pass start/stop as one of the FVector parameters and use the rot for speed. At the end of the rotation it should also send a syncing rot to the server. I may add as a built in movement action in the future, but i’ll have to do some testing.
Edit I’ll note that fixing the rollback code was going to be my original solution to as it being wrong in the first place irks me (no need for rotation rollback with FPS pawns because a capsule is the same no matter the rotation). However a short term solution of a toggle is likely better anyway and would prevent incorrect usage.
There is a boolean in advanced grip settings to turn on the smoothing for a double handed grip, it uses the global settings to save performance but you can apply the amount of smoohing seperatly.
so what if i was creating a blueprint for each climbable object, and using collision messes inside it to highlight very specific spots on a mesh that were gripable. like only being able to grab the bars on a ladder. openings in a wall, or the top of a handrail.
also noob question. i was importing my gun models in and playing with it. and im on a bit of a run as for learning on my own as to how to handle weapons. but somehow im not able to figure out how to check the overlap from my hand and a button on the gun. how should i handle that
Then it is much easier, just make a collision volume component and cast to it in the IsObjectClimbable function, return true/false if it was one.
You need to check overlap settings, the gun may actually be overlapping the button, or your hand may not be set to overlap it correctly. Check your collision channels, and print out overlaps on it if you want a realtime visual indicator.
I have been using plugin for a student project recently however I have been unable to get the template open on my machine. If its not too much to ask could someone who has the template please screenshot the climbing blueprint so that I can use it as reference moving forward? Would be very much appreciated.
well i was more confused as to how to get a refercence of the motion controllers into the blue print for the gun. i can figure out the overlap. but i couldnt find the reference
im still learning so i could be doing it wrong. but would have figured i needed to check for a collision or overlap and check if it were items i want to alow to press the button. = hands.
currently its just hands. but soon i would replace it with ammo clips so i can reload properly. but i would need a button like code for a bolt release also.
You can just set a collision channel to control that if you want, or verify yes, but it would be better as a VRButtonComponent child class that handles it for you, not part of the gun blueprint itself.
Then the button just passes on the pressed / released events to the gun and the gun doesn’t have to worry about any of that.
Pushed a new commit to the plugin tonight, while looking into some server rollback changes I ran into a bug I had introduced recently into the movement actions system.
Whoops!
Fixing some values not setting (replicating) after converting the movement action
system to an array of actions.