Saturday, August 16, 2008

NEW POSITION OPENING: CODER

It's becoming apparent while working on this episode that someone who can add code to HL2 could make things go a lot easier, so we're now looking for a programmer familiar with the Source engine. Before you jump at this, let me give you a rundown of the things we're looking to be able to do:

1. Add new weapons: Provided we have the models and animations (for the weapon and character), I want to be able to add new weapons to the HL2 world. So if we wanted to be able to give Dave an AK-47 from the game Counter-Strike Source, we would need your help on making this possible. This would include stuff like making sure things like firing animations are played, ejecting brass, adding muzzle flash, etc. All the animations, graphics, and models will be provided for you, but you would have to make them work together as an actual weapon.

2. Have NPCs fire weapons on command: Right now the only way we can make an NPC fire a weapon is through AI use, which is unpredictable. This can be a good thing, but other times I want tighter control over when they fire. I want to be able to tell an NPC exactly when to fire his gun and when not to, or to empty his entire clip without pausing, reload, then keep on firing. I'd prefer doing this via some sort of input command in Hammer, but a hotkey I could press in-game would be adequate as well.

3. Create new NPC's out of other character models: Right now getting a model from another Source game to behave like an NPC can be a real annoyance. Generic_actor entities are unreliable and swapping out models for other npc's only works for some situations. If we had all the animations already available, we'd like to be able to have the model behave like a regular NPC for most situations. Right now this becomes a hack that doesn't always work. I don't anticipate any exotic needs here. Mainly just walking, running, and firing a weapon. If they could behave like an npc_citizen, but simply use a different a model, this might be all we'd need.

If you think you can help us with this, please email me at rscott31@radford.edu. Some of these functions won't be needed until later episodes, but others we could get you started working immediately for the next episode. As always, this will be volunteer work, but you would get your name in the credits.

EDIT: I originally listed particle effects, but it looks like that won't be the issue I thought it was.  The other functions are still desired however.

27 comments:

Anonymous said...

Number four can be achieved with setparentattachment on an info_particle, assuming you're using the Orange Box.

Ross Scott said...

Thanks, that wasn't going to be used for this next episode, but that's one less thing to worry about now (I've adjusted the post).

Anonymous said...

Again Ross(it seems you missed my comment on the last news). The download link doesnt work anymore.

Could you fix it please ?

Anonymous said...

SWEET!

Sam said...

Ross, Number 2 Could possibly Be achieved. By using AI relation ships with an invisible brush. That i haven't tried but i have thought about. You could have a delay on a trigger or something. But anyway. Good to hear your back and safe. ;)

Ross Scott said...

sam: I don't follow you. How would that work if I wanted them to empty a whole clip without pausing?

Sam said...

Well. The Object cant die right. So find out how many shots they need to take. How long that takes to empty the clip. Then Use a trigger that has a delay when they stand on it. Causing the Ai Relationship to trigger back to liking that brush. Im going to do a big test on that now. Ill Tell you how it works out.

Sam said...

OK I've tried. I either did something wrong. Or it doesn't work. Sorry I couldn't help. I thought this was one possible way. Anyway. Good Luck.

Anonymous said...

wish i could help but i dont know anything with coding but yeah i always thought the halloween ep could have looked better looking forward to seeing whatever may be coming out next

Anonymous said...

I think a lot of this coding and tricks could be learned from the people who make modes and such.


"Team fortress forever" group and others probably have tricks to import models and weapons and making them work

Anonymous said...

just a few Q's for ya. 1st,,, in freemans mind episode 4, he talks aboutn his dream... "i was strapped to a gurdy watching fragelrock, with flashing lights on either side of me, then i realize, im in hell!" 1st question :what is a gurdy? 2: what is fragelrock? then before that the guard says, "ur in the barrell today" i dont get that, what does it mean?

Tarev said...

I think the humor in the whole "in the barrel" comment is that it isn't a joke, the guard meant Freemen was literally in the "barrel", and that Freeman was interpreting it completely wrong.

Otto said...

Not really the right place to ask. 'Fraggle Rock' is a children's television series which he obviously found horrible. 'In the barrel' is a reference to a "dirty joke", but it basically means it's his turn to do an unpleasant task.

Ross Scott said...

lazerus: That one really turned into a rush, and yeah there are parts that could have looked better.

alexk: The Fortress Forever coders needs to get off their butts and balance fix the sentry gun detection (I'm a fan of FF).

stupidity loves company:
1. It's "gurney"
2. It was a kid's show with puppets. I don't hate it, I just thought it was kind of strange.
3. It's a dirty joke that Valve referenced to, I only called them on it.

Anonymous said...

hey ross you have an idea wen next CP comes or Freemans mind 2

DT said...

Hey, Ross, for #2 you can use triggers to do that, or you can use a n "ai_scripted_sequence".

Anonymous said...

Umm.. why dont you just grab some dvd's from noesisinteractive? i think they cover everything you need... didint you work for them or something? i think they should give u a freebie lol

Ross Scott said...

anonymous guy: It's in the last entry I made before this, FM I'm not sure yet, but I DO plan to make a lot more of them.

pdan4: What would the trigger value be? If you simply tell an npc to hate another one, he'll attack it, but irregularly. I don't know how to tell one to fire exactly 3 shots or empty a clip without stopping. Also, there is no entity called an ai_scripted_sequence, only a scripted_sequence, and an aiscripted_schedule, but either way you have the same problem as I'm describing.

DT said...

Ai_goal_assault with an assault_rallypoint?

Anonymous said...

WOOOOOOOOOOOOOOOO! more CP. Sorry i don't have any info on helping you with those topics but i am a fan and i happy you are working on more episodes. keep up the good work ross.

mm3guy said...

#3 can be done with Garry's Mod and the Model Manipulator addon.

Anonymous said...

When I first saw the title of this article I thought you were bailing on me Ross

=P

~ Peter

Ross Scott said...

pdan4: It's the same problem of still relying on the AI which uses irregular attacking habits

ed: don't worry, good stuff is coming

mm3guy: Ha, well it looks like I may not need it after all, one guy helping out with the code has pretty much created a better solution. Thanks anyway though.

winterchillx11x: who are you?

DT said...

sorry I cant help, I hope you figure it out soon.

Anonymous said...

Ross, it's me, Peter, your website coder.

Ross Scott said...

Ha ha, that would explain things.

Anonymous said...

Hello, If you guys still are looking for help. I can be a service with Replacing npc with new models like from other games. If you are interested, please let me know.

You can contact me on www.n.elite@yahoo.com
or on
msn: n.elite@yahoo.com