I found the easiest way was to create a mod (not like release it, just plan
out some ideas), because then if you know what your aiming for, you know
what you have to do!


----- Original Message -----
From: "botman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, February 13, 2002 8:39 PM
Subject: Re: [hlcoders] THE DREADED NOOB POST


> > Hello to all the respected established coders of this list. My names
> Richard
> > and I'm yet another one of those annoying newbie coders who has 100
> questions
> > but I'll them brake down to one.
>
> <snip>
>
> There isn't any kind of "overall reference" or "API reference" to the
> Half-Life SDK.  Fully understanding the SDK requires a medium to advanced
> level of knowledge in C++.  The only way you will learn how things work is
> by looking at and playing with the SDK source code.  You will run into
MANY,
> MANY times when something doesn't work (the game crashes, goes into an
> infinite loop, or doesn't do some effect that you are trying to do).  In
> fact, you will find that there are more times when something doesn't work
> than you have when something does work.  You will learn by trial and
error.
> Some of these errors you will repeat over and over and will eventually
learn
> not to do those things (via negative reinforcement).
>
> The best way to become completely frustrated with the SDK is to start out
by
> ripping out 70% or 80% of what's there and completely replacing it with
all
> your own code.  You will find that you get dozens/hundreds of compiler
> errors and when you finally do get rid of all the compiler errors, the
game
> crashed deep inside the Half-Life engine (where you can't determine what
> caused the crash).
>
> The best way to NOT get frustrated with the SDK is making very tiny small
> changes one by one to the SDK source code and testing things out after
each
> small change.  Once you begin to understand how the variables, classes and
> functions are used, you will find yourself making much larger changes at a
> time and will find that you have fewer and fewer problems with new code.
> The time span for this learning curve can be anywhere from 2 or 3 months
up
> to 6 months or more, depending on your skill level in programming and your
> experience with programming in C++.
>
> Also, ALWAYS save backup copies of stuff that you are about to change so
> that you can easily roll back to a working version when you completely
screw
> something up (which you will do more than once).
>
> When browsing through the SDK source code, it's useful to have several
> editor windows open at once to view the .cpp and .h files in the dlls
folder
> and also to be able to view the .h files in the engine and common folders
as
> well.
>
> Start with the thing that the engine deals with, the edict_t structure.
> This can be found in the engine\progdefs.h file.  Every entity created in
> the game has one of these structures.  It contains things like origin (3D
> world coordinates), health, velocity, angles and so on.  This edict_t
> structure is pointed to by a class member variable called "pev".  Wherever
> you see "pev" used, just think "edict_t".  For example you'll see
> "pev->health", or "pev->angles" or "pev->velocity" used all over the
place.
>
> Every entity in the SDK source code is based on the CBaseEntity class and
> every other class inherits directly or indirectly from this CBaseEntity
> class.  Look in the cbase.h and cbase.cpp files for the member variables
and
> functions for this base class.
>
> Everything else is just inheritance of the CBaseEntity class with stuff
> throw in for that specific type of entity (for example, weapons contain
> ammo, players have weapons, etc.).  Pretty much all "basic" C++ type
stuff.
>
> If you can resist the urge to try to change too much stuff at once and try
> to understand one small piece of the puzzle at a time, it won't be too
long
> before you are getting up to speed on how to create your own MOD with the
> SDK.
>
> Jeffrey "botman" Broome
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to