From 9e64e70607433dce7b4a768605b0ba64d19c764d Mon Sep 17 00:00:00 2001 From: Kingsmedia Date: Sat, 28 May 2022 11:16:42 +0200 Subject: [PATCH] 200 - Limiting Server-Side Rewind --- .../BP_BlasterPlayerController.uasset | Bin 18619 -> 19044 bytes Content/Maps/BlasterMap.umap | Bin 1340850 -> 1340717 bytes .../BlasterPlayerController.cpp | 9 +++++ .../BlasterPlayerController.h | 8 ++++ Source/Blaster/Weapon/Weapon.cpp | 35 ++++++++++++++++++ Source/Blaster/Weapon/Weapon.h | 5 ++- 6 files changed, 56 insertions(+), 1 deletion(-) diff --git a/Content/Blueprints/PlayerController/BP_BlasterPlayerController.uasset b/Content/Blueprints/PlayerController/BP_BlasterPlayerController.uasset index 0388b9b2944d1d89f77f53086de27ac6c405916e..a18dfb2fc526bb128b0283d84aae312d70b80314 100644 GIT binary patch delta 4277 zcmcInT})J05I$D{MHF^ne?jF^l_HD$DL=c*&%&}SP=8PXYk$-QF6_#(i_5CvrE6+m znluVI{f*kRPqq(g46SKv(rD6}KG@o(P5RoV#y;5AJ{VKeq;}@sIopL@U~S?gcjug$ zZ|2OIGiUbRt25H=*QM#(`Gxh2WirNghC>Rl3^pkP-YT`S_g@@9_1=GZZ2p3yw;m$N1 z{ssY#FM>NvI%J~WXkBgpqPP-){b@QBwy8Ff=x<+2e{M~h2z)jLP#BB!!iFD(1&*K4 z6`5Y78Q%Qn<=UjMo?q4tm=2IC8@Nc*K0BY$m-9U1O1?|K(c~jY4e%dm{DqzS@;mu0 zz0QPP4QVAjm(>wtZ##tA*h?Z*U!ZX}Ka{`Eh!+a`9cr2=st2esp=KFrwr9WqsJ2yg z87t74@P-M)X&eB(d!RGWd9(zu`-Elcl1)=0uI7?Huv z(6X_CA=$fmiN2DXjb$dxm54#8J*p>u#;7x42@CZdGzHq-&955=Or0zMKb@Tp~&i*=?330X#27EfZuy#ug%OYVyYE+5D68GRCl#|O& zgVjzmQKQ1v$&!I=H__LT9O^_mgM9+oR-J-{DD)qDRCE1&5J{v z=2krGSS@Lja`_iD3GCrW;_iyFVJ=n7;@Mh5^Z8kj)U2aYCWLUYUYo<)U@>XLDX!)} zwOWgkJ*h_y*e-sx$!~2StJK-;Yt~5)t~5KPCjNf2HQPdH2khCvtJ^Xp7qrk?p4&1Y zJ)+g7+e)~87>4tq`sAN+qM+)F;iRav~C z?z?f_v04c&^aClKG>1)s|_g=o@nH#qW%kFC&8A56jxO6na;{=Y*4Bl*Lf|r zBx|%-*t!ta=r9`xKyl~!yx4PED&&_u#nLu@%d=V9!5?~F-j8<=Kd+E55mn{ovi1!& zFsVOcq*M5g4Ch;Lk}kOL!fG%z#W8R&_{mzS24zy6zajHQ7H@?&mmDYes>Cu_XpA4iNKSs)YbX`3NlASeqs~)-jP>xl z-a6}Unu*(>qq+L$efSO!R?U7q-gEKFflnL8r%z(Skdk`1NK0aT;&mn|3T#n{!0RW= G-~AVWR}o48 delta 3768 zcmcInT})h65I%PW%1^0x|L(Ft5ei-YyI|REmtFo@ep^~v5iPYXA_z1>f9Q)bS))c1 zHAtCOV`5a^e6SCO2OmsonizvNF*Uv!jW5;u02Yl8#s_ic-Z`7QyX>+ib&}mV=gc=V zXXeh#-MxEF`RuB)bl0`v6CzUxF*H9ni7Z2$$L~KBSnsP0DY$%ow-9@fzo81@MBbGz z#AQtgl5HX1dNe5yj!zkmx1)b4YdefP_y^s z;lY;=8K)aQ81JlskTV-pYlZeCTg^fK9IsacaMdOu4p_3P&eJSvMBc;eQYf>HI?wSg z8~G=^o+61hXp-FEwJQkL)&{s~^JvsmG+anA#FzUbDptl}*lxFoHpXl4v0ZgigGrqw zS|A;PZ|$Snl(7*OTV9lv&RIn2A3qw9KASIed>oAGQGtpvSG^h`?HV&ex-qa2T(~6>(4a!Fs4V4OWzZ6mp9L(Y!^?fYyXb>{954@ksH}Q^3N5}^B!#B;vwTZFG zrrtib`e1BqseMKJ1R}wL|Lp7gpt|22R|!WVZ`Q;61C;fgdfxe=A>@eE@vecnyom_% zfix`B5uXS}6f$yeoC#_wor;;u5;B>n(M1aXniIk#VhOzhh`L}SH0^%W*d!^aS6fsp zn|E4*$|2b7aOXG~?StP{N9JERyo`ZA*4Y4atyM~oj(Q}D!t|g%y)h8sejsTKN#o3u zr|}>ojFiw%W~MvHcgQg|Yl3Z?-4Tafmb61h+dXQs(#xMZ+iHfVIxL zoMw);l!_ER&`T=N6?V(%nMN^pCN1VcHZF@fbs2fODa1yn9R|90DiUdt9MBx3{!#E_ zgO#vDqc@oBC|WOEx-uyq27Aw2WpZFU@VIM!?lOud7G~z>N>5H)nz^tbys*|=t@Oc0 z&r2GOq+I+EMa@*faQHwWiIR%_UYo9C(xQp1-!EQ3hlk-_UtI+MiRqNsi{@aHt>uVM z7|nlT`&rp^f{>!4zk^5?5r%91KKBu0o21qM?pOWt2TsE5va_oBj+AF2KeP`xRI}vP I%Qf%+3q&}XasU7T diff --git a/Content/Maps/BlasterMap.umap b/Content/Maps/BlasterMap.umap index f09713c317b5d7b4fa2dc8f6b9ad5ec4eb8ad64d..a2b4085560dc493ff344376b500bfbd4df5f6004 100644 GIT binary patch delta 131337 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

CB(nw+2%jHo*JC8;vA*0(`OGA3h1W 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 L3t}H^)|v+Zq%!4- delta 149815 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 V-& OutLifetimeP Super::GetLifetimeReplicatedProps(OutLifetimeProps); DOREPLIFETIME(AWeapon, WeaponState); + DOREPLIFETIME_CONDITION(AWeapon, bUseServerSideRewind, COND_OwnerOnly); } void AWeapon::EnableCustomDepth(bool bEnabled) @@ -190,6 +191,11 @@ void AWeapon::OnWeaponStateSet() } } +void AWeapon::OnPingTooHigh(bool bPingTooHigh) +{ + bUseServerSideRewind = !bPingTooHigh; +} + void AWeapon::OnRep_WeaponState() { OnWeaponStateSet(); @@ -209,6 +215,16 @@ void AWeapon::OnEquipped() WeaponMesh->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Ignore); } EnableCustomDepth(false); + + OwnerCharacter = OwnerCharacter == nullptr ? Cast(GetOwner()) : OwnerCharacter; + if (OwnerCharacter && bUseServerSideRewind) + { + OwnerController = OwnerController == nullptr ? Cast(OwnerCharacter->Controller) : OwnerController; + if (OwnerController && HasAuthority() && !OwnerController->HighPingDelegate.IsBound()) + { + OwnerController->HighPingDelegate.AddDynamic(this, &AWeapon::OnPingTooHigh); + } + } } void AWeapon::OnEquippedSecondary() @@ -230,6 +246,15 @@ void AWeapon::OnEquippedSecondary() WeaponMesh->SetCustomDepthStencilValue(CUSTOM_DEPTH_TAN); WeaponMesh->MarkRenderStateDirty(); } + OwnerCharacter = OwnerCharacter == nullptr ? Cast(GetOwner()) : OwnerCharacter; + if (OwnerCharacter && bUseServerSideRewind) + { + OwnerController = OwnerController == nullptr ? Cast(OwnerCharacter->Controller) : OwnerController; + if (OwnerController && HasAuthority() && OwnerController->HighPingDelegate.IsBound()) + { + OwnerController->HighPingDelegate.RemoveDynamic(this, &AWeapon::OnPingTooHigh); + } + } } void AWeapon::OnDropped() @@ -247,6 +272,16 @@ void AWeapon::OnDropped() WeaponMesh->SetCustomDepthStencilValue(CUSTOM_DEPTH_BLUE); WeaponMesh->MarkRenderStateDirty(); EnableCustomDepth(true); + + OwnerCharacter = OwnerCharacter == nullptr ? Cast(GetOwner()) : OwnerCharacter; + if (OwnerCharacter && bUseServerSideRewind) + { + OwnerController = OwnerController == nullptr ? Cast(OwnerCharacter->Controller) : OwnerController; + if (OwnerController && HasAuthority() && OwnerController->HighPingDelegate.IsBound()) + { + OwnerController->HighPingDelegate.RemoveDynamic(this, &AWeapon::OnPingTooHigh); + } + } } diff --git a/Source/Blaster/Weapon/Weapon.h b/Source/Blaster/Weapon/Weapon.h index 12f4049..61b83c9 100644 --- a/Source/Blaster/Weapon/Weapon.h +++ b/Source/Blaster/Weapon/Weapon.h @@ -127,7 +127,7 @@ protected: UPROPERTY(EditAnywhere) float Damage = 20.f; - UPROPERTY(EditAnywhere) + UPROPERTY(Replicated, EditAnywhere) bool bUseServerSideRewind = false; UPROPERTY() @@ -135,6 +135,9 @@ protected: UPROPERTY() class ABlasterPlayerController* OwnerController; + + UFUNCTION() + void OnPingTooHigh(bool bPingTooHigh); private: UPROPERTY(VisibleAnywhere, Category = "Weapon Properties")