Jump to content

tibasic

Members
  • Content Count

    87
  • Joined

  • Last visited

Community Reputation

241 Excellent

About tibasic

  • Rank
    Star Raider

Profile Information

  • Gender
    Male

Recent Profile Visitors

3,717 profile views
  1. There is a game called Re-act in the Gamebase. It code looks similar apart from the instructions. 100 CALL CLEAR 110 PRINT " *RE-ACT*" 120 PRINT ::::: 130 PRINT "LO SCOPO E` DI RAGGIUNGERE":"IL REATTORE" 140 PRINT 150 PRINT "EVITANDO I ROBOT":: 160 PRINT "SE UNO VI PRENDE,ALLORA":"SIETE MORTI!":: 170 CALL SOUND(200,1109,0) 180 FOR D=1 TO 2000 190 NEXT D 200 CALL CLEAR 210 PRINT "USARE I TASTI CURSORE" 220 PRINT "RAGGIUNGERE IL REATTORE" 230 PRINT "PRIMA CHE ESPLODA" 240 PRINT :"I SISTEMI DI SICUREZZA NON" 243 PRINT "SONO PIU` SINCRONIZZATI : " 245 PRINT "LE PORTE SI APRONO/CHIUDONO" 250 PRINT "A CASO" 260 PRINT ::: 270 PRINT " *BUONA FORTUNA*" 280 CALL SOUND(200,1109,0) 290 FOR D=1 TO 2000 300 NEXT D 310 CALL CLEAR 320 R=24 330 C=16 340 RR=4 350 CC=4 360 REM ..SET SCREEN 370 CALL SCREEN(16) 380 CALL CHAR(40,"FFFFFFFFFFFFFFFF") 390 CALL CHAR(97,"FFC3A59999A5C3FF") 400 CALL CHAR(120,"FFFFFFFFFFFFFFFF") 410 CALL CHAR(112,"0000081C241C1422") 420 CALL CHAR(104,"1C1C083E241C1422") 430 CALL CHAR(105,"00220099990022") 440 CALL HCHAR(1,1,40,32) 450 CALL HCHAR(24,1,40,32) 460 CALL VCHAR(1,1,40,24) 470 CALL VCHAR(1,32,40,24) 480 CALL HCHAR(3,3,40,28) 490 CALL HCHAR(22,3,40,28) 500 CALL VCHAR(3,3,40,20) 510 CALL VCHAR(3,30,40,20) 520 CALL HCHAR(5,5,40,24) 530 CALL HCHAR(20,5,40,24) 540 CALL VCHAR(5,5,40,15) 550 CALL VCHAR(5,28,40,15) 560 CALL HCHAR(10,15,40,7) 570 CALL HCHAR(14,15,40,7) 580 CALL HCHAR(11,15,40,2) 590 CALL HCHAR(12,15,40,4) 600 CALL VCHAR(11,21,40,3) 610 CALL VCHAR(15,21,40,5) 620 CALL VCHAR(5,15,40,5) 630 CALL HCHAR(24,16,32) 640 CALL HCHAR(3,16,32) 650 CALL HCHAR(12,5,32) 660 CALL HCHAR(12,28,32) 670 CALL HCHAR(7,15,32) 680 CALL HCHAR(17,21,32) 690 CALL HCHAR(12,20,32,2) 700 CALL HCHAR(18,7,40,5) 710 CALL VCHAR(19,7,40) 720 CALL VCHAR(19,11,40) 740 FOR A=22 TO 25 750 CALL VCHAR(8,A,40,7) 760 NEXT A 770 CALL COLOR(9,2,12) 780 CALL COLOR(11,5,1) 790 CALL COLOR(10,7,1) 800 CALL VCHAR(9,23,120,3) 810 CALL VCHAR(9,24,120,3) 820 REM ......SET TIME 830 TIME=41 840 TIME=TIME-1 850 IF LEN(STR$(TIME))=1 THEN 860 ELSE 870 860 CALL HCHAR(19,10,32) 870 FOR I=1 TO LEN(STR$(TIME)) 880 CALL HCHAR(19,I+8,ASC(SEG$(STR$(TIME),I,1))) 890 NEXT I 900 REM 910 REM ...**MAIN LOOP** 915 RANDOMIZE 920 CALL HCHAR(R,C,112) 930 GOSUB 1150 940 GOSUB 1090 950 GOSUB 1150 960 GOSUB 2090 970 CALL GCHAR(12,21,E) 980 IF E=112 THEN 2390 990 GOSUB 1150 1000 MX=INT(RND*10)+1 1010 IF MX=1 THEN 1120 1020 GOSUB 1150 1030 DC=INT(RND*10)+1 1040 ON DC GOSUB 1730,1800,1870,1940,2010,1940,2010,1940,2010,1730 1050 GOSUB 1150 1060 CALL HCHAR(RR,CC,104) 1070 GOTO 920 1080 REM ...CORE COLOUR 1090 COLL=INT(RND*15)+1 1100 CALL COLOR(12,COLL,1) 1110 RETURN 1120 GOSUB 1430 1130 GOTO 920 1140 REM .......MAN MOVES 1150 CALL HCHAR(R,C,32) 1160 CALL KEY(0,K,S) 1170 IF K=69 THEN 1180 ELSE 1230 1180 R=R-1 1190 CALL GCHAR(R,C,G) 1200 IF G>32 THEN 1210 ELSE 1220 1210 R=R+1 1220 GOTO 1400 1230 IF K=88 THEN 1240 ELSE 1290 1240 R=R+1 1250 CALL GCHAR(R,C,G) 1260 IF G>32 THEN 1270 ELSE 1280 1270 R=R-1 1280 GOTO 1400 1290 IF K=83 THEN 1300 ELSE 1350 1300 C=C-1 1310 CALL GCHAR(R,C,G) 1320 IF G>32 THEN 1330 ELSE 1340 1330 C=C+1 1340 GOTO 1400 1350 IF K=68 THEN 1360 ELSE 1400 1360 C=C+1 1370 CALL GCHAR(R,C,G) 1380 IF G>32 THEN 1390 ELSE 1400 1390 C=C-1 1400 CALL HCHAR(R,C,112) 1410 RETURN 1420 REM .......ROBOT MOVES 1430 FOR T=4 TO 29 1440 CALL HCHAR(4,T,104) 1450 CALL GCHAR(4,T+1,GC) 1460 IF GC=112 THEN 2310 1470 CALL HCHAR(4,T,32) 1480 NEXT T 1490 GOSUB 2090 1500 FOR VV=5 TO 21 1510 CALL VCHAR(VV,29,104) 1520 CALL GCHAR(VV+1,29,GC) 1530 IF GC=112 THEN 2310 1540 CALL VCHAR(VV,29,32) 1550 NEXT VV 1560 GOSUB 2090 1570 FOR CO=28 TO 4 STEP -1 1580 CALL HCHAR(21,CO,104) 1590 CALL GCHAR(21,CO+1,GC) 1600 IF GC=112 THEN 2310 1610 CALL HCHAR(21,CO,32) 1620 NEXT CO 1630 GOSUB 2090 1640 FOR VC=20 TO 5 STEP -1 1650 CALL VCHAR(VC,4,104) 1660 CALL GCHAR(VC+1,4,GC) 1670 IF GC=112 THEN 2310 1680 CALL VCHAR(VC,4,32) 1690 NEXT VC 1700 GOSUB 2090 1710 RETURN 1720 REM .......DOOR CONTROL 1730 CALL HCHAR(3,16,97) 1740 CALL HCHAR(12,5,32) 1750 CALL HCHAR(12,28,32) 1760 CALL HCHAR(7,15,32) 1770 CALL HCHAR(17,21,32) 1780 CALL SOUND(100,110,10) 1790 RETURN 1800 CALL HCHAR(12,5,97) 1810 CALL HCHAR(12,28,32) 1820 CALL HCHAR(7,15,32) 1830 CALL HCHAR(17,21,32) 1840 CALL HCHAR(3,16,32) 1850 CALL SOUND(100,110,10) 1860 RETURN 1870 CALL HCHAR(12,28,97) 1880 CALL HCHAR(7,15,32) 1890 CALL HCHAR(17,21,32) 1900 CALL HCHAR(3,16,32) 1910 CALL HCHAR(12,5,32) 1920 CALL SOUND(100,110,10) 1930 RETURN 1940 CALL HCHAR(7,15,97) 1950 CALL HCHAR(17,21,32) 1960 CALL HCHAR(3,16,32) 1970 CALL HCHAR(12,5,32) 1980 CALL HCHAR(12,28,32) 1990 CALL SOUND(100,110,10) 2000 RETURN 2010 CALL HCHAR(17,21,97) 2020 CALL HCHAR(3,16,32) 2030 CALL HCHAR(12,5,32) 2040 CALL HCHAR(12,28,32) 2050 CALL HCHAR(7,15,32) 2060 CALL SOUND(100,110,10) 2070 RETURN 2080 REM ....TIME COUNT 2090 TIME=TIME-1 2100 IF LEN(STR$(TIME))=1 THEN 2110 ELSE 2120 2110 CALL HCHAR(19,10,32) 2120 FOR I=1 TO LEN(STR$(TIME)) 2130 CALL HCHAR(19,I+8,ASC(SEG$(STR$(TIME),I,1))) 2140 IF TIME=0 THEN 2180 2150 NEXT I 2160 CALL SOUND(100,1760,0) 2170 RETURN 2180 REM .....DESTRUCTION 2190 CALL COLOR(2,14,1) 2200 FOR S=30 TO 0 STEP -1 2210 CALL SOUND(50,110,S) 2220 NEXT S 2230 CALL SOUND(300,110,0) 2240 CALL CLEAR 2250 CALL SCREEN(14) 2260 PRINT "IL REATTORE E` SALTATO":::::: 2270 FOR D=1 TO 2000 2280 NEXT D 2290 GOTO 2460 2300 REM .....CAUGHT BY ROBOT 2310 CALL HCHAR(R,C,105) 2320 CALL SOUND(300,-1,0) 2330 CALL HCHAR(R,C,32) 2340 FOR DE=1 TO 1000 2350 NEXT DE 2360 CALL CLEAR 2370 PRINT "SEI STATO BATTUTO!":::::::::: 2380 GOTO 2460 2390 FOR V=30 TO 0 STEP -.125 2400 CALL SOUND(50,392,V) 2410 NEXT V 2420 CALL CLEAR 2430 PRINT "FANTASTICO!CE L'HAI FATTA IN":TIME:"SECONDI" 2440 FOR D=1 TO 3000 2450 NEXT D 2460 INPUT "VUOI RICOMINCIARE? ":RS$ 2470 IF (RS$="S")+(RS$="s")+(RS$="SI")+(RS$="si")THEN 310 2480 END
  2. Hello, It's been a little while since I've developed a full game as I've been experimenting with writing more simple games. I have attached a demo of a simple game that I started several months ago and recently managed to complete more or less called Square War! One file I saved in the Classic99 format (SQUAREDEMO) and the other is a .dsk file (SQUAREDEMO_dsk). I've also included the listing below in the spoiler. It might be easier to copy and past it into an emulator to try it. I have been trying to write games over the last few months in the spirit of the Texas Program Book 35 programs for home, educational and business use with the TI99/4A by Vince Apps. The Texas Program Book was my favourite TI programming book, apart from the TI manual itself. I remember the programs being easy to type in, consistently mediocre, and simple to understand. Also I don't think I had to debug any of the programs. This game is an Invaders type game except you don't shoot the invader you shoot the colourful blocks behind it which is the source of all its power! To destroy a segment of the block you have to wait until your square is the same colour as the invader's block. You score 10 points once you have destroyed one whole block. The game ends once you have lost three lives or the invader makes it to the bottom of the screen. The keys are S left and D right and space bar to fire. Different levels are not available yet and I need to refine the game a little more too. SQUAREDEMO.zip SQUAREDEMO_dsk.zip
  3. I've added a new version and manual to the first post. The chase ship moves around a bit more now and helps maintain the tension in the game.
  4. The game is almost finished now. It all seems to be functioning properly now. It probably needs a little fine tuning though as it seems a bit too easy. I've attached the new version of the game here and a new version of the manual (nothing really new in it). Glad to see people are enjoying these adventures in TI Basic I'm cobbling together. 😊 HUNTER2311.zip City_Hunter_manual_version_2.pdf
  5. I played Parsec the most I think. I also enjoyed Buck Rogers.
  6. The game is almost finished. I have a few things on my to do list: 1. Centre the screen 2. Reorganise the start of the program so loading the next level is quicker 3. Play with the colours of the title screen and add minimal instructions 4. Test the game 5. Check manual for errors 6. Post finished game and manual While the objective of the game is quite simple it's not obvious how to get started. To hopefully make things clearer I have written a manual for the game. HUNTER1012.zip City_Hunter_manual_version_1.pdf
  7. Welcome back! Hope you get back to writing games.
  8. I have a working updated version (hopefully) that includes the 5 levels of increasing difficulty. At the moment the program stops after the 5th level. The level colours might be a bit hard on the eyes in the higher levels so I may adjust those. I've attached the latest version to this post. I've had to remove the instructions from the game to fit in some other things. I may include the keys on the title screen and further detailed instructions in a pdf to make the idea of the game clear. I've started on some art work for a documentation pdf which will be kinda fun I think. I'm aiming for a retro/homemade feel to the artwork for now that one might expect on cassettes from the 80s. I've used a combination of 3d modelling and a paint.net effect to create the attached artwork. I'll have to do a little more experimenting with the model and effects to get the artwork I'm happy with. The keys are EXDS for up, down, forwards and backwards. Press space bar to rescue people from the building windows. People from the nearest buildings, i.e. the big yellow building in the 1st level, can only be rescued at the moment. Avoid the flying saucer, chase spacecraft and buildings by using H to move into the screen and B to move outwards. HUNTER2411.zip
  9. Hi, not sure what is causing it, I'll look into it. Thanks. Ok I think I've found it. I haven't initialised it properly. First try moving forward (press D) and then you should be ok.
  10. A quick update: I've added code so now ships are lost if you collide with a building. A couple more things left to do then it'll be finished. After this game is completed I'm planning to move towards writing more simple games like ones found in the 80s book, the Vince Apps Texas Program Book but utilising techniques I've developed for my longer programs. I'm considering compiling a 'book' in electronic form, i.e. a pdf, of all my programs accompanied with a few notes about the different techniques that can be used for coding games in TI Basic. I'd also like to emulate the style and quality of the Vince Apps book in the pdf so it kind of looks like a book with a utilitarian outlook. I've already installed some dot-matrix style font and experimented with the look of the text. The Vince App book can be found on the Internet Archive website if you want to take a look at this beauty. I'd call my book something like, 'Getting the most from the unexpanded TI99'.
  11. I managed to do a bit of work on the game over the last week. I haven't uploaded a new version as I mostly compacted some of the code and improved the visuals. I did manage to add the ability to advance through different screens though. I think they'll be 5 levels all together of increasing difficulty and then either the game ends or perhaps the city starts getting slowly destroyed. That might be quite easy to do. First I'd like to add some collision detection between the ship and the buildings which shouldn't take much code. Then if I have enough memory left I can add the other things.
  12. I've uploaded a new version of the game (see the first post). The game is working and now has some shooting ships and scoring taking place. The game isn't particularly fast but hopefully the complexity will be fun ... The goal is to make 10 successful rescues. This is done by lining your ship up with an occupied window in the yellow building. Press space bar to attempt a rescue. The saucer will home in on your location but there will be plenty of time to evade it by moving your ship closer or further away. The chase ship can be evaded by moving inwards and outwards or up or down. I guess you'll see how it all works when you play it. btw a rescue can only be made when you are near to the 'camera', i.e. the ship is big. It is not finished yet although the next version could very well be the finished version.
  13. Update: new version and manual added 12/06/20 I've been working on this game on and off for a few months and would like to finish it soon. The game attempts to use parallax to create some depth perception. I recently figured out what the gameplay will be so I am pretty sure I can finish the game now. The idea is a rather common scenario where you have to rescue people from a city under attack from alien ships. There is a flying saucer that hovers above your ship and takes the odd pot shot at your ship. There is also an alien ship chasing you through the city that also tries its luck. In this demo you can fly around and get an idea of how the alien ship fly around too. That's about it for now. The file is for Classic99 and the keys are EXSD for up, down, left and right. H is to move into the screen (further away from the viewer) and B to move outwards. SCRAM1006.zip City_Hunter_manual_version_3.pdf
  14. Listed below are 10-liner ideas that I considered for the recent contest but I rejected them for one reason or another. I included them here as they might contain some insights and ideas for others using TI Basic. The code can be copy-pasted into JS99'er or Classic99. For Classic99 use the paste XB option. There's some information on the code in the pdf. "Battle" is a mathematically based simulation. It is based on the well known Lanchester's square law used in combat and business simulations, e.g. to develop strategies to capture market share from monopolies. As it stands the program doesn't really do much. It is based on two coupled differential equations from the Lanchester's law wiki site. It's kind of fun playing around with the numbers. I'm not sure if it is even giving the correct results but maybe will be of interest to someone. 1 CALL COLOR(13,5,5) 2 CALL COLOR(14,7,7) 3 INPUT " "&CHR$(136)&" OPPONENTS LEVEL:1950 "&CHR$(128)&" YOUR TECHNOLOGY:19":C 4 INPUT " "&CHR$(136)&" OPPONENTS UNITS:100 "&CHR$(128)&" YOUR UNITS :":B(1) 5 B(2)=100 6 CALL CLEAR 7 I=I+0.5 8 CALL HCHAR(-5*(I=INT(I))-17*(I<>INT(I)),1,-128*(I=INT(I))-136*(I<>INT(I)),B(-1*(I=INT(I))-2*(I<>INT(I)))) 9 B(-1*(I=INT(I))-2*(I<>INT(I)))=B(-1*(I=INT(I))-2*(I<>INT(I)))-B(-1*(I<>INT(I))-2*(I=INT(I)))*0.01*(-C*(I<>INT(I))/50-(I=INT(I))) 10 ON (B(1)*B(2)<1)*((INT(I)-I)=0)+1-((INT(I)-I)=0)GOSUB 7,6,1 "Flak" was supposed to simulate flying an aircraft through some anti-aircraft fire. I wasn't convinced the gameplay was good/clear enough to enter it into the contest. Three hits from the flak and you're out. 1 CALL KEY(0,K,S) 2 Y=Y+(K=ASC("X"))*((15+Y)<(10+(10+SC*0.1*(SC<=100)+10*(SC>100))))-(K=ASC("E"))*((15+Y)>5) 3 CALL HCHAR(15+Y,14,ASC("_"),5) 4 CALL HCHAR(15+Y,16,ASC("o")) 5 RN=RND 6 CALL HCHAR(5*RN+5-(10+SC*0.1*(SC<=100)+10*(SC>100))*(RN>0.1),5*RND+14,42) 7 SC=SC-(INT(5*RN+5-(10+SC*0.1*(SC<=100)+10*(SC>100))*(RN>0.1))=(15+Y))*0.01+1 8 CALL CLEAR 9 IF (SC-INT(SC))>0.03+((15+Y)>=(10+(10+SC*0.1*(SC<=100)+10*(SC>100))))THEN 10 ELSE 1 10 PRINT "FLAK * __o__ *":::"KEYS: E & X":::"DISTANCE FLOWN:"&STR$(INT(SC))&" KM"::::: "Mission" was an experiment in using high quality graphics in a 10-liner. It probably incorporates all that I've learned from the other 10-liners I wrote. I wrote it a few days before the end of the contest. I didn't enter it because I couldn't settle on a back story or a concise description of the game. It's still not very clear to me how to explain it. I might develop this one further. Keys are 1, 2 and 3. Basically fly the ship until you reach the end of the mission which is when you score 200 points. Your mission is to fly as close as you can to the terrain and avoid some objects (black squares with a cross in them). 1 DATA 96,101028287C548282,97,101028385444,98,10283844,99,00FEBAD6EED6BAFE,100,3C4299858581423C,101,000018242418,102,1 2 READ A,A$ 3 CALL CHAR(A,A$) 4 CALL KEY(0,K,S) 5 CALL GCHAR(22.5-Y,15,CH) 6 CALL HCHAR(22.5-Y,16,(96+(51-K)*ABS(S))*((Y-INT(Y))<=0.5)*((51-K)*ABS(S)<=(CH-99))-CH*((Y-INT(Y))>=0.5)) 7 CALL HCHAR(20.5+Y*2*(Y<9),15-RND*2,(101.4-RND*2.4*(Y*2-INT(Y*2))*5)*(Y>0.9)*(Y<9)-102*((Y<1.0)+(Y>9)),4+RND*3-765*(Y<0.5)) 8 Y=Y+0.5001+(INT(Y)+0.5001)*(Y>21)+0.001*(((51-K)-(CH-99))=-1)*((Y*2-INT(Y*2))<=0.2) 9 PRINT SEG$("MISSION COMPLETED! SCORE:"&STR$(INT((Y*2-INT(Y*2))*1000)),1-28*((51-K)=(CH-99)),-56*((Y*2-INT(Y*2))>0.2)-28*((51-K)=(CH-99))); 10 ON (A<>102)-(((51-K)=(CH-99))-((S=0)*(CH=99))+((Y*2-INT(Y*2))*1000>200))+2 GOSUB 1,4,10 Very simple shoot 'em up type of game. I nearly entered this into the contest but I thought it wasn't that interesting although it's fun to play. 1 CALL CLEAR 2 CALL KEY(0,K,S) 3 X=X+(K=ASC("S"))*(S<>0)*(X>-15)-(K=ASC("D"))*(S<>0)*(X<15) 4 CALL HCHAR(23-(F-INT(F))*5,16+X,94) 5 X2=X2+(-1+2*RND)*(X2>-14)*(X2<16) 6 F=F-(X+1=INT(X2))*(K=32)*100-RND*(K<>32) 7 CALL HCHAR(2+(F-INT(F))*5,15+INT(X2),86) 8 CALL VCHAR(3-(F-INT(F))*5*(K<>32),15+INT(X2)*((F-INT(F))>0.8)*(K<>32)-(X+1)*(K=32),33*((F-INT(F))>0.8)*(K<>32)-34*(K=32),20-(F-INT(F))*5) 9 IF (F-INT(F)>0.8)*(INT(X2)=X+1)THEN 10 ELSE 1 10 PRINT ::::" ==< Z A P >==":::::"GAME OVER"::"SCORE:";-INT(F/100)*100::::"A * TI99/4A * 10 LINER"::"S=left D=right SPACE=fire"::"ENTER RUN TO PLAY AGAIN" ti9910liners.pdf
  15. Thanks Vorticon for organising this contest. It was an honour to take part!
×
×
  • Create New...