Aug. 26, 2008 @ 23:42

Blimey. Has it really been two months since I last posted something?

This summer has gone by really quickly and I’ve been extremely busy hence the lack of activity. I got to take a short holiday and went back to England for two weeks for my little sisters wedding. Apart from that I’ve been working like a maniac as we’ve got a product launch due for September at work which means a lot of overtime and late nights getting everything finished. 🙁

As I’m officially and “old fart” I’m afraid that after a hard day at the office I usually fall asleep as soon as I get home which means even less freetime. That said, what freetime I do have is currently spent on some writing projects and Ham and Jam. We’re going from Alpha to Beta soon and starting an aggressive testing programme so that’s going to keep my busy.

I’ve been getting a lot of e-mail asking about the SMD Exporter and Importer plug-ins so I figured I’d make a post here to answer some of the most common questions that people are asking.

For the exporter, I’ve been getting some good feedback from people on a couple of bugs but unfortunately haven’t had chance to address them all yet. The two most common are problems with material types in Max installed in languages other than English and crashes with mirrored bones. The language issue is solved and will be in the next update. The mirrored bones is a more complex problem and may take some time to fix.

I’ve said before and I’ll say again, don’t mirror bones in Max!. The most common mistake people is making is using the Tools->Mirror command in Max. This is the wrong way to do it and simply reverses the axis which is why your getting export problems. If you’re going to mirror bones, use Animation->Bone Tools turn on Bone Edit Mode and use the Mirror button. That will mirror them but keep the axis in the right orientation. For dummies you’ll have to mirror them manually but that doesn’t take too much work.

As for the SMD Importer, again I haven’t had much time to work on it but it’s certainly a lot further ahead that it’s been in a long time. Currently it’ll import meshes, UV, textures and bones although at the moment I haven’t set-up the skin modifier or looked into animation.

I’ll try and post some more updates soon, but in the meantime please be patient! 🙂

Been a while since I made any posts about what I’m up to these days so I thought it was about time I did. Not that I made many before but anyway…

In what little free time I’ve had over the past three months I’ve been hitting the Ham and Jam code pretty hard, doing what feels like a huge amount of coding to try and nail all the bugs we found in our last play test. There’s still some small niggles but if the hlcoders mailing list is to be believed, their inherent SDK bugs and hard to fix and not likely to go away.

Anyway, of the new thing to add was the deploy system for weapons with a bi-pod which, after two false starts, actually works now. The process of doing the deployment and swapping animations wasn’t too hard – it’s just all the other crap you have to deal with like the logic to check if you should be allowed to deploy and limiting player movement, preventing weapon selection, etc.

TF2 Heavy imported into 3DS Max 9

Still, apart from the art asset side of things, game play wise Ham and Jam is really starting to come together and resemble a proper game now.

I’ve been working quite a bit with 3DS Max plug-ins over the past week too and finally found a couple of hours to do some more work on the SMD importer I’m writing for Max 9, 2008 and 2009. I made a bit of a breakthrough today in that I made the first successful test run of the mesh re-construction code and apart from a small few snags at first, it actually works!

TF2 Heavy imported into 3DS Max 9

This may not seem like a big deal, but when you consider how an SMD file stores data it’s actually pretty cool. SMD files store each polygon in your model as a separate un-joined triangle. The problem with importing data like that is you get a huge number of duplicate vertices and your polygons aren’t actually connected together. As a result, you can’t smooth them out or set the normals properly as anyone who’s tried to use the MaxScript importer will know. The code I wrote analyses the data coming in from the SMD and uses some logic to reconstruct the mesh as one continuous mesh rather than separate triangles.

Lastly, you’ll probably of noticed over the last month or so I updated all my VTF tools to support the 7.4 texture version which started shipping with the Orange Box games. It took a while to do, mainly due to VTFLib which they rely on being a bit out of date. Nem usually handles the releases and while the code was there, he’d got really busy and didn’t have a chance to get it out as quickly as usual. Still, not biggy, it’s done now so hopefully everything should handle EP2/TF2 textures just fine now.

That’s all for now. Back to work…

Since the end of February things have been absolutely crazy around here to the point I’ve forgotten which was is up a few times. The word “busy” doesn’t adequately describe it.

I’ve been frantically working on a new project at work involving trying to re-build a web application platfom on newer hardware and with more recent software. It’s Java based (not my area of expertise) and involves moving from a very old version of NetBSD to Linux and in the process upgrading the Java VM, Apache, Tomcat and Cocoon. Sadly the old system doesn’t come with a lot of documentation and finding the source code has been tricky at times so theres been a lot of frustration. Of course the fact I only get to work on it part time isn’t helping much.

Evenings have pretty much been taken up with work on Ham and Jam and we’ve had a massive surge of development this month. John noted that this month has seen the
largest volume of commits to our SVN repository since the project began. We recently re-organised our team structure and things have definately improved and I’m really proud of what the teams achieved this month. Thanks to our Wiki and bug-tracking system development has got much more streamlined.

Regarding this blog entry’s title, I came across it on a story at Fox news. In the tired, stress addled state of my mind, it almost describes the Ham and Jam development process at times. 😀

Other stuff. I’ve been getting a lot of e-mail regarding some my other projects so I thought I’d address them here.

The 3DS Max SMD import plug-in has been put to one side for a while so that I can get some fairly important stuff done on Ham and Jam. With the project having this much momentum at the moment, it would be foolish not to take full advantage of it. That said, the SMD importer isn’t “abandoned” and I fully intend to get back into it in a week or so. As for a when it will be finished, that depends on how development goes.

I’ve also been asked about making my VTF tools 7.4 format compatible. The answer is yes, I fully intend to support 7.4 format and in fact I have versions sat on my hard disk now that do. There has been a slight hiccup though that I’m currently not able to fix in that Nem, who maintains the VTFLib library that my tools use, has sort of “vanished” into thin air. He sent me a pre-release of the next VTFLib update with 7.4 support but then disappeared and all attempts to contact him have failed.

I could release my tools with the version of the library he sent me, but apart from the risk of version “clash” of the DLLs, I’d rather not do it out of respect for Nem and the work he does. Nem, if you’re out there man get in touch just to let me know you’re O.K.

Lastly I got asked about making my GUIStudioMDL2 compiler compatible with the Orange Box SDK beta. The answer is no, i’m not planning to. I only support official “releases” of their toolchain as it’s too much work trying to update my tools to work with something that Valve themselves are constantly changing.

Oct. 26, 2007 @ 03:22

Finally, two weeks after returning from my short break in England, I’m just about back on top of things. The enormous backlog of mail almost drowned me and things to follow up after my trip are done. Of course, the need to play TF2, E2 and Portal ranked highly on my to-do list…

With EP2 et. al. came a new VTF format which means changes to VTFLib to add compatibility. Nem and I already added partial VTF 7.3 support but Valve also has version 7.4 out there which needs to be added. We’ve been promised the final spec in a few weeks by Valve, so hopefully we’ll roll out a new version then and you’ll see up-dates to my VTF apps.

So apart from that it’s back to coding and modelling for Ham and Jam and trying to get it one step closer to a public beta. As usual it’s mostly art assets that are holding us back but at least we got the British player models done at last.

Jul. 2, 2007 @ 19:52

It’s been over a month since my last blog post as I’ve been so damn busy. First was Nordic Game which was a blast, followed by a sprint to the airport for two weeks in England. Home after that and back to work where I’ve spent the past couple of weeks testing software for FLIR cameras. On top of that theres been the backlog of my projects to catch up on.

Needless to say, I haven’t had time to work on my tan…

It’s been over a month since my last blog post as I’ve been so damn busy. First was Nordic Game which was a blast, followed by a sprint to the airport for two weeks in England. Home after that and back to work where I’ve spent the past couple of weeks testing software for FLIR cameras. On top of that theres been the backlog of my projects to catch up on.

Hilmar Pétursson from CCP

Hilmar Pétursson from CCP gave the keynote ‘The Tao of Virtual World Societies’.

Nordic Game was great and I’m greatful to Ben Sawyer at Digital Mill for making it possible. We’d worked together previously on a few projects at Transmodrify and it’s always nice to meet up in person.

The conference itself was an eye opener and a nice change to talk and listen to people from the development side of games than the fanboys/end users. I spent most of my time circulating between tech talks, discussions on the relationship between producer and communities and serious games – using game tech for training and education.

Between session breaks

Between sessions. Time to network and charge up on coffee.

Many business cards were swapped, idea’s shared and thoughts discussed and I made a lot of useful contacts. It was certainly well worth going and something I would recommend to anyone interesting in the industry to do – even if like me you’re “just” an indie game developer or someone looking for a job in the industry. Never underestimate the value of “pressing flesh”.

If I get my act together maybe I’ll get invited to be a speaker one year! 😀

So to other news.

Ham and Jam has been stuck in a rut the past couple of months or so due to a lot of our team being at school/university and sitting final exams. I’m pleased to say that this past week things have picked up again now that everyone is done and free for the summer. We’ve also found a coder to help us get over a few hurdles and an animator which means that hopefully all the v_model weapons will be get done and animated. Who knows, we might even get a beta out this year!

As for my projects, I’ve hopefully solved a few minor problems with my development environment and can start moving forward. I’ve managed to sort out legit copies of Vista x86 and Vista x64 so I’m hoping that I can have a go at porting some of my VTF tools to work with Vista and try and build a 64-bit version of my Max 9 SMD exporter.

I’ve also been getting a lot of email asking about an SMD importer for Max 9. Yes, I am working on one but I have a lot of other commitments which have to cleared first. All I can say is be patient and watch this space and I’ll make regular annoucements when something more concrete is available.