SlideShare a Scribd company logo
1 of 32
Kostas Anagnostou Game developer Adjunct Lecturer in Videogame Technologies
Who am I? ,[object Object],[object Object],[object Object]
What is this talk about? ,[object Object]
What is this talk about? ,[object Object]
What is this talk about? ,[object Object]
How are great games made? ,[object Object],[object Object]
Who creates a great game? ,[object Object],[object Object],[object Object]
Data-driven development ,[object Object],[object Object],[object Object]
Data-driven development (DDD) ,[object Object],[object Object],[object Object]
Benefits of DDD for artists ,[object Object],[object Object],[object Object],[object Object]
Benefits of DDD for programmers ,[object Object],[object Object],[object Object],Scott Shumaker,  Outrage Games
Elements that can be data-driven ,[object Object],[object Object],[object Object],[object Object]
How can data affect game behaviour? ,[object Object],[object Object],[object Object],Scott Shumaker, Outrage Games
Requirements of DDD ,[object Object],[object Object]
Levels of Data driven development ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Levels of Data driven development ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Levels of Data driven development ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],JSON is quite trendy too!
Levels of Data driven development
First taste of Data Driven Development ,[object Object],[object Object],[object Object],[object Object],[object Object]
First taste of Data Driven Development ,[object Object],[object Object],[object Object]
Space Debris by Rotten Fish Games ,[object Object],[object Object],[object Object],[object Object]
Data-Driven system design ,[object Object],[object Object],[object Object],[object Object]
Hierarchical structure of XML files Level.xml spritesheets.xml animations.xml spawners.xml bonuses.xml enemies.xml explosions.xml
Sample XML definitions layout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Enemy definitions Bonus definitions Level tilemap
Sample XML definitions layout <?xml version=&quot;1.0&quot;?> <spawners> <spawner  type=&quot;S1LNKamikazeeHunterChase&quot;  enemytype=&quot;Kamikazee_Hunter&quot;  spawn=&quot;Chase&quot;  animation=“ ZigZag&quot;  number=&quot;6&quot;  rate=&quot;2&quot;  bonus=&quot;Invisibility&quot;> </spawner> </spawners> <?xml version=&quot;1.0&quot;?> <enemies> <enemy type=&quot;Kamikazee_Hunter&quot;> <parts> <part    sprite=&quot;alien_kamikazee_hunter“ shield=&quot;1&quot;  weapon=&quot;EnemyKamikazee1&quot;  explosion=&quot;MediumExplosion&quot;> </part> </parts> </enemy> </enemies> <?xml version=&quot;1.0&quot;?> <spritesheets> <spritesheet name=&quot;spritesheet_normal.png&quot;> <sprite name=&quot;alien_kamikazee_hunter&quot;> <frames interval=&quot;0.3&quot;> <frame x=&quot;432&quot; y=&quot;96&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> <frame x=&quot;0&quot; y=&quot;144&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> </frames> </sprite> </spritesheet> </spritesheets> <?xml version=&quot;1.0&quot;?> <animations> <animation  name=&quot;SPath&quot;  type=&quot;Bezier&quot;  track=&quot;Player&quot;> <parts count=“3&quot;> <part p0=&quot;0  0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  <part p0=&quot;0  0&quot; p1=&quot;-1  0&quot; p2=&quot;-1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  <part p0=&quot;0  0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  </parts> </animation> </animations>
Sample XML definitions layout <?xml version=&quot;1.0&quot;?> <spawners> <spawner  type=&quot;S1LNKamikazeeHunterChase&quot;  enemytype=&quot;Kamikazee_Hunter&quot;  spawn=&quot;Chase&quot;  animation=“ SPath&quot;  number=&quot;6&quot;  rate=&quot;2&quot;  bonus=&quot;Invisibility&quot;> </spawner> </spawners> <?xml version=&quot;1.0&quot;?> <enemies> <enemy type=&quot;Kamikazee_Hunter&quot;> <parts> <part    sprite=&quot;alien_kamikazee_hunter“ shield=&quot;1&quot;  weapon=&quot;EnemyKamikazee1&quot;  explosion=&quot;MediumExplosion&quot;> </part> </parts> </enemy> </enemies> <?xml version=&quot;1.0&quot;?> <spritesheets> <spritesheet name=&quot;spritesheet_normal.png&quot;> <sprite name=&quot;alien_kamikazee_hunter&quot;> <frames interval=&quot;0.3&quot;> <frame x=&quot;432&quot; y=&quot;96&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> <frame x=&quot;0&quot; y=&quot;144&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> </frames> </sprite> </spritesheet> </spritesheets> <?xml version=&quot;1.0&quot;?> <animations> <animation  name=&quot;SPath&quot;  type=&quot;Bezier&quot;  track=&quot;Player&quot;> <parts count=“3&quot;> <part p0=&quot;0  0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  <part p0=&quot;0  0&quot; p1=&quot;-1  0&quot; p2=&quot;-1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  <part p0=&quot;0  0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0  -0.25&quot;  duration=&quot;3&quot;></part>  </parts> </animation> </animations>
Game data specification
Game data specification
Experiences from the DD system ,[object Object],[object Object],[object Object],[object Object]
A few weaknesses ,[object Object],[object Object],[object Object],[object Object]
Let’s wrap it up! ,[object Object],[object Object],[object Object],[object Object],[object Object]
Thank you for listening! ,[object Object],[object Object]

More Related Content

What's hot

【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!UnityTechnologiesJapan002
 
Space Ape's Analytics Stack
Space Ape's Analytics StackSpace Ape's Analytics Stack
Space Ape's Analytics StackSimon Hade
 
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)Kongregate
 
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2Jun Hyuk Jung
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)Hafiz Ammar Siddiqui
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건강 민우
 
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.Aganmaru
 
Game development pipeline
Game development pipelineGame development pipeline
Game development pipelineGAME Studios
 
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리강 민우
 
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법ChangHyun Won
 
Networking Architecture of Warframe
Networking Architecture of WarframeNetworking Architecture of Warframe
Networking Architecture of WarframeMaciej Siniło
 
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들Young Keun Choe
 
LAFS Game Mechanics - Social Mechanics
LAFS Game Mechanics - Social MechanicsLAFS Game Mechanics - Social Mechanics
LAFS Game Mechanics - Social MechanicsDavid Mullich
 
Game engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignGame engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignPrashant Warrier
 
Game development Pre-Production
Game development Pre-ProductionGame development Pre-Production
Game development Pre-ProductionKevin Duggan
 
Mobile Games Revenue Models
Mobile Games Revenue ModelsMobile Games Revenue Models
Mobile Games Revenue ModelsThiago Paiva
 
Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesJames Gwertzman
 

What's hot (20)

【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
 
Space Ape's Analytics Stack
Space Ape's Analytics StackSpace Ape's Analytics Stack
Space Ape's Analytics Stack
 
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)
Building Games for the Long Term: Pragmatic F2P Guild Design (GDC Europe 2013)
 
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2
레벨기획 프론티어 온라인 '이름없는 동굴' 던전_v2
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건
 
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A
드래곤 네스트 인벤토리 시스템 역 기획서 Ver1.1.A
 
Game development pipeline
Game development pipelineGame development pipeline
Game development pipeline
 
Game design document
Game design document Game design document
Game design document
 
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
 
Video game proposal
Video game proposalVideo game proposal
Video game proposal
 
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
NDC2013 - 인디게임 프로젝트 중도에 포기하지 않는 방법
 
Networking Architecture of Warframe
Networking Architecture of WarframeNetworking Architecture of Warframe
Networking Architecture of Warframe
 
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들
NDC16 - 화성에서 온 사업팀 금성에서 온 개발팀 : 성공적인 라이브 서비스를 위해 필요한 것들
 
LAFS Game Mechanics - Social Mechanics
LAFS Game Mechanics - Social MechanicsLAFS Game Mechanics - Social Mechanics
LAFS Game Mechanics - Social Mechanics
 
Level Design
Level DesignLevel Design
Level Design
 
Game engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignGame engines and Their Influence in Game Design
Game engines and Their Influence in Game Design
 
Game development Pre-Production
Game development Pre-ProductionGame development Pre-Production
Game development Pre-Production
 
Mobile Games Revenue Models
Mobile Games Revenue ModelsMobile Games Revenue Models
Mobile Games Revenue Models
 
Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P Games
 

Similar to Kostas Anagnostou on Data-Driven Game Development

XNA And Silverlight
XNA And SilverlightXNA And Silverlight
XNA And SilverlightAaron King
 
Introduction to Artificial Intelligence
Introduction to Artificial IntelligenceIntroduction to Artificial Intelligence
Introduction to Artificial IntelligenceAhmed Hani Ibrahim
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingJulio Gorgé
 
Game programming-help
Game programming-helpGame programming-help
Game programming-helpSteve Nash
 
20131029 design your app
20131029 design your app20131029 design your app
20131029 design your appChristina Hsu
 
Game Design Document - Step by Step Guide
Game Design Document - Step by Step GuideGame Design Document - Step by Step Guide
Game Design Document - Step by Step GuideDevBatch Inc.
 
Presentation 1 22nd August 2008
Presentation 1   22nd August 2008Presentation 1   22nd August 2008
Presentation 1 22nd August 2008carlyle o
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesiFunFactory Inc.
 
Game Engine terminology
Game Engine terminologyGame Engine terminology
Game Engine terminologySamDuxburyGDS
 
GameTrader project
GameTrader projectGameTrader project
GameTrader projectjuan_aleman
 
gamedevelopment-devbatch-slideshare-160523134658 (1).pptx
gamedevelopment-devbatch-slideshare-160523134658 (1).pptxgamedevelopment-devbatch-slideshare-160523134658 (1).pptx
gamedevelopment-devbatch-slideshare-160523134658 (1).pptxAgripinoVerderaJr2
 
IBM Lotus Notes Domino XPages and XPages for Mobile
IBM Lotus Notes Domino XPages and XPages for MobileIBM Lotus Notes Domino XPages and XPages for Mobile
IBM Lotus Notes Domino XPages and XPages for MobileChris Toohey
 
Yahoo Mobile Widgets
Yahoo Mobile WidgetsYahoo Mobile Widgets
Yahoo Mobile WidgetsJose Palazon
 
IRJET- Game Development Project – Sparta
IRJET-  	  Game Development Project – SpartaIRJET-  	  Game Development Project – Sparta
IRJET- Game Development Project – SpartaIRJET Journal
 
Building apps for multiple devices
Building apps for multiple devicesBuilding apps for multiple devices
Building apps for multiple devicesTerry Ryan
 

Similar to Kostas Anagnostou on Data-Driven Game Development (20)

XNA And Silverlight
XNA And SilverlightXNA And Silverlight
XNA And Silverlight
 
Introduction to Artificial Intelligence
Introduction to Artificial IntelligenceIntroduction to Artificial Intelligence
Introduction to Artificial Intelligence
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancing
 
Game programming-help
Game programming-helpGame programming-help
Game programming-help
 
20131029 design your app
20131029 design your app20131029 design your app
20131029 design your app
 
Game Design Document - Step by Step Guide
Game Design Document - Step by Step GuideGame Design Document - Step by Step Guide
Game Design Document - Step by Step Guide
 
Pong
PongPong
Pong
 
Presentation 1 22nd August 2008
Presentation 1   22nd August 2008Presentation 1   22nd August 2008
Presentation 1 22nd August 2008
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile games
 
Game Engine terminology
Game Engine terminologyGame Engine terminology
Game Engine terminology
 
PHP games
PHP gamesPHP games
PHP games
 
Game design doc template
Game design doc   templateGame design doc   template
Game design doc template
 
GameTrader project
GameTrader projectGameTrader project
GameTrader project
 
gamedevelopment-devbatch-slideshare-160523134658 (1).pptx
gamedevelopment-devbatch-slideshare-160523134658 (1).pptxgamedevelopment-devbatch-slideshare-160523134658 (1).pptx
gamedevelopment-devbatch-slideshare-160523134658 (1).pptx
 
IBM Lotus Notes Domino XPages and XPages for Mobile
IBM Lotus Notes Domino XPages and XPages for MobileIBM Lotus Notes Domino XPages and XPages for Mobile
IBM Lotus Notes Domino XPages and XPages for Mobile
 
BluePrint Mobile Framework
BluePrint Mobile FrameworkBluePrint Mobile Framework
BluePrint Mobile Framework
 
Yahoo Mobile Widgets
Yahoo Mobile WidgetsYahoo Mobile Widgets
Yahoo Mobile Widgets
 
IRJET- Game Development Project – Sparta
IRJET-  	  Game Development Project – SpartaIRJET-  	  Game Development Project – Sparta
IRJET- Game Development Project – Sparta
 
Building apps for multiple devices
Building apps for multiple devicesBuilding apps for multiple devices
Building apps for multiple devices
 
Why you need game engine1.pptx
Why you need game engine1.pptxWhy you need game engine1.pptx
Why you need game engine1.pptx
 

Recently uploaded

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 

Recently uploaded (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 

Kostas Anagnostou on Data-Driven Game Development

  • 1. Kostas Anagnostou Game developer Adjunct Lecturer in Videogame Technologies
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. Levels of Data driven development
  • 19.
  • 20.
  • 21.
  • 22.
  • 23. Hierarchical structure of XML files Level.xml spritesheets.xml animations.xml spawners.xml bonuses.xml enemies.xml explosions.xml
  • 24.
  • 25. Sample XML definitions layout <?xml version=&quot;1.0&quot;?> <spawners> <spawner type=&quot;S1LNKamikazeeHunterChase&quot; enemytype=&quot;Kamikazee_Hunter&quot; spawn=&quot;Chase&quot; animation=“ ZigZag&quot; number=&quot;6&quot; rate=&quot;2&quot; bonus=&quot;Invisibility&quot;> </spawner> </spawners> <?xml version=&quot;1.0&quot;?> <enemies> <enemy type=&quot;Kamikazee_Hunter&quot;> <parts> <part sprite=&quot;alien_kamikazee_hunter“ shield=&quot;1&quot; weapon=&quot;EnemyKamikazee1&quot; explosion=&quot;MediumExplosion&quot;> </part> </parts> </enemy> </enemies> <?xml version=&quot;1.0&quot;?> <spritesheets> <spritesheet name=&quot;spritesheet_normal.png&quot;> <sprite name=&quot;alien_kamikazee_hunter&quot;> <frames interval=&quot;0.3&quot;> <frame x=&quot;432&quot; y=&quot;96&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> <frame x=&quot;0&quot; y=&quot;144&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> </frames> </sprite> </spritesheet> </spritesheets> <?xml version=&quot;1.0&quot;?> <animations> <animation name=&quot;SPath&quot; type=&quot;Bezier&quot; track=&quot;Player&quot;> <parts count=“3&quot;> <part p0=&quot;0 0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> <part p0=&quot;0 0&quot; p1=&quot;-1 0&quot; p2=&quot;-1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> <part p0=&quot;0 0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> </parts> </animation> </animations>
  • 26. Sample XML definitions layout <?xml version=&quot;1.0&quot;?> <spawners> <spawner type=&quot;S1LNKamikazeeHunterChase&quot; enemytype=&quot;Kamikazee_Hunter&quot; spawn=&quot;Chase&quot; animation=“ SPath&quot; number=&quot;6&quot; rate=&quot;2&quot; bonus=&quot;Invisibility&quot;> </spawner> </spawners> <?xml version=&quot;1.0&quot;?> <enemies> <enemy type=&quot;Kamikazee_Hunter&quot;> <parts> <part sprite=&quot;alien_kamikazee_hunter“ shield=&quot;1&quot; weapon=&quot;EnemyKamikazee1&quot; explosion=&quot;MediumExplosion&quot;> </part> </parts> </enemy> </enemies> <?xml version=&quot;1.0&quot;?> <spritesheets> <spritesheet name=&quot;spritesheet_normal.png&quot;> <sprite name=&quot;alien_kamikazee_hunter&quot;> <frames interval=&quot;0.3&quot;> <frame x=&quot;432&quot; y=&quot;96&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> <frame x=&quot;0&quot; y=&quot;144&quot; w=&quot;48&quot; h=&quot;48&quot;></frame> </frames> </sprite> </spritesheet> </spritesheets> <?xml version=&quot;1.0&quot;?> <animations> <animation name=&quot;SPath&quot; type=&quot;Bezier&quot; track=&quot;Player&quot;> <parts count=“3&quot;> <part p0=&quot;0 0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> <part p0=&quot;0 0&quot; p1=&quot;-1 0&quot; p2=&quot;-1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> <part p0=&quot;0 0&quot; p1=&quot;1 0&quot; p2=&quot;1 -0.25&quot; p3=&quot;0 -0.25&quot; duration=&quot;3&quot;></part> </parts> </animation> </animations>
  • 29.
  • 30.
  • 31.
  • 32.