www.retrosoftware.co.uk
http://www.retrosoftware.co.uk/forum/

More text adventure stuff
http://www.retrosoftware.co.uk/forum/viewtopic.php?f=83&t=529
Page 2 of 2

Author:  tautology [ Sun Dec 05, 2010 9:28 pm ]
Post subject:  Re: More text adventure stuff

It was for feedback on the screen layout. I'm in agreement with you - I always thought that the text should be the important thing and graphics should be complimentary (unlike, say Sorcerer of Claymorgue Castle on the Atari - where there's 4 lines for all text)!

Author:  PaulA [ Wed Dec 08, 2010 9:40 pm ]
Post subject:  Re: More text adventure stuff

Just found this article that talks about the text compression used in Colossal Cave.

http://myweb.tiscali.co.uk/themicrouser/adventures/01-12.htm

Author:  tautology [ Mon Dec 13, 2010 4:22 pm ]
Post subject:  Re: More text adventure stuff

Yeah I had a dig through the source code for the level 9 interpreter and it does seem to be a trigram dictionary encoder. I did initially try this and got mixed results. I think I need to re-evaluated the text encoding, and maybe customise it a bit more for the SAGA style of games. So far I've seen the following types in "the wild":
  • Digram replacement (used in BBC Quill and my project for the moment)
  • Trigram replacement (Level 9)
  • Dictionary replacement (Robico and Acornsoft)
  • Munge 1 byte into 5 bits (Infocom)
  • Recursive digrams (From the link supplied by RichTW)

I've still got to balance code size and dictionary size against the decompressed size. Which is why I went the digram route: I get about 60% compression and a dictionary size of 254 bytes. If I increase the dictionary size I ought to be careful that I get a similar decrease in string size. Again, if the code to decompress takes an extra page, then I need to make sure I can compress more than a page from the data.

Author:  tautology [ Sun Feb 13, 2011 1:17 pm ]
Post subject:  Re: More text adventure stuff

I've updated the project page to be similar to the one for Onslaught as the wiki software is telling me it's too big!

Not much to report except that it's now using text windows and some more bugs are fixed.

I'm going to port Lone Survivor across to this format and do a point release for that game only, as it should be playable now and it was never released on any Acorn platform. (I've got to revisit my SAGA ripping code, which I wrote in 1994 to do this!)

Author:  Samwise [ Sun Feb 13, 2011 2:23 pm ]
Post subject:  Re: More text adventure stuff

If you've done that much work on it, perhaps that's also a reminder for me to ask if you want to add this to the WIP page and give you a forum of your own ... seems to me like you've made quite a bit of progress, so it seems a shame not to let ppl find it without trawling through the forums. :) Your choice, of course.

Nice to read the latest update - I think bringing Lone Survivor to the platform is a great idea - the same ethos we started the Z-Machine Interpreter with.

Good to hear you're keeping the momentum going in the new year. :lol:

Sam.

Author:  tautology [ Mon Feb 14, 2011 6:32 pm ]
Post subject:  Re: More text adventure stuff

I got some programming time yesterday - though most of it was spent rewriting my code to extract the data file. So I suppose it's time to do a beta release.

Attached is the port of Lone Survivor; I've played through to the end (using the solution on CASA) and it works (though there are a couple of bugs in Gunness's solution).

The zip file contains a bootable .ssd file with a the freeware retro software loader, the data file ($.LS) and the engine ($.ENGINE). It also contains the raw .dat file if you want to play it with ScottFree.

I suppose we should make a proper project page for it on the wiki (linking to the diary). The eventual plan with be a full source code release, once the engine works with the majority of games!

Attachments:
Lone Survivor.zip [13.47 KiB]
Downloaded 12 times

Author:  RichTW [ Mon Feb 14, 2011 9:28 pm ]
Post subject:  Re: More text adventure stuff

Oh dear, I can't get out the first room. Never my strong point, text adventures... Nevertheless I'm going to persevere...

Author:  tautology [ Mon Feb 14, 2011 10:37 pm ]
Post subject:  Re: More text adventure stuff

I'll admit that it isn't the best one - I mainly chose it because it was never released on the Beeb.

To leave the bed, you need to get rid of the canopy, use your other senses to find something; then you need to do what you do to leave a bed.

As its a SAGA game everything will be verb noun; so don't try extra words as they won't work :-)

Author:  RichTW [ Tue Feb 15, 2011 9:05 am ]
Post subject:  Re: More text adventure stuff

Thanks for the hints! Got there in the end (and now I'm stuck again...). I find the descriptions somewhat sparse in this adventure though - not much a picture being painted there!

Still, it's great to see that it actually all works!! How are you compressing the text in the end? What kind of % compression do you get?

Author:  tautology [ Tue Feb 15, 2011 10:20 am ]
Post subject:  Re: More text adventure stuff

The compression I got for the various bits are:
Code:
Header: 56 -> 11
Actions: 3056 -> 1818
Words: 1050 -> 840
Rooms: 902 -> 543
Messages: 1944 -> 1439
Objects: 1514 -> 1034

Where the first number is the raw data size and the second is the compressed. Add 254 bytes for the text compression table leads to the final compressed size which is: 8522 -> 5939. So around 2K saved.

I can probably squeeze some more out of it, especially with the text itself (which is covered in rooms, messages and objects). Unfortunately the terseness of the text works against me here!

Author:  tautology [ Fri Feb 18, 2011 1:21 pm ]
Post subject:  Re: More text adventure stuff

Finally, we have a Master version with graphics and text:
Attachment:
sagagraphics.png [4.51 KiB]
Downloaded 89 times

I wanted to get out a proof of concept, so I've drawn the graphics full size.

There are some differences between these graphics and those on the Spectrum/Commodore:
  • No colour artifacts between attribute blocks :-)
  • Visible distinctions between fill blocks - on the Speccy and C64 these disappear due to artifacting; so the BBC version looks better!
  • Paper and Ink colours have been locked to 0 and 7 (black and white). This is to stop the text screen background changing and may be changed later.
This isn't the final release, just to get something out!

At the moment it's reading both the data, graphics and code from memory so I'm abusing shadow memory, &E00 DFS and also I'm using the Master's line fill plot command; so it will only work on a Master at the moment.

Memory sizes (for The Golden Baton) are:
  • Code: &DC7 bytes (Just under 3.5KB)
  • Data: &11E8 bytes (Just under 4.5KB)
  • Graphics: &3161 bytes (Just over 12 KB)
Over the weekend I'll update the diary as I did use some compression on the graphics.

Author:  tautology [ Tue Jun 07, 2011 11:07 pm ]
Post subject:  Re: More text adventure stuff

The project hasn't gone dead - just other things have distracted me from it (and I got bored).

But in recent days I tested all of the Mysterious Adventure games and they all work with the exception of Time Machine, where the graphics get corrupted as they're too large to fit into memory, even with shadow memory! This was made easy by the last update to BeebASM allowing me to place multiple files on the discs.

Steps to move to a final release:
  • Get SCORE working
  • Load graphics from disc (so Time Machine will work and it'll work from a bog standard Beeb)
  • Allow a way of allowing loading without graphics (so games like last survivor will work)
  • Testing, testing and more testing
  • Fix outstanding bugs
  • Shrink code if possible
  • Allow support for bitmaps/RLE encoded graphics

For the graphics, I plan to use vectors, at the moment the graphics code looks like:
Code:
.doroom        ; graphics
               lda redrawg
               beq nogfx
               lda locastore
               jsr drawscr
               lda #0
               sta redrawg
.nogfx         lda locastore
               jsr findroom
So the jsr drawscr will be replaced with jmp (graphv). I'll also need another vector, or a memory location to manipulate the text/graphic windows an force mode 7 if there are no graphics.

Author:  Samwise [ Tue Jun 07, 2011 11:59 pm ]
Post subject:  Re: More text adventure stuff

I'm really getting keen to see this ... and I've never been a huge fan of Scott Adams games before. :lol:

I remember being driven up the wall just trying to get Bruce Banner out of that damned chair in the opening location!

Sam.

Author:  tautology [ Wed Jun 08, 2011 9:03 am ]
Post subject:  Re: More text adventure stuff

As a taster, I've attached a disc containing the alpha Master only version of the engine with 10 Little Indians, Perseus and Andromeda and Waxworks. (9, 10 and 11 of the MA series.)

There's no fancy loader or anything at the moment, to run a game do:
Code:
*load g.file
*load l.file
*engine

(G.FILE is the game data file; L.FILE is the line drawn graphics).

Warning: here be bugs!

Attachments:
saga.zip [43.39 KiB]
Downloaded 12 times

Author:  DaveM [ Wed Jun 08, 2011 5:39 pm ]
Post subject:  Re: More text adventure stuff

Very impressive Alpha version! 8-)

It's ace to see these text-only affairs being revisited/spruced up almost 30 years later.

Anyway, good luck with the bug-squashing ... this is one heck of a worthwhile project, and I can't wait to see the final disc image when complete!

If there's room on the disc, perhaps it's worth asking DaveE whether you could use the Mode 2 loading screens he created (see below) as they'd be ideal for a menu structure, whereby you cycle through each image (using left/right arrow keys) to pick the game you want to play.

Image Image

Image Image

Page 2 of 2 All times are UTC [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/