The wicked Baron has captured your love, Loretta, and tied her to the railroad track. Only you can save her from a grisly fate, but you will have to think fast and act even quicker. Wherever the Baron has taken her, you can be sure that it will be in a town far away from you, and you must work out the three possibilities, key in your answer and stop the train.
How to play
The names of eight towns will be displayed on the screen with letters A to H. Against each of the letters you will be shown a combination of numbers.
You must decide which three series of numbers are highest, type them in and stop the train.
Example: from the screen shown above you will see that the correct answer is C, G and H. You don't have to key in your answers in alphabetical order, just key them in correctly and quickly. If you stop the train or, unfortunately for Loretta, the train reaches the end of the screen, you will be asked if you wish to continue or end the program.
Press C and RETURN to continue, or E and RETURN to end the game.
Skill rating
When the game ends, a score sheet will be displayed showing your total, giving a qualitative rating and an IQ level of your decisiveness. This is not a true IQ level as intelligence is made up of reasoning ability, memory etc. but this result will be an indication of your IQ decisiveness level.
Classifications below Fair are omitted, as I know that if you are using this book you are above average!
Programming hints
The number of carriages pulled by the engine can be increased by adding more sets of a space and CA$ to line 250.
CA$ is the shape for the carriage top.
You must also add the same number of sets of a space and CR$ in line 260.
CR$ is the shape for the carriage bottom.
Count the number of characters you have added and add the same number of spaces to A$(1) in line 240.
Remember also to alter the TR$ in line 960 as this effects the backspace characters required.
Before you decide to increase the number of carriages, remember that the more carriages there are, the closer the head of the train is to Loretta.
After thinking about this, you may decide to reduce the number of carriages and thereby increase your thinking time.
10 REM DECISIVE HERO 20 REM COPYRIGHT (C) G.LUDINSKI 30 MODE 4 40 DIMA$(3),X(12),Y(12),N(3,8),S(8),T $(8),TW(8):CLS 50 CLS 60 S$=" " 70 REM 80 REM Cursor Movement And Shape Defi nitions 90 REM 100 VDU23,224,255,255,255,255,255,255, 255,255 110 VDU23,225,0,0,0,255,255,255,255,25 5 120 VDU23,226,0,0,0,255,255,0,0,0 130 VDU23,227,255,255,255,255,255,0,0, 0 140 VDU23,228,0,0,0,0,0,255,255,255 150 VDU23,229,240,240,240,240,240,255, 255,255 160 VDU 19,0,4,0,0,0 170 CB$=CHR$(8):CU$=CHR$(11) 180 G0$=CHR$(224):G1$=CHR$(225):G2$=CH R$(226):G3$=CHR$(227):CA$=G1$+G2$+G1$:CR $=G0$+G3$+G0$ 190 D$=" "+CHR$(175) 200 REM 210 REM Store Town Names And Train Sha pe 220 REM 230 RESTORE:FOR I=1 TO 8:READ T$(I):NE XT I 240 A$(1)=LEFT$(S$,8)+CHR$(132)+CHR$(1 32)+" " 250 A$(2)=" "+CA$+" "+CA$+" "+G0$+CHR$ (132)+CHR$(133) 260 A$(3)=" "+CR$+" "+CR$+" "+CR$ 270 REM 280 REM Store Positions Of Smoke 290 REM 300 FORI=1 TO 2 310 X(I)=12-I 320 Y(I)=2-I 330 NEXTI 340 FORI=3 TO 12 350 Y(I)=2 360 X(I)=13-I 370 NEXTI 380 TE=0:ER=0:CR=0 390 REM 400 REM The Action Starts Here 410 REM 420 CLS 430 TE=TE+1 440 REM 450 REM Store Lists Of Numbers And The ir Sums 460 REM 470 FORK=1TO7:S(K)=0:NEXTK 480 FORJ=1TO8 490 FORI=1TO3 500 N(I,J)=INT(RND(1)*9+1) 510 S(J)=S(J)+N(I,J) 520 NEXTI 530 NEXTJ 540 FORI=1TO8:TW(I)=I:NEXTI 550 REM 560 REM Bubble Sort Of The Sums Of Eac h List 570 REM 580 FORJ=1 TO 6 590 FORI=1 TO 7 600 IF S(I)<S(I+1) THEN TP=S(I):S( I)=S(I+1):S(I+1)=TP:TP=TW(I):TW(I)=TW(I+ 1):TW(I+1)=TP 610 NEXTI 620 NEXTJ 630 REM 640 REM Check For Any Duplicates 650 REM 660 TWN=3:FORI=4 TO 8 670 IF S(I)=S(1) OR S(I)=S(2) OR S(I )=S(3) THEN TWN=I 680 NEXTI 690 REM 700 REM Display Problem 710 REM 720 PRINT:PRINT:PRINT:PRINT:PRINT:PRIN T 730 PRINT"---------------------------- ---------@--" 740 PRINT''' 750 PRINT:PRINT:PRINT 760 PRINTLEFT$(S$,10);LEFT$(T$(J),1) ;" ";RIGHT$(T$(J),9);" "; 770 FORI=1 TO 3 780 PRINTSTR$(N(I,J));" "; 790 NEXTI 800 PRINT:PRINT 810 NEXTJ 820 PRINT 830 CR1=0 840 VDU30:PROCTRAIN 850 SOUND1,-10,32,10:SOUND1,-10,14,10 860 *FX 15,1 870 PRINTTAB(0,28)"Press C to continue or E to end program":INPUT C$ 880 IF C$="C" THEN GOTO 420 890 GOTO420 900 GOTO 1400 910 REM 920 DEFPROCSMOKE 930 PRINTTAB(X(I)+L,Y(I));G$ 940 ENDPROC 950 DEFPROCTRAIN 960 TR$=A$(1)+CHR$(10)+STRING$(12,CHR$ (8))+A$(2)+CHR$(10)+STRING$(12,CHR$(8))+ A$(3) 970 FORL=1TO24 980 I$=INKEY$(0) 990 IF I$="" THEN 1040 1000 FOR J=1 TO TWN 1010 IF I$=CHR$(64+TW(J)) THEN CR1= CR1+1:SOUND 1,-15,81,10:GOTO1040 1020 NEXTJ 1030 ER=ER+1 1040 IF CR1=3 THEN CR=CR+1:GOTO1240 1050 PRINTTAB(L,3)" "TR$; 1060 SOUND 0,-15,100,2 1070 I=1 1080 G$=D$ 1090 PROCSMOKE 1100 I=I+1 1110 G$=D$ 1120 PROCSMOKE 1130 I=I-1 1140 PROCSMOKE 1150 I=I+1 1160 PROCSMOKE 1170 G$=D$ 1180 IF I<12 THEN 1100 1190 G$=" " 1200 I=9 1210 PROCSMOKE 1220 G$=" "+CHR$(175) 1230 NEXTL 1240 ENDPROC 1250 DEFPROCIQ 1260 CLS 1270 PRINT:PRINT"Number of tests comple ted = ";TE 1280 PRINT:PRINT"Number of tests correc t = ";CR 1290 PRINT:PRINT"Number of incorrect an swers = ";CR 1300 SC=INT(((ER*3)+((TE-CR)*10))/TE) 1310 PRINT 1320 IF SC<5 THEN PRINT"This is classed as SUPERIOR (Upper 10%)":GOTO1350 1330 IF SC<7 THEN PRINT"This is classed as GOOD (Upper 30%)":GOTO1350 1340 IF SC<9 THEN PRINT"This is classed as FAIR (Upper 60%)" 1350 IF SC=0 THEN IQU=150:GOTO1370 1360 IQU=INT(760/SC):IF IQU>150 THEN IQ U=150 1370 PRINT'"Your I.Q. level (decisivene ss) = ";IQU 1380 ENDPROC 1390 DATA "Aldershot ","Bracknell ","Ca mberley ","Dorking ","Egham ","Far nham ","Guildford ","Henley " 1400 REM END