Jump to content

jchase1970

Members
  • Posts

    356
  • Joined

  • Last visited

Everything posted by jchase1970

  1. I am very please to share this one. While I am happy with Caynon Bomber I had to make a few cuts to get the game play I wanted. This time I think I was able to capture the atari 2600 original that I remember playing and maybe even improved on it a tiny bit. I hope you enjoy this one as I am still enjoying it even after all the play testing that I had to do. I would have really liked to have done dual controls, keyboard/joystick but 30 lines wasn't able. I may expand this one later on. 10 DATA "60F0F8F8FCFFFFFFFF7F0000000000000000000000FFFFFCFBFB070707070F0E","0000000000FFFF01FEFDF8F0E0C080000000000000FCF2F9FFFE" 20 DATA "00000000003F4F9FFF7F0000000000000000000000FFFFC0BFDF0F070301","0000000000FFFF3FDFDFE0E0E0E0F070060F1F1F3FFFFFFFFFFE" 30 DATA 030705170B0503010101020204040808C0E0A0E8D0A0C0808080404020201010,0307050703011F010101020202040404C0E0A0E0C080F8808080404040202020 40 DATA 03070507030103050911010102020202C0E0A0E0C080C0A09088808040404040,0307050703011F010101020202040404C0E0A0E0C080F8808080404040202020 50 DATA 033F7FFFFFFC70202010100808040402C0FCFEFFFF3F0E040408081010202040,00000000000F1020405955595555407F0000000000E0100804645464444404FC 60 DATA 0000397FFFFFFF7EBDC37F3F60DFFE7C3CFEE7DBFFFF7EF0FCEFDF3FFFFE7800 70 call clear::DISPLAY AT(2,11):"TI-Trooper"::call screen(6)::for i=1 to 10::call color(i,2,6)::next i 71 DISPLAY AT(3,1):"Press difficulty 0 hardest - 3 easiest":: call key(0,k,s) :: if (s=0)+(k<48)+(K>51) then 71 else D=k-48 72 DISPLAY AT(5,1):"Press Q to jump out of the plane, then press X to open your chute." 73 display at(8,1):"Press S and D to guide your chute once it is open but bewary of the wind speed, watch the clouds." 74 display at(12,1):"Be a dare devil and wait as long as possible to deploy your chute for the highest scores." 75 display at(18,1):" Enjoy playing, John Chase":: display at(22,5):"Press any key to play"::call key(0,k,s)::if s=0 then 75 100 FOR I=0 TO 10::READ C$::CALL CHAR(I*4+96,C$)::NEXT I::CALL CHAR(33,"FFFFFFFFFFFFFFFF")::CALL COLOR(1,3,6,2,15,6)::PS=8::F=0::FS=8 110 RANDOMIZE :: CALL CLEAR :: CALL MAGNIFY(3) :: CALL SPRITE(#1,96,2,20,1,0,PS,#2,100,2,20,17,0,PS)::hi=0 111 CALL SPRITE(#10,136,16,40,1,#11,136,16,48,15,#12,136,16,42,29)::CALL CHAR(40,"FFFFFFFFFFFFFFFF") 118 CALL HCHAR(23,1,33,64)::PO=INT(RND*27)+2::CALL HCHAR(23,PO,40,2+D)::display at(1,10):"HIGH SCORE="&str$(hi)::DISPLAY AT(2,14):SC 119 WS = 5-INT(RND*(10+2*(3-d)))::CALL MOTION (#10,0,WS,#11,0,WS,#12,0,WS) 120 CALL KEY(1,K,S)::IF S=0 THEN 180 140 IF (P=2) * (K=2) THEN CALL MOTION(#3,2,WS-4,#4,2,WS-4) ::GOTO 180 150 IF (P=2) * (K=3) THEN CALL MOTION(#3,2,WS+4,#4,2,WS+4) :: GOTO 180 160 IF (P=0) * (K=18) THEN P=1 :: CALL POSITION(#2,Y,X) :: CALL SPRITE(#3,112,12,Y+10,X,FS,PS/2) :: GOTO 120 170 IF (P=1) * (K=0) THEN SC=SC+TSC:: P=2 :: CALL POSITION(#3,Y,X) :: CALL SPRITE(#3,116,12,Y,X,2,WS,#4,128,7,Y-10,X,2,WS) 180 IF P=2 THEN 181 else goto 190 181 SC=SC-1::if sc<0 then sc=0 182 DISPLAY AT(2,14):SC::CALL POSITION(#3,Y,X)::CALL MOTION(#3,2,WS,#4,2,WS)::IF Y>159 THEN 400 190 IF P=3 THEN CALL POSITION(#4,Y,X) :: IF Y>176 THEN 500 200 IF P=1 THEN 210 ELSE 120 210 F=F+1 :: FS=FS+.5 :: IF F=4 THEN F=0 211 TSC=TSC+10::CALL MOTION(#3,FS,PS/2) :: CALL PATTERN(#3,112+F*4) :: CALL POSITION(#3,Y,X) :: IF Y>159 THEN 300 220 GOTO 120 300 CALL SPRITE(#3,132,2,160,X,0,0) :: P=0 :: FS=8 :: GOTO 120 400 CALL SPRITE(#3,112,12,160,X,0,0) :: P=3 410 IF (X+4>PO*8-9)*(X+11<PO*8+9+8*D) THEN SC=SC*2::CALL SOUND(300,262,0,330,0,392,0)::CALL SOUND(2000,523,0,659,0,784,0) 420 DISPLAY AT(2,14):SC :: if sc>hi then hi=sc::GOTO 120 else goto 120 500 CALL SPRITE(#4,128,7,176,X,0,0) :: P=0 :: FS=8 :: TSC=0 ::SC=0::GOTO 118 TROOPER.zip trooper.bmp
  2. I tried to upload the ti file but the forum says I'm not permitted to upload that type of file. What am I doing wrong?
  3. Ok first this is a port of a atari 2600 game that I had as a child and really like. I thought it would make a good game but after finishing it it is less fun then I remember it. The program is a good example of interacting sprites with char characters on the screen. It suffers from the lack for framerate. it is right on the line of being fast enough but to get the boost I needed I had to remove the score system. I compensated for it by giving some stats after the game. I could have kept the score in if I would slow down the speed of the bomb but anything slower is just no fun to play. I could have eliminated the computer player but I feel it is needed to give a bit of competition. 100 CALL CLEAR :: PRINT "Caynon Bomber by John Chase" :: PRINT :: PRINT "A 30 line game contestant" :: PRINT :: PRINT "Controls" 110 PRINT "S-slow down" :: PRINT "D-speed up" :: PRINT "X drop a bomb" :: PRINT :: PRINT "Press any key" 120 CALL KEY(0,K,S) :: IF S=1 THEN 130 ELSE GOTO 120 130 call clear::CALL MAGNIFY(3) :: RANDOMIZE :: XS=10 :: T=184 :: BDX=256 :: BD=0 :: PS=0 :: CS=0 :: B=0 :: CB=0 :: ST=0 140 FOR I=0 TO 4 :: READ C$ :: CALL CHAR(64+I*4,C$) :: NEXT I 150 A$="FFFFFFFFFFFFFFFF" :: FOR I=0 TO 4 :: CALL CHAR(104+(I*,"FFFFFFFFFFFFFF") :: CALL CHAR(105+(I*,A$) :: NEXT I 160 CALL COLOR(10,6,2,11,11,2,12,14,2,13,7,2,14,13,2,3,2,6,4,2,6,1,2,6) :: CALL SCREEN(6) 170 CALL HCHAR(1,1,105,480) :: CALL HCHAR(23,1,113,64) :: FOR I=1 TO 8 :: CALL VCHAR(14+I,I,113,9-I) :: CALL VCHAR(14+I,33-I,113,9-I) :: NEXT I 180 FOR I=1 TO 8 :: CALL HCHAR(14+I,I+1,INT(RND*3)*8+120,32-2*I) :: NEXT I 190 CALL SPRITE(#1,64,2,48,1,0,10,#2,68,2,48,17,0,10,#3,72,15,48,226,0,-8,#4,76,15,48,240,0,- 200 CALL KEY(1,K,S) 210 IF S=0 THEN 250 220 IF(K=2)*(XS>5)THEN XS=XS-1 :: CALL MOTION(#1,0,XS,#2,0,XS) 230 IF(K=3)*(XS<15)THEN XS=XS+1 :: CALL MOTION(#1,0,XS,#2,0,XS) 240 IF(B=0)*(K=0)THEN B=1 :: ST=1 :: CALL POSITION(#2,Y,X) :: CALL SPRITE(#5,80,2,Y+10,X,6,XS/2) :: BD=BD+1 250 IF B=1 THEN CALL POSITION(#5,Y,X) :: Y=INT(Y/8)+1 :: X=INT(X/8)+1 :: GOTO 260 ELSE GOTO 280 260 IF(X>0)*(Y<25)*(X<33)THEN CALL GCHAR(Y,X,C) :: GOTO 270 ELSE GOTO 280 270 IF(C=113)+(Y>22)THEN CALL DELSPRITE(#5) :: B=0 ELSE IF C<>105 THEN CALL HCHAR(Y,X,105) :: T=T-1 :: PS=PS+1 :: CALL SOUND(100,250+(Y*10),0) 280 IF(ST=1)*(CB=0)THEN CALL POSITION(#4,Y,X) :: GOTO 290 ELSE GOTO 300 290 IF(X>BDX-5)*(X<BDX+5)THEN CALL SPRITE(#6,80,15,Y+10,X,6,-6) :: CB=1 :: BDX=BDX-7 :: IF BDX<8 THEN BDX=256 300 IF CB=1 THEN CALL POSITION(#6,Y,X) :: Y=INT(Y/8)+1 :: X=INT(X/8)+1 :: GOTO 310 ELSE GOTO 330 310 IF(X>0)*(Y<25)*(X<33)THEN CALL GCHAR(Y,X,C) :: GOTO 320 ELSE GOTO 330 320 IF(C=113)+(Y>22)THEN CALL DELSPRITE(#6) :: CB=0 ELSE IF C<>105 THEN CALL HCHAR(Y,X,105) :: T=T-1 :: CS=CS+1 :: CALL SOUND(100,250+(Y*10),0) 330 IF T=0 THEN 340 ELSE GOTO 200 340 CALL DELSPRITE(ALL) :: CALL CLEAR :: CALL CHARSET :: FOR I=1 TO 11 :: CALL COLOR(I,2,6) :: NEXT I :: RESTORE 380 350 DISPLAY AT(4,2):"BOMBS DROPPED "&STR$(BD) :: DISPLAY AT(2,2):"TARGETS HIT "&STR$(PS) :: DISPLAY AT(6,2):"HIT MISS RATIO "&STR$(PS/BD) 360 DISPLAY AT(8,2):"TAGETS HIT PRECENTAGE "&STR$(INT(PS/184*100)) :: DISPLAY AT(12,2):"PRESS ANY KEY TO PLAY AGAIN" 370 CALL KEY(0,K,S) :: IF S=1 THEN GOTO 130 ELSE GOTO 370 380 DATA "60F0F8F8FCFFFFFFFF7F0000000000000000000000FFFFFCFBFB070707070F0E","0000000000FFFF01FEFDF8F0E0C080000000000000FCF2F9FFFE" 390 DATA "00000000003F4F9FFF7F0000000000000000000000FFFFC0BFDF0F070301","0000000000FFFF3FDFDFE0E0E0E0F070060F1F1F3FFFFFFFFFFE" 400 DATA "F060F0F060000000000000000000000000000000000000000000000000000000"
  4. after I had a working game I kept on adding graphical features till I use most of the space available for the contest, the last thing I added was the final hurdle finish flag. I also animated everything to add that extra touch to it. I was very fun. I like the sprites and I wish harry wilhems basic compiler supported them as that is what I like to develop with. Xb just doesn't have enough framerate to get the most out of the sprites. I was thinking about a series of track and field games like javelin and long jump, but I have to figure out a more interactive control system with xb's slow framerate.
  5. Hello everyone, This is my 30 line entry. I don't know where the idea came from but it is a hurdle jumping game. I couldn't get the framerate needed for the control scheme I wanted, but I tinkered around till I got it acceptable for what I wanted. You hold 'D' to run if you let off you slow down fast and when you jump you slow down. You press 'E' to jump. You will have to gain enough speed to clear the hurdles or you will land on them and this will affect your score. Scoring is based on how long it takes to clear 10 hurdles and you loose points for hitting a hurdle. A near perfect run will be over 3800 pt's. The game begins when it is ran, no intro or start signal. You have the option of trying again at the end of the game. The Game was written on classic99 although my emulator of choice is win994a. It should be ran in normal speed so it should be runnable on a real ti-99/4a in Extended basic. ti-hurdles.txt Glad to see this forum for the TI, maybe I can share some other stuff later. John
  6. Stuck in the past, no just to busy to move forward.

  7. Stuck in the past, no just to busy to move forward.

×
×
  • Create New...