On the train ride into work, I started my work on the bug(s) I discussed yesterday. Since I could reproduce the bug easy enough, I already had a lot going for me. As I continued to work through it, I was essentially doing the following:
reproduce the bug
get game in a state where the bug wouldn't happen
slowly put things back into place to see exactly what is causing the bug
After doing this for a while, all I could come up with at the time was the following, which would make this particular party member not be able to level up:
spawn into level where the party member is not active
run a cutscene
activate party member
have them start a conversation
add them to party
Interestingly enough, if I don't run the cutscene, everything works fine. I'll still have to play around with some things, mainly the active state of said member. Either way, I figure I'm 50% done with fixing this bug. And by fixing, I mean doing things in an order so the bug doesn't happen. I don't know the underlying reasons as to why it's happening, and frankly, I don't care at this point in development. If this was 3 years ago, I'd be like, "Oh wow, this looks interesting. Time to crack open the core files and do some research". Now, I just need to fix this and move on to the next one.
While I was at work, I received a huge chunk of VO from Alexander. And when I say a huge chunk, I'm talking like, all of it (or so I believe, I hope I didn't forget to send him something!). I know I talked about this before, but I need to bring it up again... This particular role he is playing is really something else! He has brought this character to life in such a way, that I was literally laughing out loud on my train ride home, while previewing the various takes on each line. Good stuff.
Tomorrow, I'll finish up integrating this latest VO, then finish off that bug... Hopefully...
Today's piece from The Legend of Zelda is one of those timeless pieces that has pretty much been in every core game release. Enjoy!
7/30/12 -Monday: EVEN I NEED A BREAK...
So, today's my birthday. However, I was actually gone from Fri-Sun visiting friends, and of course, celebrating my birthday. During that time, I did not do any actual game development. Hey, even I need a break from time to time! I did do some brainstorming while driving 5 hours to my friend's house in Maryland, but besides that, I did not implement a single thing. It was hard, but it was the best thing to do. Finally, I'll pull the birthday card as my excuse for not answering emails over the past few days... Yes, it was because of my birthday... *Looks both ways*
Before I left, however, I integrated a bunch of VO I received from John, Edward, & Elise. I only needed one line from Elise, while I received lines for 1 of 2 conversations for a new character that Edward is playing. As usual, a relatively simple character has gone from a few lines, to a integral part of the story. Finally, John finished up some more lines for his character, and gave me a test line for another smaller role I'd like him to play.
The big thing coming up for me is fixing this really, really annoying bug. Well, I guess it's really 2 bugs, just having to do with the same system. One is that when party members level up, their talents are being taken for them automatically. The other is that when I add a certain party member to the team, I am not able to level them up, even though there is that little "level up" plus sign on their portrait. The latter is very easy to reproduce, so I think I'll tackle it first. My worry about these bugs is that while they're important to fix, I don't want it to drag on for days and days. I guess I'll take it a step at a time and see what happens.
Here's some more great music from The Legend of Zelda. Enjoy!
7/25/12 -Wednesday: STEADY WORK...
It was a pretty steady day of development for me today. I spent my time sending out various VO related emails to folks, handled some smallish bugs, and one huge one. The small bugs were mostly conversation related things, like mismatches between the VO and written text, and getting rid of emotes that make perfect sense with no VO, and absolutely no sense with VO.
The huge bug was, well... pretty freaking huge. With the Bonds of Battlesystem, I made it pretty generic. So much so that when people in the same faction as me were in combat, they would gain BOB points! The system is only supposed to be used for the core party members, so I had to put in a condition to check a predefined static party list. I couldn't use the default party list function, because that can return legitimate people that are in the party, but aren't important enough to receive BOB points.
Anyway, after I made this change, I notined during my play testsing that BOB points were only being given out when the main hero landed the final blow on an enemy. If the party member did, nothing happened. I won't go into all the boring details of why, but it was definitely because of my change. Luckily, it was something I could replicate pretty easy, and as such, as I was able to fix it within 30 minutes or so.
It does beg the question though... I received what I thought to be a hell of a lot of BOB points during my last playthrough, and that's with this bug! One party member most likely landed most of the final blows on enemies, so I could have had close to 2 times as many... Might need to do some re-balancing there. Fun stuff.
I could not finish The Wind Waker because I hated the sea segments, but it was still a quality game overall, with some standout songs (mainly the first town). Enjoy!
7/24/12 -Tuesday: INTERESTING ARTICLE ON VO...
As expected, the problem I had yesterday with the conversation not firing properly was something so ridiculous, I wasn't even surprised. In the scripting component of this engine, you can identify objects in the game by tags that give them. In this particular sitiation, I was referencing the person that is supposed to start this conversation by their tag, the only problem was that there was another object in the area (a sound object) that had the same tag. It looks like the game was grabbing the sound object and having that try to start a conversation. Yeah... That won't work :) Once I fixed the tags, all was well in the world of Rose of Eternity :)
Later in the night, while I was making my rounds to the 8-9 gaming websites I go to, I came across this article on VOat Joystiq. I just happened to be in the middle of sending out like 9000 emails to the various actors I've worked with on this game, so it immediately caught my eye. The main theme of the article is this: is VO in RPG's really worth it? Besides the obligatory link to the horrible scene in Final Fantasy X where Tidus & Yuna try to learn how to laugh (seriously, it's been like 12 years... Square knows they fucked up on that scene... let it go...), it was a damned good read.
Chris Avelone from Obsidian Entertainment talked about his experiences with it in SWTOR2 and other games, describing how it can totally mess up his design flow. For instance, you can't just simply make a change to dialogue on a whim. Why? Because then that actor will have to be contacted again. And that's just like 1/1000 things that can go wrong.
As an independent developer, I too am going through the same problems. For instance, some of the emails I was sending out tonight were for lines I had initially forget to send to the respective actors months ago. That's totally my fault, but what if the worst happens? What if that actor has moved on, isn't available, etc? Do I just dump the line? Get someone else to do it? Luckily, the lines I forgot to send were pretty much indepedent of the other lines they've done.
How about the case where the line is part of an existing conversation, where that actor already has lines recorded. A lot of the times, the new lines don't mesh well with the older ones, and you can hear the slight change in tone/accent/etc. for those few lines.
The scarrier thing is looking into the future. What if in a future game, I want to bring back a certain character. I mean, in the world of Rose of Eternity, that's sort of one of the themes: Dealing with a large ensemble cast of characters. Look, shit happens, and people who used to be available are all of a sudden not available. Now what do I do? Scary shit...
Luckily for me, I just happen to be working with actors/actresses who haven't disappeared on me. Sure, some are unavailable for stretches of time, but they always get me the stuff eventually (sounds like I'm getting drugs from them :)).
In the end, at least for me, I think VO makes a world of difference in an RPG, so these new issues I (and other developers) have had to deal with are well worth it. I've learned so much over the past year, things that will make my next experience that much easier to deal with.
This next piece from The Legend of Zelda is from Kakariko Village, which for whatever reason, seems to be the only town in Hyrule :) Enjoy!
7/23/12 -Monday: IT'S ALWAYS THE LITTLE THINGS...
So, I'm riding sky high on confidence these past few days, knocking out sequence after sequence. With this particular one I started yesterday, I assumed it was going to be finished on the train today. I handled the convo easily, got the stage and cameras setup, etc. I even did all the plot related scripting to make sure the intro cutscene transitions into the conversation. I mean, this was essentially monkey work.
So why in the hell won't this damn conversation fire?!
Seriously, of all the things involved in making this game, you would think I could easily script a conversation to startup. Why would you think that? Because I've done the same thing like 300 times! For the love of god, I cannot figure out why it won't start. I can walk up to the person and start the conversation, but when I script it, nothing happens.
I know in my heart of hearts, it's going to be something so small, something so insignificant, so... Ugh, I don't know, but I just want to finish off this scene... Here's hoping!
This week, I'd like to feature music from The Legend of Zelda, and more specifically, the 25th anniversary special orchestra album. This series stands as one of the greatest of all time, but unlike others, I've never looked at it's music as that good. Not Final Fantasy/Chrono Trigger/Chrono Cross good anyway... Yet, after 25 years, there are at least 7 pieces that I like, and thankfully, this CD has them.
7/22/12 -Sunday: WELL THAT WAS QUICK!
So, there's been this scene that Jason and I brainstormed last fall, a scene that once players of the original games see, will immediatelty feel at home, and think: "Ah yes, this is Rose of Eternity". We pretty much knew what had to be done on a high level, there were just a lot of little details to think about. Also, Jason rewrote a lot of convo's in the game, assuming this scene would be in place. Fast forward almost a year, and after a few hours of work, the scene is more or less done.
As expected, I've been very re-energized after completing this last playthrough, and so my mind has been in brainstorm mode 24/7. This afternoon, the wife and I were driving about an hour away to attend a friend's graduation party. As a little side note, it was at his uncle's house, a man who was a CEO of a company that created firewall software. Okay, let me back up. It wasn't a house... It was a FREAKING mansion. Huge pool? Check. Beach volleyball with sand? Check. Fully stocked outdoor bar? Check. Toilet that had 5 different options on how to wash my own ass for me? Check. "Guest" wing of the mansion? Check. Secret underground tunnel leading from outdoor bar back to the house, which passes home movie theater? Okay, you get my point. Freaking awesome.
Ahem... Anyway, so on the way, I had Rose of Eternity music playing in the car (my wife is used to it at this point) as I brainstormed about this aforementioned scene. As always, all it takes is for me to focus on something for 30 straight minutes, and it's like the clouds part and the sun shines down on me. I immediately knew what I wanted to do, how I wanted to do, etc.
Once I got home, I got right to it, and a few hours later, I had a full level done, props and all, as well as the little 30 second intro cutscene. All that is left is for me to create the dialogue, a stage, and camera angles. I should be able to easily knock this out tomorrow on the train.
Here's another great track from Shadows of the Colossus. Enjoy!
7/21/12 -Saturday: PLAYTHROUGH COMPLETE!
Well, it was definitely a very enlightening playthrough session. Here's a quick run down:
Besides a few horrendous bugs, I was able to complete the entire game
The majority of all major scenes are completely voiced. Especially in the first half of the game. It's really amazing to witness, especially after all the years that I've had these scenes in my head. Kudos to the actors!
The delicate peaks and valleys of the difficulty as the game went on worked out quite well.
The overall flow of the game from beginning to end was more or less how I envisoned it. There are some scenes that need to be added, but it's headed in the right direction.
Realizing that I have a LOT of work level design prop work to do. I've always made levels servicable so I could continue implementing the plot. Now that I'm at the end, it's back to the grind with props and such :(
Much like the level design, for many of the conversations in the game, I still have to do audio normalization, add new camera angles, etc. And there are a lot of conversations...
There is this nasty bug that is auto-selecting skills/talents for party members when they level. This meant I couldn't test out allocating any of my custom skills.
I never did complete this game, but from the little bit that I played, it deserved all the credit it had received up until that point. In fact, when I was at the Developer's Choice Awards back in 2006, this game won damn near every award!
Anyway, enjoy this battle track from the famed Shadows of the Colossus!
7/20/12 -Friday: PLAYTHROUGH COMMENCES!
Right. So, every time I do a playthrough, I'm always hampered by game blocking bugs, mostly associated with previous isolated testing I've done in the past. A trigger that I made active that shouldn't be until a certain plot point, the removal of a plot character, etc. It ALWAYS happens.
This time, I did my best to go through every area and make sure that:
No plots were improperly set
There were no characters visible that shouldn't be there
Well, wouldn't you believe it, I missed a single freaking trigger, and of course, that forced me to have to start over. Oh well, I tried :) Lucky for me, I wasn't that far into the game, so getting back there won't take long, assuming I put the game on easy and skip all the dialogue.
Now something else popped up that really set me back a few hours. When I was making a small fix before starting the next playthrough, I started exporting all items from the toolset, instead of just that one. Usually when that happens, I just cancel it, then do the right thing. Well this time, that didn't work. As soon as I tried to start the custom campaign, I would get hit with this annoying "Unable to load save game" message, which has to be the most useless error message of all time. I know for a fact that it had to do with the fact that it couldn't find default_player.utc, which is just the default character people start out with when they start a campaign. I actually override this file with my own, giving me the option to give the player a pre-generated character *avoids rotten fruit thrown at him*.
I won't bore you with the details, but after tracking down 3 year old threads, I was able to fix the problem. But by that time, I was ready to go to bed, so I'll just have to wait until tomorrow.
So, Soul Calibur had Voldo, and Toshiden needed something similiar, so we got Chaos. Horrible fighter, great music. Enjoy!
7/18/12 -Wednesday: PIECING IT ALL TOGETHER...
I pretty much went on a tear the past few days, piecing together a lot of the sequences I've been working on for the past few months. As any frequent reader of this blog knows, I do a lot of work in isolation, then piece it together to the other bits of the game once it's done.
To be fair, it wasn't difficult work, it was just the quantity of it. Setting up area transitions, activating events at the end of conversations, activating doors, scripting events to occur when a fight is over, etc., etc., etc.
The other thing I did was *gasp* integrate some VO. This time, Alexander Baxter was up to bat. As I've mentioned before, he's voicing one of the party members, so he has a hell of a lot of lines. He sent me a significant chunk of them, and as usual, I had a fun time integrating them.
One of the things I've noticed is that all the actors/actresses have their own style to how they do their VO. John Erath just sends one file per line, and that's always good enough. Considering he has the most lines in the game by far, it's a testament to his skill. Edward Ashley has some audio equipment he must have stolen from George Lucas or something, because I don't ever have to do any post-processing on it. I just drop it in, and it's ready to go. Andy Mack names every file (1 per line) with some hilarious names, and he has even sent me little monologues on how he did a certain scene. Elise Harris sends me damn near 2-4 files per line, giving me much more granular control over what gets in the game. Plus, I get it really fast.
Alexander's thing is to literally take full control of the character he is voicing, sending me multiple files per line, where the lines are vastly different than what I originally gave him. So, he's sort of an editor and actor in one. I've been the first to admit that my writing is suitable enough (much better than back in 2005!), but that it could be better. This is where Jason Melancon stepped in to sex up the dialogue and such. Well, Alexander's doing this as well, and the stuff he is coming up is many, many times better than what I gave him. So yeah, shout out to him for that!
Oh yeah, and props to Ollie Broadway for his work on knocking out one of the major characters a while back. I alluded to this in another post, but didn't have permission at the time to use his name. Now that I do, I have to say, how cool of a name is that?! :) Oh, and just because it's a funny world we live in, I have to point out that he's Elise Harris' landlord... Yeah, I sort of have that type of luck. Must be an omen!
Everytime I hear this track, I think of a scene on a ship (yes, it has to do with the water sounds in the background!). Anyway, enjoy!
7/15/12 -Sunday: I GUESS IT'S TIME TO CHANGE HOSTING COMPANIES?
If you're reading this on Monday morning, looks like things got sorted out. If you're reading this later than that, expect that I'm really pissed off at my hosting company... I'm actually on the phone with them as I write this update, where they are telling me that my actual domain name isn't with them anymore. Or something... The guy I'm talking to doesn't *surprise, surprise*, know what's going on. Ugh... Okay, enough ranting...
I made some pretty good progress over the past few days. I finished designing the final level of this sequence, and immediately got to implementing the plot related things. This started with writing a smallish conversation including a few cast members. Nothing too crazy, really. Next up was to create the stage, camera angles, all that jazz. At this point in development, it's falling into the "moneky work" category, as I was able to do this while watching tennis matches on ESPN2/Tennis Channel.
Next up was the final fight. Now, I had already created it a while back, but this time, I had to hook it into the plot so it fired at the right time, and the right things happened *after* the fight. That part took longer than expected for reasons I can't really go into because it would spoil things. Suffice to say, I finally figured it out.
Tomorrow, I'll be spending time integrating VO from Alexander. He's sent me a rather large batch of stuff for one of the party members he is voicing, and I expect I'll be at it for a while. Also, shout out to him for letting me know my site was FUBAR'd to begin with.
Ah, Ellis. No matter which game it is, Ellis' theme in the Toshinden series is always the highlight. Enjoy!
7/12/12 -Thursday: FINAL LEVEL OF SEQUENCE FINISHED!
So, I was finally able to knock out that final level of the particular sequence I've been working on. I'll have to come back and add some props here and there a bit later, but the core stuff is done. I was even able to implement the final fight scene, though it's going to need A LOT of balancing. Right now, I feel that even on the "Easy" settings, it would be impossible :)
Now, with all boss fights in Rose of Eternity, there is some interesting boss music to accompany it. Since this particular person you will be fighting has ties back to Cry The Beloved, it only made sense to refurbish, if you will, one of my favorite boss themes from that game. I hope that returning players will get a little nostalgic when they hear it. And even if it's your first time, I think it's a damned good track on its own.
Next up is the dialgue that occurs right before the fight. I don't expect it to be too long, so I should be able to knock it out on the train tomorrow morning. Then, I need to finish another conversation that really should have been done a month or more ago. Once that's done, I can ship the lines off to John for recording.
I think the next logical step after that is that long overdue playthrough...
Here's the battle theme for Duke, who I swear is a precursor to Siegfried/Knightmare in the Soul Calibur series... Hmm... Anyway, enjoy!
7/10/12 -Tuesday: ANOTHER MAJOR CAST MEMBER FULLY VOICED...
As I mentioned in my last post, I received the rest of the lines for the last major cast member that needed to be voiced. To me, it's pretty amazing, because every scene in the first half of the game is pretty much fully voiced. I'll definitely have some fun doing this next playthrough of the game :)
At this point, I'll be looking at getting the minor characters done now. Hopefully, some of the actors/actresses I've worked with will be able to come back for them. With all the work they did on the major roles, these minor ones will be like a drop in the bucket for them.
So as usual, my plan of action has changed ever so slightly. Now I'm going to start putting together the lines for said minor characters, send them out, and hope for the best!
Anyone who has read this blog for at least a year knows that 4 times a year, everything in my life is shut down, as I sit and pray that the great one, Roger Federer, can win just one more grand slam title. Well, after almost 2 1/2 years of waiting, he has finally won his 7th Wimbledon title, and 17th grand slam overall. He will also get back his #1 ranking, and in 2 weeks, will break Pete Sampras record of non-consectutive weeks at #1 (286). Yes, it was a glorious day indeed.
What I may not have ever talked about is that when I say everything in my life shuts down, that also refers to my mental state :) To this day, I cannot explain why, but when it comes to sports, tennis in particular, I'm essentially nervous as shit towards the tail end of these tournaments. I just don't feel right. I don't feel like going to the gym. My sleeping habits get all messed up. The one saving grace this year: Rose of Eternity.
In between reading 1000 articles for predictions of the winner of the tournament, to keeping a check on the weather forecast in London (if it rained, they would close the roof, which increases his odds of success), I was actually able to knock out a lot of development.
I put the finishing touches on the huge multi-roomed level I talked about in my last update, as well as the encounters that occur there. I even did a few playthroughs of the sequence, just to make sure things felt right. I'm definitely going to have to make changes to the combat difficulty, but that will have to come after my next full playthrough. I've made so many changes to the game since my last playthrough, that I'm not entirely sure what level the player should be at this point. Since that's an important part of the balancing, I'll have to wait on it.
Next up will be the final one-roomed level with the final fight of the game. But first... I have somehow received all the final lines from the actor (keep forgetting to get permission to mention his name) playing that last major role that needed to be filled. It's amazing that in about a month(?), he has completely owned and kocked out everything for this cast member.
I only don't remember Rungo's Theme from the game that much, but once I got my hands on this soundtrack, this instantly became one of my favorites. Enjoy!
7/6/12 -Friday: STILL KICKING AROUND :)
STATE OF THE UNION
So yeah, I know I haven't posted in a while, but I'm still hear, kicking around :)
As is typical for this time of the year, I've had to spend a lot more time doing work for my real job... Yeah, that annoying little thing I need to do to pay the bills :( It sucks, but what can you do? *Shrug*
In terms of development (that is why you're here reading this, right?!), things continue to go smoothly. I am so close to being content complete, I feel like if I had 12 straight hours of un-interrupted development time, I could finish it. That doesn't include level design polishing, VO integration, etc., but it's still a pretty significant goal.
I have one more room of a decently sized level to finish off, along with some enemy encounters. One of those encounters in particular involves a new mini-boss, so to speak, so I'll have to implement that as well. After that, there will be one more single room interior level, which will include the final battle of the game. I've play-tested this final battle a bunch, and I think that with all the things the player would have learned up to that point, they would be ready for it. Only time will tell...
Next, I will have (thank the gods!) the final level of the game, which will just be used for a cutscene, allowing me to cut corners on things the camera won't pick up. Okay, maybe I'll have to end up doing some other basic levels for some other cutscenes for the epilogue, but... well, baby steps :)
Once I'm done with that, I will knock out these last 2 conversations of the game, send them off to John for recording, and then I will start the playtest. I bolded that part, because this will be the important playtest that I will use to gague the following:
Oh, and of course, I'll put together one hell of a buglist. Sigh...
Anyway, I'm off to try to knock out as much of this as possible. And I hope to actually write more than 7 blogs entries a month!