Gameplay CSE 191A: Seminar on Video Game Programming Lecture 6: Gameplay UCSD, Spring, 2003 Instructor: Steve Rotenberg
E3 • Electronic Entertainment Expo • Next week in LA
Don Likeness • Lecture: “Programming Video Games” • Friday, May 16, 2:00-3:00 • AP&M 4301 • Co-founder & President of Treyarch Corp.
Homework • Two page report on any subject within game development • I will accept almost any topic, but you must do some real research. Read some papers, find some books, read some stuff on the internet, or whatever you can find… • Please get my approval on the topic so I can point you in the direction of some references if I can • Optionally, you can do a simple demo program INSTEAD of the written report. The demo should demonstrate one relevant piece of technology or interactivity. Again, please get my approval on the topic first. • You can turn it in on the last lecture (6/6/03) but sooner would be nice.
Priorities • Gameplay and fun are considered the top priorities in most successful games. • Technology is important as a means of enabling the player to interact with the world in new and different ways. • Technology also plays an important role in production efficiency (tools & support). • It is important to experiment with gameplay as early in the development process as possible.
Play Control Feedback Loop • Computer: • Read input device • Move player ‘vehicle’ and update world • Move camera • Render world (& generate audio) • Display image on monitor (& play audio) • Human: • View image on monitor (& hear audio) • Process image (& audio) • Make decisions • Move fingers, hands to control input device
Interactivity Frequency • See and hear world (every frame (60 Hz)) • Control ‘vehicle’ (several times per second) • Interact with environment (a few times every second) • Interact with AI entities & other players (every second) • Make tactical decisions (every 10 seconds) • Make strategic decisions & planning (every minute)
Interactivity Types • Racing • Vehicle handling • Pacing competition • Combat • Targeting • Chasing • Hide & seek • Learning special moves • Adventure • Discovery • Solving puzzles • Navigation • Story • This is only a partial list!
Design Issues • Learned skills vs. acquired skills • Balance (small & fast vs. big & slow) • Damage (lose performance as you get damaged?) • Simulation vs. game • Intelligence vs. patterns • …and many others
Testing • Daily Testing: It is nice if a game has a full time person who can do constant daily testing of every new code & art feature that goes in. This person can also help with game design and other production assistant tasks. • Focus Testing: Once the game is at a ‘presentable’ state, it is nice to do regular (monthly?) focus testing using people who have never played the game before. This type of testing is extremely valuable and it is very beneficial if the game designer is present and able to silently observe the test subjects. • Beta Testing: Once the game is close to completion, it enters a rigorous testing phase with several on-site testers and several more testers who may be off-site. • Product Testing: Once the game is finished and a final rom is submitted to the system manufacturer (Nintendo, Sony, Microsoft), they will do final testing to verify that the game follows their system conventions and behaves properly.
Misc. Issues • Play control • Design documents • Game designer’s role • Tuning
Input Devices • Dead zones, exponentials • Rectangular vs. polar coordinates • Gesture recognition • Device sampling • Force feedback • Next-gen input devices (cameras, voice input…)
Cameras • Cameras are hard. • Base camera class, derived cameras • Transitions • Types: polar, fixed, locked, follow, canned… • Collisions • Multiplayer
Control • Players • AI • Network players • Replay
Job Types • Game design • Assistant designer • Level designer • Lead designer • Audio • Sound effects designer • Composer • Production • Tester • Lead tester • Production assistant • Producer • Programming • Programmer • Lead programmer • Technical director • Art • Modeler • Animator • 2D artist • Lead artist • Art director
Resume & Interview Suggestions • Customize presentation towards specific career types or even specific companies • Do some demos. I suggest doing a simple game that includes a variety of components (graphics, effects, sound, AI, terrain, collisions…). It doesn’t have to do those things terribly well, but it is nice to show competence in a variety of subjects. It might also be nice to do some focused demos that show off one particular subject very well. You can put demos on your personal web page and/or you can bring a CD or laptop to an interview with you. • Clear objective • Be persistent (but don’t be a pest) • Background experience in art, design, sound, writing, music, film, etc. is a plus • Learn as much as you can about the companies you apply to. • Take as many related classes as you can (AI, networking, graphics, audio, art…) • Study game programming on your own. Read books, write games, attend conferences…
Preview of Next Week • Artificial Intelligence (AI) • Navigation • Behavior
More on Locomotion… • Stance: erect, sprawling, semi-sprawling • Foot: digitate, palmate, knuckles • Straight-leg vs. bent-leg • Walking vs. running • Step period, gait clock • Step cycle: transfer phase, stance phase • Trigger time, duty cycle