Skip to content

Archive

noooway edited this page Jan 25, 2017 · 6 revisions

Initial version of the first two chapters of the tutorial.

Classes are introduced early on, HardonCollider (HC) is used for collision detection and hump.gamestate for the gamestates. After some discussion I've become convinced that classes should be postponed for later chapters or avoided altogether in such a simple game. HC is overkill and should be replaced either with Bump or with manually written collision detection.

The latest commit where the code for this version is accessible is c5d74506af9d4e5b1f8023470f7c98b9cff9fdbe.

Chpater 1: Maintainable Code

  1. The Ball, The Brick, The Platform
  2. Splitting Code into Several Files
  3. Classes
  4. Other Bricks and The Walls (Container Classes)
  5. Detecting Collisions
  6. Resolving Collisions
  7. Loading Level From External File
  8. Changing Levels
  9. Basic Gamestates: Game and Menu
  10. More Gamestates: Gamepaused and Gamefinished
  11. Basic Tiles
  12. Different Brick Types
  13. Basic Sound
  14. Game Over

    Home
    Acknowledgements
    Todo

Chapter 1: Prototype

  1. The Ball, The Brick, The Platform
  2. Game Objects as Lua Tables
  3. Bricks and Walls
  4. Detecting Collisions
  5. Resolving Collisions
  6. Levels

    Appendix A: Storing Levels as Strings
    Appendix B: Optimized Collision Detection (draft)

Chapter 2: General Code Structure

  1. Splitting Code into Several Files
  2. Loading Levels from Files
  3. Straightforward Gamestates
  4. Advanced Gamestates
  5. Basic Tiles
  6. Different Brick Types
  7. Basic Sound
  8. Game Over

    Appendix C: Stricter Modules (draft)
    Appendix D-1: Intro to Classes (draft)
    Appendix D-2: Chapter 2 Using Classes.

Chapter 3 (deprecated): Details

  1. Improved Ball Rebounds
  2. Ball Launch From Platform (Two Objects Moving Together)
  3. Mouse Controls
  4. Spawning Bonuses
  5. Bonus Effects
  6. Glue Bonus
  7. Add New Ball Bonus
  8. Life and Next Level Bonuses
  9. Random Bonuses
  10. Menu Buttons
  11. Wall Tiles
  12. Side Panel
  13. Score
  14. Fonts
  15. More Sounds
  16. Final Screen
  17. Packaging

    Appendix D: GUI Layouts
    Appendix E: Love-release and Love.js

Beyond Programming:

  1. Game Design
  2. Minimal Marketing (draft)
  3. Finding a Team (draft)

Archive

Clone this wiki locally