Patch for Quest 5.8.0 Transcript Issue

The transcript stuff was my contribution, and yes: I feel appropriately guilty.

I have a fix, but I'd really like someone else to look and see if I have any errors or flaws or anything.

Click here to get the Gist: https://gist.github.com/KVonGit/ae3ee4b1aef830456482a4211faad587/raw/54a7ce2ff9450cfaa10717627d1efa3d573d44c2/PatchForQuest5_8_0.aslx


<?xml version="1.0"?>
<!-- 
	Patch for Quest 5.8.0
	by KV
	8-31-2024
	Version 6
        Fixes **major** issues with the transcript.
-->

<library>

  <object name="Patch_Obj_For_5_8">
    <inherit name="editor_room" />
    <description>
      This object will initialise and add the patch to disable the bad transcript code in JS.
    </description>
    <attr name="_initialise_" type="script"><![CDATA[
     JS.eval ("/* ----TRANSCRIPT-TURN_SCRIPT PATCH---- */ var ASLEventBak = ASLEvent; ASLEvent = function(handler, params){ /*console.log(ASLEvent.caller, handler)*/ if (handler === 'UpdateTranscriptString'){ /*console.log ('Doing nothing.');*/ return; } ASLEventBak(handler, params) }; showTranscript = function(){ showScrollback(); }; printTranscript = function(){ showScrollback(); }; SaveTranscript = function(){ /* DO NOTHING */ }; /*  ====END OF TRANSCRIPT-TURN_SCRIPT PATCH==== */")
    ]]></attr>
  </object>


  <command name="view_transcript_cmd" pattern="[view_transcript_cmd]">
    <script>
      JS.showScrollback()
      game.suppressturnscripts = true
    </script>
  </command>

  <command name="transcript_on_cmd" pattern="[transcript_on_cmd]">
    <script>
      msg ("The transcript doesn't turn on or off. It just is.")
      msg("Enter {command:VIEW TRANSCRIPT} to open it.")
      game.suppressturnscripts = true
    </script>
  </command>

  <command name="transcript_off_cmd" pattern="[transcript_off_cmd]">
    <script>
      msg ("The transcript doesn't turn on or off. It just is.")
      game.suppressturnscripts = true
    </script>
  </command>
   
</library>

UPDATED 8-31-2024 00:34 UTC


I could use an extra pair of eyes on this before I declare that it is good to go.


A temporary "fix" for online game creators is to add this line to your game's init interface script:

JS.eval ("function SaveTranscript(){ function noop(){savingTranscript = false; console.warn('[:QUEST MESSAGE:> SaveTranscript feature not available online. For now, you can enter showScrollback() in this HTML console to view the transcript with an option to print it.');};savingTranscript = false; SaveTranscript = noop; window.alert('IMPORTANT!!! The transcript feature does not work correctly while playing online!!! You can, however, enter showScrollback() in the HTML dev tools console at any time to view the transcript with an option to print it. (Press F12 to open the dev tools.)'); console.warn('[:QUEST MESSAGE:> SaveTranscript feature not available online. For now, you can enter showScrollback() in this HTML console to view the transcript with an option to print it.');}")

image


I can't test that at the moment because the server is down, but I'm 99% sure that will keep your game from crashing if the player were to enter: TRANSCRIPT, TRANSCRIPT ON, SCRIPT, SCRIPT ON, ENABLE SCRIPT, or ENABLE TRANSCRIPT.

I just tested this online, and it works.


quest-online-transcript-fix


This topic is now closed. Topics are closed after 14 days of inactivity.

Support

Forums