Presentation is loading. Please wait.

Presentation is loading. Please wait.

Game Maker Tutorial.

Similar presentations


Presentation on theme: "Game Maker Tutorial."— Presentation transcript:

1 Game Maker Tutorial

2 Where to Get.. Game Maker: Studio Tutorials
General My First Game, Scrolling Shooter Integrating Twitter, Beginners Guide To Particles Advanced Keeping Your Work Backed Up Advertising Tutorials Source Control Tutorials Physics Collision Filtering Using Analytics Game Maker: Studio Download

3 Introduction User Interface
rooms: the scenes (levels) in which the objects live backgrounds: the images used as background for the rooms objects: the things in the game instances: one particular occurrence of an object sprites: images that are used to show the objects sounds: these can be used in games, either as background music or as effects scripts: small pieces of code that can be used to extend the possibilities of your game

4 Your First Game Adding Sprites Naming Sprites, Sounds & Objects
Click the ‘Create Sprite' icon Name it spr_crown Click Load Sprite. We also need a wall sprite. Name it spr_wall Naming Sprites, Sounds & Objects every sprite  sprXXXX the sounds  sndXXXX the objects  objXXXX.

5 Your First Game Adding Sounds Click the ‘Create Sound' icon
Name it snd_bounce Click Load Sound. bounce.wav We also need a click sound. Name it snd_click click.wav

6 Your First Game Adding objects create crown and wall objects
need an object to put in your game.  A sprite just represents the object. Add in a wall object.  Name it obj_wall, choose the wall sprite, and make it solid. Click the Add Object icon Name it obj_crown Choose the Ball sprite to represent the object don't make it solid. (It's best not to make moving objects solid.) It interferes with the Game Maker collision detection system and your object may become 'stuck'

7 Your First Game The Create Event
Events are the things that happen in your game. We want the ball to start moving in a random direction. Open the properties for the crown object Add in an Event for when the crown is created. Choose start moving in all directions at speed 4 the ball moves 4 pixels for each step of the game.  If the game is running at the normal speed of 30 frames per second, then there will be 30 steps every second.  You can change the game speed in the settings tab of the room properties    

8 Your First Game The Collision Event
Collision event with the wall object Press the Add Event button Click on the 'Collision Event button and select "obj_wall". Include a Bounce action (from the "Move" tab, "Jump" section) include the Play Sound action (from the "Main1" tab, “Play sound" section)  select "snd_bounce".

9 Your First Game The Mouse Event
Define what to do when the user clicks with the left mouse on the clown Add 10 points to the score Add Event  Mouse Event  Left Pressed. include the Set Score action from the “Score” tab include a Play Sound action from the “Main1” tab(“snd_click”) include a Jump to Random action from the “Move” tab Finally we include a Move Fixed action Left Button vs Left Press ?? Relative vs Absolute ??

10 Your First Game Adding A Room
need to create the room in which the game takes place. choose Create Room select the “Settings” tab  Name: rm_Main

11 Your First Game Saving and Testing
Choose the command Run Normally or press the green Play button In the File Menu choose the command Create Application

12 Your First Game Polishing Your Game Backgrounds
Create Background. background.png bck_main Double-click on the game room click on the "backgrounds" tab.

13 Your First Game Polishing Your Game Adding Alarm
Approx every second we will make the crown change direction.  setting an alarm clock to trigger an event every second. set the alarm clock when the game first starts Select the Create Event and from the Main2 tab add a Set Alarm action each time the alarm goes we will make the ball change direction Click on Add Event and choose the button Alarm “Alarm0” include the Move Fixed action (from the move tab), select all eight arrows and set the speed to 0 but, enable the Relative property. reset the alarm.

14 Your First Game Polishing Your Game Changing direction
make the clown face the direction that it is moving in add in an action to change the angle the sprite is drawn at every time it changes direction. go to Main2 tab and select the Transform Sprite action

15 Your First Game Polishing Your Game
Controller Object : special objects with no sprites assigned Play background music choose Create Sound, "snd_music". Click on the Load Sound button, music.mp3. Create Object, "obj_Control" add a Create Event indicate "snd_music" and set Loop to true Display the player score with this object add a Draw Event to your object. (From Score tab) add this object into the room

16 Your First Game Ending your Game Extension
Let's say we want the game to end when the player's score is 20. Each time we add to the score, we will check whether the score is equal to 20 Ending the Game more Gracefully Extension improve the Ending Game by creating a text object and putting it in an ending room

17 Where to Get.. Game Maker Tutorials Game Maker 8.1 Download
Introduction   Clickball   Where is it?   Shooting   Maze Game  Monsters  Maze Game 2   Scoring & Lives   Sprites   Platform Moves   Jumping   Ladders   Backgrounds   Variables   Programming   Challenges Game Maker 8.1 Download

18 Official Tutorial Official Tutorial
Tutorial: What is a Good Game? (zip file, 190 KB) Tutorial: Your First Game (zip file, 850 KB) Tutorial: Creating a Scrolling Shooter (zip file, 1.8 MB) Tutorial: Maze Games (zip file, 1.4 MB) Tutorial: Platform Games (zip file, 1.6 MB) Tutorial: 3-Dimensional Games (zip file, 1.1 MB) Tutorial: Multiplayer Games (zip file, 210 KB) Tutorial: A First Person Shooter (zip file, 2.4 MB)

19 A Scrolling Shooter Variables and properties
Properties/variables that each instance x  x-coordinate of the instance y  y-coordinate of the instance hspeed  horizontal speed (in pixels per step) vspeed  vertical speed (in pixels per step) direction  current direction of motion in degrees 0-360: 0 is horizontally to the right (counter-clockwise) speed  current speed in this direction visible  whether the object is visible (1) or invisible (0) solid  whether the object is solid (1) or not solid (0)

20 A Scrolling Shooter Variables and properties global variables:
score  current value of the score lives  current number of lives Health  cirrent health of player (default to 100) mouse_x  x-position of the mouse mouse_y  y-position of the mouse room_speed  current speed of the room (in steps per second) room_caption  caption shown in the window title room_width  width of the room in pixels room_height  height of the room in pixels

21 A Scrolling Shooter Game Maker Variable A Scrolling Shooter : 1945
in the Control tab: Set the value of a variable If a variable has a value A Scrolling Shooter : 1945

22 A Scrolling Shooter Scrolling Backgrounds
background image  back_water set the Vert. speed to 2.

23 A Scrolling Shooter Scrolling Islands
create three sprites with the images island1.png, island2.png, island3.png  spr_islandX uncheck the box Precise collision checking create objects with three sprites spr_islandX  obj_islandX Uncheck solid Depth : 10000 The instances with highest depth are drawn first

24 A Scrolling Shooter The illusion of motion Add Event to obj_islandX
Create : Set the vertical speed  2 Step –65 for the y-position to make sure the island starts completely above the room.

25 A Scrolling Shooter The main plane
create spr_myplane with myplane_strip3.png in files that end with _stripXX XX indicates the number of subimages. check the box Precise collision checking create obj_myplane spr_myplane  obj_myplane Uncheck solid Depth : -100

26 A Scrolling Shooter The main plane Add Event to obj_myplane
Add keyboard event <Left> : if (x > 40)  (-4,0) <Right> : if (x< room-width-40)  (4,0) <Up>: If (y > 40)  (0,-2) <Down> : If (y<room_height-120)  (0, 2) Don't forget to check the box labeled Relative positive y-direction is downwards Origin : (0,0)

27 A Scrolling Shooter Enemies And Shooting
create spr_bullet with bullet.png create obj_bullet ( spr_bullet) Add Event Create : Set Vertical Speed  -8 Step

28 A Scrolling Shooter Enemy and Shooting Add Event to obj_myplane
Create : Alarm 0 : <Space> Test Variable can_shoot equal to 1 Start of a block Create instance (0, -16) , relative Set Variable can_shoot  0 Set Alarm 0 Number of Step  15 End of a block

29 A Scrolling Shooter Enemy and Shooting (make the first enemy)
create spr_enermy1 with enermy1_strip3.png create obj_enermy1 ( spr_enenmy1) Depth  0 Add Events Create Create : Set Vertical Speed  4 Step

30 A Scrolling Shooter Enemy and Shooting (make the first enemy)
Collision With The Player Bullet Add sound snd_explosion1.wav Add Sprite & Object Explosion spr_explosion1  obj_explosion1 Add Collision Event (with obj_bullet) to obj_enermy1 Select Other (0, 0) relative

31 A Scrolling Shooter Enemy and Shooting (make the first enemy)
Collision With The Player Add sound snd_explosion2.wav Add Sprite & Object Explosion spr_explosion2  obj_explosion2 Add Collision Event (with obj_player) to obj_enermy1 Other, perform event: yes Self

32 A Scrolling Shooter Add Controller Object
Create object : controller_enemy Uncheck  visible Add Event Create Alarm 0 Add object to room

33 A Scrolling Shooter Scores, lives, and health
Create snd_background with background.mid Create spr_bottom with bottom.png Create spr_life with life.png Create object : control_life Add Events Create

34 A Scrolling Shooter Scores, lives, and damage Add Events No More Lives
No More Health Object: obj_myplane Change into: obj_explosion2

35 A Scrolling Shooter Draw (0, 404), -1 (180, 440) (12, 449), (138, 459)
(16, 410)

36 A Scrolling Shooter Scores, lives, and damage
Change Events in obj_enemy1 Collision : obj_myplane

37 A Scrolling Shooter Scores, lives, and damage
Change Events in obj_playerExplosion

38 A Scrolling Shooter More enemies
create spr_enermy2 with enermy2_strip3.png create obj_enermy2 ( spr_enermy2) Depth  0 Add Event Create : Set the vertical speed 4 Step Create instance obj_enermybullet1 (0,16) Collision : obj_myplane Collision : obj_bullet

39 A Scrolling Shooter More enemies
create spr_enermy3 with enermy3_strip3.png create obj_enermy3 ( spr_enermy3) Depth  0 Add Event Create : Set the vertical speed 4 Step Create instance obj_enermybullet2 (0,16) Collision : obj_myplane Collision : obj_bullet

40 A Scrolling Shooter More enemies
create spr_enermy4 with enermy4_strip3.png create obj_enermy4 ( spr_enermy4) Depth  0 Add Event Create : Set the vertical speed -4 Step Collision : obj_myplane Collision : obj_bullet

41 A Scrolling Shooter More enemies
Create snd _explosion3 with explosion1.wav Create spr_enermybullet1 with enermybullet1.png Create obj_enermybullet1 ( spr_enermybullet1) Depth  0 Add Event Create : Set the vertical speed 8 Collision : obj_myplane Outside Room Destroy the instance

42 A Scrolling Shooter More enemies
Create spr_enermybullet2 with enermybullet2.png Create obj_enermybullet2 ( spr_enermybullet2) Depth  0 Add Event Create Collision : obj_myplane Outside Room Destroy the instance

43 A Scrolling Shooter More enemies Change Events : controller_enermy
Create Alarm 0

44 A Scrolling Shooter More enemies Change Events : controller_enermy
Alarm 1 Alarm 2 Alarm 3 5 3

45 Maze Game Add 2 rooms : Set the room size to be 480x480 pixels and set the grid to be 32x32 pixels adding 3 sprite sprWall sprPerson sprTarget Create objects Now create a wall object: Name it objWall Use the wall sprite Make it solid (so things can't pass through it) Create the person object : Name it objPerson Use the person sprite Create a target object : Name it objTarget The target object should not be solid, as the player needs to be able to move on top of it.  When the player collides with the target object, the game will continue on to the next room.

46 Maze Game Set up movement for the person
Add an event to the person object for the Keyboard  <Left> Add the action from the Control tab 'If instance is aligned with grid‘ Set the snap horizontal and snap vertical to be 32 pixels. Add a start moving in direction Set the direction to be left and speed to be 4 Add actions for the up, down and right keys.  (You can use the duplicate event option to make this job easier) To stop the person moving add actions for the <No Key> event Click the centre block in the 'Start moving in a direction' options.

47 Maze Game Set up collision handling
If the person collides with a wall it should stop, so add a collision event Add a collision event to the target object for a collision with objPerson

48 Maze Game Draw 2 maze-like rooms
making sure that you have walls all around the outside.  Place the person and target at the beginning and end of your maze

49 Monsters Add in 2 sprites Add a create event for objMonster
one facing left and the other facing right objMonsterleft, bjMonsterRight Make a monster object : objMonster Add a create event for objMonster Add in a Start Moving action make it start moving to the right. Add a collision event for objMonster add in the following actions: Paths are another way of doing the same thing, but without using collisions with blocks to turn the monster around.

50 Maze Game 2 To make the maze more interesting, we should be collecting diamonds along the way.  A door stops the person from getting to the target.  When all the diamonds are gone, the door disappears. The target does not appear in the room until all the diamonds are collected.  Add 2 new sprites sprDoor and sprDiamond  Add 2 new objects objDoor and objDiamond.  Make the door solid as it acts like a wall

51 Maze Game 2 Add sounds Place diamonds around your maze.
for picking up the diamonds : sndDiamond for opening the door : sndDoor. Place diamonds around your maze. The objDiamond should have a collision event with the person It should then play the diamond sound and destroy itself

52 Maze Game 2 Place the door so that it blocks access to the target
Don't put any diamonds on the other side of the door! In the person object add a collision event with the door object, stopping the person and aligning it with the grid.  Just the same as you did with the wall object When all the diamonds are gone, the door should play a sound and destroy itself.  Add the step event to the door object Add the 'If the number of instances is a value' action.  (On the Control tab) Choose these options: Step event : occurs once for every step of the game, which is usually 30 times a second.

53 Maze Game 2 play a sound and destroy the door if there are no diamonds left add block markers to our actions  Save and play your game to test whether it works as expected.

54 Maze Game 2 The Target Marker Create a marker sprite and object.
use a target that does not appear in the room until all the diamonds are collected Create a marker sprite and object.  Call them sprMarker and objMarker.  Make it invisible by unchecking the Visible option. use the step event add an action 'If the number of instances (of the diamond) is zero,  Change the Instance to change the marker to the actual Target object Place the target marker in the room where you want the target to appear.

55 Reference Reference http://ictmindtools.net/gamemaker/tutorials/


Download ppt "Game Maker Tutorial."

Similar presentations


Ads by Google