Clueless on where to begin

  • Thread starter Thread starter CousinPhil
  • Start date Start date
C

CousinPhil

Guest
I've been very interested in creating a mod for Half-Life 2 since I heard that there was going to be a Half-Life 2. However, my skills in C++ are somewhat lacking. I have all my entire mod idea mapped out in a word document. I've also begun designing map layouts for the different maps. I also have Visual Studio .NET 2003 to compile with correctly. Now I've been staring at the code for a few weeks now and can't really think of a place to begin.

It might seem like I'm asking to be led by the hand, because it's essentially what I'm asking for help on. How so I begin turning all the great ideas I have into something that can be experienced? Should I begin with weapons? GUI? Teams and menus? NPC coding? I would very much like some help in the form of an informative post or even just several links that might assist in guiding me towards those first steps to take in making my game a reality.

Thanks in advance to anyone who can help this "codeless designer." :)
 
You could maybe not start on your mod, but instead create small modifications to the code. This won't result in anything spectacular, but it might give you insight in the code, as well as learning to manipulate things the way you want it.
 
Perhaps that would help to get me some practice in modifications. Quick question, to get on the right path, which choice do I want to choose of the 4 options when you select "Create a Mod?" Also, which setting do I want it to be for under "Current Game?" Thanks!
 
This all depends on what kind of MOD you'd like to create. If you want to create a SP mod, select "Half-Life 2" under current game and "Modify Half-Life 2" under Create a Mod.
 
Well I wanted to make a multi-player mod, so which should I go for then?
 
Its standing right next to it!
You modify HL² for SP and start anew for MP.
 
I had the same question when I started my mod. I came up with my own personal seven-step-program to get headway. So far my step plan has worked like this:
(note: you’re already done with step one but I’m putting it up for other people too)

------------------ 1 ------------------

First I spent a day (or two) playing the game in my head and thinking of all the cool stuff I wanted to do (ok it was four). Then I divided all this cool stuff in to three categories called Code, Mapping and Art. When I was done it looked more or less like this (minus the things about Banana Guns and Monkeys and … well … everything, but you should get the picture):
Code:
Coding:
	Player Squads
	Friendly Fire
	A Banana Gun
	Servant Monkeys
	The Village People
	A Huge Pachinko Machine
Mapping:
	A Huge Cathedral Battle
	A Brawl
	A Thing With Eight Rooms
Art (Skins, Models, Textures, etc…):
	Red Clown Suits
	Paintball Ammunition
	A Thing With Eight Legs
------------------ 2 ------------------

Then I spent some time sifting through my list and dividing stuff into two categories called “Modded” and “New” (and if you are too lazy to press delete you can add one for stuff that is already in game). This step is pretty easy because you just think of all the stuff you have and think of how it overlaps with the actual game.

------------------ 3 ------------------

This was the hardest step - Prioritizing.

The first thing I did was place everything in the “Modded” first because I could use the pre-existing code, models, skins, etc. as a crutch (this was and still is my first mod). Then I played the game some more in my head and find out what you NEED and what is GREED (plus I got like 4 WAY COOL headshots). This decision is hard because some things are just FREAKING COOL but arguably not necessary for the actual mod to work.

------------------ 4 ------------------

Now that the list was organized it looked kinda like this (actually I put CODE first but that's just cus I'm a programmer):
Code:
Player Squads				[MOD]	[CODE]
Friendly Fire				[MOD]	[CODE]
Paintball Ammunition			[MOD]	[ART]
A Thing With Eight Legs			[MOD]	[ART]
A Banana Gun				[NEW]	[CODE]
Servant Monkeys				[NEW]	[CODE]
The Village People			[NEW]	[CODE]
A Huge Cathedral Battle			[NEW]	[MAP]
A Brawl					[NEW]	[MAP]
A Thing With Eight Rooms		[NEW]	[MAP]
Red Clown Suits				[NEW]	[ART]
A Huge Pachinko Machine			[---]
------------------ 5 ------------------

Then I got everything I needed to pull it off.
Code:
Code:		MSVS.NET 2002
Mapping:	Valve SDK
Art:		Photoshop CS
		3DsMAX (still working on this one)

------------------ 6 ------------------

This stage is the one that takes time…
Bend over – Grab Ankle – Do whatcha gotta do to get it done but just remember to work your way from the top of the list to the bottom.
- - - 1. If you think of something else that might be cool tack it towards the bottom of the list and worry about it later.
- - - 2. Lie to yourself with time-tables. Tell yourself you will finish “x” code in “x” days and MOVE ON.
- - - 3. Mark what you’ve finished with [DONE] and NEVER TOUCH IT UNLESS YOU NEED TOO.
- - - 4. If you are a coder or leader working with a team, release master-copy versions of your mod so that EVERYONE is on (literally) the same page at all times.
- - - 5. Keep a log of your changes and versions.

------------------ 7 ------------------

Remember to go to bed before 4 every morning when you have choir at 6:30 AM.

------------------------------------

If you need to find out how to do something remember these steps:
- - - 1. Read the SDK Documentation
- - - 2. If you can’t understand that, Google it
- - - 3. If you find nothing, Google it again
- - - 4. If god hates you and you haven’t found anything, Google it a third time
- - - 5. SEARCH the forums for an answer
- - - 6. then Google it until your eyes bleed
- - - 7. Repeat 1-6
- - - 8. If you’re about to give up and have NO IDEA then go to the forums (but don’t just sit on your ass and wait for an answer, keep doing 1-6).
- - - 9. If you’ve done this so much you’re passing out from ocular blood-loss and have carpel tunnel (or are just running out of time) CUT IT FROM THE PROJECT.

A real example of my list:
Code:
The Resistance Mod
	V.0.1 - Features - [RELEASED]
		- npc_underground						[DONE]
			"The Underground of Dumar" has been added. This
			npc class is one of the main sides of the story.
			As of now they are still mainly a copy of the
			npc_citizen class. Custom componants of this
			class include a flag called "Is Bad" that allows
			for the npc's hatred of the player to be switched.
		- npc_citizen							[DONE]
			This npc class has been modifed to have one main
			switch between "Rebel" (active combatant) and
			"Passive" (innocent bistandard) controled by a
			flag called "Is Rebel".
		- AR2 Modified							[DONE]
			The AR2 has been modifed to fire at a much slower
			rate, have a larger clip and be far more powerful.
		- SMG Modified							[DONE]
			Arguably the most fun modification of this mod,
			the SMG has been given an insanely fast fire rate
			(capible of unloading a 50 round clip in under 2s).
			It's been given a slightly larger clip, does less
			damage and has a higher max ammo.
	V.0.2 - Features
		- npc_citizen							[DONE]
			A new feature of this npc is the added ability to
			switch the "Rebel" type of this class against the
			player.
		- Shotgun Modified						[DONE]
			The Shotgun has been modded to be even more of a
			short range weapon. Now with a 20 degree cone of
			fire.
		- npc_underground						[----]
			New skins have been made for this class (they now
			wear dark black-op-ish clothing).
		- npc_underground and npc_citizen				[DONE]
			They have been fixed up and now support player-based
			squads.
		- HL2 Refrances Removed						[----]
			All npc refrances to the player as "Freeman" have been
			removed.
		- Friendly-Fire							[----]
			True Friendly-Fire has been added.
		- npc_bullsquid							[----]
			This creature has returned and has been intigrated.
		- npc_houndeye							[----]
			This creature has returned and has been intigrated.
		- npc_alyx							[----]
			This npc has been re-skinned and moddeled to play as
			a fill-in for Megan.
		- npc_odysea (what's-his-face)					[----]
			This npc has been re-skinned and moddeled to play as
			a fill-in for Mark.

Hope this helped you get started and GOOD LUCK!
 
Coding should always top the list. Trust me, it's a bad thing to happen when everyone focuses on everything else first, then start coding, and find that half of the stuff you've planned and prepped for are impossible in Source.

-Angry Lawyer
 
Angry Lawyer said:
Coding should always top the list. Trust me, it's a bad thing to happen when everyone focuses on everything else first, then start coding, and find that half of the stuff you've planned and prepped for are impossible in Source.

-Angry Lawyer


Almost nothing is impossible in Source. It's all about the ingenuity of the coder.
 
And most teams don't even have a coder. Ingenuity isn't packaged as standard, either.

Maybe very few things are impossible in Source, but there are one hell of a lot of things that are unfeasable. Like MMORPGs, and things involving loads of small physics items to build something large, in a modular style. And anything involving IP that hasn't been asked for.

-Angry Lawyer
 
you start by bowing to the gods of c++ and microsoft
 
yeah it is the best to have coding on top now that I think about it. I just put it there because of personal prefrance.
 
Damn, i havent been able to find any tutorial that is all encompasing, goes start to finish for building a weaopn or such.

I know how to program but i have no idea how to compile into source or what the built in functions that i can call are.
 
logic and design

What you need to do is:
1. Figure out the problem i.e. what you need to code write how what steps you need to take to make it work.
2. Write the pusedocode "look up on google if you do not know what pusedocode is" for it
3. Make flowcharts for the code your going to write
4. Now type your code into the compiler
5. compile, fix, and repeat
6. Once working test in the game, fix if need be and then go back to step one for new code you want to impliment in the game.
 
When I plan to start my mod code, I'm going to do the following, in order...

- Assign teams. /*Most important, I think. Lays a foundation for the rest of the mod*/
- Adjust any game-play values; map time limits and a really simple victory condition (kill the remaining team) are good to start with.
- Movement;
- Weapons;
- New player features / new weapons
- Enhanced victory conditions
- Detailed featuring (nightvision, smoke grenades, ect)
 
Kobnar: That's a nice list :)

I would really do C++ tutorials and such, figure out a lot of the main things (like go under Basics of C++ under whichever site you are on and read through the tutorials there... If there is no Basics read through the first section.. This is considering that the site has tutorials in a sequential learning order... If you get through the basics you should try to read more as you won't be able to complete your mod if you don't most likely, but reading the basics will help your understanding)... This way you will be able to understand the code more thoroughly and you can make more interesting changes than switching numbers.

Start small and go big :)

www.gpwiki.com
www.cprogramming.com
www.sourcewiki.org
www.hl2coders.com
www.hl2coding.com
www.google.com
www.google.com
www.google.com (some users just don't get it)
www.H L 2 world.com (no spaces in it at all)
 
Back
Top