Recently my girlfriend asked me if I would help her program a text adventure. She has wanted to learn the program in C for a long time and also has been looking for a project we could work on together. I thought this was an awesome idea, so I set about programming a basic shell of an adventure engine for her to work with. I wanted to take the load off her so she can focus on developing the story rather then dealing with blitting, messaging, etc.
I managed to pack the entire DOS font of 256 characters in to 3k of space and embed it into the program, which was pretty cool, so each bit encodes only one pixel. I could perhaps have achieved more using RLE but there really isn’t any need to go that far.
My library emulated a console screen of 40×20 characters. It has a cursor that can be moved, text and symbols can be written to the screen and it handles user input, so in short, all of the basics for a text adventure. There is no scrolling implemented yet however since that didn’t seem necessary. Conceivably an awesome rogue like could be easily written with this library.
Plain text however just seems too digital and static. I wanted something more like and old analogue CRT monitor with a little too much interference, and misaligned deflection coils. So a second achievement was to finally get around to writing my ‘ghetto blur’ as suggested long ago for my yet unnamed dungeon game. I managed to do this efficiently using some cool tricks, using only ANDs, ORs and shifts. It looks fairly retro and below you can see it for yourself, however the magic is seeing it animated as it subtly flickers and wobbles.
Would you release this to the puplic? i would love to try make my own text adventure game
I don’t see why not. Its fairly simple, and should be easy to get running on whatever platform you have. However, a release will have to wait until after this mini ludum dare compo unfortunately though since I’m busy like a mad man.
Thats fine mate, im glad you are happy to release it!
I am really interested in how you did it. Looking forward to the release 😀