Author Topic: Port of text adventure games to SCI  (Read 53364 times)

0 Members and 1 Guest are viewing this topic.

Offline gumby

Re: Port of text adventure games to SCI
« Reply #30 on: February 18, 2012, 10:25:25 PM »
Enchanter & Sorcerer are compiling!  Good news is that the time between compilations is accelerating & I think I'm very close to a fully working, although incomplete, code-porting tool :).  Still lots of gaps, but the logic that can be ported, has been.  

It was a good thing that I started with Zork - so far, it's the one that has the most compete symbol file.  As I've progressed, each game seems to have gotten worse & worse with the de-compilation data due to progressively more incomplete symbol files.  The result is still usable, it's just there is a large amount of code with non-descript code segments (variables, procedure names, etc).

I've just hit a brick wall with Spellbreaker.  The number of scripts exceeds 1000, exceeding the limitations of Studio (and Companion).  I was working off of the model of 'one script per procedure', and I guess at this point I'll just have to arbitrarily 'double-up' procedures within a single script to get below the maximum.  That ought to complicate things sufficiently to put a speed-bump in my progress.

I suspect that the more recent games will contain a total number of procedures that will push me over the max.

In order to not lose forward momentum, I will attempt to find other games that will compile under the current procedure-per-script model.
« Last Edit: February 18, 2012, 10:33:26 PM by gumby »
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline JRedant

Re: Port of text adventure games to SCI
« Reply #31 on: February 18, 2012, 11:19:41 PM »
You will find this true with any software development interface. There will always be "that one" that goes beyond the capable limits of what's available. Pitfall II for the Atari 2600, for example.

This brick wall is calling upon you to see how far you can stretch your own limits.

Offline Collector

Re: Port of text adventure games to SCI
« Reply #32 on: February 19, 2012, 03:25:21 AM »
I've just hit a brick wall with Spellbreaker.  The number of scripts exceeds 1000, exceeding the limitations of Studio (and Companion).  I was working off of the model of 'one script per procedure', and I guess at this point I'll just have to arbitrarily 'double-up' procedures within a single script to get below the maximum.

How about a tool to automate concatenating scripts?
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #33 on: February 19, 2012, 09:06:47 AM »
How about a tool to automate concatenating scripts?
I like that idea.  I could separate the concat logic into into it's own utility, keeping the complexity outside of the code porting tool; a post-processing step.

I don't think that such a tool would be useful in any other scenario - due to memory constraints it makes sense to keep things in separate scripts as much as possible.
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline Collector

Re: Port of text adventure games to SCI
« Reply #34 on: February 19, 2012, 02:22:17 PM »
Also, the fact that you are the first to run into the limit shows that it is not normally a factor.
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #35 on: March 12, 2012, 09:59:58 PM »
Update:  I've run through all the games.  Here's the list of games that are currently compiling:

    Deadline
    Enchanter
    Hitchhikers Guide to the Galaxy
    Hollywood Hijinx
    Infidel
    Planetfall
    Sorcerer
    Starcross
    Stationfall
    Suspect
    Suspended
    Zork I
    Zork II
    Zork III

The rest are not working, mostly because of the number of scripts.  A few have other issues that I have yet to resolve.  It is looking unlikely that this tool will support z-machine version 6 files (Arthur, Journey, Shogun & Zork Zero).

The good news is that I've got a workaround for excessive script issue by utilizing unused script numbers.  Currently, I start the procedural scripts at #300, instead of immediately after the last room number.  The room numbers are also not 'dense', so there are gaps - the reason for this is that the room numbers follow the order in which they appear in the decompilation & the gaps are other objects (it's a hierarchical presentation with regard to nesting - rooms are the top-level objects).  These two things, coupled with the fact that on average I'm only over the limit of scripts by 50, I can get another 9 games working.

Beyond Zork, Bureaucracy, Sherlock & Trinity blow completely through the script # limit and require combining scripts to get below the limit.  I may just skip these games and come back to them another time, if ever.

I have identified a game that I think I'll be able 'decompile' and include with the release of my tool, because it was given away by Activision.  Zork - The Undiscovered Underground, but I don't have a symbol file for it, so I'll have to create one.

When symbol files are 'barebones', the majority of the procedures are generically named, so I'm seeing opportunity to apply additional processing to attempt to identify what their names should be, largely based on cross-comparison of games.
« Last Edit: March 12, 2012, 10:33:30 PM by gumby »
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline Collector

Re: Port of text adventure games to SCI
« Reply #36 on: March 13, 2012, 12:47:44 AM »
So the limitation is with script "slots" rather than actual number of scripts themselves. I assume this is more of a Companion and or Studio issue than of SCI0 itself.
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #37 on: March 13, 2012, 08:50:43 AM »
There is a limitation with the maximum number that you can assign to a script (999).  They must be numbered 1 to 999, but not necessarily sequentially.  Basically, I should have been smarter up front on how I assigned the numbers to my scripts.

EDIT:  0 and 999.  Main.sc in the template game is script 0.

Collector, I think you are right regarding this is a limitation of Studio/Companion.  I thought there was an LSL2 script # that was over 1000, but I could be wrong.
« Last Edit: March 13, 2012, 07:09:11 PM by gumby »
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline gumby

Re: Port of text adventure games to SCI
« Reply #38 on: March 21, 2012, 09:45:51 PM »
I just found out that the BBC held a competition to create pictures to go along with Infocom's Hitchhikers Guide to the Galaxy, back in 2005.

http://www.bbc.co.uk/radio4/hitchhikers/game.shtml

What they did was similar to what I was thinking for my implementation of phase 2 of my project.  An image of the room, a compass rose for movement, the game text itself, and an input line; basically a text adventure with some graphical elements.  I'm not a fan of the BBC's interface, but it certainly illustrates what I was envisioning.
« Last Edit: March 21, 2012, 09:59:37 PM by gumby »
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline Collector

Re: Port of text adventure games to SCI
« Reply #39 on: March 21, 2012, 10:29:45 PM »
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #40 on: March 22, 2012, 09:06:56 AM »
Sounds like the old Legend interface.

http://www.mobygames.com/game/dos/eric-the-unready/screenshots/gameShotId,27964/
Yes, that's pretty close.  I think that the Legend interface is a bit closer to what I was thinking of, at least from a usability standpoint. The way the BBC put the input line above the text was horrible.
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline Collector

Re: Port of text adventure games to SCI
« Reply #41 on: March 22, 2012, 01:42:56 PM »
The BBC interface also takes up too much of the screen. That was one of the things that I always hated about the LA interface, too. It was absurd that it took up a full third of the screen.
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #42 on: March 25, 2012, 09:26:49 PM »
Update:  The additional games that could fit within the script limit now compile.  These are:

   Ballyhoo
   Borderzone
   Cutthroats
   Leather Goddess of Phobos
   Lurking Horror
   Moonmist
   Nord and Bert
   Plundered Hearts
   Seastalker
   Spellbreaker

This brings the total count of compiled games to 24.

Wishbringer additionally could not compile due to the excessive number of scripts.  Witness has a problem with decompilation which I haven't addressed yet.
« Last Edit: March 25, 2012, 09:32:20 PM by gumby »
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition

Offline Collector

Re: Port of text adventure games to SCI
« Reply #43 on: March 25, 2012, 09:49:28 PM »
Are you referring to compiling with Omni's build of SCI Studio?

There is a limitation with the maximum number that you can assign to a script (999).  They must be numbered 1 to 999, but not necessarily sequentially.  Basically, I should have been smarter up front on how I assigned the numbers to my scripts.

EDIT:  0 and 999.  Main.sc in the template game is script 0.

Collector, I think you are right regarding this is a limitation of Studio/Companion.  I thought there was an LSL2 script # that was over 1000, but I could be wrong.

I just realized that the limit may be an SCI0 limitation. Sierra developed in DOS, meaning that they were limited to the DOS 8.3 naming convention. Thus, SCRIPT.000 to SCRIPT.999. It might also be part of the reason that the naming convention changed in later versions of SCI. Use of the extension to identify the resource instead of the name would allow scripts from 0.SCR to 99999999.SCR. Not to suggest that later versions of SCI supported that many scripts, but that the OS no longer placed a limit on the number.
KQII Remake Pic

Offline gumby

Re: Port of text adventure games to SCI
« Reply #44 on: March 26, 2012, 06:24:42 PM »
Are you referring to compiling with Omni's build of SCI Studio?

No.  Studio had this limitation prior to Omni's build.  As does Companion.

Interesting guess as to the limit: the DOS restricted file names.  It makes sense, and I also bet that Sierra never thought there would be a need for more scripts than 1000.  Makes me wonder what the average script count is for an SCI0 game.
In the Great Underground Empire (Zork port in development)
Winter Break 2012 Rope Prop Competition


SMF 2.0.19 | SMF © 2021, Simple Machines
Simple Audio Video Embedder

Page created in 0.044 seconds with 22 queries.