Tool-assisted game movies
When human skills are just not enough

Submission #6134: c-square's DOS Quest for Glory II: Trial by Fire in 08:58.98

Console: DOS
Game name: Quest for Glory II: Trial by Fire
Game version: unknown
ROM filename: Sierra.com
Emulator: JPC-rr 11.2 w/ TASScript 2.0
Movie length: 08:58.98
FrameCount: 32339
Re-record count: 6518
Author's real name:
Author's nickname: c-square
Submitter: c-square
Submitted at: 2018-10-28 06:25:07
Text last edited at: 2018-11-08 16:28:41
Text last edited by: fsvgm777
Download: Download (41913 bytes)
Status: published
Click to view the actual publication
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:


It's one small step for a DOS TAS, one giant leap for DOS TASsing.


This submission is a 9.7 second improvement to my previous submission, mostly from some optimized inputs and better choice of character class. More importantly, however, this TAS was done entirely using TASScript 2.0, a new custom upgrade I made to JPC-rr which finally provides reasonable refactoring functionality to the emulator, among other significant advantages.


There are two encodes. The first one cuts out two long and boring waits in Raseir. Probably the one to watch unless you're really interested in details of the screen transition time nudges.

(Link to video)

The second is the full encode, for those who want to manage the waits themselves (or just watch them).

(Link to video)

Also, I've added a HUD to each to show what's going on with the game clock, where it's important.

Game objectives

  • To become a Hero! (again)
  • Plays on Hardest Difficulty
  • Aims for fastest time
  • Contains Speed/Entertainment Trade-offs
  • Emulator used: JPC-rr 11.2 (Modified with TASScript 2.0)
  • Game Version 1.102

TAS Details

My previous submission text has all the major details of the tricks used to skip the elementals, manipulate in-game time, as well as the speed/entertainment trade-off in the run. I won't repeat those here and just list the improvements.


Choosing the Right Character Class

In my previous run, I wasted time by choosing a thief and giving him magic, whereas a basic wizard's stats are more than enough to finish the game. This was probably the most embarrassing mistake in my first run and I'm glad to have it fixed, saving 0.3 seconds.

Noun Stacking

A nice feature of this version of the Sierra Creative Interpreter is that it only reads the first verb and the last noun you enter. This allows you to use the same verb more than once for different nouns by stacking the nouns. For example, you can "Buy Lamp" to purchase the lamp and then hit <F3> to bring up "Buy Lamp" again and add "Map" to the end of it to purchase the Map. If you wanted to, you could then "Buy Lamp Map Incense" to get the incense and so forth. Seeing as any time you type a key costs 0.1 seconds, eliminating unnecessary typing can add up to big savings fast.

Click to Submit

Speaking of eliminating unnecessary typing, you can submit your command by clicking on the text input box instead of typing Enter. Since clicking is instantaneous compared to the 0.1 seconds to hit enter, it made for a big time saver.

Command Buffering

There are three places in the run where we are just waiting for the clock to tick down. Each time, I pre-entered my next command so that I could then recall it later with a single <F3> key-hit. The trick is that the clock doesn't tick when the text input box is open, so the commands I want to buffer have to be typed in the 1 second between clock ticks.

Early Fragmentation Error

In my last run, I encountered a fragmentation error after the final boss was defeated, preventing me from ending input early. This time I sell two beards at the start of the run to trigger the error early, meaning the joke message doesn't appear when the fragmentation error happens a second time at the end of the run. Thus, I can end input a little earlier. As a side benefit, this also gives me enough money to noun-stack my purchases.

Subframe Improvements

Each frame at JPC-rr's default CPU speed is 14 milliseconds long and all the inputs in my previous submission were limited by that frame rate. The TASScript 2.0 enhancement (see below) allows for extremely precise control of inputs, down to the sub-millisecond, and I took advantage of that to optimize many of my inputs within the 14 ms frame window. There are certainly many more inputs that could be improved, however I think if I tried to sub-frame optimize every single input in this nine-minute TAS, it would never get submitted.

TASScript 2.0

I have been working on this submission for over a year in my spare time, and the majority of that time has been writing the TASScript enhancement to JPC-rr. I won't go into the details, as I have created a separate thread for that, but it feels great to submit this as proof that the refactoring limitations of JPC-rr have finally been solved. I hope that this opens up new possibilities for current DOS TASsers and lowers the complexity barrier of the emulator for new ones. If you've ever considered doing a DOS TAS, but have been concerned about the usability of the JPC-rr emulator, now is a great time to give it a try with the TASScript enhancement.

In case you're interested, here's the TASScript for this run.


HDD, 16 tracks, 63 sectors, 16 sides.

Timestamp MD5 Size Filename
19900101000000 eeca13109c381afef6584d78daaccab2 7976 ADL.DRV
19900101000000 57a3da77af2b48851cf048e5752695fb 2049 CGA320M.DRV
19900101000000 4b5bd8739e73f44ce5562b93b2723287 3734 CMS.DRV
19900101000000 d80d8207b80d8d108c749a2d5629cb15 3273 EGA320.DRV
19900101000000 61f35eec8998802abe2118b26e0c9cfa 574 EXISTS.COM
19900101000000 4ff2dc339352972581da584cc0a8d2f1 1782 FONT.000
19900101000000 28d7efe8c850bfb52231fc58567e25cc 507 GODIR.COM
19900101000000 2bc97203eb593636d0271569e3c01f92 2212 HERCMONO.DRV
19900101000000 fdf344726b857a44934eb14dd0d37c59 449 IBMKBD.DRV
19900101000000 121983ae1b4df7c47986bd32f5790ab3 4354 IBMPS1.DRV
19900101000000 7271fb1d6430c1807584021e8d01dc58 13355 INST.EXE
19900101000000 20aeb5df74627a17202ff290925f5f1c 2169 INSTALL.BAT
19900101000000 e152f2bce8445fa4fba255d1668b8416 6464 INSTALL.HLP
19900101000000 549c24a94d6a602591909039f4bd9ac7 727 INSTGAME.BAT
19900101000000 c75b73974160ff652a909a0d01f97214 607 JOYSTICK.DRV
19900101000000 3a24c298a2d77b07d9459ba89d9bf375 2745 MCGA320.DRV
19900101000000 1216bb30f321c652909aa1c2239dd7d4 1989 MT32.DRV
19900101000000 fe18a816a08c89f245f9143642bf84eb 212119 RESOURCE.000
19900101000000 733686eea71255794a9762f683ac789f 867866 RESOURCE.001
19900101000000 3d5223fd488fb04025ba3199485a0756 790750 RESOURCE.002
19900101000000 f0544e220e3a5b66df2070d9638527b4 972804 RESOURCE.003
19900101000000 7cb86c2af9399b81a1f796a6b07aeeb3 983617 RESOURCE.004
19900101000000 f961b3028d27f36b778e10bfd78e3da0 79 RESOURCE.CFG
19900101000000 06d0cb2c9496d7d4494b0f37f2c6c4c2 6906 RESOURCE.MAP
19900101000000 2a20c5077e59902e84f26982b502c10a 59150 SCIV.EXE
19900101000000 48e6faeb6af8e540fed0523f17ec4c0d 538 SIERRA.COM
19900101000000 7ed06259b381a75fe4e761e4bbeb963d 9672 SNDBLAST.DRV
19900101000000 c645587408e33998e9fc6f51be4ee639 500 SPACE.COM
19900101000000 380f442686174ae0282b851ac4c1e765 1448 STD.DRV
19900101000000 f70edf481b1a320fd10190fe041c29cc 4429 TANDY.DRV
19900101000000 3e0716270e0953a5a64c95a9765b9c9f 2999 TANDY320.DRV
19900101000000 bf2856d43f4bc063fe20820651dc1657 3893 TANDY3V.DRV
19900101000000 da0e7a40996a64224d918069ef8adea9 476 TANDYKBD.DRV
19900101000000 04a413f79a5e15bcad59ae5d39824694 10 TRIAL.BAT
19900101000000 d4129050848dc8628e43b64ac751a28e 900 TSTDRIVE.EXE
19900101000000 26913b564c71d9fb7f83e0f4f165d999 7 VERSION
19900101000000 5511c133471681cab70295d860be96c4 2449 VOCAB.913
19900101000000 1d3beaac41d0d09790a47c8dc1cadf85 112 VOCAB.994
19900101000000 b99b2ceac1a672c6e4785b48d6dc11be 609 VOCAB.995
19900101000000 f230096194cc9791737b634b36ac7980 590 VOCAB.996
19900101000000 e501f7de3c7a3b68d6d11f0b965b6697 8339 VOCAB.997
19900101000000 0ef7f63b24dfe1bbeea28e2f8ede90d6 1229 VOCAB.998
19900101000000 df638320d85ee4029e6c3d62b86f7043 1148 VOCAB.999
19900101000000 e6a4bd8b2f3391791797d4a372c0a7ab 27 _HDTRIAL.BAT
19900101000000 d7d2d88a7695db8e0f39bd81cd7eec9f 1071 __INSTH.BAT

feos: Nice job with the improvements. Accepting to obsolete [3551] DOS Quest for Glory II: Trial by Fire (1.102) by c-square in 09:08.69.

As for tier, it seems DOS games that we've published just don't get too high entertainment rating in general. But the current QfG2 publication is far from the bottom, so it makes sense to inherit the tier for this update.

fsvgm777: Processing.

Similar submissions (by title and categories where applicable):