<< Back to LiveCode Basics 

Game Programming


Game Resources Mostly Free and for Commercial Use:
       SoundEffects - site1 - site2 - site3 
       Do It Yourself Free Software - Gimp - Graphics/Drawing - Blender - 3D Art - Audacity - Sound Effects and Recording
      Picture Resize - picresize.com - change number of pixels/size
        ... more here

     Lessons/Tutorials (with screenshots) can also be found at:  LiveCode 


Examples (with code) can be found at:  Programs by Students  and  Apps by Students


Basic Game Concepts - Moving the Player, other objects and detecting collisions

1. Moving the Player - Moving the Main Player
     1.1 Using the Mouse - (Grab, mouseMove, Intersect(drag-n-drop code) - using the mouse to move your player
               Games - Educational Games - drag and drop, moving and matching games
               Games - "Bug Catcher" game (
Clone, deleting clones, a scorekeeper, a timer) with code
               Games - "Tiles" games (the Target, message path) - handling many objects, "inheritance" (in Java terms)
               ProjectDrawing using tools (pencil, line and browse tools, Drag- a really simple drawing program
               ProjectDrawing using lines (mouseMove, mouseDoubleUp, Pass- see the message path
    1.2 Using the ArrowKeys - (ArrowKey) (arrowKey code- using the cursor keys to move your player
               Games - Mazes - (Grouping, graphics) finding your way around, making maze games
               Games - Minefields - (Grouping, graphics) making minefields, avoidance games
    1.4 Using the Keyboard - (keysDown(), rawKeysDown, keyDown ) - using any keys on the keyboard
              Games - Flappy Bird (space bar, sliders, palettes, modal) - including advanced topics
              Games - Two Player Games - adding another opponent (Soccer Game - code)

2. Special Effects - Changing things, Hiding Objects, Moving Objects, Doing Things 
    2.1 Changing Properties (Set, Hide, Show commands) - change it in code while the program is running 
    2.2 Skinning Buttons - making your objects look better with images 
    2.3 Images and Graphics - which is better to use for your games?
    2.4 Disappearing Objects (Show/Hide, Disable/Enable, Waitmaking objects appear and disappear
    2.5 Making Objects Move (MoveWait) - moving them on set paths, etc, pausing    

 3. Adding Other Objects - Adding obstacles, targets, enemies, prizes to add more interest to the games 
   3.1 Adding Other Objects - creating obstacles, enemies, prizes and more
   3.2 Detecting Collisions (Intersect) - when objects run into each other
   3.3 Collecting objects (using variables) - to keep count when you need more than one to move to next level
 
4. Working with Many Objects (make Groups) - Save yourself time, use less code and and do it easier      
     4.1 Identifying Objects (name,short/long name) - the names of objects
     4.2 Too Many Objects? (Repeat) - less coding by using loops, using variables
     4.3 Too Many Objects? (Grouping) - less coding by grouping many objects together
     4.4 Creating More Enemies (Copy/Clone- adding more enemies in the code, as the game goes on
 
5. Timers, Keeping Score - Adding More Features - Adding more interest to the games     
     5.1 Timers - race against time with a clock timer
     5.2 Timers for Game Loops - race against time with a clock timer
     5.3 Winning, Losing and Keeping Score - what to do after collisions
     5.4 Keeping/Saving Scores (Put, URL, specialFolderPath, Add, Subtract- save high scores/fast times
     5.5 Showing Scores (URL, specialFolderPath, Sort, itemDelimiter- show standings in the game
     5.6 Special Keys - adding "backdoors", secret keys to add extra lives, more points, skip to next level, etc

6. Making the Objects Move on Their Own - Having objects move on their own, action, excitement and danger     
   6.1 Overview - Quick Intro - messages that repeat (call themselves)
      a Quick Intro (Send, Cancel) (send code- canceling the messages to stop the game loop
   6.2 Simple Game Loops - messages that repeat (call themselves)
      a   Game Buttons - controlling the game, Start, Stop, Pause, Reset buttons
      b.  Simple Message Loops - 1 (Send, start/stop buttons) - having enemies move on their own, repeating
      c.  Simple Message Loops - 2 (Send) (send code- another example of repeating movement
      d Stopping/Starting/Pausing (Send, Cancel) (send code- canceling the messages to stop the game loop
   6.2 Full Game Loops - handling more actions - backgrounds moving, keeping score, more enemies, etc)
      a.  Setting it Up (Send, keysDown() ) (send code) - use screen update cycles, use keyboard function
   6.3  Random Objects (Send, Randomnot knowing what to expect next, with a game loop
   6.4 Shooting Bullets (exists(code) - creating objects (bullets, darts, etc) and have them move on their own    
   6.5 Moving Terrain/Backgrounds - look like you are always moving
  
7. Polishing Off Your Game - Adding Extras, Looking more professional
     7.1 Opening Screens (Go To) - adding a Start, Intro or Splash screen
     7.2 Multiple Levels (Cloneadding more levels (cards) to make the game harder
     7.3 Sounds (Play- add sound effects and background music
     7.4 TextToSpeech (revSpeak- have your program talk or convert speech
     7.5 Examples of a more elaborate game and  Exciting Games

   Advanced Topics - Tricks, Hints and Shortcuts to make things easier
   Problems and Solutions - Answers to some of the more common problems
  

8. Putting your game on your cellphone
     8.1 Action Game to Android - putting your game on your cell phone

9. Multiple Player Games with Multiple Computers
    8.0 Sockets - Communicating with other computers using sockets 
    8.1 Simple Servers - computers talking to each other (Servers - code)

10. Other Examples, Programs and Techniques
     9.1 Games - Cannonball Game - by Robert Cailliau, great example of designing a game
     9.2 Games - Flappy Bird (sliders, palettes, modal) - including advanced topics


copyright (c) 2011 Cyril Pruszko