Contents

Please 'Click' on the following to learn about registering Race Track . . .

1.   Please consider registering . . .

Please 'Click' on the following to explore the game . . .

2.   What is Race Track?

3.   A Birds-eye view of Race Track's components . . .

4.   How do you play?

5.   How do you build your own track?

6.   How do you race?

7.   The rules in a 'nutshell' . . .

Please 'Click' on the following for other important information . . .

8.    The 'Boss' key, Sound Volume, etc. -- misc. things you should know . . .

9.    The RACETRK.INI file . . .

10.  Credits (or What does it take to build a program like this anyway?).

11.  Other programs by the author (or Maybe you'll like one of these too!).


Whatis
2.  What is Race Track?

Race Track is a mathematical simulation of auto racing.  I hope you won't be too disappointed when I you find that it is not an arcade game -- to play it well requires 'thinking' rather than 'reflexes' -- but it has much of the same excitement.

Race Track is described in Martin Gardner's book "Knotted Doughnuts And Other Mathematical Entertainments" in chapter nine -- "Sim, Chomp, and Race Track".   It is a good example of how the real world can be modeled using very simple means.  By enforcing some very simple mathematical rules, Race Track furnishes "a truly remarkable simulation of automobile racing."

Don't let any of this "mathematical simulation" stuff scare you though!  The game is FUN! and very simple to learn and play.  You can race against a friend (very fun!), against the clock, or against the track champion (which may be yourself or some other person you may never have met ).   If you beat the track champion, you become the new 'target' for others to beat.  You can race the three tracks provided with the Race Track program or you can easily ( and I do mean easily!) create your own devious track lay-outs from scratch, or modify an existing track to suit your tastes.

The nice thing is that the Race Track program does all the dirty chores -- draws the track, keeps the clock, cleans up the crashes, enforces the rules, etc. -- while you concentrate on 'thinking' and beating your opponent.


Register
1.  Please consider registering . . .

Please consider registering.   Race Track is not freeware, it's shareware; even though it is not 'hobbled' in any way, nor are there pesky 'nag' screens to bother you.

If you want to continue to legally use this software, you must register this program after 21 days.    To register, send $10 to:

P.S. Neeley
248 W.  3325 N.
North Ogden, Utah 84414


Howdo
4.  How do you play?

Race Track is about (1) , building tracks and (2), racing on them.   The first order of business is then to build a track.

Tracks are built of eight track elements by  'painting' them on the screen using the build track palette -- it's all very easy.   Once you've built a track you can store it as a file with the TRK extension -- like RACE1.TRK, or MONTECAR.TRK, etc.   Don't be too confined by the notion of a track.   By 'Tracks' we certainly mean a traditional racing track with a starting line, lots of turns and straight-aways, and a final finish line.   BUT, you can just as easily build other kinds of tracks that resemble more of a maze or a puzzle than an ordinary racing track.  There is a separate section of this help file with detail on building tracks.  You can 'jump' there now if you wish by clicking on the hyper-text below:

4.  How do you build your own track?

Once you have a track to race on, you are ready to race.

A Score-board form, which is always visible and can be picked-up and moved out of the way when needed, keeps track of the time, whether you've satisfied your pit-stop requirement (if any), and whose turn it is -- red or blue.   The allowed moves for a given car on a given turn are easily seen as 'sunken' cells on the race track.  You could have a maximum of nine possible moves on any given turn, but you may have less -- even just one (We'll explain how these moves are determined in due time -- its the result of the simulation that Race Track provides).

 You can choose to race:

 (1) the blue car
 (2) the red car
 (3) the red car against the blue car.

 No matter which option you choose, the clock is ticking (meaning that Race Track keeps track of your moves) and implicitly you'll be going against the track champion for the championship.

Now let's talk about our hero.  Just who is this Track Champion anyway?   A track can, and probably will, have a champion.  The track champion is that person who has raced successfully around the track to the finish line in the least number of moves.   By 'successfully around the track' we mean proceeding  from the starting position to a finish line cell without crashing and without forgetting to stop at a pit-stop (if the track has any).

In options (1) and (2), where you race only one car, you race against the champion's time.   In option (3) you can choose ( an option box will appear giving you this choice) to race both cars yourself or to race one of the cars against the champion.   If you are racing a friend, then you would obviously choose to race both cars manually.   But it you choose to race the Champion, one of the cars ( whichever the Champ raced to track stardom) will race by itself, tracing the winning moves of 'The Champ'.   When you finally 'bump off' the champion and become the new Champion, your moves will be stored along with the track as the new target and you will race, like a 'ghost', against all new comers.  Another section of this help file describes racing in more detail. You can 'jump' there now if you wish by clicking on the hyper-text below:

5.  How do you race?


HowBuild
5.  How do you build your own track?

 Building a track is easy.   Just Click on the 'Build/Modify a Track' command button on the 'Little Bald Man' form.   See picture below:

The red circle shows the command button and picture that take you to 'Build/Modify a Track' mode.

The result will be a screen with the current track displayed along with a floating 'Build Track Palette' form above it.  This floating form can be dragged about the screen at any time to move it out of the way if need be.   A picture of this floating form is shown below:

The 'Build Track Palette'

 This 'floating form' also contains two command buttons -- 'Clear All!' and 'Done!'.   'Clear All!' will clear the track so that you can start from scratch (don't worry, it'll give you a chance to change your mind in case you've chosen this option by mistake).   'Done' says that you are done modifying the track and now you want to return to the 'Little Bald Man' form so that you can save the track or race on it.  See the eight  track element pictures strung between the two command buttons?   They represent the various track elements you can paint:  They are:

The blue car starting position

The red car starting position

Bare track

Non-track or an obstacle

Oil-slick

Finish line

Red car pit-stop

Blue car pit-stop

 Click on one and a vertical line will appear behind the element to show that that is the 'selected' or 'active'  element.   Now position the cursor over the track where you want to 'paint' this element and click the left mouse button to paint on the track.  You can hold down the mouse button and drag the cursor to continuously paint elements across the screen if you want.

When you are satisfied with your track, click on the 'done' button and you'll find yourself back at the 'Little Bald Man' form.  You may get a warning message when you try to leave the track painting palette if you have not created a valid track.   Don't let this scare you -- you can always return to track building mode anytime or even save the invalid track to work on later.   Remember, though, that you will not be able to race on an invalid track.

Just to refresh your memory, a valid track must have:

One and only one red car starting position, one and only one blue car starting position, and at least one finish line cell.

Other than that, anything is fair game.


BossKey
8.    The 'Boss' key, Sound Volume, etc. -- misc. things you should know . . .

The 'Boss' Key:

I am sensitive to the fact that you might want to play Race Track  in private at times.

To that end, if you hit the escape key ('Esc') anytime during play (unless a  modal message box is showing and asking for a reply), Race Track will instantly end.

This is also why Race Track minimizes program manager on start-up --- so that after the boss key is used you won't see an embarrassing 'Games' program group, up top, in front, for all to see.

Turning off/on the music and the sounds:

The 'Little Bald Man' form has the only menu in Race Track.  One of the Menu items (at the top of the form) is 'Music and Sounds'.  This is the menu option you use to turn on (and off) the game sounds and the background music.   When you first install Race Track both are tuned on.  If you decide you want to 'turn-off' one or the other, Race Track records this in its INI file and uses this configuration the next time you play.

MIDI vs. WAV volume -- If the music is too loud compared to the game sounds:

Race Track has two tracks of background MIDI music ( RTWIN.MIDI and RACETRK.MID)  and two games sounds ( RTCRASH.WAV and RTSIREN.WAV).   I've tried to set the relative volumes between the two MIDI files and the two WAV files at a good spot.  Because of the maddening difference between the many sound cards out in the world, this might not be right for everyone.  If you find your Music too loud compared to the Crashes, or the Crashes too loud compared to the music, look for and use your 'Mixer' application ( it came with your sound card for sure), before or during playing Race Track, to adjust the relative volumes.


Inifile
9.  The RACETRK.INI file . . .

Race Track uses the information in the RACETRK.INI file in the Windows directory to record information for start-up.   This is the only file, other than custom tracks ( with the .TRK extension) that you create and store, that Race Track creates on your system.  If you ever want to delete Race Track  from your system, you should also delete RACETRK.INI in addition to the files in your RACETRK directory (and of course, any custom tracks you may have created yourself).


Credits
10. Credits (or What does it take to build a program like this anyway?).

Race Track was written in Microsoft's Visual Basic for Windows 3.0.

Almost all of the BMP pictures used in Race Track were created using Microsoft's Paint program -- an application furnished with Windows 3.1.  Two exceptions are BMP pictures converted from MetaFiles found in Microsoft's PowerPoint program.  The fine checkered flag BMP was borrowed from Microsoft's Set-up Wizard program that came with Visual Basic 3.0.

All of the icons used here (some of which were subsequently converted to BMP files) were created using IconMaster  -- an application furnished with Visual Basic.

Adobe's PhotoShop software was a great help in modifying, and organizing, the graphic images -- especially in combining various graphics together into consolidated images to conserve system resources.

This Help file was written with the aid of Craig Villalon's shareware help authoring system -- VB Automatic Help Author v.1.32 .

The 'crash'  game (RTCRASH.WAV) sound was recorded, using the Microsoft Windows Sound Recorder Applet and my trusty Radio Shack microphone, from a PBS TV program on atomic bomb testing in New Mexico in the 60's.   The siren sound (RTSIREN.WAV) is a greatly shortened and modified boat siren WAV file found on Interactive's "1000 of the World's Greatest Sound Effects" CD-ROM.

The MIDI background music -- RACETRK.MID -- is a shortened, modified, and simplified version of the MOTORING.MID file that came as a MIDI example with my Ensoniq SoundScape sound card.   The winners 'fanfare' (RTWIN.MID)  is a shortened and modified version of 2000&1.MID; another example MIDI file that came from Ensoniq.   Both of these MIDI files were modified and shaped from the originals using  MidiSoft's excellent software -- MidiSoft Recording Session.

The knowledge and interest in Mathematics and programming is due to my father Pat's influence and the fine education I received from the many Math and Science teachers and professors who taught so very well (obligating a debt I can never repay).

The time to complete this programming project was largely 'stolen' during the late evening and wee morning hours when more normal people would be asleep.  However, inevitably, some of the time  was donated by my wife, Barbara and my children, Jon, Melissa, Christie, Patrick, Nick, and James.

Some day they may come to understand that while other fathers were tinkering with the family car, mowing the lawn, doing woodwork in the garage, etc. -- tending to normal business -- their father, high in the dark castle tower, and bathed in the soft glow of the electron's fire, was practicing modern-day sorcery.   For he was building something that would never really grow old and decay, that could be copied exactly many times with almost no effort, that could be used and enjoyed by many, many people at the same time, and that could be scattered on the electronic winds to the ends of the Earth.  Yet, this something was made out of nothing but an idea, diagrams in the air, and glowing bits of phosphorus.   Can there be anything more magic than that?


Other
11. Other programs by the author (or maybe you'll like one of these too!).

Here are some of my other humble shareware creations that you might enjoy. All can be found in CompuServe's WINFUN  or WINSHARE forums and, I would hope, eventually other services and BBSs.

Family Memory Match

A Windows memory match game for the whole family.   Play on an infinite number of levels against the computer, or play against a friend.   Great graphics, fun for the children, definitely challenging for adults.

Shuttle Save

A Windows 3.1 screen saver that uses your BMP collection as material to create stunningly beautiful collages in the contrails of launching rockets.   Full featured including password protection.   Not gimmicky, not intruding, ever changing as your swap BMP pictures in your library.   The family will love it at home; as good as an office with a window at work.

Lunar BBall

A Windows simulation (not just a game) of a small basketball court that can be moved from Earth, to Orbit, to the Moon, and even Jupiter.   What would it be like to play basketball on the Moon?  Could you play in orbit.   Can you even shoot the ball on Jupiter?   Find out!    Great user interface, great graphics, basket ball sounds -- educational and definitely fun.    Real physics!   Real action!

Gomoku Narabe

The ancient Japanese game of 5 in-a-row for Windows.   Great graphics, beautiful to look at.   Easy to understand and play -- but definitely challenging.   A good example of a simple game with no known winning strategy.   Includes a 'mathematics laboratory' that allows you to explore alternate M x M, N in-a-row games.    Real Japanese culture and flavor.    Play against the computer on three levels or against a friend.    A thinking game with history, culture, and deep mathematical meaning.

Space Dodge'm

A Windows version of the classic game of Dodgem.  Get your landers or shuttles off the space station before the rogue asteroid hits.  Great graphics, sounds, MIDI background music.   An example of a game without a known winning strategy that is simple to learn and play.  Challenging yet fun to play.  Beautiful!

tinyCAM!

A Windows screen capture program that captures the screen image, or the active window, to successive BMP files.  Looks, acts, ad sounds just like a camera.   BUT, you never run out of film as long as you have disk space.  An essential tool to collect the raw images needed to build help files, illustrate user documentation, record unusual program events, or capture and preserve screen saver images.   Simple, elegant, yet powerful -- it's actually fun to use!

Collage

A true Windows 3.1 screen saver ( SCR file) that uses the BMP files from the directory you choose as material to create stunningly beautiful collages.  Full featured including password protection.   Not gimmicky, not intruding, ever changing as your swap BMP pictures in your library.   The very best way to display your favorite BMP pictures!


HowRace
6.  How do you race?

You start a race by clicking your choice of race type; is it a one car (red or blue) against the clock (and of course the champion) or a two car race (one option being manually racing both cars, another being a race against the champion's actual championship run)?  The race is monitored on the 'Score board', a small floating form, as shown below:

The 'Score Board' form

The Score board shows you whose turn it is to move by the position of the yellow arrow.   It also shows when you have full-filled you pit-stop requirement by 'X'ing out the pit-stop symbol next to your car on the score board.  It also keeps track of moves ( the column under the small watch picture) and the number of crashes (the column under the small red-cross picture).   You can cancel the race at any time by choosing the 'Cancel' command button on the Score Board.  If the Score Board gets in the way of the race, maybe by hiding part of the track or the cars, go ahead and drag it out of the way.

When its your turn, Race Track marks your possible moves by 'sinking' the  track cells -- your valid moves will appear to be as the 'sunken' cells.

In the race fragment at left, the blue car has only 6 moves -- see the 'sunken' track cells?  The two closest to the blue car are regular open track cells but the 4 farthest away are oil-slick cells.

You could have up to as many as 9 possible moves.  Sometimes you may have  -0-  possible moves and in this unfortunate case, Race Track has no recourse  but to cause your car to continue at the same speed and in the same direction as your last move until you slam into the wall and crash.  It's not Race Tracks fault, it's  the other persons, right?!

The most common causes of crashing is simply going to fast around a curve or failing to slow down before a particularly sharp bend.   Another common tradgedy is getting trapped in an oil slick so that you have no chance to change direction and speed until its too late.   Race track determines the possible moves by the following rule:

"Assume that your previous move as K units vertically and M units horizontally and that your present move is K' units vertically and M' units horizontally.  The absolute difference between K and K' must either be 0 or 1, and the absolute difference between M and M' must be either 0 or 1.  In effect. a car can maintain its speed in either direction, or it can change its speed by only one unit distance per move."

Not all moves described by this statement may be possible in a given position.   For instance no move must allow you to leave the track.  Further, if your present position is an oil slick, then you have no choice but to continue to move in along your present course and speed until you are lucky enough to leave the oil slick.

It sounds complicated but it's really not.  The point is you can only change direction and speed by a finite amount  -- 1 cells worth -- on any given turn.    In this way, Race Track is able to mimic a real race quite convincingly.

As you move your car around the track, it will leave a trail of matching color so that you can see where you've been.  This trail helps you determine where you could have done better during the race and where you 'lost all control' and careened wildly into the wall, sending spectators scurrying and ruining your mechanic's day.


TheRules
7.  The rules in a 'nutshell' . . .

The rules of Race Track are very simple (and all are enforced automatically by the Race Track program):

1.  A valid track must consist of at least one red car starting position, one blue car starting position, and one finish line.

2.  In a two car race, or a race against the 'ghost' of the champion, red always moves first.

3.  In order to become the track champion you must beat the previous champion by 'successfully' racing the track with a 'better time'.

4.  'Successfully' racing the track means that you must proceed from start to finish without crashing and without forgetting to 'make at least one pit-stop' (if any are present).

5.  To 'make at least one pit-stop' means that you proceed so as to come to a complete stop on at least one pit-stop cell of your own color.    If you reach the finish line first without having visited a pit-stop, you may still win by finding a pit-stop and coming to rest, but you cannot become the track champion on the win no matter how good the time.

6.  Racing in a 'better time' means that you take fewer moves, or in the case where the moves are equal to the track champion's, traversing a greater number of cells in the last move to the finish line.

7.  You can only make valid moves.   Valid moves are described by Martin Gardner as:

"Assume that your previous move as K units vertically and M units horizontally and that your present move is K' units vertically and M' units horizontally.  The absolute difference between K and K' must either be 0 or 1, and the absolute difference between M and M' must be either 0 or 1.  In effect. a car can maintain its speed in either direction, or it can change its speed by only one unit distance per move."

Not all moves described by this statement may be possible in a given position.   For instance no move must allow you to leave the track.  Further, if your present position is an oil slick, then you have no choice but to continue to move in along your present course and speed until you are lucky enough to leave the oil slick.

8.  In case a car has no valid move, the car continues along it's last course and speed until it slams into a track wall -- resulting in a large crash of nuclear proportion and much embarrassment for the experienced driver.


Birdseye
3.   A Birds-eye view of Race Track's components . . .

Race Track is made of just a few components.  If you would step away from Race Track (about 50 feet) to a birds-eye view you would see an underlying, green 'track' form and three special control panels that 'float' above the track.

The three special floating panels are:

(1) The 'Little Bald Man' form that always appears right after the 'splash' form.  This is the main control form for Race Track and where you switch from Track Build mode, Racing mode, Save a Track, Load a Track, etc. -- it is the control hub of Race Track.   You probably got to this help file by clicking on the help command button on this form.

The 'Little Bald Man' control panel

(2) the Track Build Palette:   This is the 'painting' palette that allows you choose elements from which to build tracks and to control the track building process.

The 'Build Track Palette' form

(3) the Score Board:  This is the 'time keeper' of Race Track that records times, switches turns, keeps track of who has fulfilled their pit-stop obligations, etc.

The 'Score Board' form

You'll use these three 'floating' forms to control Race Track.   Since they 'float' above the track you may need to drag them out of the way from time to time so that they don't obscure your view of the action.