From 920c0eada56d7c3cce0470a9f96803070acfb10d Mon Sep 17 00:00:00 2001 From: tmyqlfpir <80724828+tmyqlfpir@users.noreply.github.com> Date: Sun, 20 Aug 2023 21:38:38 +1000 Subject: [PATCH] Rate limit stuckage RNG for skedar doors Limits calculation to 15 times per second, close to that to how fast this would execute on original hardware --- src/game/propobj.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/game/propobj.c b/src/game/propobj.c index 6a309193d..dd37d7cd9 100644 --- a/src/game/propobj.c +++ b/src/game/propobj.c @@ -20056,7 +20056,12 @@ bool doorCalcIntendedFrac(struct doorobj *door) if (door->base.flags3 & OBJFLAG3_DOOR_STICKY) { s32 value = (random() % 64) + 30; +#ifndef PLATFORM_N64 // emulate low fps cal rate for stackage test + if (((g_Vars.lvframenum % value) == 0) + && ((g_Vars.lvframe60 & 3) == 0)) { +#else if ((g_Vars.lvframenum % value) == 0) { +#endif bool dothething = false; struct doorobj *loopdoor;