SRcheat Stunt Racer 2000 driver editor

by Geoff Scott

The purpose of this application is to allow the user to edit
the contents of driver files saved by Stunt Racer 2000.

The application allows all the major parts of the file to be
changed at will, and it allows extreme values to be entered
(try a 300% engine...).

The main game window
The specification of the current driver can be viewed by clicking
on the SRcheat icon on the icon bar.

The purpose of the major fields is pretty straightforward, and
with the knowledge from using the game they should all be simple
to use.

The current track for racing can be set by clicking on one of
the track selectors near the bottom of the display. They are
split into four leagues of four tracks, with the final track
at the far right.

Default driver
A default driver file can be generated by selecting Default from
the editor menu.

Save game
The current driver can be saved in the standard fashion. To
do this bring the editor menu up and use the save dialogue in
the usual way.

Misc
At first you may be tempted to set your engine to several
thousand percent. I found severe problems trying to drive like
this: the car kept jumping about keeping your speed low. I
found that an engine of 400-500% was satisfactory, providing you
let the computer tune the engine for a high top speed.

The gear box can be changed using the editor to provide a higher
change speed for 4th gear if you want to. If you do this, don't
change the setting within the game as it will then range check
it.

Rather than allow the current track for each series of tracks
to be editable, I made the selector affect all the series in
the same way. It makes it look better and does the job just
as well.


Invalid files
As the games loads a driver file, it makes a running total of the
value of each component. If this total comes to more than 65535
then the file will be rejected.

The editor will tell you that you have an invalid file when you try
to save such a file. To correct this you should reduce the size
of some of the components.

In particular, reduce the total distance and highest average speed
to close to zero. As money is effectively useless now you could
leave this close to zero as well.


Breakdown of SR2000 driver files
Here is a simple program to change one characteristic of
a driver file:

MODE 12
@%=&908
DIM a%(80)
filename$="DriverFile"
:
x=OPENIN filename$
 INPUT#x,b$
 FOR a=0TO79
  INPUT#x,Ih%
  a%(a)=Ih% EOR 170
 NEXT
 INPUT#x,chk
CLOSE #x
:
REM Change the elements of the array here, ie:
a%(7)=20000
:
PRINT"Driver name: ";b$'
FOR a=0 TO 79
 PRINTa%(a);
NEXT
:
chk=0
x=OPENOUT filename$
 PRINT#x,b$
 FOR a=0TO79
  PRINT#x,a%(a) EOR 170
  chk+=a%(a)
 NEXT
 PRINT#x,chk
CLOSE #x
:
END

The driver file is loaded into an array. The elements can
then be changed by adding lines after the comment: the example
gives you more money. The file is then saved again.

Byte	Purpose

0	Killer games played
1	Controller type (0=kbd, 1=mouse, 2=joystick)
2	Unknown
3	Killer games won
4	Rader fitted (0=no, 1=yes)
5	Bomb fitted (0=no, 1=yes)
6	Mouse sensitivity (1-9 I suppose)
7	Cash
8	Tyres*2
9	Engine*3
10	Nitro
11	Turbo fitted (0=no, 1=yes)
12	Time*10
13	Crashes
14	Practice sessions
15	Qualify sessions
16	Race sessions
17	Total distance *100
18	Highest speed *100
19	Gear 1
20	Gear 2
21	Gear 3
22	Gear 4
23	Unknown
24	Unknown
25	Unknown
26	Pole position qualifies
27	Race 1st places
28	Race 2nd places
29	Race 3rd places
30	League (1-5)
31	League (1-5)
32	League (1-5)
33	League (1-5)
34	League (1-5)
35	League (1-5)
36	League (1-5)
37	League (1-5)
38	League (1-5)
39	League (1-5)
40	Track (1-5)
41	Track (1-5)
42	Track (1-5)
43	Track (1-5)
44	Track (1-5)
45	Track (1-5)
46	Track (1-5)
47	Track (1-5)
48	Track (1-5)
49	Track (1-5)
50	Position on grid (1-6)
51	Position on grid (1-6)
52	Position on grid (1-6)
53	Position on grid (1-6)
54	Position on grid (1-6)
55	Position on grid (1-6)
56	Position on grid (1-6)
57	Position on grid (1-6)
58	Position on grid (1-6)
59	Position on grid (1-6)
60	Qualified? (0=no, 1=yes)
61	Qualified? (0=no, 1=yes)
62	Qualified? (0=no, 1=yes)
63	Qualified? (0=no, 1=yes)
64	Qualified? (0=no, 1=yes)
65	Qualified? (0=no, 1=yes)
66	Qualified? (0=no, 1=yes)
67	Qualified? (0=no, 1=yes)
68	Qualified? (0=no, 1=yes)
69	Qualified? (0=no, 1=yes)

The elements after 30 are duplicated ten times: one is wasted and
the others refer to each series.

As I have been unable to find much use for the missing elements, I
have to conclude that they do very little of importance. I know that
elements 2 and 23 are boolean values, and 25 is somehow related to
the number of crashes.


 Copyright RISC User 1994
