Match 3 Deep Dive
Kurt Bieg

Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
kurt@simplemachine.co

Tuesday, October 22, 13
Art by Loren Bednar
sheets.LorenBednar.com

Tuesday, October 22, 13
The next 2 hours of
your life
• Chit chat about classic puzzles
• Learn some Corona SDK/Lua
• Daydream about grid based lo...
Recipe for a classic
• Single step mechanic
• Exponential agency loop
• Randomization
• Completion/order
Tuesday, October ...
Single Step Mechanic
Do one small thing and only one small thing

Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Exponential Agency
Repetition of simple choices build complex outcomes

Tuesday, October 22, 13
Tuesday, October 22, 13
Randomization
A set of objects presented in rule based randomization

Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Completion/Order
A final state the player is attempting to reach

Tuesday, October 22, 13
Tuesday, October 22, 13
Tuesday, October 22, 13
Lua is all about tables

Tuesday, October 22, 13
Tuesday, October 22, 13
Grid Based Logic
• Make a grid
• Swapping
• Matching
• Repopulation/Randomize
Tuesday, October 22, 13
Make a grid
• Iterate through a number of columns and
number of rows and insert an object at
each point

Tuesday, October ...
block_Gp

Tuesday, October 22, 13
block_Gp

j

j

j

j = number of column
Tuesday, October 22, 13
block_Gp

i

i

i

i

i

i

i

i

i

j

j

j

i = number of row
Tuesday, October 22, 13
block_Gp

3

6

9

2

5

8

1

4

7

((j-1) x number of rows) + i = block number
Tuesday, October 22, 13
Swapping
• When tapping on a tile, check the neighbor
to see what it is

• Copy locations and info
• Swap
Tuesday, October...
block_Gp

Temp
Blocks

3

9

2

5

8

1

Tuesday, October 22, 13

6

4

7
block_Gp

Temp
Blocks

3

9

2

5

8

1

Tuesday, October 22, 13

6

4

7
Matching
• Check above, below, left, and right
• Ensure no illegal checking (crash)
• Skip non-essential checks
• Mark mat...
block_Gp

3

6

9

2

5

8

1

4

7

i x j = block number
Tuesday, October 22, 13
block_Gp

y+1
x#rows

5

y-1

Tuesday, October 22, 13

x+
#rows
Skip non-essentials

Tuesday, October 22, 13
Repopulation/
Randomize
• Add physics
• Insert new blocks
• Drop them in

Tuesday, October 22, 13
Upcoming SlideShare
Loading in …5
×

Match 3 Deep Dive

1,636
-1

Published on

A presentation on how to make a match 3 game using Corona SDK. For more information and source files, go to: http://www.simplemachine.co/2013/10/deep-dive-how-to-master-building-match-puzzle-games/

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,636
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Match 3 Deep Dive

  1. 1. Match 3 Deep Dive Kurt Bieg Tuesday, October 22, 13
  2. 2. Tuesday, October 22, 13
  3. 3. Tuesday, October 22, 13
  4. 4. Tuesday, October 22, 13
  5. 5. Tuesday, October 22, 13
  6. 6. Tuesday, October 22, 13
  7. 7. Tuesday, October 22, 13
  8. 8. Tuesday, October 22, 13
  9. 9. kurt@simplemachine.co Tuesday, October 22, 13
  10. 10. Art by Loren Bednar sheets.LorenBednar.com Tuesday, October 22, 13
  11. 11. The next 2 hours of your life • Chit chat about classic puzzles • Learn some Corona SDK/Lua • Daydream about grid based logic • Code code code Tuesday, October 22, 13
  12. 12. Recipe for a classic • Single step mechanic • Exponential agency loop • Randomization • Completion/order Tuesday, October 22, 13
  13. 13. Single Step Mechanic Do one small thing and only one small thing Tuesday, October 22, 13
  14. 14. Tuesday, October 22, 13
  15. 15. Tuesday, October 22, 13
  16. 16. Exponential Agency Repetition of simple choices build complex outcomes Tuesday, October 22, 13
  17. 17. Tuesday, October 22, 13
  18. 18. Randomization A set of objects presented in rule based randomization Tuesday, October 22, 13
  19. 19. Tuesday, October 22, 13
  20. 20. Tuesday, October 22, 13
  21. 21. Completion/Order A final state the player is attempting to reach Tuesday, October 22, 13
  22. 22. Tuesday, October 22, 13
  23. 23. Tuesday, October 22, 13
  24. 24. Lua is all about tables Tuesday, October 22, 13
  25. 25. Tuesday, October 22, 13
  26. 26. Grid Based Logic • Make a grid • Swapping • Matching • Repopulation/Randomize Tuesday, October 22, 13
  27. 27. Make a grid • Iterate through a number of columns and number of rows and insert an object at each point Tuesday, October 22, 13
  28. 28. block_Gp Tuesday, October 22, 13
  29. 29. block_Gp j j j j = number of column Tuesday, October 22, 13
  30. 30. block_Gp i i i i i i i i i j j j i = number of row Tuesday, October 22, 13
  31. 31. block_Gp 3 6 9 2 5 8 1 4 7 ((j-1) x number of rows) + i = block number Tuesday, October 22, 13
  32. 32. Swapping • When tapping on a tile, check the neighbor to see what it is • Copy locations and info • Swap Tuesday, October 22, 13
  33. 33. block_Gp Temp Blocks 3 9 2 5 8 1 Tuesday, October 22, 13 6 4 7
  34. 34. block_Gp Temp Blocks 3 9 2 5 8 1 Tuesday, October 22, 13 6 4 7
  35. 35. Matching • Check above, below, left, and right • Ensure no illegal checking (crash) • Skip non-essential checks • Mark matched blocks Tuesday, October 22, 13
  36. 36. block_Gp 3 6 9 2 5 8 1 4 7 i x j = block number Tuesday, October 22, 13
  37. 37. block_Gp y+1 x#rows 5 y-1 Tuesday, October 22, 13 x+ #rows
  38. 38. Skip non-essentials Tuesday, October 22, 13
  39. 39. Repopulation/ Randomize • Add physics • Insert new blocks • Drop them in Tuesday, October 22, 13
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×