Finished a "teach yourself" book, what next?

J

Jacob Oost

Chris said:
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...

If it's not readable then screw it. If there's one thing I intend to do
as a programmer it is to make my code readable and easy to upgrade.
(I note your email address, Infocom were the people who did Zork among
others.)

Believe it or not, I only ever got into the graphical Zork games. I
liked the text adventures when I was younger, but now that I've played
so many LucasArts adventure games, it's frustrating to play an adventure
where you can die or make irreparable mistakes.
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!

My problem with math is I tend to quickly forget it after learning. I
took two calculus classes and now I can't do a simple derivative by hand
(though I remember some of the rules for doing it in your head).
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).

As computers get faster though, real-time ray-tracing and radiosity
(instead of gimmicks to imitate them) will be standard.
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

Hold on, I just finished learning the preprocessor macros! I still
don't know anything about writing "real" programs. Unfortunately my
library is pretty slim on what they offer for programmers, and most of
the books I've seen in stores or have at home are just "this function
does this, and that function does that," with few source examples.

--

----- BEGIN GEEK CODE BLOCK -----
Version 3.1
GAT d? !s !a C++++ UL+ P L++ E- W+ N+ o-- K- w--
O- !M !V PS-- PE++ Y+ PGP- t++>++++* 5? !X-- R- tv b++ DI+ D++
G e !h !r !y
...... END GEEK CODE BLOCK ----
 
J

Jacob Oost

Jonathan said:
-----
1) Stay away from anything written by Herb Schildt.
There are innumerable errors in his books (even entire
chapters are wrong!). ("Teach Yourself..." Is that the
one written by the same clown?)

I have "Teach Yourself C in 24 Hours," by Tony Zhang. It was a basic
primer on the language, but not on actual software engineering,
organizing projects, style, etc.

--

----- BEGIN GEEK CODE BLOCK -----
Version 3.1
GAT d? !s !a C++++ UL+ P L++ E- W+ N+ o-- K- w--
O- !M !V PS-- PE++ Y+ PGP- t++>++++* 5? !X-- R- tv b++ DI+ D++
G e !h !r !y
...... END GEEK CODE BLOCK ----
 
K

Keith Thompson

Jacob Oost said:
I'd like to get it if I can find it for cheap.

There are many resources on the net for finding cheap books.
(I'm afraid comp.lang.c isn't one of them.)
 
J

Jason Wells

Jacob said:
Actually I'm not in college or anything, I just have some books on
programming. I've learned algebra and calculus, but forgotten a lot of
it. I prefer to study at home rather than in a class room. I've
already learned more in a few weeks than I did in months of classes.

The algebra you have learned has very little to do with Linear
Algebra(Matrices)... Maybe you could check out some of the math for
computer graphics books.
 
R

Richard Bos

Jacob Oost said:
I'd like to get it if I can find it for cheap.

Get this one even if you can find it for the normal price. It's well
worth it.

Richard
 
M

Mike Wahler

Jacob Oost said:
I have the sufficient motivation

Motivation implies that you're willing to exert
the necessary effort.
to become a good programmer in software
that interests me, which is mainly graphics. While I do want to learn
more advanced C stuff, I'm not sure I want to go through an 800 page
book on general Linux programming at this moment. What's the harm in
putting it off, especially if it is just "an extremely small fraction"
of what I need to study?

I gave my best advice, based upon thirty-five years of
my experiences learning about programming.

Take it or leave it. :)

-Mike
 
J

Jesse Meyer

Jacob Oost said:
Should I get some more general books, like "advanced self-teaching," or
can I start on specialized books like "Linux game programming?"

Any book recommendations?

I found _A_Book_on_C_ rather interesting, if a tad out of date
(last edition published in 1997, so no C99).

Others have recommened _C_Unleashed_, which is an excellent book
and I'm happy to own my copy.

OT: You want a good algorithm book.

PS: Try ebay and amazon.com for used books, the price is often
cheaper. K&R sells for $42.00 new (Amazon), but the lowest used
price is $24.95. Or try a public library system, if available in
your area. There are often services available at local libraries
to find and borrow books from remote libraries.
 
R

Randy Howard

I have "Teach Yourself C in 24 Hours," by Tony Zhang. It was a basic
primer on the language, but not on actual software engineering,
organizing projects, style, etc.

Perhaps you will be fortunate enough to forget most of that one soon.
 
A

Albert van der Horst

But not, originally, in C. Advent was written in Fortran. The original
Infocom games were written in ZIL, which was a kind of MDL, which was a
Lisp-like language. I've no idea what their 'terps were written in.

The original code in MDL is, as far as I can tell, still a trade
secret, after more than 25 years.
I have the code for what I know as dungeons, aka Zork on my site.

http://home.hccnet.nl/a.w.m.van.der.horst/games.html

It is in fact a 1991 source intended for MSDOS, but after conversion
to Unix text files, it compiles perfectly on Linux, gcc.
It is a testament to the practical portability of C.
I didn't want to look into the source (I want to play it, and don't
want spoilers) but I didn't need to. So I don't know whether it is
a good idea to study it.
 
C

CBFalconer

Albert said:
.... snip ...

The original code in MDL is, as far as I can tell, still a trade
secret, after more than 25 years.
I have the code for what I know as dungeons, aka Zork on my site.

http://home.hccnet.nl/a.w.m.van.der.horst/games.html

It is in fact a 1991 source intended for MSDOS, but after
conversion to Unix text files, it compiles perfectly on Linux,
gcc. It is a testament to the practical portability of C.
I didn't want to look into the source (I want to play it, and
don't want spoilers) but I didn't need to. So I don't know
whether it is a good idea to study it.

The secrets are in the encoded .dat file, so reading the source
won't spoil your fun. At a first glance it seems fairly nicely
organized, but could do with advancing to C89 standards. Lots of
warnings under -ansi -pedantic, but none extremely serious, and the
result compiles and runs under DJGPP/windoze.
 
R

Richard Bos

Albert van der Horst said:
The original code in MDL is, as far as I can tell, still a trade
secret, after more than 25 years.

The original code is in ZIL, not in MDL (there are quite a few
differences), and they aren't so much a trade secret as simply lost in
the mist of times.
I have the code for what I know as dungeons, aka Zork on my site.

http://home.hccnet.nl/a.w.m.van.der.horst/games.html

It is in fact a 1991 source intended for MSDOS, but after conversion
to Unix text files, it compiles perfectly on Linux, gcc.

You do realise that the original was in Fortran for a DEC, more than ten
years earlier? A Fortran version is TTBOMK still available from the IF
Archive.
It is a testament to the practical portability of C.

True; the Fortran version is not quite as portable. Never mind the
original Advent: that required you to save a core file if you wanted to
change the settings...

A text adventure is actually a good example of a fairly complex program
that can be written entirely in ISO C, if you don't care about the
looks.

Richard
 
R

Richard Bos

The original code is in ZIL, not in MDL (there are quite a few
differences), and they aren't so much a trade secret as simply lost in
the mist of times.


You do realise that the original was in Fortran for a DEC, more than ten
years earlier? A Fortran version is TTBOMK still available from the IF
Archive.

Ho-hum. I must correct myself. The original for Dungeon _was_ written in
MDL. The originals for the separate Zorks and subsequent Infocom games
were in ZIL, though, and do appear to be lost rather than kept secret
(as, AFAICT, is the original Dungeon). The Fortran version appears to be
later than that.

Richard
 
M

Mabden

Albert van der Horst said:
The original code in MDL is, as far as I can tell, still a trade
secret, after more than 25 years.
I have the code for what I know as dungeons, aka Zork on my site.

http://home.hccnet.nl/a.w.m.van.der.horst/games.html

What does this line mean (from your website):
"My modification to the source code of dungeons are in the public
domain. This mainly amounts to replacing pairs by only and selection a
scroll mode in the Makefile"
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,233
Members
46,820
Latest member
GilbertoA5

Latest Threads

Top