Saturday, May 30, 2009

Movie Rules

Horror movies:
  • Splitting up is certain death.
  • Hooking up with the hot chick before the killer is dealt with is certain death.
  • Walking up to inspect a body lying on the ground is certain death.
  • Thinking it's over is certain death.
  • If you're a jerk, you're going to die a horrible death.
  • If you're a jerk, but redeem yourself at some point, you'll die, but it won't be as painful.
  • Only the nice guys and hot girls survive.
  • If you see/hear something suspicious, don't investigate.  Really just a more general version of the "dead" body rule.
Action hero movies:
  • If you haven't killed your nemesis yet, then the moment you're happy and think everything's going your way is the moment right before true tragedy strikes.
  • Everything blows up.  Use that to your advantage.
  • No matter how much you get shot at, the worst that'll happen is your leg will get shot.
  • You'll never have to feel guilty for killing the hundreds of guards just doing their jobs.  Don't worry.
  • Don't make friends with anyone because they'll either betray you or get killed right before your eyes.  (See the first rule of action hero movies)
Romantic comedy movies:
  • If you're in a relationship at the beginning of the movie, expect it to fail very shortly.
  • No matter how many embarassing situations arise that would make a girl in real life lose all interest in you, she'll still be interested in you.
Any movie with a computer:
  • You never have to worry about learning Unix or DOS commands because every system has a convenient GUI to use when you've hacked into their system.
  • Hacking is a simple process of hitting random keys very rapidly until you say "I'm in!"
  • Viruses always have some visual effect to your computer like a silly animation mocking you or graphical corruptions on the screen.
  • All computer programmers are geniuses can make any program for any purpose.  This one's actually true.

Friday, May 22, 2009

Leadership

Ever since moving to Monterey, I've been trying to get more and more connected to a church.  This is especially true after Pastor Bryan spoke on faithless action and faithless inaction.  Faithless action is when you strive so hard for something you want without putting God in the equation until at some point, that thing you are striving for becomes your god.  Faithless inaction is when you rely so much on God's promise to bless you that you do nothing, but wait.  God doesn't reward laziness.

After hearing that sermon, I finally got off my butt and got the courage to join a dGroup (Monterey Church's small group).  Then the following Sunday after going to church, I was invited to Easter dinner by the leader of my small group and met more people.  So I could immediately see God's blessing with just one tiny bit of action.  But still I was afraid to do much more for awhile.  There's been a constant call to help with children's church and setup/teardown of the theater we meet in before and after church, but week after week I would dash out of church passing those sign up sheets by.

Over a month later I wrote this and realized I was doing the same thing as before.  Letting my excuses control me.  So the next Sunday service I signed up to help setup since I figured I'm always up early anyway, I might as well do something good with that time before church.  So I sign up and then the following Saturday, I get an e-mail telling me what time I need to be at church for this.  Turns out my early (around 7:30) wasn't as early enough since I needed to be at church at 6 am.  I had also promised my housemate, Mike, that I would pick him up from Monterey airport at 11 pm the night before I had to be at church at 6 am.  So this was ample opportunity for me to come up with excuses that were actually somewhat legitimate.  But I remembered what I had resolved to do about excuses and did both like I said I would.  It was difficult, but it was worth it.

So I figured now I'm connected enough.  I'm doing some nice behind the scenes work for the church and I've got my small group and I've been going to church consistently.  Well I guess God's not done with me yet.  After small group this week, one of the other members suggested I become a small group leader myself.  Immediately I felt scared and I could feel the excuses coming up.  I've never really liked being a leader, I prefer the behind the scenes stuff.  I have concerns for meeting at my house since I have three housemates and I don't want to kick them out of the main room.  Etc.  Etc.  Blah.  Blah.  Blah.  After more discussion, our current dGroup leader, Pam, said she might be leaving for good soon.  She's still not sure, but if she did she wouldn't want the group to just fall apart.  So I'm pretty much getting all the signs that I should be doing this (I don't want to, but I feel I should; there seems to be a need; I seem well equipped to fulfill that need).  As a first step I'm going to teach a lesson (I guess next week?) at dGroup.  We'll see how God guides me after that, but I'm pretty sure I've finally gotten the hint.

The most comforting thing for me is Pastor Bryan has said on a few occasions that he also never wanted to be a pastor.  He too wanted to be a behind the scenes guy.  But he felt God calling him to being the pastor and I'm glad God did because Pastor Bryan was one of the biggest reasons I kept going to this church.

Friday, May 15, 2009

Star Treknology

Star Trek has a lot of technology that I really look forward to enjoying (whether that's a realistic hope or not).  Teleporters to eliminate traffic jams, car pollution, and long distances.  Replicators to eliminate hunger, lack of food variation, and bad cooking.  Holodecks to see what it's like to pilot a Gundam, to travel to Ireland without going anywhere, and to play in a jazz club without fear of being booed off the stage.  But after this week, the technology I want most from any series of Star Trek is the Borg alcove.  I had to look up the name for this thing and I am incredibly underwhelmed.  The purpose of the alcove is a place for a Borg drone to go for 6 hours for their regeneration cycles (basically sleep).  What I would love is if every night, I could go into a device and just turn it on and not worry about having to fall asleep or being woken up by stuff in the middle of the night or getting the right amount of sleep.

The quality of my sleep seems to come in cycles and I am currently in the "constantly being woken up in the middle of the night" cycle.  Whether it's because I didn't drink enough water that day and wake up at 4, 5, or 6 with a very dry throat, because I'm overheated, or because of a bad dream, something keeps waking up in the middle of the night and then my brain thinks it's morning, so it starts going off thinking about what I want to/have to/get to do that day and I can't get back to sleep even though I need it.  Even if I can get back to sleep, it never seems to be as useful as a full 8 hours of unconciousness.

Eventually this loss of sleep catches up and then I start sleeping well again.  This is very tedious and overall I find sleep to be very stressful and not a pleasant thing.  As Q put it in the episode Deja Q (I had to look this all up, I'm not THAT much of a Star Trek geek):

Q: [Captain Picard visits Q in the brig] Truthfully, Jean-Luc, I've been entirely preoccupied by a most frightening experience of my own. A couple of hours ago, I've realized that my body was no longer functioning properly. I felt weak, I could no longer stand, the life was oozing out of me, I lost consciousness... 
Capt. Picard: You fell asleep.

Friday, May 8, 2009

Time Management and Hobbies

The reason I left Liquid back in November was because the job was taking away all of my free time, so I had no time to invest in anything else.  Whenever I did get any time and spent it with friends, I never had anything interesting to say about what I had been up to recently because it was always the same: "Work."  This really started to bug me because it always made me feel like I was a really boring person to talk to.  It also worried me because part way through Rise of the Argonauts I realized that I didn't want to move up in Liquid and thus I wanted my life to be about something other than that job, but I had no time to make my life about anything else.

Now that I have the time to spend developing my hobbies and doing other things I enjoy, I'm finding I completely suck at time management.  I have so many different projects I want to work on or games I want to play or TV shows I want to watch that I find it hard to pick one and focus on it.  I'll be in the middle of something and then a stray thought will pop into my head making me think of one of my other projects or remember a great moment in some game I played and then suddenly I'm switching projects again.  Or when deciding what to do, my infernal need to complete my mental checklist will sort it in order of quickest things to complete, which is almost always watching my weekly shows or playing a video game and then BAM no more free time.  I don't always feel like this time is wasted, but I feel like I let down the projects that are actually more important to me and my future.  What's worse is that the longer I take to get back to a project, the harder it is to go back to it because I'm either out of practice (piano), forgot what I was doing (game design), or I feel like no one's going to care since I ignored the project for so long (blogging).

What I've realized lately is that these are all just really lame excuses.  A friend of mine once called me the King of Excuses back in high school.  That comment has haunted me to this day because of how true it was and still is.  I'm quite masterful at giving excuses why I should or shouldn't do something (not usually very good excuses).  What's even worse is I know I'm doing it and the part of me that knows I should or shouldn't do whatever it is I'm weaseling out of/into to has a hard time fighting the much stronger lazy and selfish part of me.  If you've ever seen the movie Yesman (and if not I highly recommend you watch it - with me if possible), I feel almost exactly like Jim Carrey's character.  What I've started to do (prior to watching that movie, but more so after watching it) is if I feel a reservation about doing something for a lame or selfish reason, then I commit myself to whatever it is I'm trying to get out of before I have a chance to make an excuse.

What started this particular ramble is that it's almost been a month since my last post and it was a few weeks between that and the previous post.  I know myself well enough to know where that's going to leave this blog if the part of me that cares about this blog doesn't take a stand.  So from now on I'm committing to at least one post a week, most likely on Fridays (because I do so love routines and schedules).  Hopefully once I get that discipline down I can commit to more a week because my favorite webcomics and blogs are the ones that post consistently a few times per week and I want to be one of my favorites.  :)

Monday, April 13, 2009

Gaming Morals

I just finished playing Godfather 2 this weekend.  The game is, of course, based on the second movie of the Godfather series (none of which I have watched even though I played, beat, and loved the two Godfather games that have come out).  At its utmost core, the Godfather games play a lot like GTA games.  There is a big open sprawling city where you can run around, hijack cars to get around faster (or just take one of your own at one of your safehouses), escape from police if you're caught doing something bad, etc.  In the Godfather games, your ultimate goal is to take over the city/cities from other Mafia families and rub out the soldiers, capos, underbosses, consiglieres, and dons of the other families.

It probably sounds like a very violent game where you play a terrible person doing awful things, which it is, sort of.  I say sort of because even though the story is pre-written and certain evil deeds are required of you, there are a number of ways you can resolve certain situations.  For example, in order to find out where the rival families' higher ups are and how you need to whack them, there are people scattered throughout the cities with little keys over their heads.  You do a favor for these people and they do a favor for you.  I discovered fairly quickly that there are way more people with keys (most likely randomly generated) then there are rival family members.  This allows a choice for the player for which quests they want to do.  Gameplay-wise they're all the same.  Steal this, beat up or kill this person, or smash up this story.  But the reasons for why people need this done are incredibly different.

One person wants you to take out their competition who doesn't have any insurance, so they want you to smash up the store to put them out of business.  One person hired a woman of leisure and then woke up the next morning to find her and his wallet gone.  So bad people wanting the help of bad people, right?  You'd think so until you find the ones like the woman who went on a date with a co-worker, didn't put out, and now the guy is spreading nasty rumors about her, so you're tasked to beat up the guy to show him she won't stand for that.  Or a reporter (assumedly) tells you he/she wants you to steal some pictures that got stolen from him/her so they can use it as evidence in a political scandal.  Or (my personal favorite) a person has a sick kid, but their spouse wastes all their money on gambling/drinking, so they got life insurance for that spouse and they want you to kill them so they can have money to help their kid.

I say that one is my favorite because it brings a very interesting moral choice to the game.  I've played many games with moral choices, but usually they're along the lines of kill this guy or forgive him everything and give back your reward money.  Like super black and white, very dumb choices.  This one is interesting because you're helping a sick kid, but you need to kill someone to do it.  What's even more interesting is that choosing one quest or another makes no difference gameplay-wise, but it helps make your character (Dominic) your own.  In any good story, you have to connect to the main character and this is especially true in games because you're the one controlling them and you're forced to do what the story has the character do.  This is why I hate games that have super dark, violent, angry characters with no humanity in them.  I can't connect with them.  I have no desire to kick puppies or shoot babies or eat kittens.  I know it's a game, so I can suspend some disbelief and do things that I, Eric Heine, wouldn't do, but I'm not going to like a character that I can't empathize with or understand.

So what this character choice allowed me to do is play this criminal Mafia lord in a way that I could really connect with.  I wasn't just a thug out to murder people and cause destruction.  I was the Mafia Don who was out to protect the innocent people of his domain by doing the evil things that they couldn't do for themselves.  I refused to do any favors where I felt the victim didn't deserve what they got.  So any favor where I was going after a cheater, a thief, a murderer, or a rapist?  Yeah, sign me up.  I'll serve out justice Mafia style.  But you want me to take out that other business just so you can profit?  No way man.  Get outta my town.  This also applied for taking out the rival families.  I did that not just because the game told me to, but because I can't trust those rival families to be respectful of justice or the innocent.  They probably take advantage of them.  So I need to take over so I can make the world a better place.

What would have really been interesting was if I could shut down certain crime rings because that wasn't my Mafia's style.  For example, one of the crime rings I could control was a drug ring.  If I could have shut that down after taking it over, I certainly would have.  The Corleones are better than mere drug traffickers.  We've got class.

So while playing through this excellent game, I was playing a meta-game of observing how and why I did certain things in the game.  The most memorable games are ones where you get to create your own stories alongside the real story and this is a perfect example of that.  I wish more games gave the ability to make moral choices without it affecting anything because as soon as it affects the game through rewards/punishment, it affects how I will play that game.  All Bioware games have the static good/evil/neutral choices.  I always choose the good path just because I don't want any negative points on my permanent record.  As soon as I can determine that my choices have an outcome like that, I stop playing a character and start playing a game, which is okay, but it can be better.  Games can be more grown up and mature (and not the "lots of sex and violence" mature that seems to be the definition of mature games currently).  Games can and should make people think about their choices and teach the player about themself or life.

Other things I discovered about my morals while playing:  I have little problem with stealing as long as it's for a good cause; it takes a slightly greater cause to get me to beat up a male civilian; it takes an even better cause to make me beat up a female civilian; it takes an extremely good cause (the sick kid) for me to be okay with killing any civilian (except if I'm driving, but that's more because I wasn't good at driving in that game).  None of the people who wanted me to bash in the stores had very good reasons, so those didn't fit in here.  And obviously I'm only talking about doing this stuff in a game and not real life.  In real life I'm only okay with stealing if I can get away with it.  :)

Saturday, March 28, 2009

GDC 09: Day 5

The final day of GDC started off with a lecture on how Disneyland can be used to create better level design.  Walt Disney has always been one of my role models and thanks to my Disney class in college, I already knew a lot of the clever tricks Disney used to really immerse people in the fantasies that exist in Disneyland.  There were a lot of tricks I didn't realize that went even deeper.  For example, in Frontier Land, the guest is supposed to feel like it's the old West, so they have a lot of freedom to do what they want.  So the paths are much more open except for specifically placed planters that add the illusion of different choices the guest has on how to get places when in reality they're still going from point A to point B.  On the other hand, Adventure Land is supposed to feel like a bazaar in some foreign country, very crowded, lots of things to distract you, etc.  So the pathways are much tighter and every step you take brings more distractions into focus (Jungle Cruise, Aladdin's show, Indiana Jones, shops, etc).  Here the planters are meant more for crowd flow control.  New Orlean's Square is all about rewarding exploration, so there are a lot more nooks and crannies and little alcoves with jazz bands hiding in them, which gives you the feeling of reward when you discover them (which I've experienced myself).  Hopefully, I can get the slides for this so I can post them here.

After that talk, I went to a few shorter lectures, one on designing player failure and one on the paper prototypes of Spore.  The failure design one was interesting because the guy was a games researcher at MIT and he discovered that the idea that casual game players hate failing is a myth.  It turns out that it matters less how many times you fail, but more on how failure is treated (ie, what's the failure cost).  Failure cost was figured out by multiplying the failure count (how many times you fail), failure communication (was the player insulted when he failed?  Encouraged?  Merely told he failed?), failure setback (how much time did the player just lose because of that failure?), and the failure repitition (do they repeat the same game as in Mega Man when they fail or is it more randomized?).  Another interesting point was how if you play a game, you like it, you want to show it off to a friend, you play really well at it, and then they lose horribly, your friend is going to hate that game because they feel like they're the only one who is bad it.  I've lived this example with Ticket to Ride.  I don't like that game because the first (and only) time I played it, my brother and sister-in-law did so much better at me that I just lost all interest in that game entirely.  It was no fault of my brother or sister-in-law, that's just what happens if the failure cost gets to high for someone...or something like that...

The Paper Protoypes of Spore talk was interesting, but it had less to get from it.  There were basically two slides of takeaway information, but that was near the end so he was blazing through it, which meant I didn't get to take very good notes.  All I got is that you should make paper prototypes of your game's systems to balance them, you should focus on the key idea you're testing at the time, be abstract with your prototype (don't try and match the controls of the game, etc), it doesn't have to be fun (you're not making a sellable game with the paper prototype), and it helps build a vocabulary when discussing that system that just pops up when you start playing the paper prototype.

The second to last lecture I went to was about a state-based scripting system used in the PS3 games Uncharted and Uncharted 2.  It was interesting, but I didn't take any notes, so I'm not sure what I learned other than that having a scripting system allows designers to do a lot of the work programmers would have to do.  I'm not sure how we can use it with Delta3D since we A) don't have any designers and B) don't work on anything with more than one level usually, so it's just easier to program it.

The last thing I went to at GDC this year was titled "Games Have Feelings Too!".  I'm really not sure what to pull away from this.  Basically it was an hour long lecture about how game is art now, Citizen Kane was a failure at its time, so we shouldn't expect anything different with our Citizen Kane (ie super artsy game), and games evoke the more subtle feelings.  Sometimes.  It was interesting, but I didn't really get anything out of it.

Thursday, March 26, 2009

GDC 09: Day 4

Today had some of the best lectures I've been to so far. However, it didn't start out so great. The first lecture was called "How Sackboy Learned to Love Physics". Sackboy is the adorable main character of the PS3 game, Little Big Planet. All week I've been trying to mix up going to lectures that I should go to for my job (programming focused) and ones that I want to go to (game design focused). Unfortunately, the programming ones I've attended for the most part have been pretty lame. This one was not the exception to that rule. There were some interesting points about how physics is faked for a fun game, like how you can control your horizontal movement in every Mario game while jumping. Try jumping forward and in mid-air start traveling backwards. The other bizarre example was in Quake how if you are strafing to the left and fire a rocket, the rocket moves straight from the point it was fired at and doesn't take your velocity into consideration. Other than that, I didn't really get the point the guy was trying to make and his slides weren't very useful.

After that, Hideo Kojima, the man behind the Metal Gear Solid series, had a keynote named "Making the Impossible Possible". His slides were very professional and humurous. Most of the keynote was on the history of the Metal Gear Series and what problems had to be overcome for each game. He made some really interesting points about how when you come upon something that seems impossible, it's most likely just your perception and with some alterations on how you're viewing the problem, you can solve it. If not, give it a little time and the technology will resolve the problem. He left us with the quote "90% of what is 'impossible' is possible. The other 10% will be possible given time & technology."

The next talk was on Left 4 Dead and how they made a cooperative, replayable video game (and succeeded amazingly in my opinion). First off, the game was built with cooperation and replayability as the two core concepts. Some of the most interesting parts of the lecture (although I'd love to talk about it in greater detail with anyone who wants) were how each enemy type was built with a specific rule/play style they were meant to break up. The way they made cooperation so important is that they made it impossible to succeed alone, but not in a heavy handed way like invisible leashes to keep the characters together or anything. Instead, they made regular Infected stop you when they hit you, so it's hard to run through a mess by yourself, but even if you manage that, the Hunter was specifically designed to kill stragglers and lone wolves. They also found that coordinated teams plowed through enemies too easily, so they added the the Smoker whose purpose is to break up a well organized team by sucking out one of the survivors. To break the typical gamer rule of "Shoot everything that moves", the Boomer was added (or rather merged with a previous enemy type named a Screamer). There was also an extensive dynamic AI Director system that decides how to create a more unpredictable game by forcing a lull in the action if things get too intense. All in all, this game was incredibly clever and hopefully I learned enough to use some aspects in future games I design.

Another fantastic lecture I attended directly followed that one and was all about using User Interface design ideas in puzzle design to keep from making puzzles unclear and thus making players feel stupid. I'll sum it up real quickly because I'm running out of time on my hotel internet. Depending on the puzzle type, you should make it very clear what tools the player has available to them and every action the player can take should have some kind of positive or negative feedback to indicate whether they're on the right or wrong track. There should be a good dialog between the game and the player at all times. Maybe when I get home I can write my notes up here on this.

The final lecture of the day was on the terrain in the new game Halo Wars. Usually terrain is created using a map of the heights of each vertex of terrain at a point or a height-map. One interesting concept they had in Halo Wars was a vertex heightmap. This way, each vertex stored a whole vector instead of a scalar value, so the terrain can be sculpted into interesting overhanging shapes and such. It was fairly technical and I'm not completely sure I got it all, but it was possibly the only programming talk that I understood most of and was interested by. It was a good way to end a very good day.