Subscribe to Its not a bug, It's a feature        RSS Feed

GDC Day 2

Icon Leave Comment
Sorry for the delay I was trying to get access to the GDC vault, but I'm still working on that. So without further regard here is what I learned on the second Day of GDC.

First Presentation: Suspending Disbelief: Bringing Your Characters to Life with better AI
How to recognize what makes a better AI, and by better we mean more realistic. There are two main characteristics of AI, Representation (tradional AI & Comp Sci Algorithms) and Communication (film & animation). Its important to learn from the communication, in order to create better representation. (Learn from artists!?!).

For example: Anticipation.An audience must be prepared for the next action and expect it before it actually occurs. Otherwise it doesn't feel real. The best example is this a person jumping
With Anticipation
  • Person is standing
  • person crouches down slightly
  • person pushes off ground

Without Anticipation
  • Person is standing
  • person pushes off ground

This needs to be considered because thats how humans work. Before any action a human does, they think about it. This usually results in a preparation for the action, in the case above crouching a bit to get a good jump. Do not forget that there is a reaction to every action taken as well. so the person that jumps up cannot just appear on the ground, they need to fall, and land (give a bit from the impact).

When creating your AI, you need to Create behaviors that anticipate other behaviors there by creating a chain of them to occur when you are actually calling a function (i.e. a AI character is told to jump they would run crouch and push-off behaviors first).

This is why we should treat Animators as First Class AI authors because they train vigorously to make these happen on the visual side, and there for programmers need to give the animators functions to use in order to do this.

Another important concept is : Non-Verbal Communication (NVC)
We are pre-programmed to read humans, so observation is a concept that must be accounted for. If you can replicate how a human reacts to another humans movement/communication/look, your AI will be more believable. This is why during motion capture sessions, the result will be more convincing with more than one person. This issue is prevalent in games, how often have you gone up to a group of thugs, lets say the leader if facing the rest of them, and when you approach they all turn and charge on you, or you can get the jump on the leader ending the conflict quickly with a stab in the back. A more realistic situation would be as the player approaches, the thugs change their body postures and gazes ("buff up"/place hands on weapons/get angry stare), the leader should react to either the sound of your approach, or respond to his body guards' shifts. he should move behind them and then turn around, so he can "asses the situation" while the guards charge. This of course if the player seems threatening to the group.
Once the environment is read. player looks threatening, and thugs are already on alert. then you can have each npc respond in a series of chain movements based on their field of vision, then reassess the environment.
To note that gaze ( a form of NVC) was used in the example above. Gaze is important, because this allows the player to tell what another character's focus is on. Ever talk to an NPC and then run around them and they keep talking facing forward? Kinda silly and thats because the verbal and gaze dont match up. Characters should turn to maintain gaze on whatever their focus is. Note: When the head turns the whole spine turns and should be represented accordingly.

Second Presentation: NinjaBee's Top 10 Development Lessons
The list was generated from their experience making XBLA games (top hit: Kingdom for Keflings). The list is fairly self explanatory, so I'll list them and make notes below if needed.
  • DLC doesn't make money *
  • MS Avatars get attention but don't sell games
  • Build Relationships with platform holders
  • "No" doesn't always mean no *
  • A picture is worth 1 Million $s *
  • XBLA is "Hit Driven" *
  • Focus Testing is huge
  • Plan to go overbudget & take more time *
  • View Everything as a sales pitch *
  • The game industry is always changing

1) small impact on full game sales unless it is already a very popular game ( otherwise time&money spent isnt worth the return).
3) Play nice, make friends, and strive to meet thier goals. If you make them look good, they will be more likely to help you out
4) Persistence is key. If you believe that a feature is critical for good game play and you were told no (by a publisher, not your boss ;) ) continue to push it and show it off in mock up / demos to try and win them over
5) Mock up screen shots, videos, and demos. Go a lot further than words on a paper, allow the publisher to see the end goal more clearly
6) Top rated games on XBLA list show a dramatic drop off in sales from page 1 to page 2.
8) Plan to go over even after your build in "cushion." no matter how many times you do this process it won't improve
9) Its easy to miss an opportunity to present yourself, ideas, or your company; they will come unexpectedly.

Third Presentation: Why do people buy virtual Goods?
This presentation present a list of attributes that can affect the desirability. In order to create this desirability you need to focus on the items themselves. Consider each of the attributes before putting items in your game. Make sure Use the full spectrum of n00b items to l33t items.

Attribute 1: Performance
- Better the weapon, the more wanted it is.
- D&D: would u rather have a "long sword" or a "+1 long sword"
Attribute 2: Functionality
- This is a secondary functionality on a weapon ( flaming/ice long sword)
- Often can be time savers ( Ring of l00t - auto loots nearby corpes )
Attribute 3: Visual & Sounds
- its flash or cool looking
Attribute 4: Background Fiction
- back story makes the weapon more unique ( Bob's Ancient Long Sword of Wrath )
Attribute 5: Provenance
- story that attaches to the item
-> habbo hotel: cat ages in game, there by showing prestige from veteran players
Attribute 6: Customization
- allow players to connect to the item more ( i.e. naming your pet )
- allow makes the unnamed counterparts more valuable for their "pureness"
Attribute 7: Cultural Reference
-Holidays, Olympics, Internet memes, Sports, and TV references
Attribute 8: Licenses
-reference from other movies, games, music
-other licensed IP
Attribute 9: Rarity
-builds distinction from haves and have nots
Attribute 10: Price
-if its expensive it must be good (or shows prestige if you have it because player is "rich")

Fourth Presentation: Microsoft Developer Days: Developing Windows Mobile 7 Series with XNA 4.0
Features of Win7 Phone
- Xbox Live Gaming Service ( Gamertag, friends, avatar, achievements)
- Xbox Live Hub ( the screens of the phone )
-> Spotlight, homescreen, requests, collection
-If your not a MS parter
-> find a publisher or email [email protected] to throw game/app designs at them
-Consistent Hardware
-> Will release with only 1 resolution, and 1 thereafter
-> Same touch input
-> same gpu and processor
-User Experience Frameworks
-> Silverlight & XNA Support
-XNA Game Studios Support
-> Robust API's for games
-> C# .Net & VS tooling
-XNA 4.0
-> Ability to develop, deploy & debug for Win7 Phone
-> Simplified Graphics API's
-> new configurable effects

XNA 4.0 is...
-> Managed code for game Development (aka no unsafe code)
-> No unnecessary garbage collection
-> Math libraries optimized
-> Efficient API's tuned transitions to native code

-> Visual Studio 2010 & .NET 4.0
-> Pipelined Content

-> XNA is designed for cross platform ( Windows/XBOX/Zune/Windows Phone )

Helpfull links (more on Win 7 phone to come)

or you can email Michael Klucher, Program Manager for XNA

Fith Presentation:Indie Solutions to Design Savy Somethings
This presentation was just a bunch of tips for defining your game for what it is and how its compared to AAA games ( large companies ). In order to reach your audience you need to understand what a game is, its essentially an interactive multimedia experience. This experience is usually split into genres ( mainstream, indie, "not" games, art games, etc...) so you need make sure that if you game will fit into a category it, does the category justice, and not all games will be exclusive to one genre either. You need to incorporate meaningful story lines, which will help the game's context. Also make sure that stories are organic.
a level = physical exploration ( Mario 64 Ice Land )
a story = emotional exploration ( final fantasy 7 ending anyone? )
when comparing AAA vs Indie Design, there are many trade offs that affect the game's development.
  • Team Size - When teams are large you have to keep the pipeline full, and you end up doing concurrent work to keep people busy rather than working on the game's gems
  • Niche Audiences - Indies can work on kids games, strategy games, or reach across to new platforms
  • AAA Companies try and make the game XXX-killer, indies can't a severe lack of budget
  • indies can design a came for a market that is unfulfilled ( for the 13yr old emo kids.. because they need games too)
  • Licenses - AAA companies have to worry about a lot of licenses (indies are a lot less likely to get sued) and have big pockets in the event that they run into issues

Final Presentation:Development & Debugging Tools for Windows Phones
I almost left this presentation at first since the first half of the presentation was pretty much exactly the same as the previous win7 phone presentation. Which is not surprising, Microsoft loves to push the same thing over and over but after staying for a while the presenter did cover a few cool tools:
.NET Tools
.Net Reflector
-explore, browse, and analyze .Net assemblies ( can show code because .Net compiles to MSIL )
-understand relationships between classes
-Unfortunately it can be used to steal code
-MSIL disassembler
-useful for seeing what code is being generated at build time.
Visual Studio Team system Profiler
- Also known as F1 Profiler (will be in VS2010 Premium and up )
- Performs code performance
CLR Profiler
- Profiles managed memory usage
Pix for Windows
- Graphics debugger
- GPU Performance
- Static code analysis tool
- Integrated into VS
- Analyzes compiled code
Code Obfuscation
- Dotfuscator Community Edition bundled with Visual Studio
- Make your code damn hard to follow

~And thats all for Wed., once again if you want more info let me know!~

0 Comments On This Entry


Trackbacks for this entry [ Trackback URL ]

There are no Trackbacks for this entry

January 2021

242526 27 282930

Recent Entries

Recent Comments

Search My Blog

0 user(s) viewing

0 Guests
0 member(s)
0 anonymous member(s)