[Scummvm-tracker] [ScummVM :: Bugs] #15225: SCI: PEPPER: Franklin's puzzle box doesn't appear to be solvable (bug or feature?)

ScummVM :: Bugs trac at scummvm.org
Wed Jun 26 09:22:12 UTC 2024


#15225: SCI: PEPPER: Franklin's puzzle box doesn't appear to be solvable (bug or
feature?)
-------------------------+------------------------------------------
Reporter:  eriktorbjorn  |       Owner:  (none)
    Type:  defect        |      Status:  new
Priority:  normal        |   Component:  Engine: SCI
 Version:                |  Resolution:
Keywords:                |        Game:  Pepper's Adventures in Time
-------------------------+------------------------------------------
Comment (by eriktorbjorn):

 Something like this might work, then:

 {{{
 diff --git a/engines/sci/engine/script_patches.cpp
 b/engines/sci/engine/script_patches.cpp
 index afc213d4607..bc1ece24592 100644
 --- a/engines/sci/engine/script_patches.cpp
 +++ b/engines/sci/engine/script_patches.cpp
 @@ -13279,10 +13279,35 @@ static const uint16 pepperPatchGlassJar[] = {
         PATCH_END
  };

 +static const uint16 pepperSignaturePuzzleBox[] = {
 +       SIG_MAGICDWORD,
 +       0x72, 0x7e, 0x07,                    // lofsa   blankSpot[0ef5]
 +       0x36,                                // push
 +       0x72, 0x84, 0x02,                    // lofsa   t3[09fb]
 +       0x4a, 0x06,                          // send    06
 +       0x39, 0x6e,                          // pushi   6e              ;
 110, 'n', init
 +       0x78,                                // push1                   ;
 x
 +       0x72, 0x7e, 0x07,                    // lofsa   blankSpot[0ef5]
 +       0x36,                                // push
 +       0x72, 0x94, 0x05,                    // lofsa   t11[0d0b]
 +       0x4a, 0x06,                          // send    06
 +       0x39, 0x6e,                          // pushi   6e              ;
 110, 'n', init
 +       SIG_END
 +};
 +
 +static const uint16 pepperPatchPuzzleBox[] = {
 +       PATCH_ADDTOOFFSET(+5),
 +       0x94, 0x05,                         //         t11[0d0b]
 +       PATCH_ADDTOOFFSET(+10),
 +       0x84, 0x02,                         //         t3[09fb]
 +       PATCH_END
 +};
 +
  //          script, description,
 signature                            patch
  static const SciScriptPatcherEntry pepperSignatures[] = {
         {  true,   894, "glass jar fix",
 1, pepperSignatureGlassJar,             pepperPatchGlassJar },
         {  true,   928, "Narrator lockup fix",
 1, sciNarratorLockupSignature,          sciNarratorLockupPatch },
 +       {  true,   116, "Puzzle Box solvability fix",
 1, pepperSignaturePuzzleBox,            pepperPatchPuzzleBox },
         SCI_SIGNATUREENTRY_TERMINATOR
  };
 }}}

 But I'm no @sluicebox, so I'm sure that patch can be refined. And of
 course, it'll need a comment to go with it.
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/15225#comment:22>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list