znalazłem 23-letni błąd w crimsonland (2003) gra ma perk o nazwie stacjonarny przeładowywacz, który zwiększa prędkość przeładowania 3x, jeśli stoisz w miejscu. ma przypadek brzegowy, w którym logika gry "czy przeładowanie zakończone?" jest sprawdzana przy użyciu normalnego czasu klatki, ale perk odejmuje 3x na tick później. jeśli timer jest między 1x a 3x czasu klatki, może dojść do podprzepełnienia w jednej aktualizacji po tym, jak sprawdzenie uzupełnienia już się odbyło. prowadzi to do degeneracyjnej pętli, w której magazynek nigdy się nie uzupełnia, możesz wystrzelić jeden pocisk i wrócić do przeładowania na zawsze. jest to szczególnie widoczne z perkiem wściekłego przeładowywacza, który wystrzeliwuje strzał plazmy w połowie przeładowania. naturalnie, to zostało naprawione w mojej wersji gry.
Dokumentuję wszystkie oryginalne błędy tutaj, a moja wersja ma nawet opcję --preserve-bugs, która zachowuje te zachowania. Jest to przydatne do testowania różnicowego i celów zachowawczych.
64