From d6ac62e2613e0d75225f3874055d21bc488062bb Mon Sep 17 00:00:00 2001 From: feos Date: Sun, 16 Mar 2025 23:07:20 +0300 Subject: [PATCH] dsda: disable wipe for imported demos internally, wipe is rendered within a single "frame" so no input is processed. but we can't know from the movie which frame is wipe, so we can't insert empty frames to make imported movies work with our wipe - which has to happen across frames so we could capture every interim state of it. when exporting movies, wipe frames can be dropped based on lag info which we're currently setting for wipe only. --- src/BizHawk.Client.Common/movie/import/DoomLmpImport.cs | 1 + src/BizHawk.Client.Common/movie/import/HereticLmpImport.cs | 1 + src/BizHawk.Client.Common/movie/import/HexenLmpImport.cs | 1 + 3 files changed, 3 insertions(+) diff --git a/src/BizHawk.Client.Common/movie/import/DoomLmpImport.cs b/src/BizHawk.Client.Common/movie/import/DoomLmpImport.cs index 84bb873b81..eac2a700d1 100644 --- a/src/BizHawk.Client.Common/movie/import/DoomLmpImport.cs +++ b/src/BizHawk.Client.Common/movie/import/DoomLmpImport.cs @@ -47,6 +47,7 @@ namespace BizHawk.Client.Common FastMonsters = input[i++] is not 0, NoMonsters = input[i++] is not 0, TurningResolution = DSDA.TurningResolution.Shorttics, + RenderWipescreen = false, }; _ = input[i++]; // DisplayPlayer is a non-sync setting so importers can't* set it syncSettings.Player1Present = input[i++] is not 0; diff --git a/src/BizHawk.Client.Common/movie/import/HereticLmpImport.cs b/src/BizHawk.Client.Common/movie/import/HereticLmpImport.cs index d8268c0622..7c70e4e564 100644 --- a/src/BizHawk.Client.Common/movie/import/HereticLmpImport.cs +++ b/src/BizHawk.Client.Common/movie/import/HereticLmpImport.cs @@ -32,6 +32,7 @@ namespace BizHawk.Client.Common Player3Present = input[i++] is not 0, Player4Present = input[i++] is not 0, TurningResolution = DSDA.TurningResolution.Shorttics, + RenderWipescreen = false, }; Result.Movie.SyncSettingsJson = ConfigService.SaveWithType(syncSettings); diff --git a/src/BizHawk.Client.Common/movie/import/HexenLmpImport.cs b/src/BizHawk.Client.Common/movie/import/HexenLmpImport.cs index 0518cfe3fd..55ba32de29 100644 --- a/src/BizHawk.Client.Common/movie/import/HexenLmpImport.cs +++ b/src/BizHawk.Client.Common/movie/import/HexenLmpImport.cs @@ -36,6 +36,7 @@ namespace BizHawk.Client.Common Player4Present = input[i++] is not 0, Player4Class = (DSDA.HexenClass) input[i++], TurningResolution = DSDA.TurningResolution.Shorttics, + RenderWipescreen = false, }; _ = input[i++]; // player 5 isPresent _ = input[i++]; // player 5 class