[comp.sys.mac.hypercard] The Manhole

leue@galen.steinmetz (01/05/89)

I bought my 6-year-old daughter "The Manhole", a large commercial
HC stack which implements a sort of adventure game environment,
complete with sounds and some simple animation.  I like the concept
and the artwork -- it's a large, interesting environment to explore; 
not a shoot-em-up.  My daughter likes it too.

However, I am a bit distressed with the instability of the product.
(I think it's Rev 1.2).  It often hangs the computer (mouse moves,
but no responses to any clicks), and also the sound often gets lost:
you'll come into a "room", and a sound of some sort will play.  Then
later in the game, you'll enter the same room, do the same thing, and
no sound will play.  The absence of the sound is often a prelude to
the eventual demise of the system.

My question to the net is:  how does the stability of this product compare
with other commercial HC stacks?  Should the bugs be blamed on HC itself,
or are they specific to this product?  Has anyone else experienced similar
problems with this product?

Please note:  This is NOT a flame at the manufacturer!  Overall, I still
like the program, and would recommend it for young children.  (Warning:
it takes up a lot of hard disk -- it is delivered on 4 800k disks, each
one nearly full.)

-Bill Leue
leue@ge-crd.arpa,  uunet!steinmetz!galen!leue
These opinions are mine alone, not those of the GE Company 

dan@Apple.COM (Dan Allen) (01/07/89)

In article <12879@steinmetz.ge.com> leue@galen.UUCP (Bill Leue) writes:
>However, I am a bit distressed with the instability of the product.
>(I think it's Rev 1.2).  It often hangs the computer (mouse moves,
>but no responses to any clicks), and also the sound often gets lost:
>you'll come into a "room", and a sound of some sort will play.  Then
>later in the game, you'll enter the same room, do the same thing, and
>no sound will play.  The absence of the sound is often a prelude to
>the eventual demise of the system.

As far as stackware being reliable, generally HC stacks are as robust as
HyperCard itself, and HC is constantly becoming more and more robust,
with version 1.2.2 being very good, in fact, the best yet.

A stack without any sounds or XCMDs will VERY VERY RARELY HANG THE MAC.

Once an XCMD is introduced into the picture (or someone's DA or INIT for
that matter), HyperCard is no longer the only piece of code to be
judged.  Most bombs, crashes, and hangs of various sorts occur because
of some strange INIT, patch, desk accessory, or XCMD that is buggy.  The
number of these critters is very large and Apple tests HyperCard largely
without any of these installed, unless Apple authored them, i.e., Apple
tests HyperCard with AppleShare, the Scrapbook, the Chooser, etc.
Testing does try to test things like Suitcase and Pyro and other fun and
neat INITs, but they can't test them all.  In any case, these add-ons
are usually about 50% reliable: in other words, 1 out of every 2 that I
try causes problems, so I stick with a few old reliable ones, or ones
that I have written.

Now, sounds are an interesting problem.  Supposedly System 6.0 and
HyperCard had some bad sound interaction problems, although I never
experienced any of them.  System 6.0.2 did fix these problems.  (That
is, the people who DID have problems with 6.0 reported the problems
fixed with 6.0.2.)

The other problem you may be experiencing is that large sounds may fit
into memory some times, and other times they might not.  I bet that
running "The Manhole" in a machine with more memory might cause your
sound related problems to go away.

The only problem that should occur, however, is that the large sound
would simply not play: you should NOT have any crashes or bombs.  Note
that problems like this are usually the fault of a naive stackware
developer that creates and uses a stack on a Mac with a lot of memory
and doesn't try it much on a 1 MB Mac, for instance.

It is unfortunately possible to create a large card in HyperCard running
in a 3 MB partition that when run in a 1 MB partition simply cannot be
read into memory.  The same is true of sounds, as mentioned above.  The
solution to this problem is to always test stacks with HyperCard running
in a 700-750 KB partition under MultiFinder.  (It turns out that a
vanilla Macintosh System 6.0.2 on a Mac plus with no inits, no debugger,
no RAM cache, no AppleShare, no nothing--has about 700 KB free for an
application.  No MultiFinder either.  Just an app.)

It is possible to skillfully cut up sounds into smaller sized pieces and
to play them back together seemlessly, a technique pioneered by Apple's
Tim Oren.  This technique is documented in several places, including
Danny Goodman's Developer's Handbook.

CONCLUSION: Flaky stacks CAN be created by the man on the street, and in
fact, the naive stack designers that are not aware of some of these
problems have created many problem stacks.  Such is life.

The good news is that anyone working with 6.0.2, and HC 1.2.2, on a
system with few to no INITs, and running in a 750 KB partition can
create robust stacks.  If you do not know about Mac programming, then
stay away from XCMDs until you have learned more.  And if you are going
to digitize a lot of sounds, cut them up into small (< 40KB) chunks.
And you should have a good stack.  (This all assumes your HyperTalk is
good as well.)

Dan Allen
HyperCard Team
Apple Computer

johnsot@jacobs.CS.ORST.EDU (Tim G. Johnson) (01/08/89)

The problems you describe are ones I've seen with Hypercard before. It is
caused by the Hypercard playing the sounds. It seems to be a problem with
System 6.0 and is fixed in System 6.0.2. Don't blame the stack, its only
fault is that it tried to use sound on a buggy operating system (HC) running
on top of a buggy operating system (MacOS 6.0). Anyway, upgrading to System
6.0.2 should solve your problems.
-Tim G. Johnson
-johnsot@jacobs.CS.ORST.EDU

leue@galen.steinmetz (01/09/89)

Thanks to both Dan Allen and Tim Johnson for taking the time to respond
to my questions about large HC stacks, particularly "The Manhole", a
commercial game stack.  Both gentlemen felt that the problem was related
to one of two environmental issues:  the total amount of memory
available, and the revision of the O/S used.

I guess I should have mentioned that I was running the program on a
1 meg Mac Plus.  I WAS, and am, using System 6.0.2, however, so a
buggy O/S should not have been a cause of the problems.  However, I
suspect that memory usage is probably a culprit, as I have several INIT's
loaded.  I will try removing the INIT's and see if the problem goes
away or changes.  Thanks again!

-Bill
leue@ge-crd.arpa
uunet!steinmetz!galen!leue
(These opinions are not those of the GE Company)