Thanks for the suggestions. I was thinking of writing a program to
decode the cryptoquip (by counting the occurences of numbers and
comparing them to a table of the most commonly-used letters in English),
and then a text adventure engine (I have never seen the source code for
a text adventure yet, I'm curious how they do it, I imagine some kind of
multi-branching linked list).
A numboer of them use a "game engine", which is an interpreter. Do a
Google search for "infocom" and "frotz", I know there is C source for
that (for Linux and DJGPP among others). But the code is not very
readable as I recall. Somewhere there is code for the original
"Colossal Cave" adventure as well...
(I note your email address, Infocom were the people who did Zork among
others.)
I'm a little worried that I might need to go take a calculus class when
I eventually get into 3D! I want to make my own raytracer.
If you want to do 3D (or even 2D) "real world" type programs then
calculus is rather useful. In fact if you're interested in any
mathematical modelling of "real world" stuff I'd advise it, if only so
you know what other people are talking about!
Writing a raytracer (or interactive games for that matter) is more about
knowing 'tricks' or shortcuts and algorithms than about raw mathematics,
bacause the 'obvious' (to a mathematician) route generally takes ages.
At the very least, you'll need to know about things like Fast Fourier
Transforms and other numerical methods, which aren't likely to be
covered in normal math classes (below degree course level, anyway).
Which is all off topic here, because it's about algorithms rather than
which language they are written in. Some newsgroups which may be more
helpful:
comp.games.development.programming.{misc,algorithms}
comp.sources.games
Chris C