The utility functions are kind of spread throughout, but most of them are defined as part of what Valve calls the 'Tier 1" library which contains, more or less, a custom implementation of the entire STL which has been fully integrated into the engine with datamap support and all.
Tier 1 tends to be a little more explicit about the underlying data type for a given container than STL, and has separate classses for hashes, red-black trees, and maps, as well as more specialized classes such as string maps, sorted vectors, dictionaries, and 2way lookup maps (handy for collision detection and related problems). The full list is in src/public/tier1 in the ep1 code, but I think the directory structure might have changed in the OB SDK. All of these classes are typically prepended with "CUTL". The code for them is *generally* well documented, but might be a little rough on someone who hadn't studied computer science at all. More generally, there are also a number of UTIL_ functions spread throughout the code. The /vast /majority of them however are defined in either game_shared/util_shared.h for shared functions, cl_dll/cdll_util.h for client only, or dll/utils.h for server only I would also advise a quick read through of math.h and dbg.h just so you know what options you have built into the engine. There are also extensive libraries for everything basic memory management to, in OB at least, parallel processing, and while they're all useful to know about if you need them, I wouldn't really go too far into them if you're just starting out. Good luck getting it all on the wiki. [email protected] wrote: > I believe there IS actually a UTIL.h file that defines most of them > Thanks, > Timothy Fenton > Animation and Game Design Student > > -----Original Message----- > From: "Jonas 'Sortie' Termansen" <[email protected]> > > Date: Thu, 19 Mar 2009 20:02:49 > To: Discussion of Half-Life Programming<[email protected]> > Subject: Re: [hlcoders] UTIL Functions... where are they? > > > Go look where they are declared in the header files, ten bucks they're in > some large header containing most of them. > > ----- Original Message ----- > From: "Grash" <[email protected]> > To: "Discussion of Half-Life Programming" <[email protected]> > Sent: Thursday, March 19, 2009 7:59 PM > Subject: Re: [hlcoders] UTIL Functions... where are they? > > > > Okay, I'm at this point feeling like I'm standing in a gourmet kitchen and > beating my food into pieces with a bent spoon cause I have no clue that > there knives. > > So, where are majority of the UTIL functions dashed away? > Yes, they're all over the place, I'm looking for groups of them that are > useful for newer programmers to source to know. > > Just pile on the thread with info... > I'll collect it and compile it on the wiki. > > > > --- On Wed, 3/18/09, Jay Stelly <[email protected]> wrote: > > From: Jay Stelly <[email protected]> > Subject: Re: [hlcoders] UTIL_EntitiesInBox cause a game to freeze. > To: "Discussion of Half-Life Programming" <[email protected]> > Date: Wednesday, March 18, 2009, 1:28 PM > > Check the bounding box you are sending it. It doesn't clamp to the world > bounds and will loop for a long time if you send it invalid bounds. > > >> -----Original Message----- >> From: [email protected] >> [mailto:[email protected]] On Behalf Of >> Tony Sergi >> Sent: Wednesday, March 18, 2009 2:44 AM >> To: Discussion of Half-Life Programming >> Subject: Re: [hlcoders] UTIL_EntitiesInBox cause a game to freeze. >> >> Post the code that uses it. >> >> >> -Tony >> >> -----Original Message----- >> From: [email protected] >> [mailto:[email protected]] On Behalf Of >> Charkrid Pornpitackchaikul >> Sent: March-18-09 5:13 AM >> To: [email protected] >> Subject: [hlcoders] UTIL_EntitiesInBox cause a game to freeze. >> >> Hi, >> I just adjust my melee attack collision code to use >> UTIL_EntitiesInBox() so it support multiple target hit. But >> the function >> is enter a finite loop and never return. I can't debug more deeper, >> because I don't have a engine code. Does anyone counter this problem? >> Please help me with this. >> >> Thanks in advance. >> >> _______________________________________________ >> 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 >> >> >> > > _______________________________________________ > 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 > > > _______________________________________________ > 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 > > _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders

