Trinity32 Posted March 2, 2023 Share Posted March 2, 2023 I decided to make a little mini text adventure based off of Dracula for the good ol vic 20. It's relatively quick to play and I shortened it quite a bit from my original Idea (Dracula would be hiding behind one of three doors and the answer was in the form of a math puzzle. I removed this because it made no sense) and added in color, gave dracula a face and left a little sequel hook: A badly damaged werewolf has sworn revenge. I do not ask you to pick apart the code, just to enjoy the game although you can leave an opinion if you so desire. I am posting both V2 and the original file Dracula v2.d64 DRACULA.d64 Quote Link to comment Share on other sites More sharing options...
carlsson Posted March 2, 2023 Share Posted March 2, 2023 This fellow probably would love math puzzles at the end of the level: 1 Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 2, 2023 Share Posted March 2, 2023 I am working on a text adventure myself but recently have written practically no code other than to optimize it and compress its text. And it's not for the Vic20. However, I do have online two game "engines" to help produce a text adventure using cc65. I put engine in quotes because it is really some actual code around which to build a text adventure rather than a system that builds the code for you. My online versions are probably buggy, but if you want, I can post here a link to what I currently have online while I work on my copies. BTW, I just downloaded v. 2 of your game. What memory expansion is needed to run your game? How did you code the program? In what language? Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 2, 2023 Share Posted March 2, 2023 Never mind: I just opened the file using DirMaster, and it has a starting address of $1201, which probably means 8k. Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 2, 2023 Share Posted March 2, 2023 I played your game for a second, and it appears to be in BASIC. I believe I have a better setup that comes in the form of cc65 C skeleton code. It is also pretty efficient, as it uses my CBMSimpleIO library, my Cubbyhole optimization technique, a lot of inline assembler, watered-down crt0.s files and a lot of other optimizations. I'm working on some bug fixes right now. Again, should I post a link to what I have now? Quote Link to comment Share on other sites More sharing options...
Trinity32 Posted March 2, 2023 Author Share Posted March 2, 2023 of course Quote Link to comment Share on other sites More sharing options...
Trinity32 Posted March 2, 2023 Author Share Posted March 2, 2023 13 minutes ago, Harry Potter said: I am working on a text adventure myself but recently have written practically no code other than to optimize it and compress its text. And it's not for the Vic20. However, I do have online two game "engines" to help produce a text adventure using cc65. I put engine in quotes because it is really some actual code around which to build a text adventure rather than a system that builds the code for you. My online versions are probably buggy, but if you want, I can post here a link to what I currently have online while I work on my copies. BTW, I just downloaded v. 2 of your game. What memory expansion is needed to run your game? How did you code the program? In what language? First version is 16k. V2 should fit in slightly less, around 10k or so. Quote Link to comment Share on other sites More sharing options...
Trinity32 Posted March 2, 2023 Author Share Posted March 2, 2023 I also apologize for no pause command. I'm coming from sinclair BASIC so the fact that there is no pause fuction (other than wait 6502 which I not fully grasp) bugs me. Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 2, 2023 Share Posted March 2, 2023 Try: for i=0 to 1000:next or: 100 get a$: if a$="" goto 100 The first one pauses for a short period of time, and the second waits for the user to press a key. If you choose the first method, you will have to play with the 1000 to find the right pause time. The second may require you to use a different variable and will need you to change the line #. Does this help? Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 2, 2023 Share Posted March 2, 2023 AdvSkelVic65 is the low-end version of my text adventure code and is meant for the Vic20, the C16, the PET series and Vic20, C64, C16 and Atari8 cartridges, and AdvSkel65 is the high-end version and targets the Plus4, the C64, the C128, the Apple2enh and the AtariXL and has more features, including a score board at the top of the screen. They both are at c65 additions - Manage /game at SourceForge.net. If you are downloading AdvSkel65 for the C64, you need the Erratta fix. Quote Link to comment Share on other sites More sharing options...
Harry Potter Posted March 3, 2023 Share Posted March 3, 2023 Right now, AdvSkelVic65 seems to be working, but I'm currently having problems with the 128k Plus4 port of AdvSkel65: namely, when I type "get key," I get the monitor, and the PC is at $2310. Should I upload AdvSkelVic65 now or wait for AdvSkel65 and more features? Quote Link to comment Share on other sites More sharing options...
carlsson Posted March 3, 2023 Share Posted March 3, 2023 If you want to wait for a keypress, you can also use POKE198,0:WAIT198,1 which is the same as the GET:IF statement but without a GOTO. You can also use WAIT653,1 to wait for a shift key. For shorter delays, you might try WAIT162,4 which waits for the internal clock to count up a short amount of time. You could try larger values to wait for, which however can be a bit uneven in length. Quote Link to comment Share on other sites More sharing options...
Trinity32 Posted March 3, 2023 Author Share Posted March 3, 2023 1 hour ago, Harry Potter said: Try: for i=0 to 1000:next or: 100 get a$: if a$="" goto 100 The first one pauses for a short period of time, and the second waits for the user to press a key. If you choose the first method, you will have to play with the 1000 to find the right pause time. The second may require you to use a different variable and will need you to change the line #. Does this help? yes Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.