Jump to content
IGNORED

A 4K textual adventure experiment


MS77

Recommended Posts

Hi all,

 

some years ago I read the book "Making Games for the Atari 2600" by Steven Hugg and based of his example of text kernel I tried to create a "compiler" to write textual adventures in a sort of pseudo-basic and translate it in asm code (in max 4K) to paste into the 8bitworkshop website. Just for fun and see if i would able to do it.

It worked (more or less) but I realized that 4K are not enough to create real challenging adventure. So I abandoned the project...

Anyway, in the last two weeks I tried again to make a "real" adventure with some quests. It works on the 8bitworkshop site, but I would be grateful if someone can just try it on a real hardware, just for curiosity and to finally conclude the experiment. 🙂

Thanks for the help in advance! :)

 

In case someone would try to play the game, The adventure name is "The traffickers' lair", this is the story:

Finally, after an hard trip, you are arrived.
The mine is here, on the bottom of the volcano,
as you had imagined. If you are right,
the traffickers hide their treasures in these tunnels...
But time is against you...
The traffickers could appear at any moment!

 

On the screen you see the description of the current "room", the possible cardinal directions and the objects in the room and your inventory.

image.thumb.png.db50c74d0f36d221b820de8af2bb4d9d.png

 

With left and right you change the VERB of your command (in white, last line) and with up and down you highlight (yellow) a line of the text in the page where you see a NOUN on which you want to act. Once you have selected the VERB and the text line, you hit fire to execute the command. Verbs are: GO,EXAMINE,TAKE,USE,HIT,PUSH,PULL,DROP

For example, if there is an exit ("- EAST -") and you select the verb "GO", hitting fire your command will be "GO EAST"

If the room description is:

YOU'RE IN A

DARK ROOM

and you select "EXAMINE" and the line "DARK ROOM", your action will be "EXAMINE DARK ROOM"

You can select also the room objects or the inventory items.

If the text exceed the first page, going down you "scroll" to the next page (going up you return to the previous one).

Typically, after an action, a message appears and you can only hit fire to continue.

If the game ends, you have to reset to restart the game. There are no save options 😅

 

I hope to have created this thread in the correct place. I apologize in advance because I'm not familiar with forums in general.

I apologize also for my English, I hope to not have made too many mistakes (also in the game).

 

Thanks to all!

 

 

 

ttl.a26

  • Like 6
Link to comment
Share on other sites

Nice! I haven't made it very far, but the text is readable and the controls work well.

 

Would it be possible to move the lines of text closer together, reducing the need for scrolling?

 

Also, for some reason, Stella detects it as a paddle game. I believe its controller detection looks for certain instruction sequences. You might want to ask around about that.

 

You will get more exposure in the Atari 2600 Programming forum or even more in the Atari 2600 forum.

  • Like 1
Link to comment
Share on other sites

2 hours ago, Pat Brady said:

Nice! I haven't made it very far, but the text is readable and the controls work well.

 

Would it be possible to move the lines of text closer together, reducing the need for scrolling?

 

Also, for some reason, Stella detects it as a paddle game. I believe its controller detection looks for certain instruction sequences. You might want to ask around about that.

 

You will get more exposure in the Atari 2600 Programming forum or even more in the Atari 2600 forum.

Thanks a lot for trying it.

The distance between lines is due to the time needed by the text kernel to peek from ROM the correct text line (12 chars) and based on it to prepare in RAM the data for the next line to display (PLAYER0 and PLAYER1 alternated and multiplied by 3, for 5 rows of 1 px). This was the best distance I was able to obtain 😅. I guess that to reduce the lines distance more RAM is needed (maybe using special kernel and ROM?)

I will investigate about the "paddle" thing, thanks for the links!

M

Link to comment
Share on other sites

On 11/27/2022 at 5:50 PM, MS77 said:

Hi all,

 

some years ago I read the book "Making Games for the Atari 2600" by Steven Hugg and based of his example of text kernel I tried to create a "compiler" to write textual adventures in a sort of pseudo-basic and translate it in asm code (in max 4K) to paste into the 8bitworkshop website. Just for fun and see if i would able to do it.

 

I really like this. I've an interest in text adventures for the 2600 and I'm impressed you've come up with a usable UI in just 4k.

Link to comment
Share on other sites

3 hours ago, JetSetIlly said:

 

I really like this. I've an interest in text adventures for the 2600 and I'm impressed you've come up with a usable UI in just 4k.

 

Thanks! To be honest, the code is really a mess... 🙄 It was very hard to optimize as much as possible. So now, after some years, it is really hard to recognize how it works...😓

However, in case you are interested, here you can download the "compiler" I mentioned before and an example project. Unfortunately the site is only in italian.

https://www.epaperadventures.qlmagic.com/ata.html

I also attach here the pseudo-basic code of "the traffickers lair" and a very quick translation in english of the compiler manual. It works only in Windows.

(all the project was made as part of our site dedicated to textual adventures for e-readers, browsers, vic-20... All the material is freeware - no AD are present)

 

 

 

tutorial_Aliza_v1_0 - A3 - en.pdf code.alz

Link to comment
Share on other sites

On 12/13/2022 at 2:08 AM, qcarver said:

I am curious how you make more than six characters on a line. Can you share?

Hi, you can find the example from which I started here: https://8bitworkshop.com/v3.9.0/?file=examples%2Ftinyfonts2.a&platform=vcs

As I told in this thread, it is part of the materials related to the book: "Making Games for the Atari 2600" by S. Hugg

 

  • Like 1
Link to comment
Share on other sites

Another some little additions to the manual. Being the bytes available in ROM the big constraint to create a playable adventure, I have spent some time to find how to add some extra bytes. I have added an appendix to explain how to obtain 60 bytes extra for code or text. This gives a total of 1710 bytes free. 

Thanks

tutorial_Aliza_v1_0 - A6 - en.pdf

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...