The moving up and down was for the 1st person. I have not been able to test with another person on dedicated yet to see the 3rd person results.
I do notice with my bots when they shoot they are not getting the pitch either as they look up at a player to shoot him. Their gun is pointed at the player but they shoot straight (as in flat).
I hacked the adjusted aim to fix it but it seem to slow the bots action down a lot they act idle at times, so i changed it back to way it was with messed up shooting and they play way better so i’m goin after that next and solve why they get no pitch.
What seems strange to me is that yaw is replicated why is pitch not replicated? and the only reason i could see roll being replicated would be for lean. Question i have is why were they all 3 not replicated over to the clients side?
Back to the light. I have attached a light to both sides 1st and 3rd i set color over in the attachment as the 1st person gun does not seem to want to replicate the color. I also turn it on from the pawn to the The (1st person side, I use the on /off to set battery drain). Then that also heads over to the pawn for the on/off action of the light so it gets replicated to all players to see when turned on. So the 3RD person weapon is what being turned on and off and not the 1st,
then Once i hooked up the 1st person light, the 1st person started acting properly. Just no rotation.pitch.
If you just use 3rd person light ONLY it lags and is slow and wont stay caught up in 1st person. It’s like the frequency of the updates are not fast enough. .So by attaching the 1st person light, that fixed that issue.
only the 3rd person light is what turns on/off. but both lights will share each other properties. So in short i set color, turn off /on thru attachment file to pawn file. On the 1st person side i just attach the same light. I use that side to set battery drainage and play messages to your screen.
here’s my findings on the pitch
[0056.20] ScriptLog: PBPawn::GetViewRotation() start
[0056.20] ScriptLog: PBPawn::GetViewRotation() Controller.Rotation.pitch = 11241
[0056.20] ScriptLog: PBPawn::GetViewRotation() Rotation.pitch = 0
[0056.20] ScriptLog: PBPawn::GetViewRotation() PBPlayerController(Controller).Rotation.pitch = 11241
[0056.20] ScriptLog: PBPawn::GetViewRotation() self.Controller.Rotation.pitch = 11241
[0056.20] ScriptLog: PBPawn::GetViewRotation() self.Rotation.pitch = 0
[0056.20] ScriptLog: PBPawn::GetViewRotation() PBPlayerController(Controller).Rotation.pitch = 11241
[0056.20] ScriptLog: PBPawn::GetViewRotation() end
[0056.20] ScriptLog:
[0056.20] ScriptLog:
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() start
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The Result.pitch = 11241.0000
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The Instigator.Rotation.pitch = 0
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The Instigator.Controller.Rotation.pitch = 11241
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The PBP.Rotation.pitch = 0
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The PBP.Controller.
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The PBP.Controller.Rotation.pitch = 11241
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() PBPlayerController(Instigator.Controller).Rotation.pitch = 11241
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() end
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The Result.pitch = 11241.0000
[0056.20] ScriptLog: PBGunPart::WeaponCalcCamera() The out_CamRot.pitch = -11241
seems controllers are only ones replicating the pitch setting.
I’m going to look into that function
SetPosition(UDKPawn Holder)
but when i log it i get no action that its being used?
will test more and reply back.
Also there should be no over head on the network from this as its already been replicated to the controller. Were getting all this client side so he performing it himself so nothing for server to send to client, it was already there.
Biggest question i have is why was Rotation.pitch not replicated over for use?
Edited the above functions