From Valve Developer Community
Jump to: navigation, search

Mapping: Novice.
Coding: Amateur.
Wikifyer: Intermediate.
Writer: Experienced.

I'd been playing with the Source SDK and Visual Express 2005, and found myself increasingly interested by the information on offer here. I had a cool idea for a mod which, sadly, probably isn't legally viable right now as it uses too many tf2 models. However, now that another nugget of coolness is forming in my mind, I'm going to continue to use and contribute to this community in the meantime. I'm also quite concerned with putting in an effort to develop the site actively; I'll be trying to improve the presentability and usefulness of all articles I come across, when I have free time.

The Extent of My Usefulness

This section is formatted for at-a-glance reading of important points. When I highlight something, it's not because of my ego!

I started making games when I was 4 or 5. These were cut-outs on paper, and I moved the mario-clone with my one hand, and the enemies with the other.

When I got spat out of the other side of school, I wanted to write, and so I started submitting short stories to publishing companies and magazines. One magazine, Chapman's of Edinburgh, a prominent scottish literary mag, wanted to publish one of my stories if I'd only edit it slightly. I never got around to it, coming as it did in the middle of a busy move to another continent where Scottish prominence wouldn't matter very much, but I am told it went through 2 in-house readings and ended up on the shortlist for publication. So, to me, that means that when I get a friggin minute and actually submit something, they'll probably publish it. Which means I'm a good writer, and not just self-proclaimed.

I became a wikipedian for 2 years, sometimes picking at grammar, sometimes helping with disputes, sorting vandalism, etc etc. After that, I got bored of it. I'm not a professor, so I could only write for it to a certain point, but I definately got to know how a wiki works.

I did the first year of a programming course in C. This isn't much, I know, but I know what a variable is and I have a good place to work from. The subject matter never seemed to stray beyond stuff I already knew, like functions and libraries, but from what I see from the Windows Platform/Valve Source SDK's, it's all about knowing a particular library. I learn fast.

As an avid gamer and an analytical thinker, I've always enjoyed analyzing games: What makes them good, what makes them bad, which elements are decoration and which are core to the excitement and stimulus... these are questions I love to answer. When I found out that making a Source Mod might require little more than hard work and imagination, I leapt at the chance to create my own game. I know that the proof of the pudding is in the eating, and nothing I can say will prove my worth more effectively than just creating something genuinely cool; for this reason, I am developing my own sp mod for half-life and will attempt to make everything on my own, from maps to models to code to art. Obviously, keeping all that to a minimum and making sure my eyes aren't bigger than my belly will help make that happen.

If you think you need me, or I need you, drop me a line on my talk page.

Building a Weapon

This is a log of my personal voyage of discovery in remaking a weapon. My place is:

  • Stage 1: Clone the weapon_357, rename it, get it to work.
  • Stage 2: Understand what every line of code does, and post a heavily commented version of the .cpp in User:Jazmeister/WepTut.
  • Stage 3: Compile a tutorial on making a pistol that fires three rounds in quick succession, for example.

I don't know how to format an FGD file for my weapons. As an example, I've cloned the .357 from half-life and intend to gut it and turn it into an interesting Game-Selling beam weapon. Coding aside, I can't place it in Hammer; I know that I need FGD's for that. I can make brush FGD's, point FGD's, and Logical FGD's... is that all I need as far as hammer? Did I just answer my own question? Jazmeister 10:38, 8 Apr 2008

Actually, it's declared as "@PointClass base(Weapon)". I found that by wondering where hammer found the .fgd file for half-life 2, and opening it, and searching it for weapon_357. This was the result:
@PointClass base(Weapon) studio("models/weapons/w_357.mdl") = weapon_357 : "357" []
Valve seems to put a ton of those, each to a single line, at the end of their fgd, for those interested in preserving conventions. Jazmeister 14:37, 8 Apr 2008

Recently received this love letter after compiling all of the server-side code I apparently need to author my own gun.

DataTable warning: No matching RecvTable for SendTable 'DT_WeaponCustomGun'.
Client missing DT class CWeaponCustomGun
Host_EndGame: CL_ParseClassInfo_EndClasses: CreateDecoders failed.

Dropped Jazmeister from server (Disconnect by user.)

I know that this means I should do something in clients, so i searched for "Weapon_357" in my client project (the 357 is my base for the weapon right now), and it showed up in stubs. So, I added a new stub, changing values, blah blah, and compiled again. Didn't work again, same message. RecvTable must be what I need to find out about. I shall investigate. Jazmeister 00:55, 9 Apr 2008 (PDT)

This might be a useful link:,1123045856,24129/890053/0#1
I should also check Send & Receive Proxies. Jazmeister 01:11, 9 Apr 2008 (PDT)

Creating A Multiplayer Weapon is almost exactly what I'm doing. Maybe I should rename & edit that. Jazmeister 02:59, 10 Apr 2008 (PDT)

Improving the Modding Section

(Other users feel free to edit this section as work progresses)


  • a set of easy to understand tutorials.
  • a comprehensive knowledge base for experienced users.
  • something incorporating all of the above.
  • Gather all relevant articles and plan how they link and connect to eachother.
  • Start to finish tutorial, incorporating everything?
  • Gateway tutorial, layered to allow easy skipping of things like programming or mapping if those aren't your particular cup of tea?
  • Disconnected tutorials linked to main, informative articles?
  • (Actually do it)
  • Perhaps attempt to form a sort of "WikiProject" for modding, with established standards, etc.


My sandbox version of Category:Programming

Heavily commented .cpp file to aid in making a Weapon Tutorial