From 8ace8a843affd94fe44035a0cd51c529d31b5162 Mon Sep 17 00:00:00 2001 From: Calypto Date: Fri, 10 Apr 2026 01:20:17 -0400 Subject: [PATCH 1/2] Fix MaxSavedMoves replication The client log would show this despite the server's configured value being higher: BS_xPlayer: Exceeded max saved moves (250), consider increasing --- Classes/BS_xPlayer.uc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Classes/BS_xPlayer.uc b/Classes/BS_xPlayer.uc index 0d4b545..83ee6f8 100644 --- a/Classes/BS_xPlayer.uc +++ b/Classes/BS_xPlayer.uc @@ -4005,6 +4005,18 @@ event ClientSetViewTarget(Actor a) } } +// Configured MaxSavedMoves doesn't get replicated to clients without this -Calypto +// BS_xPlayer: Exceeded max saved moves (250), consider increasing +simulated event PostNetReceive() +{ + Super.PostNetReceive(); + + if (RepInfo != None && MaxSavedMoves != RepInfo.MaxSavedMoves) + { + SetMaxSavedMoves(); + } +} + // From ModernPlayer by kokuei // See PlayerController.uc on how this function works. // From e068edb4430c3681b75ccc16bc0b4533e384915f Mon Sep 17 00:00:00 2001 From: Calypto Date: Thu, 30 Apr 2026 13:53:30 -0400 Subject: [PATCH 2/2] Add bAllowTerrainDodge setting --- Classes/MutUTComp.uc | 5 +++ Classes/UTComp_ServerReplicationInfo.uc | 4 +- Classes/UTComp_xPawn.uc | 56 +++++++++++++++++++++++++ 3 files changed, 64 insertions(+), 1 deletion(-) diff --git a/Classes/MutUTComp.uc b/Classes/MutUTComp.uc index 17217e0..848bd44 100644 --- a/Classes/MutUTComp.uc +++ b/Classes/MutUTComp.uc @@ -211,6 +211,7 @@ var UTComp_Whitelist Whitelist; var string OriginalStatsClass; var config bool bDisableCameraShake; +var config bool bAllowTerrainDodge; function PreBeginPlay() { @@ -933,6 +934,7 @@ function SpawnReplicationClass() RepInfo.TeamRadarCullDistance = TeamRadarCullDistance; RepInfo.bDisableCameraShake = bDisableCameraShake; + RepInfo.bAllowTerrainDodge = bAllowTerrainDodge; for(i=0; i 0 ensures we are dodging away from the slope's face) + if (HitActor != None && HitActor.IsA('TerrainInfo') && (Dir Dot HitNormal) > 0) + { + SavedPhysics = Physics; + SetPhysics(PHYS_Falling); + + bDidDodge = PerformDodge(DoubleClickMove, Dir, Cross); + + // Restore physics state if the dodge failed or didn't lift us + if (!bDidDodge || Physics == PHYS_Walking) + SetPhysics(SavedPhysics); + + return bDidDodge; + } + } + + return Super.Dodge(DoubleClickMove); +} + defaultproperties { bAlwaysRelevant=True