Another "simple" task

Looks like I will be back on Demigod again tomorrow. I have to finish up the achievements. Apparently, the achievements were already decided for both demigods and they were available in a spreadsheet. Would have been nice to know beforehand. I am going to have to add some custom stats tracking as well, which will make this task take quite a while longer. I also have some final animation state machine work to do and some last minute blueprint stuff. Hopefully I will be done with Demigod for a while after this week. Not that I don't like it, I just have a lot of SupCom 2 stuff to do.

I also repaired some more of the bugs that were listed in the consolidated list thread on Stardock's site. The engine stuff is handled by someone else, but he is aware of the thread, so hopefully he can take a look at some of the engine related issues.

Had my first big project for SupCom 2. Another one of those seemingly simple tasks that are not so simple. I started coding for it this morning and hope to have it finished tomorrow morning. I know, one day is not that big of a project, but it is the biggest c++ coding project I have been assigned so far. Going from completing several tasks a day to spending all day on one project is quite a change. I don't get the constant sense of accomplishment as I complete tasks. Hopefully that will come tomorrow as I complete this one large task.

The shader work still has not been done on the UEF ships yet. We have a very close milestone approaching. I think there was only a month between the last milestone and this upcoming one, which is not much time, so I think the shader work has been pushed back a bit. I will try and see if I can use a different factions ships that are done. Hopefully there is at least one factions ships that are picture worthy.

Hard to keep quiet

It is very hard to read the posts on the forums and not put in some sort of reply. People are complaining the GPG is dumbing down SupCom 2 because of the changed economy and various other reasons that I honestly don't know where they are getting their info from.

One of the guys I share an office with has a standing daily game that he plays with our balance designer. In watching them play I can honestly say this game is shaping up to be more fun than Forged Alliance. It is faster paced, with the action being centered around combat, not some intricate economy system. The entire games pace and feel are being changed daily based on playtime feedback, so anything you saw at GamesCom or PAX has completely changed now.

So, when you read the doomsayers' posts about how this game is going to suck because of the "dumbed down" economy or because it is not going to have [insert feature here] just remember, there are probably quite a few things going into the game that has not been announced yet. It is what is going into the game that is going to make it succeed, not what isn't going in.

Most awesome day...so far

There are only two words that can describe the day I had today. Kick ass!

I was tasked with adding two new weapon systems to the Cybranasaurus Rex. One weapon was a no frills cut and paste job. The other weapon, however, had no design idea behind it. All it had was a very vague requirement. Oh really?

I had a really cool idea for this weapon, so I got together with an effects guy and asked if my idea was feasable and what he thought of it. He said it sounded cool, but if I could find the video of the real world weapon system I derived my idea from, it would help. After seeing the video he was really enthusiastic. So, after balance gave it the thumbs up I got to work.

It didn't take long before I had a first pass done. A little while later I had it all rigged up. Even with placeholder effects and projectiles it still looks awesome. Now, I am going to have a weapon system in the game that was mine, from concept to code.

I also got some time in for Demigod today. I got all the new achievements and stat tracking set up. I also managed to get the minimap working in replays as an observer thanks to some new textures courtesy of Servo. Now, everything shows up as neutral in observer mode.

I know most of you are probably subscribing to this blog to get info on SupCom 2, which is fine. But, I hope I can try a help some of you out there realize what goes into games. A simple sounding request like making the minimap work as an observer is not as simple as it sounds. Most people act like it is just flipping a switch, which was not the case. It took 3 new textures, modifying 2 lua files, and modifying 3 source code files to make it work. I had to plug in values for to tell the minimap how to display neutral citidels, structures, demigods, etc. I had to set up the minimap source code to sort entities into neutral categories. I also had to tell the game to treat entites as neutral to observers. All for one seemingly simple change.

Can I get a can of bug spray here?

Stayed late tonight to put in some fixes for Demigod patch 1.2. The UI should be solid in replays now. I also managed to get in some fixes that have been on my personal bug list for quite a while now, including some that have not been caught by the community and have been there since release. Now, I just have to wait and see whether I am going to be able to get my new textures so I can update the minimap or if I am going to have to create them myself at home.

The new Demigods are still coming along nicely. I have to create the achievements for them this week. They still need effects work, localization, VOs, etc. so there is still a way to go.

There is supposed to be an 8-player match of SupCom 2 tomorrow. I am going to have to see if there is still room. I still haven't been able to take the time to actually play a round yet. I have been too busy trying to get content finished. Milestone 13 is approaching and I still have a lot of work on my plate.

Went through all of the SupCom 2 units to update them to use some new sound functions that should help performance quite a bit. I also got to finish up the polish work I wanted to do to the unit cannon. That thing is awesome now. I may have spotted a minor issue while watching a couple co-workers play earlier today, so I may have to take another look at the unit cannon tomorrow to see if I have reproduce the bug.

The shader work has not been done on the UEF naval units yet, so the screenshot is still on hold. It will be worth the wait to actually see the UEF units in all their glory.

What a week

Got assigned to Demigod some more today. The new demigods are looking really nice. Amazing what some texturing, shaders, and specular highlights can do. I think the effects team gets to work on them next week and I can't wait to see that.

I guess Demigod patch 1.19 goes live Tuesday. Having replay support is going to be awesome for the community. Patch 1.19 will be my first code contribution that goes into a retail game. It is a really cool feeling.

I did a lot of work on the UEF unit cannon today. That thing is really cool now, and it is going to be even cooler next week. Me and a co-worker got some stuff planned out today to really polish the unit cannon up nice.

Good news for anyone that follows this blog. It looks like Gas Powered Games is going to let me post an exclusive screen shot. I tried to get it done today, but the UEF ships need some shader and specular work. Hopefully that work gets done early next week and then I can create the shot again and give you guys a nice look at some naval units and the new water effects. This is by no means a guarantee, but it looks likely.

Do stay tuned.

Getting the hang of this

I think I am starting to get a handle on things. One of my co-workers was kind enough to give me a run-down on the moho engine's structure and how everything interconnects. It has made finding things a lot easier.

I got assigned to Demigod again Tuesday (and again today) to fix some more bugs that Stardock found. It was mostly minor things that were quick to fix. What took a while was working on the new demigods some more. There is still a lot of work to be done on that front, but it seems to be moving right along. I think I will have the final pass of the abilities done tomorrow (they will still need to be balanced). Then it will be finishing up animation integration, mesh integrations, and some final cleanup passes, and that is just my part in it.

Thanks to the nice moho structure lesson my work on SupCom 2 has been getting faster. I fixed a bug today that has been bugging me since last Friday. I have also gotten a lot more comfortable in C++. I have been doing so much work in C++ lately that I have started interjecting C++ code into lua.

How I got my start

I have been getting this question a lot, so I thought I would just make a blog entry that I could link to.

I have been interested in computers ever since my parents bought their Apple IIgs. My parents let me mess with it so long as I could set things back the way they were. There were some close calls, but I always got it working again.

I took computer programming classes my sophomore and junior years of high school. The one I took sophomore year taught QBasic and the one I took junior year taught Visual Basic (sort of, I was kind of left to my own that year). My QBasic class is where I created my first mod. QBasic came with a game called Gorillas. The game required 2 players to play. I modded it by removing all of the sound (so we could play during class) and also added a single player option. I had the computer player tuned so that it would usually beat you within 3 rounds.

Everything from then on has been self-taught. I learned how to build webpages using HTML, then later using PHP. I learned how to write some basic Lua by fixing my WoW addons when they broke and were no longer supported (or I was impatient for a fix from the author). I learned Lua more in-depth while modding for Supreme Commander and Forged Alliance. I am currently learning C++ by reading through the Demigod and Supreme Commander 2 source code and bug fixing it.

I have recently been reading some nice programming guides that were recommended to me that, I think, have improved my programming skills greatly. Not in the functionality department, but in the readability and structure department. My recent code just seems to look and read better.

End of week 2

One month ago today I was standing in front of Chris Taylor's (CEO - Gas Powered Games) office being introduced by Bartosz Kijanka (VP of Engineering - Gas Powered Games). During the conversation Chris said that the game industry is like a sausage factory. You may love sausage, but you really don't want to know the details about how it gets made. I think I am starting to get a sense of where he is coming from.

Don't get me wrong, I still love my job, but this week was hectic. Today was a milestone day for Supreme Commander 2, so there was a lot of rushing to finish up a lot of features and squash as many bugs as possible before building it and sending it to Square Enix. In the midst of that I was assigned back to the Demigod patch yesterday. It was fun being busy, though. Got through a lot of bugs and got to do stuff I've never done as a modder before, like unit wiring.

Yesterday I was working on fixing the bugs that Stardock sent back about Demigod and found one that had me stumped for a while. After figuring out the issue, conveniently after my partner who codes in C++ regularly had left for the day, I found that the only solution was to create a new C++ function. Took me way longer than it should have because I have very little C++ experience and I am not familiar with the Demigod source code. This morning I got it all figured out and got to submit my first C++ change into the repository.

Now, to enjoy a nice relaxing weekend.

Best pathfinding ever

Just for kicks I loaded up a map to really put the new pathfinding system to the test. I spawned 600 (not a typo) UEF Assault Bots and gave them all a move order. To my surprise, they quickly grouped up into a nice square and started heading towards their destination. After reaching their destination, I gave them another move order to the left. The quickly reformed their group and started moving.

As a real test I spawned a Fatboy and made the 600 units and the Fatboy move towards each other. The Fatboy went right through the platoon without a problem and the units regrouped on the other side and continued moving.

Was amazing to see. Try that in FA.

Better late than never

I probably should have started this last week, but oh well. I will give a synopsis of last week and then start fresh.

I started at Gas Powered Games last Monday and was immediately thrown in to the small group working on the next Demigod patch since I was already familiar with the code. My first task was to code all the abilities and supporting code for the two new Demigods. Next, was bug fixing both Demigod and SC2. Quite a different experience coding for the game for release than it is to mod a game.

Week 2 started Tuesday (Monday was a holiday). Fixed another couple of Demigod bugs (not as many as I wanted to fix, but it still adds up to a lot). Added a new campaign AI behavior for SC2. Most of my time was spent going through all of the units to make a log of everything that still needs to be done. Went through Cybran and UEF, will finish Illuminate tomorrow and then start fixes.

Not too impressed with the look of the Fatboy, but it certainly has some firepower. When I saw the UEFs major land experimental I totally forgave the look of the Fatboy. The major experimental is totally fucking awesome.