Wednesday, August 29, 2007

May not look like much, but she's got it where it counts, kid


Norman really shook the socks off of Skeleton. As you read in a previous post, I put in some ragdoll stuff to animate him while he's flying in the air like that, but it's still broken. Still not sure how to fix it.

BUT...

Good things have been happening in the world of AI. I've been working hard on getting guys to take cover, and finally have stuff to show. woohoo!





I know it looks like the Skeleton is just doing a sidestep jig, but what he's actually doing is quite complicated. Besides his normal AI, here's what he's doing:

* Looking around for cover
* When he finds it, he runs to it
* While at cover, he waits a while, and then jumps out to shoot Norman
* Once he's done shooting, he runs back to cover
* If he can't find cover, he charges Norman like a Normal guard.

For some reason, he's having problems shooting once he runs out of cover. I'm still working on how to fix that. But he's up to a great start!

Next!

The AI still has a fairly long way to go. Once he can shoot after he leaves cover I've got to get him to do this stuff:

* Check to see if Norman can see him from the cover he's looking at. If so, he won't run to that cover.
* While he's in cover, check to see if Norman can see him. If so, that means it's time to move.

Once I get all that stuff done, I think the AI Cover will be pretty close to being done.

Monday, August 27, 2007

Shoot Norman, Shoot!


Lots of stuff happened today in between some recording sessions....

I got Norman's Mic working. He about blew his own face off with that voice, but it's working, and causing all sorts of havoc against the Skeleton, and his friend Kork. I also managed to sort of fix the weirdness in the way he holds the microphone. It'll probably need some more attention later, but it's ok for now.

I also put in a crosshair for 3rd person mode. It already was there for first person, but...we went over the whole 1st/3rd person thing already. Norman's the hero, so you get to watch his ass all game.

I also was monkeying with some Ragdoll animations, but they were causing trouble. We'll see if I can get them working. If you don't know what ragdoll is or want to play with some fun physics, Go Here. otherwise, just stay on the line and an operator will assist you.

So now I'm working on the AICover script. I'm sure this is going to take a while, so you might not have any updates for a while. woohoo!

Sunday, August 26, 2007

Good times with weapons


So after starting the weekend with a slight distraction, I've been spending most of my time working on Norman's microphone. Turns out getting it to work is less than easy. Problems have abounded from export issues to scripting, compiling and memory issues.

Many of those issues got solved, and I'm proud to say that Norman's microphone is coming along nicely...and for once, instead of shocking him when he uses it, this one puts the full fledged verbal assault on Norman's enemies!

And of course, there's the new splash screen. For some reason, when you're working on a game, seeing the name of your game when it first starts up is a huge step. It really makes it feel like something's getting accomplished. So get pumped!

So what were the problems with the microphone?

Well like I said, there's been a lot. The biggest one, and the one I'm still trying to deal with is getting the microphone to shoot. I know what you're thinking..."Microphone's don't shoot!" Normally, that's true. BUT Normanly that's false. in Norman's world, microphones wage an all out war on the auditory system! and I'm just trying to reflect that.

So what's next on the plate?

I'm still working on getting the microphone to shoot. You'd think that copying a working script would be enough, but in my world that's never the case. once it's been copied, then it has to be modified...painus in my anus if you ask me.


Assuming I get Norman's mic to shoot (and believe me I'll be letting you know when I do!) I've got to work on a bunch of Norman's animations...he still looks weird holding the mic.

After that I'll be moving on to some even more difficult scripting! I've got to make some modifications to the normal AI script to make it a little bit smarter for the more difficult enemies. In other words, the smarter guys will be taking cover instead of just charging. Again with the more stuff I haven't done....I'm looking forward to the days where I'll be doing things I've done before!!

anyway, here's some screenshots:

Norman carrying himself instead of the microphone(a funny oopsie):




Norman wielding his powerful microphone:


Wednesday, August 22, 2007

Norm didn't have to use his AK....it was a good day


Not Much in today's update. I set the game to load into third person at the start instead of first person, since Norman's the hero and you aren't!

I thought I was just going to have to set the $firstPerson variable to false somewhere and be done with it, but it turns out I had to use ServerConnection.setFirstPerson($firstPerson); in the onClientEnterGame function in server/game.cs A little nerdy, I know, but it works.

And believe it or not, Norman's not really holding an AK. Sure it looks like one, but in all actuality it's a microphone. I started setting Norman up with his weapon of choice, and there's a lot of work left to be done. The AK model is just a placeholder so that I know he's carrying something different from the BAC (Big Ass Crossbow)

Stay tuned, when Norman will unleash his vocal prowess in all its glory at his enemies!

Tuesday, August 21, 2007

Norman, Meet Kork


So I'm compiling a new .exe, so I figured it was time for an update.

New Fixes!

I finally figured out why Kork (One of Norman's opponents) wasn't attacking him when I switched the model. Turns out there was a world of pain in the ass I had to do to get him to animate AND attack Norman.

NERDY WORDY:

Here's what I had to do:

1. in data/server/scripts, I copied player.cs and renamed it.
2. Inside that new file I changed line 7 from exec("~/data/shapes/player/player.cs"); to the cs file in your new chars directory (Like exec("~/data/shapes/kork/kork.cs");
3. I went down to datablock PlayerData(PlayerBody) and rename that to a unique name (I used PlayerData(KorkBody))
4. I Changed the shape file in that datablock to your new dts ("~/data/shapes/kork/kork.dts";)
5. Then I saved that file
6. I Opened aiguard.cs and change datablock PlayerData(GuardPlayer : PlayerBody) to your new datablock (datablock PlayerData(GuardPlayer : KorkBody))
7. and finally I went into game.cs and add an exec of my new version of the player.cs

/END NERDY

Why do I do Nerdy talk, you might ask? Well for two reasons,...the first is to keep a record of what I had to do to fix something in case I forget and have to do it again (which will probably happen). Secondly, if anyone reading this wants to make their own game and runs into this problem, they'll know how to fix it! I'm a helper!

So Now Kork is running around and pretending to attack Norman. (He'd kick the shit outta him if I let him use the big ass crossbow) But weapons are for another day.

I also ran into a new problem called Out of Range Write when I was trying to get Kork's buddy the skeleton working. I had to go in and increase some buffer size in
gameConnectionEvents.cc: and that seems to have licked the problem.

Kork's buddy Skeleton has been consistently shy, but I finally got him to agree to appear on screen. It took creating a bunch of new crap...basically I had to do all the same things I did for Kork, plus what I had to do to get the aiguard script working and then change around all the function names, a pain, but worth it. so without further ado here he is...


Sunday, August 19, 2007

Norman vs Norman



Well I got the LMap bug fixed. There was something wrong with the brushes in the bathroom. What's a brush got to do with it?

NERDY TECHNICAL INFO:

The Torque Engine uses what's called Additive Constructive Solid Geometry to create interior levels. All that means is that it uses boxes that you can reshape and resize to form all sorts of artistic pieces. These boxes are called brushes. Most game engines, including Half-Life, Quake, LithTech, and Unreal use some form of CSG to create their levels. It's a more difficult method than what other 3d Editors use, but it has bonuses in culling (deleting geometry the game can't see) and collison detection.

END OF NERD TALK

So I don't know what was wrong with the bathroom brushes, but after I deleted them, the level worked fine.

So here's the good stuff...I put in a script (mini program) called AIGuard. The screenshot that started this entry is Norman attacking Norman. woohoo! That's a huge step.

I had problems with this script in the last entry, but it turns out the problem was simple (just like I thought)...There was one simple line in the script that read $AI_GUARD_ENABLED which was set to false. I set it to true, and EvilNorman is busting a huge ass catapult all over his self!


Of course there's problems...
I have a few other models that I'd been planning to use in the game, but when I put them in the game with the AIGuard script, they don't play their animations. I had a similar problem with Norman originally, but this is a different sort of problem that I again, can't fix. :(

Thursday, August 16, 2007

Bad LMap! No Twinkee



So I got the exe recompiled and got the aiguard script added. As it turns out, I should have just looked around for the right directions. Turns out I was using VS Express to load a V7 project file. (whatever that is!) so when I used the VS Express project file, everything worked wonderfully...

Unfortunately after I place the guy in the level to kick Norman's ass I get some weird lightmap error. I have no clue how to fix it, but I'm hoping someone else does on the garage games forum. Once that's fixed (I hope!) Ass kicking awaits!

Wednesday, August 15, 2007

Flushed!



So as promised, here's a screenshot of Norman in a level with some textures, details and lights.

I spent most of tonight trying to get the Dragonfire Riots project working in Visual Studio express, since I have to re-compile the executable to get the ai scripts working....almost there, but it seems that windows.h and winConsole.sbr are mising from my project. Pain in the ass for me, but probably easy stuff for someone who knows what they are doing. Hopefully I'll get this stuff fixed soon so we can see Norman getting his ass pounded by some bad guys!

Dragonfire + Mormons = Rock and Roll!

Not much in today's update. We played a show at Mr T's Bowl last night. Thanks to all those of you who hung around late enough on a Tuesday night to see us play.

While we were there, we got reference photos for most of the band, except for Lenny the Amish and Ace Facial. woohoo!

The first part of the first level is progressing nicely. I've got the first half built out and textured and have been working on some details. I might backburner the detail pass of the level construction to work on some AI. It's time for Norman to fight people!

No screenshots today :(. I'll try and take some of the level tonight so you can see how it's progressing.

-Tomatoes out-

Sunday, August 12, 2007

Level-licious!



Things have been moving smoothly this weekend. I sketched out the first part of the level and have been putting together the rough hull. You can see the screenshots below.

Problems
Of course there are always problems. I'm using a program called constructor to build the levels, which may be one of the best level editors I've ever used. Except that I like to view my level in the game all the time to check how things are going.

But every time I export the level after the first time it won't export any of the new collision until I restart the program. (what a pain in the arsel!) But now that I know the cause, I can always restart the program whenever I want to run through it. Still a pain, but at least it works.

Pretty soon it'll be time to texture the level, so if you want to contribute some textures, email me and let me know!






Saturday, August 11, 2007

First in game video!



Alright! So I fixed Norman's animation problem.

WARNING!! NERDY TECHNICAL INFO AHEAD!!

The problem was that I used a biped as his skeleton, and added the root node (Bip01) to his skeleton tree. When you export the .dts file with the Bip01 in there, it adds an additional transform to the character, forcing him to face a different direction during his animation. Pulling the Bip01 out of the skeleton tree and adding it to the remove list in the config file fixed the problem.

END OF NERDY TALK

He's still got some other problems,....he's floating and his arms are cutting into his body in the root pose, but those I can live with for now.

So now I can get on to working on an environment for him to play in before I get to the heavy duty (nerdy) writing code stuff. woohoo!

and as promised, here's the first gameplay video of Norman chasing himself:

Thursday, August 9, 2007

Well at least he's animating now...



So the good news is that Norman is in the game and animating. The picture above is the first ever screenshot from Dragonfire Riots: The Game. Unfortunately, even though he's facing left, he's running forward. I don't know why he's facing the wrong way, but at least he's playing the correct animation.


So What's Next?
Once I get this crap fixed (hopefully soon) I can start working on a real environment for him to run around in instead of the snowy wilderness. The good news is that I'm pretty good at making levels. The bad news is that I have to learn a whole new editor to do it.

anyway, here's the first official screenshots (soon that crossbow will turn into Norman's weapon of choice: The Microphone!):




Great news from Danny-Boyo!!


I just got some great news from former member Danny Boyo, who left after Justin mysteriously sprained his finger.

I've been talking to him, and he's agreed to appear in the game. We're still working out his role, but we're happy and glad to have out good friend make an appearance in game. Now if we could only get Gothabelle too....

Dragonfire - the video game!!


Welcome to the dev-blog for Dragonfire Riots the video game! This is where we (I) will be posting the status, screenshots and tons more information about the development of the companion video game to Dragonfire's upcoming album - Dragonfire Riots!

oh, and if you're totally on another planet and somehow stumbled on to this blog without knowing who Dragonfire is, go to Dragonfire's Myspace Page

anyhoo, on to the information:

The game is going to be in full 3D using the Torque Game Engine - pretty cool stuff for only $150.

Starring:

Norman "Pipes" "Sticks" Tilles
Justin "Frets Fisticuffs" Harrison
GunTrafficRadio
TheToddball(tm)
Tim "Rotten" Tomatoes
Ace Facial
The Dragonfire Wizard
The Party Devil
Dragonfire Defender
Va-Va-Va-Gina

We're planning for other people to appear in the cast, but I haven't heard any confirmations from them yet! If you're interested in making an appearance or contributing to the game, email me. There's a lot of models to do, and I'm not too good at that, so if you've got XP in 3ds Max, lemme know!

How the Game's Coming Along:

I got Norman Modeled from his T-stance pictures. He looks pretty good, but I'm not the best modeler. His skinning still needs some work, but it's good enough for now.

Last night I finally got him to appear in game with his textures. turns out the texture needs to always be pointed to the game directory and not a development source directory. So I guess I have to always edit out of the game directory. Looks like it might be time for some source control.

He's still not animating though. He animates in the preview tool, but not in game. I'll post some screenshots when I get that working. In the meantime, here's some shots of his model (Click on them for better images):