Notes on a talk by Elan Ruskin of Insomniac Slides (PDF)Engine began life in FuseMuch more open world than they've used before (5 km across)154MB of source code (.h and .cpp)Frame breakdown33 ms/frameGPU renders 1.3333 frames behind the CPUPost-processing happens at the start of a frameMain thread3 ms streaming asset setup/teardown, initialize/destroy actor10ms update gameplay … Continue reading “Marvel’s Spider-Man”: A Technical Postmortem
Category: GDC 2019
Notes on talks from the 2019 Game Developers Conference in San Francisco.
Highlights here for me were:
The idea that much of indie success today is built on YouTube and streaming, so you should aim to create a game that appeals to the kind of people who want to generate that content (Decorticating “Dead Cells” talk); more than anything, that means building sticky “endless situation generators” rather than “consumable” games that you play through once and put away (The Shape of Success Before & After the Indiepocalypse talk)
The idea that your marketing communications should highlight the changes you make based on community feedback as a way of fostering that community (Decorticating “Dead Cells” talk)
The fact that the Dead Cells developers spent $50k on a trailer for a game whose entire development budget (including that trailer) was roughly $400k (Decorticating “Dead Cells” talk)—if both indies and AAA studios see value in these super “produced” trailers, we should probably try them out.
The insight that you should mock complex systems like physics using real data, rather than trying to either a) write the mock behavior yourself (like “always return 1 here”) or b) deeply couple the complex system to the test (Automated Testing Process roundtable)
The repeated recommendation for Michael Feathers’ Working Effectively with Legacy Code as being relevant to game dev (Automated Testing Process roundtable)
The insight that much of the roughly 2× difference in app developer revenue between iOS and Android can be attributed to the fact that Android is way more popular in low-spending countries like Russia & China, and if you compare just the US & Europe, you find much more similar sales (Paid Acquisition on Mobile: A Scrappy, Practical Guide talk)
The idea that QA should help determine up front (before development starts) what an acceptance test for a new feature will look like, with an eye toward helping devs design things in a way that is testable—this ensures QA knows what a feature is supposed to do too! (Preventing Bugs: The Dark Matter of QA talk)
Learning about AMD’s μProf profiler and seeing their sample code for calculating the number of hardware threads available on their CPUs (Ryzen Optimization talk)
A Survival Guide for Game Developers
Notes on a talk by Richard Vogel of Certain Affinity Observations:You have a 90% probability of being laid off within your first 5 years at least once.Your average lifespan in a company is around 4 years.Change is inevitable.E.g., today we have streaming coming, VR, AR, etc.Game companies have little to no onboarding, training, mentoring, or … Continue reading A Survival Guide for Game Developers
Automated Testing Implementation Roundtable
Notes on a roundtable talk at GDC 2019 Again, see autotestingroundtable.comHow do you define a sufficient level of test coverage?Aim to cover 95% of the weight of the code based on what gets run/used the mostCover the hotspots/inner loopsAdd tests as a part of every refactoring, bug fixBest place to start is to figure out … Continue reading Automated Testing Implementation Roundtable
Looking for Success in All the Wrong Places
Notes on a talk by Robin Scannell, Game Director at Hutch Make a collectible virtual card strategy game called Top DrivesNeed different cars for different tracks/race stylesGame's soft launch didn't look like it was going to do muchDaily retention among early signups was much worse than past games (20% versus 35% retention for past games … Continue reading Looking for Success in All the Wrong Places
In the Long Run (Games Career Seminar)
Notes on a panel discussion moderated by Henrik Jonsson (@IonSwitz) of Goodbye Kansas PanelistsBrie Code (@briecode)Osama Dorias (@osamadorias)Dr. JC Lau (@drjclau)—technical producerRaph Koster (@raphkoster)—Game designerOur business is making joy; we're part of "the joy industrial complex"Why is it so hard sometimes, then?How can we make the process better?How to get in to your first job?Got … Continue reading In the Long Run (Games Career Seminar)
App Store Optimization (ASO) for Great Developers
Notes on a talk by Enric Pedro of Lab Cave and Joyce Zhou Joyce Zhou of IGG ("I Got Games"), developer of Lords Mobile ($50M/month)Enric Pedro (@enricpedro), Chief Marketing Officer of Lab Cave (ASO company)—hola@labcavegames.comASO is the process of getting more users by improving visibility within the app store and optimizing the app profile visit-to-install … Continue reading App Store Optimization (ASO) for Great Developers
Bridging the Open Source and Game Industries
Notes from a roundtable session at GDC 2019 Linux Foundation provides a safe third party ("neutral home") to hold all the rights to software so that competitors can collaborate and not worry about getting screwed Game industry has lots of semi-open licenses (e.g., VR headsets, Khronos, etc.) Academy Software Foundation: Wanted to standardize tools across … Continue reading Bridging the Open Source and Game Industries
Community-Driven Discoverability for Indies
Notes on a talk by Patrick Corrieri of Dry Cactus, developer of Poly Bridge Game design decisions aimed at promoting the title in socially-driven way, rather than "real" marketing Battling against saturation, algorithmic curation (or no curation at all), lack of cross-promotion showing similar games (e.g., in Epic store) We need to drive as much … Continue reading Community-Driven Discoverability for Indies
How to Run an Indie Studio Without a Surprise Hit
Notes on a series of 3 micro-talks How to get client work and balance it against your own IP development (Christopher Langmuir of Anemone Hug Interactive) Anemone Hug has had 4x revenue groth every year (since 2015) 50% of all hours company-wide on internal IP development Can't hide from the business stuff You're going to … Continue reading How to Run an Indie Studio Without a Surprise Hit
Understanding & Tracing Numerical Errors in C++
Notes on a talk by Gino van den Bergen (@dtecta) Fixed point numbers snap to a regular grid; in floating point numbers, the rounding error increases the farther you get from zero IEEE 754 single-precision (32-bit) float is: 1 bit for sign 8 bits for the exponent 23 bits for the fraction (-1)^sign * 1.fraction … Continue reading Understanding & Tracing Numerical Errors in C++