Tuesday, December 25, 2012

So this is Christmas


Merry Christmas everyone,

So this Christmas break is the longest time off I've had since the Dawnshine project began.  More specifically, it’s the longest break between meetings.  We’re not going to start meeting again until January 2013.  It gives me a chance to reorganize.  Two things here.  One, I’ve been meeting with investors lately.  And two, I've recently completed a semester of management classes.

The investors I've been talking to, I haven’t talked to them much about Dawnshine.  Why?  Because it would be a waste of time to do so at this point, this early in.  But what has been helpful is to learn the investment side of things by talking to angels, going to VC seminars, and reading as many articles on the subject as I can.  You can set up your interests through LinkedIn and read a new article or two on funding a day.

I have a completely different game project that I think would be hugely successful and highly disruptive, and I’ve now had two completely different investors tell me they’d be interested in it, but I need to set up some infrastructure and solve some technical issues for it.  But that’s something I’d also like to get started.  I just haven’t had time.

Taking management classes has been helping as well.  Want to hear something pretty embarrassing?  Not long after I graduated Sac State with a BA in Anthropology, I applied for a large tech company looking for a Culture Change Instructor.  Well, I had just gotten my Anthro degree with a Culture shift and I have over a decade professional experience as an instructor, so I applied.  Yeah, um, now that I actually understand what “culture change” means from a business stand point, I feel pretty dumb.  I bet they looked at my application and shook their heads.

A friend of mine graduated with me.  She was telling me about how her Anthro degree should help her get a marketing position because she better knew how to market products to a diverse group of people based on her better understanding of cultural values.  It made sense to me at the time, but yeah, I understand a little better how completely wrong that is.  People into marketing only spend a part of their time trying to sell stuff.  They spend the majority of their time analyzing trends, mapping out strengths, weaknesses, opportunities, and threats to individual businesses, and trying to predict changes in entire markets.  Anthropologists can't do 1/10th of what a marketer can do in the business world.

Speaking of business, I might be landing another opportunity.  I've been talking to an up and coming game company.  If I were to get involved with them, it would not deter my time spent on Stigma Games.  In fact, I think working for another game company could actually make things better.  I haven’t signed anything, so of course, it may or may not happen.  But in light of these events and some reflection, I've decided to fundamentally alter the course for Stigma Games.

Right now we’re a group of people working on a game for the fun of it, with the hope that it could one day turn into something.  Most of the people on the team are just here for experience to help them get a job elsewhere.  And that’s fine too.

While this approach has been fine in the past, I will instead start treating Stigma Games as a serious company currently bootstrapping, but moving towards a strong proof of concept with Dawnshine that would allow us to start attracting investors.  I say this due to the fact that there are people currently on the team taking Dawnshine seriously, investors taking us seriously, and other professionals from tech companies in the area that I meet a mixers and things taking us seriously.

On the other hand, there are people on our team that see this as a fun project to drop in and out of when they have time.  And I’ve thought in the past that if I start taking this too seriously, those people might quit.  Considering how extremely hard this project is to manage with people coming and going and maybe doing 10 hours worth of work this week or 3 months from now, I need to start taking a more hard line approach.  I’ve been afraid of getting the “You know you’re not paying me, right?” line if I try and push production too much and we might start losing people.  But more importantly, if I don’t start pushing the team, we’re going to start losing the top performers that get frustrated that the project isn't serious enough.

I’ll list another example.  There is a concept of a hut.  It’s an unusual concept, and one I think will be really awesome once it’s modeled.  I believe it was created back in March or April.  I first passed it off to a modeler who never finished it and faded away from the team.  I assume she’s no longer part of the team because she doesn't contact me any more.  So I passed it off to someone else, who also disappeared.  Finally, we recruited another person who wanted something simple to work on.  I passed it to him and never heard from him again.  Will the fourth person I pass it to do it in a week or will this simple hut take years before someone finally does it?

Now, if I wanted to recruit a level designer to design the capitol city for the Neg Wath and I had a whole list of assets needed first and some of them could be completed next week and others years from now(who knows?), I have no idea what to tell the level designer when he’d be able to start.  It sucks to say this, but I’m going to have to remove people from the team who are given tasks and either don’t do them by next week or don’t keep me in the loop on their progress.  Managing this project is an impossible task if I can’t rely on people to do what they tell me they’re going to do or keep me informed when they have problems.

I don’t think people on the team are flaky or bad people.  Mostly, I don’t think I've done a very good job at explaining to the team the importance of being organized or how tight our pipeline is as we start creating different specialized teams that need A done before they can start on B.  This is especially hard if A and B are done by different teams.  Why rush to finish something that’s needed by someone you haven’t even met or are aware of?

I have photographers taking pictures of things we need for the modelers to do their thing.  They've never worked on a game project.  They don’t come to the art meeting.  They don’t understand that when I need something by next week before a modeler can finish their asset, emailing me 3 months later asking if I still need it done, isn't going to fly.

But again, I don’t blame the members of my team.  I blame myself for not better communicating how interconnected everyone’s work is, even to other members of the project that they haven’t even met because they go to different production meetings.

2013 is a new year.  Hopefully each year gets better for us.  We’ll see how it goes.

Thursday, November 22, 2012

Thanksgiving Post

Happy Thanksgiving everyone.  There isn't anything radical to report, just some general progress from individual teams.  I'll go through the list.

The programmers are focusing on mastering some of the more complex parts of the engine.  If we lay tons of groundwork down at this point, it will make things easier later on.  We’re going to have a fairly complex AI, and this ground work now is part of what will give us more power later on.

The art team has some completed models that I started importing in the engine.  We’re working on the assets for one of the first zones in the game—The Howling Meadows.  The architectural style is pretty boring here, but that fits in with the lore.  Lately, I’ve been wondering if the lore needs to be tweaks a little in an effort to change that.  It's really easy / lazy for designers to pick an existing Earth culture and just copy it.  If they don’t do that, they can also go in a more fantasy or sci fi direction and just make up a bunch of crazy or unrealistic things to get away from something familiar.  But, in my opinion, it takes real skill to design something that doesn’t resemble any Earth cultures and yet is realistic and functional.

We sure seem to spend a lot of time on concepts.  We had an artist who quit pretty early in the project, get frustrated because we were taking so long.  Here we are still figuring out the look of the game.  I'm ok with that though.  We’ve spent almost a year on concepts and we still haven’t finished the Neg Wath style and haven’t even started on the other 3 factions.  It will be worth it when it's all finished though.  I think it will be striking to players when they see it.

I'm hoping our character model gets done soon.  I've seen HeroEngine projects where a small team had their own character model within the first two weeks.  I can say that I’m really happy with our character model though.  Only the male is done right now.  But it’s pretty impressive.  Finishing it opens up a huge number of things we can do.  Once it's done and rigged, we can get the animation team going—who I recruited 6 months ago when I was given the impression the models were done and rigged and ready to go and they weren't.  We can also get the spawning system working so we can spawn bad guys to fight.  We can get the character creation system working.  We can test the AI system.  We can start modeling hair and clothing to the model.  Pretty much not having a finished character model has been a huge bottle neck in the project.

Now, I know there’s a lot of things I could have done.  We could have used Mixamo characters.  We could have retopologized down thousands of high quality, royalty free human models that can be downloaded numerous places.  I’ll admit, it's been really frustrating this hasn't been resolved in some way, but I’m hoping finally that will change.

In terms of design, I'm the only designer on the team, so I can tell you every detail the Design Team is up to, heh.  I think I mentioned a while back I've been working on the particle effect system.  It’s really flexible, though it takes a long time to learn.  It’s good to learn though, because it will help me refine the abilities that each class build uses and how to plan out assets needed—like sound.  I need to start getting the sound designers moving.  Particle effects can also be attached to areas and environments in the HeroEngine.  For example, I have pollen working that will slowly float in the wind and I have that FX attached to several places in the game.  But I can also create rising bubble effects and weird little floaty bits and attach that to underwater environments globally.

I’m currently working on fire particle effects.  In HE you can create the actual flames and a second emitter that emits emitters.  This will be useful to randomly throw upward an emitter that pops, shooting embers out in random directions and making a popping sound.  Then, of course, a third emitter to create the smoke would be needed.  Fire has to look awesome.  That’s just the way it is.  I’ll probably spend a lot of time trying to get it right.

In terms of world design, I started laying out the zones.  This is a strange task.  How big should the zones be?  Well, the bigger is not exactly the better.  If the zones are too big, players could spend a lot time running to places they need to get to.  They could also have a hard time finding places or getting lost.  It’s hard to make huge stretches of space look interesting without getting monotonous.  Then there’s the technical side of things.  Each meter on a height map has a Z coordinate.  That works out to 1 meg of data per square kilometer, not to mention the information that stores which texture(s) is stored on it as well as other things like dynamic details like grass(trees, rocks, water, etc, are considered nodes, so they don’t count).  That can kick it up to 10 megs per kilometer.  Consider that World of Warcraft is 25 by 30 kilometers, that’s 750 square kilometers or 7.5 gigs just on the map alone.  Keep in mind too, each area and all the areas adjacent to it, need to be loaded up into memory.  If you have too many different kinds of models, or nodes, in those areas, it will load a lot of data into the player’s client computer, which can slow it down a lot.

Having said that, since we want to go for realism where things are spread out over great distances, I currently have Dawnshine to be colossally gigantic.  Put another way, the city of Kayne alone is a little bigger than the entire World of Warcraft's Azeroth.  Yeah, just one city, but it’s a big city.  I’m hoping by the time Dawnshine comes out, everyone will have 50 Terabyte hard drives.  Come on Moore's Law.

Although this sounds insane, and there's a pretty good reason why game designers don’t make worlds this large, there might be some benefits that outweigh the hassle.  For one, the open map player housing issue.  If an infinite amount of players can join a game and there’s a finite amount of space, eventually that space will run out and players will be unable to get their own property.  This is why player housing is nearly always instanced in games.  But if the game world itself was larger than a reasonable number of players would ever be able to fill up, would that change things?  Is there any real benefit that players might find with open map housing?  Hmm, that’s possible.  What if players wanted to open up their own black smithies, inns, clothing stores, vineyards, gold mines, castles, etc?  They would need for other players to be able to see it and stop by to interact with it.  An instanced store that no one but the owner would ever see, would be pointless.  It would have to be open map in that case.

Would a world that was run by players be an interesting enough thing to strive for?  Certainly you couldn’t let players do whatever they want.  I think Sandboxes that try to do such in multiplayer games usually create a mess when they try.  Players would need to be restricted as to what they could build and where.  Community buildings would be interesting as well.  Players could spend months doing daily quests that would allow them to unlock a community building in their favorite neighborhoods.  After months of collecting stones and mortar, feeding and housing laborers, and guarding against saboteurs, let's say the players are able to build a temple that gives bonuses to other buildings near it.  Does that sound cool to anyone else?

There’s a lot about Dawnshine I haven’t talked about because I want to wait until we’re sure it's going to be in the final game.  Developers usually hone in on what the one thing in their game is that’s fun, and make the game all about that.  Games that try and make everyone happy usually make no one happy.  At least that's always been the paradigm.  The paradigm is established for big budget game studios with big budget payroll and rent to meet every month and for established Indies that are always one flop away from closing the doors for good.  For us, we have the flexibility to take huge risks.

Thursday, November 1, 2012

Month 11

I hope everyone had a happy Halloween.  So recently, I started playing Skyrim.  “Playing” isn't really the right word.  More like dissecting it, modding it, and changing the artwork in it.  It seems like I always spend more time taking games apart than I do playing them.  There’s a lot of badly done things in Skyrim.  You know how the characters have such blocky faces?  It’s because the normal maps actually have those squares in them because they didn't use a high enough poly model to bake normal maps from or spend the 5 minutes in Photoshop it would have taken to smooth them.  Such a big budget project with such obvious and easily fixable mistakes.

I've been looking at mods that other Skyrimmers have been making.  There’s an interesting one that adds dialogue to the player’s otherwise mute character saying things like, “Where am I?” when a new area discovered event is triggered.  The problem with this is that you could possibly have a single voice actor tasked with creating hundreds or more sound assets for the player character.  What if you want to add something later or do an expansion pack and you can’t track that same voice actor down again?  Scary.  But I really like the idea of the player creating a character, and then that character having a specific personality separate from the player.

This is a subtle, but unusual idea for an MMORPG.  Usually players create an avatar and role play(even if only subconsciously) that this avatar is an extension of themselves.  I know a lot of players of RPGs think role playing is dumb even if they’re unwittingly doing it.  No one says, “Ah man, my character just died.”  They say, “I just died.  Damn it!”  So everyone role plays on some measureable level.  Oh, and also, not even hard core role players say “thee” and “thy” while they talk.

Sidetracked.  Anyway, having the player character either be mute or choose their dialogue(like Age of Conan and SWTOR did), makes a lot of sense.  The character is an extension of the player and how the player is actively choosing that character’s personality to be.  But what if you created the personality of your character when your character is created, and that personality comes through automatically throughout the rest of the game?  This latter example is the norm in single player games.  Mario is not the player’s avatar.  As Sheldon Cooper might say, "Mario, going after Princess Peach.  And what am I doing?  I'm just enabling you."

Mario has a set personality.  Duke Nukem has a set personality.  You don’t actively control those personalities while you play.  But you also don’t get to pick their personalities at the start of the game.  What if you could?  Since they’re single player games, it’s easy for the developer to make the player’s character stand out personality wise.  But in an MMO where players are all picking the same choices, that’s much harder to accomplish.  But what if the developer bit the bullet and made tons of personality choices, got the voice actors to do that huge task of work, and took the huge amount of time to code in all those event triggers to make it happen?  I think it would be worth it.

Ah well, speaking of Dawnshine, a lot has changed with the art team—the same sort of thing that’s happened with the programmer team earlier.  I used to recruit programmers and give them tasks at our meetings without doing anything to vet them first.  This really wrecked havoc in the early days when a programmer would have a time sensitive task and they’d stop coming to the meetings or keeping in contact with me. And I would have no idea what they were doing, if I needed to reassign the task, are they coming back, will they eventually do it?  That really, really sucks from a project management point of view.  And, a single flaky person can sap the morale of the entire team.

Eventually, I had to start giving programmers tests first.  Pass the tests, then you can start coming to our meetings.  Keep showing up at our meetings for a while, then we give people stuff to do.  I hate having to make people jump through hoops.  Why do people flake?  A lot of times people hear about us and OMG! have to be part of this because MMOs are amazing!  Then they join the team and find out that game development is actually a lot of work, the HeroEngine is pretty hard and time consuming for programmers to learn and they don’t want to ask a lot of questions right away(who does?) so they drift away.

After I changed my recruiting techniques, the programmer team has gotten a lot better.  We’re having much fewer people join the team, but those that do, tend to work out better.  But as I said, over the last couple months,we've been having a similar problem with the art team. We've lost quite a few people that, I think deep down inside, didn't want to be there in the first place, and it showed in their work.

Artists are different in that they don’t have to learn the HeroEngine at all. The problem is the same, but unlike programmers who never get past doing the tutorials, it means the less committed artists tend to do lower quality of work. Now, I’m not talking about skill level—especially about 3d art. No artist picks up Maya and puts out great work on day one. But even the absolute beginner can do great 3d artwork. It just takes them a whole lot longer.

Ok, enough ranting.  Let’s talk about what people are up to.  The programming team is currently making a pretty big transition.  To understand it, let’s talk about the HeroEngine a bit.  I was talking about engines with other game developers in the area at some meet up a few days ago.  They’re complaining about how if you want to do something in Unity, you pretty much have to use their tools or you’ll spend too much time fighting it.  There’s not much to fight in the HeroEngine, because there aren't many tools.  It means you have to build all your tools from scratch.  The good news is that you can make everything work how you want.  The bad news is that the HeroEngine is generally designed for huge budget studios with dozens of programmers working on hundreds of scripts a day.  We have none of those tools made.

Now, the HE comes with something they call the Clean Engine and the Evaluation system.  The Clean Engine is stuff like how props and cameras attach to characters, how players are first sent to the “Character Selection” area, simple AI pathing—basic stuff.  They expect a big budget studio will replace all of it, while a smaller studio will accept the defaults.  The Evaluation system is stuff like simplistic character creation, hitpoints, basic AI, and simple combat.  They expect everyone to replace the Evaluation stuff.  All we've been doing so far is modifying the combat systems from the Evaluation system to our own.  That’s cool and all, but we've been hard coding everything.  Not that we want to.  It’s just that unplugging these systems and plugging in our own, newly created ones is a scary step.  In modifying these inflexible, hard coded systems, we’re learning how they tick, what’s connected to what, and how they all fit in.  We’re getting really close to completing this very important milestone—essentially pulling the project off the grid and surviving on our own power.  We probably won’t face another similar moment until we get the source code and have to compile it and run the game on our own servers ourselves.  We’re nowhere near being able to do that.

On the art side of things, the artists have been building assets instance by instance, zone by zone.  I think I mentioned that in the last post.  Pretty soon, we should have an entire instance completed, then all the instances in an entire zone.  The first zone we’re working on is called The Howling Meadows.  All of the zones have strong stories behind them.  THM is ruled by a tribe of Neg Wath in the center of the zone.  They’re dying off, and no one seems to understand why. I won’t spoil the surprise, but I’ll say that since Dawnshine is hard fantasy, they’re not dying off due to a supernatural reason, though they think they are. It’s actually a pretty anticlimactic and mundane reason, but that’s part of what makes Hard Fantasy cool. There are other tribes in the area, each who’d like to fill the power void. The players will get pulled into the middle of the power struggle turned bloody.

Though it’s unclear why the ruling tribe is dying off and many stay away because of it, the land itself is valuable and worth fighting for.  The air is thick with the spirits of the dead, unable to pass on into the afterlife.  These spirits are impossible to detect by most.  But those that are able to drift into the spirit world can hear the howl of thousands of anguished souls.

I haven’t talked much about how the classes in the game works, how magic works or… ah hell, our website says close to nothing about the game despite there being a huge amount of stuff worked out.  One of the classes in the Neg Wath faction is the Spirit Walker.  I can’t remember, but I don’t think I’ve mentioned any of the classes on the blogs before.  I’ll talk a little about them.

The Spirit Walkers are sort of like a necromancer / cleric.  All 3 of the spell casting classes of the Neg Wath faction are different types of Necromancers.  The Spirit Walkers only deal with spirits though.  They can forcibly bind spirits to allies and enemies.  So Spirit Walkers would naturally gravitate to the Howling Meadows due to the abundance of souls.  Since Spirit Walkers can use the binding of spirits to heal people(outside of combat), you’d think the Howling Meadows would be a sort of grand hospital rather than a place that causes people to grow sick and die.  Again, it’s a confusing and conflicted place.  It’s a bummer that it’s a level 5-10 zone and that players will zip through it so fast, but there’s lots of other really interesting zones I can’t wait for players to experience after that.

Which leads me to what I’m working on. So I've been the sole environmental texture artist on the team. Lately I've also been working on the particle system. It’s perhaps the only system in the game that we’re not going to be overhauling. Though, it was meant to give developers tons of flexibility.  And it does, though anything with lots of flexibility is never user friendly or simple.

I figured out how to get blood to squirt out of enemy’s necks when you decapitate them(not that we have decapitation working yet—but the blood spurts are).  And I got it to leave blood puddles on the ground afterwards.  Now that I finally have that working, I’m realizing I need to do blood puddles with decals rather than with particle effects.  Oops.  Still, it’s good I’m figuring out this stuff now.

Something a lot more embarrassing--all this time I’ve been creating ground texture normal maps that have been upside down.  “Flip Y and X” boxes are checked on by default in my Photoshop plugin.  Who am I to argue with NVidia who made the plugin?  Ok, so I figured that out and am in the process of redoing all the normals for ground textures.  Speaking of normal maps, I always though flat grass textures were impossible to look realistic.  But one thing I noticed in playing Skyrim, not only do the normal maps highlight each blade of grass, but they also add little blobs that make the ground look really clumpy.  I was pretty amazed at how well they could get a flat grass texture to look realistic.  So I might change my mind about grass textures.  How did they do such a great job with normal maps for grass and a terrible job on people’s faces?  I’m guessing their environmental artists are really good and their character artists suck.

A really big development that will happy soon, HeroEngine is getting SpeedTree 6, which will be awesome because the “tree asset system” is currently disabled.  Having to create assets for the Neg Wath who live in trees, without being able to use trees, has kind of sucked.  But once ST 6 is working, that will be awesome.

I’m really hoping in the next couple months, we’ll be able to start posting screen shots and game play footage.

Wednesday, October 10, 2012

One year ago

A year ago today, I decided to start this project.  I knew I would learn a lot in the first year as I will continue to learn as time goes on.  Here’s a look back.

Recruiting
When this all started, I worked really hard to try and convince people to come aboard, sending long emails to people I found on Sacramento game development sites and other places, really selling the idea of the game and why I thought it would be successful.  I learned pretty quickly, however, that nearly everyone I talked to wanted to jump in immediately no matter what the game was like.  After meeting with one programmer and talking for an hour about how the engine worked, I was struck by the fact he was ready to get started, and he never even asked me what the game was about.  I told him we were making a Hello Kitty 3rd person shooter game.  He didn't even blink an eye, which kind of worried me, to be honest.

Now, that doesn't mean everyone I recruited who were enthusiastic about joining actually stuck around.  In fact, over half the people I recruit end up quitting the team in the first week—many without even logging in to our wiki, forums, or engine to even start working or learn anything about the game.

That’s strange.  Why meet with someone, say you’re interested and excited, then get home and not even look at anything?  But I've actually done the same thing myself.  You hear about a game project and you absolutely want to be involved.  Then you get home and think, “Um, what was I thinking?  I don’t have time for this,” so you watch tv for a while, play WoW, get caught up on homework, and forget about the game project you agreed to work on.  Not to mention, building fun and exciting games is cool, but spending 10 hours trying to figure out why the importer plugin for the rock you spent the last 3 days modeling isn't working, can be a drag.  I had a teacher once say, “Live life to the fullest!” is a great slogan until you have to put gas in your car, wash the dishes, and do the less glamorous things in life.  Game development is real, actual work.  You have to love every part of it or do something else.

I've gotten a lot better at weeding out people that I think won’t last long.  It’s tough when you’re understaffed, to not take any warm body willing to volunteer.  But having people come and go really hurts morale, so it’s something that you have to resist doing as a recruiter in this situation.  I try and give people I recruit tests, not to test their skills, but to test how serious they are before I introduce them to the team.

This is even a problem in funded game companies.  One of the main reasons why game companies only want to hire people with experience is because they want to make sure that they’re hiring people that are sure they actually want to make games and have proven they want to do so by doing it for a year or more.  Hiring people that quit a month later can be really expensive for a company.  There’s a big difference between recruiting volunteers and hiring professionals, but there is some cross over.  I’m glad on some level to be learning these things while we’re not funded, and I can make mistakes without losing money.


Project Management
If recruiting is hard, project management is pretty tough too.  Making sure that 25 people all have stuff to do is a full time job in its own.  I've had to learn how to program in the HeroEngine so I can write pseudo code to give tasks to the programmers.  Then for the artists--how to take a 2d concept piece, turn it into a 3d model, sculpt it, retopologize it if needed, uv unwrap, texture it, bake normal maps from holy poly versions, and rig and animate it if needed, and how to convert all the diffuse, normal, transparencies, and specularity maps into special HeroEngine shaders.  I’m lucky in that I have a decent amount of experience as a C++ programmer, so I’m familiar with object oriented design, and I have a long time 3D art background.  I’m not all that great at either, but it’s really helpful that I at least understand both sides of things really well.

I’ll admit, I do get a little self conscious if I’m not coding or creating art assets—aka, if I don’t have something I can directly point to and say, “See?  I’m contributing too!”  I still have a little “why do I get to be in charge,” insecurity.  I really need to get over that.  I let those insecurities slip, and it’s just bad news when I do.  It gives the team the impression that maybe I can’t pull this off and maybe the project will never take off.  I read once that confidence is the greatest gift a leader can give their team.  If we can pull off everything we have planned, Dawnshine will be a huge success.  I need to stop being so insecure and remind myself that this game has the potential to be paradigm shifting.  Yep, I said it.  Now I need to act on that.


Business Development
I've learned an awful lot about how funding works.  I knew very little about it before hand, and I still have a lot more to learn.  I know I've posted about Loki’s Planet in the past.  They were a funded company, and I had a dim view of venture capitalists due to listening their CEO and to other frustrated entrepreneurs about how difficult VCs are to work with.  Part of my dismal view of investors came from my dismal view of record companies and how they screw over bands—as if investors give you a little bit of money and hope you take off with that alone.  But that’s completely the wrong idea.  In theory, investors keep giving you money as long as they think your company will take off.  And if they signed on, but figure out later that they don’t have the money to make it happen, they will sell off some of their own shares to someone that will.  Good investors are business partners and will work hard to make things happen for the company they invest in.

Aside from that, working for Loki’s Planet taught me a crap load about how game PR and marketing works.  I really enjoyed talking to marketing directors from big companies and understanding things from their perspectives.  Dawnshine is a long way from needing a business / marketing team, but I feel a lot more prepared for when we do.  I know I’ll learn a lot from that once it’s in full swing.


Game Design
Over a billion people on the planet alive today have played a video game once in their lives.  Many of them have ideas for making their own game.  Of those millions of people, many of them think their ideas are unique and interesting.  The idea of getting together a bunch of people to all work on your brilliant game idea sounds like a lot of fun.  But here on Earth, in our current dimension of existence, it doesn't really work that way.  You don’t get a bunch of people together and expect people to read your mind or make decisions on their own.  If people aren't given exact, detailed instructions, they either get frustrated and stop working or they guess at stuff and do work far removed from what the rest of the team is doing.

Game design is a huge, huge amount of work.  It’s essentially like writing book reports filled with technical details as a full time job.  If you aren't a fan of math, you’re not going to like game design.  It’s a lot of mathematical formulas, flow charts, and logic trees.  It’s a lot of asset creation lists and details.

I really had no idea when I started this a year ago, just how much work was really involved with being a game designer.  Just art assets, a detailed asset creation list for a game can include thousands of items.  World of Warcraft had over 10,000 sound files when Burning Crusade launched—that’s just audio assets.  Can you imagine writing out 10,000 descriptions for sounds that you want the audio team to go record?  If you think, "They're audio people and gamers.  They know what kind of sounds are needed in a game.  They can figure it out," then you'd be wrong.  Letting your team guess at stuff like that is a really, really bad idea.

I got smart and instead of telling the art team the lore and history and asking them to start drawing stuff, I started smaller.  We’re working on a single village and detailing out everything that would reasonably be in that one village.  We’re not even doing the whole village.  I broke it up into 5 parts.  In the end, it will be one of 25-30 villages in one of the 16 zones of one of the 4 factions.  We’re going to spend the next several months working on it.  For years, I've heard players complain about how game studios are lazy because they recycle art assets.


Well, here's to another year closer to our goal.


Thursday, September 13, 2012

Middle of Month 9

Hey guys.  As I mentioned in my last post a month ago, I've been really busy, but much of that is behind me.  School has claimed a few members of the team who are struggling to handle work and class loads and the Dawnshine Project at the same time.

For some reason, I've had a pretty hard time recruiting character modelers.  At least this means we have a huge collection of armor, hair, and clothing concepts built up and ready to pass off to be modeled.  That's a good thing.

The modelers and animators we do have are currently working on the cinematic.  I especially wrote the script for it to be easy to do from a technical stand point--not a lot of environmental assets needed, mostly simple walk animations and only one line needing to be lip sync animated.  And that line is two words.  I think I mentioned in the last post that Jared took the team out to Howe Park to shoot video.  Sarah played the part of Sahka.  It's useful to have live action footage to use as an animation reference.  I don't have anyone in particular in mind to voice act it.  It's all one actor: young female.

Meanwhile, as the 3d team is doing that, the concept team is working on layouts for instances.  This is kind of tough.  I mean, level design is easy work, however, we want to make them as realistic as possible.  You know how instances are either mazes with a spawn of bad guys every 40 to whatever feet, evenly spaced out or they're a twisty, one way tunnel with evenly spaced out spawns of bad guys?  Then you go through these spawns for a while, fight a boss, repeat.  Or you get to the end and fight just one boss.  Whatever it is, it's pretty stilted.  I'm not going to completely condemn this kind of level design.  I've certainly had a lot of fun in MMOs that relied on this.  But we're going to try and make our instances seem more natural.  I want players to forget they're playing a game as they peer around corners to watch patrol movements because the enemy behavior seems natural.

Speaking of that, I've been working on our AI system.  I'm not sure how the final system will end up.  I want to make our AI as complicated as possible, but we can only send so many server calls before the game is too laggy.  Still, there will be some randomization.  Let's say you're fighting 3 Neg Wath warriors.  All three might fight differently.  I remember something Jack Emmert--lead designer for City of Heroes--once said.  He said that players all claim they want challenging AI and variety, but then they all flock to fight the easiest, dumbest AI monsters in the game.  Although that might be true, I don't think players actually want boring AI even if that's what the flock to.  The bulk of players will flock to the fastest point to a ding whether it's fun or not.  If it's not fun, they'll still put some hours in, then just drop off suddenly, tell everyone how boring the game is, and never come back.  The job of a game designer is to figure out what players will flock to, then try and make that path as fun as possible.  You don't lure people with "fun."

In terms of coding, the development team is getting some momentum.  We're starting to get some systems up and working.  Hopefully by next month we have some of the basics working.


Sunday, August 26, 2012

Middle of Month 8

Wow, it's been almost 4 weeks since I've posted.  I've been incredibly busy.  I'm still not finished with Stairway to Stardom, the music education program I teach.  There've been unexpected delays at the studio.  I'm *hoping* it will be finished by Monday.  This is my 17th year teaching the program.  Obviously, I enjoy it, though it's caused me to miss two Dawnshine art meetings in a row, and I feel like that's caused the project to slow considerably.

That aside, although my back has recovered considerably, I feel like I'm in health care hell.  X-Rays of my back uncovered more, older problems.  For the last few years, I've had partial paralysis in my left leg.  I have no idea why.  I can walk without a limp, so I don't really care.  The doctors have spotted the pre-injury spinal damage so I keep having more doctor visits for that now.  Having 4 hour hospital visits every couple weeks just sucks.  I'm really close to telling the docs to just leave me alone.  I think I've gone to hospitals more in the last two months than I have my entire life before that.  It's really aggravating.

Combine that with I've been trying to get a full time job because trying to hustle up freelance work all the time stresses me out too much.  You know how they say looking for a job is a full time job?  Well, I'm doing that and I also decided to go back to school.  I'm talking a class in php, html5, and techniques of management.  I've decided to go for an AA degree in Management and, while I'm at it, brush up on my web development skills

So my classes just started this week.  And to add to the fun, I have jury duty starting tomorrow.  I really hate my life right now.  Yeah, I know.  As a student, I can postpone serving.  But my classes are in the evening and online so they don't really conflict.  Yeah, it's not like they're going to check that out.  But still, it's my civic duty and all that.  It's part of being a proud American, and it's the least I can do.

Sorry, I don't mean to sound like I'm complaining.  Everything will work out.  I just hate being distracted from the Dawnshine project and missing meetings.

Anyways, enough of that.  I recently went to a game jam.  I got teamed up with Joe Burchett, the organizer of the Sacramento Game Dev Meetups.  He did all the programming and I was the 2d artist.  I've started to get really good at UI design.  But to my point.  Working right next to him was pretty cool.  He could tell me exactly what he needed rather than me making a bunch of stuff that wouldn't get used or didn't have the right attributes for what he was doing.  It was really efficient.

It reminded me of a comment one of the artists said--instead of driving all the way out to the art meetings and talking about what we need to accomplish, I could be at home spending that time creating stuff for the game.  It made me realize that if we had the whole team in an office working on the project one day a week, we'd get a lot more accomplished.  I think that would also let people know if it was something they wanted to do for a living.  I mean, tons of people think working in the game industry would be awesome, but when you actually sit down and do it and realize how much repetitive / busy work is required, most people would change their mind.

So I'm thinking about looking into one of those shared office spaces.  There's a few of them in Sacramento.  So one office floor, but with several companies renting rooms in that office.  We would only want a weekend, and those are hard for these places to sell, so I could probably get a great deal on it.  I need a steady job for that first.

In terms of progress, one of our beginning programmers wrote a bunch of broken code for the combat system.  He's since left the team.  Instead of picking up where he left off, it made more sense for our lead programmer to rip it all out.  He'll start fresh instead.  I have the formulas written out.  It's just a matter of getting the new character system node working and writing a new combat system to work with it.  Our combat system is really unusual, but the fact that we're on month 8 and it's barely even started, is pretty discouraging.  I wanted to be alpha testing by now.  At our pace, that's not going to be for another year.  I really need to figure out a way to increase productivity somehow.  I can find good programmers like we have now, but not ones that can devote a steady amount of time per week to learn the engine and code what we need.

A big problem we're having with programmers is that the HeroEngine is such a massive system to learn.  The syntax is a breeze, but there's so many systems that work with other systems.  It's not as simple as tweaking just one thing unless you understand every single system attached to it.  So the time consuming part is memorizing what hundreds of other scripts and nodes do before you can change anything.

But that aside, I think our programming team is starting to get a little more stable.  I like the people on our team.  I wish I could recruit more like them.  At least the ball is starting to roll.

Art side of things, while I was off with my Stairways to Stardom band in the studio, the artists met at a local park and filmed two other the artists on the team acting out our first cinematic.  This will be helpful to use as a video reference for the animation team.

The storyboard is done.  All the concept work is done.  Now it's all up to the 3D team to build the assets and do the animation.  While the 3D team is busy doing that, I've been emailing the Concept team about building concepts for Instances.  I can't wait to get started on that.  finally, I'll be able to start planning out quest content with the artists.

Wednesday, August 1, 2012

End of Month 7

I've worked on a lot of projects over the years.  I tend to join, then take over control of some part of the project.  I take it in directions beyond the scope and understanding of the managers above me, though they do tend to really appreciate my work.  Eventually, managers, due to their lack of understanding as to what I'm doing, will change something that fundamentally causes my work to break down.  I can remember times I've tried to explain why their overriding of my work will hurt the project.  That's when they bust out with the, "This is my project, and I want it done like this," and the discussion is over.  I leave the project and, in many cases, burn all bridges behind me thinking about what an idiot the guy was.

Now I'm the manager on a project.  The project has grown beyond the scope of what one person could be in charge of all the details for, creating a need for team leads to be in charge of sections of it.  I mean, I know what the programmers are doing, but I couldn't break it down much further than that.  For example, I thought the designation of character animation associations should go with the abilities class, not the weapon class.  The animations should be associated with the abilities since different abilities will have different animations, even if they use the same weapon.  The programmer team lead disagrees with me on this, because he feels tying animations with the weapon class(something that will be loaded in memory at all times), will send less server calls then if done my way.  I don't agree with that.  In the end, will it really matter? Is it worth making an issue out of it?  He knows the engine a thousand times better than I do.  Might he know more about the situation and he's just not articulating his reasoning well?

There was a problem that happened at the last art meeting, so I changed a policy to prevent it from happening again, and reassigned one of the artists to a different task.  Well, turns out it was a misunderstanding, and it wasn't really a problem after all.  That means my "solution" messes up something, and that artist needs to be assigned back to what she was doing originally.  I superseded what my art team leads had set up when it turned out, I should have left it alone.

Now everything I'm saying here is really, really minor.  But do you get what I'm doing?  I'm doing the same crap to my team leads as idiot project managers have done to me.  They understand what's going on in their piece of the puzzle better than I do, and I have to accept that and trust them.