SlideShare uma empresa Scribd logo
1 de 119
Baixar para ler offline
In Supervision of
DR.Ammar Jokhadar DR.Noor Shaker
Designed and Implemented By
Rawan Al-Omari Fawzia Shams Al-Deen
Walaa Baghdadi Zeina Al-Helwani
FITE of Damascus, Syria, Department of AI - 2013
Content
• Work scope
• Goal
• The Game
• Model
• Future Perspective
• Tools
Sokoban
• Maze game
• Single player
• Components:
• Goal areas
• Walls
• Passways:
- warehouse
keeper
- Objects
- Empty
Levels generation, PCG
Different levels, all time
The Goal
No more designers
Adventure game
Free copy(Version) for Microsoft windows
Commercial game for Xbox
Used GameMaker platform (GML)
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
Spelunky Scenario
X X
Bomb X
Princess
X X End
The Real Game,
Spelunky Levels
20%Randomization
80%Hand made design
The Model
Difficulty
Model
Generated
Level
The Model
Difficulty
Model
Generated
Level
Level
Generation
Items
distribution
Assessing
Difficulty
Assessing
Difficulty
Items
Distribution
Level
Design
Level Representation
4*4 matrix
Each cell is a room
Level Representation
4*4 matrix
Each cell is a room
Level Representation
Start Room
Level Representation
Bomb Room
Level Representation
Princess Room
Level Representation
End Room
Every room is 8 * 10
Cells Values
• Block
• Space
• Enemy
• Item
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
Digger Algorithm in a Room
PhenoType Representation
Main Rooms
(4)
Graph
Connections
Items Path
Length
PhenoType Representation
Graph
Connections
Items Path
Length
Main Rooms
(4)
PhenoType Representation
Graph
Connections
Items Path
Length
Main Rooms
(4)
PhenoType Representation
Graph
Connections
Items Path
Length
Start room
Bomb room
Princess room
Exit room
Main Rooms
(4)
PhenoType Representation
Graph
Connections
Items Path
Length
Snakes number
Bats number
Ladders number
Coins number
Spikes number
Main Rooms
(4)
PhenoType Representation
Graph
Connections
Items Path
Length
Main Rooms
(4)
PhenoType Representation
Graph
Connections
Items Path
Length
Main Rooms
(4)
Items Path
Length
Main Rooms
(4)
Start Bomb Princess End
Graph
Connections
Graph
Connections
Items Path
Length
Main Rooms
(4)
Start Bomb Princess End
3
10
5
7
9
15
the start, end, Princess, bomb room are in the graph
#1
there is connection between start and end room
#2
the path is valid (start -> bomb -> Princess -> exit)
#3
Start, exit, Princess and bomb rooms are unique in the phenotype
#4
Start room should be in the first eight rooms
#5
Exit room should be in the last eight rooms
#6
15%10%10%10%10%10%
check the length of the path if according with the destination
length
#7
Difficulty
#8
35%100%
= 15 ∗ 𝑐𝑜𝑛𝑑1 + 10 ∗ 𝑐𝑜𝑛𝑑2 + 10 ∗cond3
+ 10 ∗ 𝑐𝑜𝑛𝑑4 + 10 ∗ 𝑐𝑜𝑛𝑑5 + 10 ∗ 𝑐𝑜𝑛𝑑6 + 35 ∗ 𝑐𝑜𝑛𝑑7
Design Fitness
Fitness
= 𝑐𝑜𝑛𝑑8
Difficulty Fitness
= 15 ∗ 𝑐𝑜𝑛𝑑1 + 10 ∗ 𝑐𝑜𝑛𝑑2 + 10 ∗cond3
+ 10 ∗ 𝑐𝑜𝑛𝑑4 + 10 ∗ 𝑐𝑜𝑛𝑑5 + 10 ∗ 𝑐𝑜𝑛𝑑6 + 35 ∗ 𝑐𝑜𝑛𝑑7
Design Fitness
Fitness
= 𝑐𝑜𝑛𝑑8
Difficulty Fitness
= 15 ∗ 𝑐𝑜𝑛𝑑1 + 10 ∗ 𝑐𝑜𝑛𝑑2 + 10 ∗cond3
+ 10 ∗ 𝑐𝑜𝑛𝑑4 + 10 ∗ 𝑐𝑜𝑛𝑑5 + 10 ∗ 𝑐𝑜𝑛𝑑6 + 35 ∗ 𝑐𝑜𝑛𝑑7
Design Fitness
= 10% ∗ 𝐷𝑒𝑠𝑖𝑔𝑛 𝑓𝑖𝑡𝑛𝑒𝑠𝑠 + 90% 𝐷𝑖𝑓𝑓𝑖𝑐𝑢𝑙𝑡𝑦 𝑓𝑖𝑡𝑛𝑒𝑠𝑠
Overall Fitness
Fitness
Assessing
Difficulty
Items
Distribution
Level
Design
Snakes, Snakes around Gaps, Bats
Ladders, Coins, Spike
Items Distribution Over Level
Items Distribution Over Level
Snakes, Snakes around Gaps, Bats, Spikes, Ladder, Coin
Items Distribution Over Level
Snakes/4
Snakes around Gaps/4
Bats/4
Spikes/4
Ladder/4
Coin/4
Snakes, Snakes around Gaps, Bats, Spikes, Ladder, Coin
Ladder
Snakes
Snakes around Gaps
Bats
Coins
Spikes
Assessing
Difficulty
Items
Distribution
Level
Design
Assessing Difficulty
Assessing Difficulty
20% 25% 10% 45%
• Path Length
• Vertical Length
• Shape
• Enemies
– Snakes
– Snakes around Gaps
– Bats
– Spikes
• Path Length
Assessing Difficulty
20% 25% 10% 45%
• Vertical Length
Assessing Difficulty
20% 25% 10% 45%
Vertical Length
• Path Shape
Assessing Difficulty
20% 25% 10% 45%
• Enemies
– Snakes 10%
– Snakes around Gaps 15%
– Bats 10%
– Spikes 10%
Assessing Difficulty
20% 25% 10% 45%
Simple Level – 10% Difficulty
Hard Level – 70% Difficulty
Add Extra Items
and Adaptive
Enemies
Shop Keeper
Cave man
The implementation of an Authoring
Tool that combines the gamer
imagination and machine varity designs.
Designers
The difficulty of the game that is
determined by a player's skills, facial
expressions, gameplay features.
Adaptive
Content
Generation
Tools
• Game Maker
• Ecj (Java-based Evolutionary Computation)
• Java
Pcg for maze games spelunky

Mais conteúdo relacionado

Semelhante a Pcg for maze games spelunky

Pacman Kata - Progressive F# Tutorials NYC 2013
Pacman Kata - Progressive F# Tutorials NYC 2013Pacman Kata - Progressive F# Tutorials NYC 2013
Pacman Kata - Progressive F# Tutorials NYC 2013
Phillip Trelford
 

Semelhante a Pcg for maze games spelunky (15)

Game Design is Business Design
Game Design is Business DesignGame Design is Business Design
Game Design is Business Design
 
Erlang Concurrency
Erlang ConcurrencyErlang Concurrency
Erlang Concurrency
 
AlphaGo: Mastering the Game of Go with Deep Neural Networks and Tree Search
AlphaGo: Mastering the Game of Go with Deep Neural Networks and Tree SearchAlphaGo: Mastering the Game of Go with Deep Neural Networks and Tree Search
AlphaGo: Mastering the Game of Go with Deep Neural Networks and Tree Search
 
Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"Showcase of My Research on Games & AI "till the end of Oct. 2014"
Showcase of My Research on Games & AI "till the end of Oct. 2014"
 
ScotRuby - Dark side of ruby
ScotRuby - Dark side of rubyScotRuby - Dark side of ruby
ScotRuby - Dark side of ruby
 
Claudia Doppioslash - Time Travel for game development with Elm
Claudia Doppioslash - Time Travel for game development with ElmClaudia Doppioslash - Time Travel for game development with Elm
Claudia Doppioslash - Time Travel for game development with Elm
 
Arduino creative coding class part iii
Arduino creative coding class part iiiArduino creative coding class part iii
Arduino creative coding class part iii
 
Bulletproofing your foot for Kotlin
Bulletproofing your foot for KotlinBulletproofing your foot for Kotlin
Bulletproofing your foot for Kotlin
 
Pacman Kata - Progressive F# Tutorials NYC 2013
Pacman Kata - Progressive F# Tutorials NYC 2013Pacman Kata - Progressive F# Tutorials NYC 2013
Pacman Kata - Progressive F# Tutorials NYC 2013
 
A Plan towards Ruby 3 Types
A Plan towards Ruby 3 TypesA Plan towards Ruby 3 Types
A Plan towards Ruby 3 Types
 
Discovering functional treasure in idiomatic Groovy
Discovering functional treasure in idiomatic GroovyDiscovering functional treasure in idiomatic Groovy
Discovering functional treasure in idiomatic Groovy
 
Mastering the game of Go with deep neural networks and tree search: Presentation
Mastering the game of Go with deep neural networks and tree search: PresentationMastering the game of Go with deep neural networks and tree search: Presentation
Mastering the game of Go with deep neural networks and tree search: Presentation
 
How to avoid Go gotchas - Ivan Daniluk - Codemotion Milan 2016
How to avoid Go gotchas - Ivan Daniluk - Codemotion Milan 2016How to avoid Go gotchas - Ivan Daniluk - Codemotion Milan 2016
How to avoid Go gotchas - Ivan Daniluk - Codemotion Milan 2016
 
Machine learning on Go Code
Machine learning on Go CodeMachine learning on Go Code
Machine learning on Go Code
 
TypeScript Go(es) Embedded
TypeScript Go(es) EmbeddedTypeScript Go(es) Embedded
TypeScript Go(es) Embedded
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Pcg for maze games spelunky