Book Project



Working on descriptions, if you can leave a comment with a 2-3 sentence description of what your example(s) do. I will add to the table below.



Thanks for showing interest in this project.

It will be a collection of 100 ways to improve a GMS2 game, either as GML code or a script.

Basically any coding you think is cool, or code that does a great graphical effects.

It can include pretty much anything that someone could add to an existing project.

Ideally you will submit in multiples of 5, so could contribute 5 or 10, etc, but just 1 is OK.

Payment will be made via PayPal, upon publication of the book and every 3 months when I receive payment. Upon publication you will also receive payment of any pre-orders made. Payment will be a share of 50% of the net revenue received from ebook and paperback sales, depending on how many examples you submit.

Make your suggestions in the comments below, and I’ll add to list.

Once I have a few scripts together, I’ll upload a ZIP of the project files you contributors can download and look at, and make any suggestions for improvement.

All contributors will have their name in the book.

Use the comments at the bottom of the page to add what topics you would like to work on.

Please submit as a project file, showing the code / script / effect in action. You can email them to me at:

Here is a cover by Gurpreet Singh Matharoo:
100 Ways To Improve Your Game GameMaker Studio 2 Book
Here is the list so far:










1 Draw Text With Border / Shadow

Draws given text with a shadow / border.

Ben Done
2 Slowly Rotate Gun Turret / Missile

Slowly rotates a static turret or a moving missile towards a given target position. Useful for shooting games, tower defence, etc.

Ben Done
3 Scroll-able Menu

Displays a sub-images of a sprite a scrollable list (middle mouse button), which can be then be selected. Great for a level select screen.

Ben Done
4 RPG Style Text

Display text, using a typewriter effect.

Rob Done
5 Item Reward Effect

A graphical effect, suitable for item collection.

Rob Done
6 Queued Message

Queues a series of text messages, and displays them in sequence. Great for start of a game where you want to give instructions / tips to the player.

Ben Done
7 Fade In/Out on Room Transition

Fade between two rooms.

Rob Done
8 Slowly Move To Position

Will slowly move an instance to the target position.

Ben Done
9 Crafting Via Recipes

Combine items in your inventory to make new items.

Rob Done
10 Item Throb Effect

A pulsing graphical effect. Lots of possible uses.

Rob Done
11 Screen Shake

Shakes the screen. Great to use when a player takes damage.

Rob Done
12 Bezier Curve Paths

Creates a path based on bezier curve function.

David Done
13 Targetted Parabolic Paths

Fires projectile with speed and direction to form a parabolic path.

David Done
14 Custom Controls

Define custom keys for player movement.

David Done
15 Custom Pathfinding

Path finding based on risk and reward.

David Done
16 Ropes Between Objects

Hangs a rope between two moveable fixtures.

David Done
17 Networking Quadier In Progress
18 Procedural Generation Quadier In Progress
19 Optimizations Quadier In Progress
20 Platforming Quadier In Progress
21 Platfomer AI Quadier In Progress
22 TopDown AI Quadier In Progress
23 Delta Timing Quadier In Progress
24 Development Console Quadier In Progress
25 Graphical Effects (Shadows / Wind Effect Quadier In Progress
26 General Code Tips Quadier In Progress
27 Reflections Shader

Water reflection effect.

Matharoo  Done
28 Outline Shader

Creates an outline on object’s sprite.

Matharoo  Done
29 Boost Movement

Gives your player a speed boost.

Matharoo  Done
30 State Machines

Control animation sequences using state machine.

Matharoo  Done
31 Shadows

Create shadows in any direction.

Matharoo Done
32 Zooming In/Out

Allows zooming of game window

Sky Rob Done
33 Knockback Effect

Forces enemy knockback effect when attacked.

Rob Done
34 Particles

10 Effects Using Particles

Ben Done
35 Custom Rain Effect Renato In Progress
36 Rotating 2.5D World Renato In Progress
37 On Screen Keyboard

Popup on screen keyboard, allow user to enter text.

Ben Done
38 Ascii To Level Zack Done
39 DFS Maze Zack Done
40 Dictionary Master Zack Done
41 Image To Level Zack Done
42 Dynamic Waves Zack Done
43 2 Player Split Screen

Two separate views, each one following a different player.

Ben Done
44 Character Selection Screen

Graphical effect allowing player to choose which character to play. Great for a start of a game to give some variation.

Ben Done
45 Snap To Grid

Snaps the instance to a grid position. Great when you want the player to place instances at fixed grid locations.

Ben Done
46 Highlight Text When Mouse Hovers

Test changes colour when mouse is over. Great when displaying a number of options that the player has to choose from.

Rob Done
47 Blood Splatter Effects

A selection of blood splatter efffects, great for a range of game genres.

Ben Done
48 Coin Collection Effect

Makes the coin move to the player when in range, with a graphical effect.

Ben Done
49 Tool Tip Popup

Displays a pop up message when mouse hovers over it. Great to remind players what buttons can do.

Rob Done
50 Interesting Health Bars

A selection of alternatives to the regular healthbar.

Rob Done
51 Bullet Holes

Displays bullet holes where the player shoots.

Ben Done
52 Player Movement Sprite Control

Four directional movement control, changes sprite to direction, and whether moving or not.

Ben Done
53 Parallax Background

A simple example of this effect, great for a range of game genres.

Ben Done
54 Bomb Throw Effect

Throws a bomb to the click location. Makes the bomb arc and change size.

Ben Done
55 Pushable Objects

Shows how to make instances pushable by the player. For top-down or side-scrolling games.

Ben Done
56 Autonomous Ship Turrets

Set turrets to target selected enemies.

Rob Done
57 Interesting Buttons Rob In Progress
58 Cool Intro/Chapter Text

Some great ways to spice up basic text drawing.

Rob Done
59 Making a tiled World Map Via Code Rob In Progress
60 Screen-Flash Damage Indicator Sky Rob Done
61 Floating Wobbly Text

Makes text wobble and float. An interesting effect usable in a lot of ways.

Ben Done
62 Destructible Terrain

Drop a bomb and destroy the terrain.

Ben Done
63 Dynamic Clickable Button

Changes colour upon mouse over or click. Great for buttons and menus.

Ben Done
64 Film Style Credits (Star Wars)

Given text scrolls up from the bottom of the screen, gets smaller as it rises.

Ben Done
65 Platform & Slope Collision Joe In Progress
66 Scrolling Effect Steve In Progress
67 3D Water Joe In Progress
68 2D Destructible Terrain Joe In Progress
69 3D Shader Joe In Progress
70 Colour Control Joe In Progress
71 Top Down Vehicle Physics Joe  In Progress
72 Infinite Runner

A basic example, with some features that can be used elsewhere.

Ben Done
73 Wall Jumping Joe  In Progress
74 Seamless Room Wrapping Joe  In Progress
75 Ghost Follow Player

Follows the path that the player takes.

Ben Done
76 Radar

Draws a mini radar of nearby instances.

Ben Done
77 Shop System

A basic shop, with sprites, costs, and info. Allows you to buy and sell items.

Ben Done
78 Rotating Mini Map

A static map and a rotating map.

Ben Done
79 Select Multiple Troops

Draw a rectangle and select multiple troops.

Ben Done
80 Password Easter Egg

Enter a password to unlock extra features.

Ben Done
81 Motion Predict

Predicts the path of a projectile and draws it on screen.

Ben Done
82 Sprite Exploding Effect Colin  In Progress
83 Lightning Bolt Colin  Done
84 Gravity Attraction Colin  In Progress
85 Procedural Rock Generation Colin  In Progress
86 Fire Effect System Colin  In Progress
87 Draw Text Special

Allows drawing of text in many cool ways

Caique  Done
88 Lightning Bolt Effect Renato In Progress
89 Controlling NPCs Renato In Progress
90 Decal Effetcs Renato In Progress


Here I will record any sales / pre-orders:

Current Total Pre-Orders Are: $104.93

If you have a blog or website and would like to announce this book project, use this page:

13 thoughts on “Book

  1. Rob

    Hey Ben, I have some ideas I can work on already:

    -RPG Style text (show whole string over time, with sound effect)
    -Crafting via Recipes
    -Item Throb Effect
    -Screen Shake
    -Item Glow effect
    -Item Reward Effect
    -Fade In/Out on Room Transition
    -Save/Load ini file system

  2. David

    At the moment ideas I can think of are:
    -Bezier curve paths
    -Targetted parabolic paths
    -Character Customization
    -Custom pathfinding
    -Ropes between objects
    I’ll hope to send the first few in the next week.

  3. Quadier

    10 Ideas I would like to cover.
    -Procedural Generation
    -Platfomer AI
    -TopDown AI
    -Delta Timing
    -Development Console
    -Graphical Effects (Shadows / Wind Effect)
    -General Code Tips

  4. Cloaked Games

    Here are a few things I was thinking of doing. Also Quadier already posted two of the ones I had thought of a while ago, lol.

    -Enemy/player wounded effect. (Blinking)
    -Weighted loot tables.
    -RPG style damage calculation.
    -Doors for going in between two rooms. (Basically, how to link two rooms together in an easy way).
    -Popup text bubbles. (Not dialogue boxes, I’m talking about like, “Hello” when you walk past).

    Also, one question:
    -Does RPG Style text include a typewriter effect? If not I’ll do that too as a separate thing.

    I’ll get around to these in a few weeks. I have school testing to finish first.

  5. Zack

    5 ideas I can cover, based off videos on my YouTube channel, The Step Event:
    – Tweens and Easings
    – Button effects using elasticity and springs (Hooke’s Law [])
    – 2D Dynamic Water (builds off elasticity concepts from Buttons [])
    – Sunburst effect (lengthdir_x and lengthdir_y primer [])
    – Fake 3D sprite spinning (sin/cosine primer [])

    – Zack

  6. Rob

    My next 5 will be:

    -Autonomous Ship Turrets
    -Interesting Buttons
    -Cool Intro/Chapter Text
    -Making a tiled World Map via code
    -Screen-Flash Damage Indicator

  7. Joe Ellis

    Hi, I’ve currently only got 1 project, but am hoping to come up with another 4.
    The one I’ve got is:
    Platform collisions with slopes & moving platforms.

    It basically consists of a player object, blocks, slopes and platforms (that move).
    And 5 concise scripts:

    collision_step (put this in the step event of any object, and it will perform the following (if needed))




    and collision_unstick, which stops any errors occurring or getting stuck.

    Let me know if someone has already done one for this.

  8. Joe Ellis

    I would like to add:

    Topdown vehicle physics

    3D water with normal maps, refraction & reflection. (Possibly could be too advanced for ways to improve your game, but let me know)

    2d destructible terrain, but Ben has already put this. so it probably repeats what he’s done, not sure cus my version works per pixel, like on worms 1, so could be different and worth having both

    Maybe 3d shader materials, a collection of shaders rendering all the standard things like normal mapping, specular, cubemapping, erm, but I’m not sure if you want stuff like this to be in the book cus 3d stuff is abit “out there” for gamemaker..

    1 last thing, hue shifting, saturation, color limiting, etc. that could be a collection of shaders.

    Just let me know, I can put these things together if you want

Leave a Reply

Your email address will not be published.