[Europe merge world tour] Supermassive Using Perforce for Agile Game Development

22
Perforce Merge Event 2013 Presented by Jonathan Amor

description

Presentation from Supermassive Games at the European Merge World Tour - Supermassive using Perforce for Agile Game Development

Transcript of [Europe merge world tour] Supermassive Using Perforce for Agile Game Development

Page 1: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

Perforce  Merge  Event  2013  

Presented  by  Jonathan  Amor  

Page 2: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

USING  PERFORCE  FOR  AGILE  GAME  DEVELOPMENT  –  Setting  up  and  using  Perforce  at  Supermassive  Games  –  Version  control  challenges  in  game  development  –  How  we  use  Agile  methodology  in  the  studio  

Page 3: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  COMPANY  HISTORY  

–  Established  in  2008  in  Guildford  –  Independent  development  studio  –  Our  published  games:  

Page 4: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  CURRENT  GAMES:  –  Until  Dawn  

Page 5: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  CURRENT  GAMES:  –  Wonderbook:  Walking  with  

Dinosaurs  

Page 6: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WHEN  WE  STARTED  –  People  

•  12  people  by  Christmas  2008  –  Perforce  

•  One  Windows  Server  –  Perforce  version:  2010.2  

Page 7: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  TODAY  –  People  

•  Over  110  people  in  May  2013  –  Perforce  

•  3  servers  (1  Windows  Server,  2  Linux)  and  a  proxy  –  Perforce  versions:  2010.2  and  2011.1  

•  Current  database  sizes  –  10.7M  Ziles  –  5.3TB  data  

Page 8: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  FUTURE  –  People  

•  Continuing  to  grow  –  Perforce  

•  Current  large  project  like  Until  Dawn  –  4.6M  Ziles  –  3.7TB  data…  and  growing  

•  ‘Next-­‐gen’  large  project  –  5-­‐6M  Ziles  –  12-­‐14TB  data  

Page 9: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  MIXTURE  OF  PEOPLE  –  A  wide  spectrum  of  Perforce  users  -­‐  extremely  technical  to  very  creative  

Page 10: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  MIXTURE  OF  PEOPLE  –  A  wide  spectrum  of  Perforce  users  -­‐  extremely  technical  to  very  creative  

•  FAST-­‐PACED  CHANGE  –  In  the  games  –  In  the  business  

Page 11: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  THE  AGILE  ‘MANIFESTO’:  –  We  value  INDIVIDUALS  AND  INTERACTIONS  over  processes  and  tools  –  We  value  WORKING  SOFTWARE  over  comprehensive  documentation  –  We  value  CUSTOMER  COLLABORATION  over  contract  negotiation    –  We  value  RESPONDING  TO  CHANGE  over  following  a  plan    

Page 12: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  USING  SCRUM  

Page 13: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WE  VALUE  INDIVIDUALS  AND  INTERACTIONS    OVER  PROCESSES  AND  TOOLS  –  Get  out  of  your  seat…  and  talk  to  people!  –  Iteration  to  Zind  the  ‘fun  factor’  –  …  but  processes  and  tools  are  still  important  

Page 14: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WE  VALUE  WORKING  SOFTWARE    OVER  COMPREHENSIVE  DOCUMENTATION  –  Regular  build  reviews  –  Autobuild  machines  –  Branching  

Page 15: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WE  VALUE  CUSTOMER  COLLABORATION    OVER  CONTRACT  NEGOTIATION    –  Game  players  –  Our  publisher  –  The  team  

Page 16: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WE  VALUE  RESPONDING  TO  CHANGE    OVER  FOLLOWING  A  PLAN    –  You  still  need  a  plan!  –  A  ‘safe’  environment  to  support  change  

Page 17: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  A  BAD  DAY…  THAT  GOT  PROGRESSIVELY  WORSE!  •  WHAT  WE  SAW:  

–  Server  RAM  and  CPU  not  overloaded  –  Network  not  overloaded  –  Perforce  processes  locked  and  backing  up  

•  THE  SHORT-­‐TERM  SOLUTION:  –  I  had  to  act  as  gatekeeper  for  check-­‐ins!  

Page 18: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  ON  MORE  THOROUGH  INVESTIGATION  –  Revisited  the  Perforce  Knowledgebase  –  Reviewed  the  log  Ziles  –  Reviewed  client  specs  –  Checked  the  database  

•  WHERE  WE  WENT  WRONG?  –  You  think  it  will  never  happen  to  you!  

Page 19: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WHAT  WE  DID  TO  FIX  IT  –  Narrowed  client  specs  as  much  as  possible  –  Changed  to  a  custom  ‘sync  to  head’  batch  Zile  –  Set  Max  Results,  Max  Scan  Rows  and  Max  Lock  Time  

Page 20: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  SIZE  AND  COMPLEXITY  OF  ASSETS  INCREASING  –  A  steady  increase  in  the  number  of  Ziles  –  A  large  increase  in  the  size  of  data  

•  PERIOD  OF  CHANGE  IN  THE  INDUSTRY  –  Need  to  adapt  and  change  quickly  –  Need  to  stand  out  in  the  crowd  

Page 21: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  BUILDING  OUR  REPUTATION  –  High-­‐quality  games  –  Focus  on  character-­‐performance  and  story  

•  STAYING  AGILE  –  Improve  server  infrastructure  –  Implement  Streams  –  Keep  iterating  

Page 22: [Europe   merge world tour] Supermassive Using Perforce for Agile Game Development

•  WEBSITE:  www.supermassivegames.com  •  EMAIL:  [email protected]  

•  Thanks  for  their  help  with  this  presentation  to:  –  Frank  Tindle  –  Ollie  Purkiss  –  Justin  Rae