Game Maker Games, Articles, Tutorials & More

Game Maker Network


Howdy, Guest! Please sign in or register an account.

Daniel

User's Scripts

parseInt

Parse a numeric string in some specified base and the quantity as an integer

toString

Generates a string representation of an integer using the specified base

line_intersects_line

Tests whether the line (NOT line segment) running from (x1, y1) to (x2, y2) intersects the line running from (x3, y3) to (x4, y4).

arab2roman

Constructs a Roman numeric representation of a given integer (which should be typed as a real, not a string) between 1 and 3,999,999.

string_soundex

Returns the Soundex code of some string

dec2hex

Returns a hexadecimal string representation of some integer (which should be given as a real, not a string).

string_generate

Generate a string based on the given format, mimicking the behavior of printf in other languages. This is a simplified version of the routine, so it only supports the following...

string_invert_case

Inverts the case of some string, making all the lowercase letters uppercase and vice-versa.

string_split

Splits a string into parts of size part_size and returns the pieces in a ds_list. For example, string_split("abcdefg", 2) yields [ab, cd, ef, g].

string_pad

Pads some string to a certain length by applying some pad string on the direction of choice.

mod_alt

GML's modulo operator is implemented in such a way that the result always has the same sign as the dividend. For example, (-7 mod 2) evaluates to -1. This script implements the...

timediff

Returns a string describing the given time interval (dt) in English. For example, timediff(1000*60*60*34) will give "one day, ten hours".

string_confine_width

Trims characters from the end of a string until it is no wider than max_width. If trimming is necessary, the suffix (typically "...") will be appended on to the end of the string....

string_confine_length

Trims characters from the end of a string until it is no longer than max_length. If trimming is necessary, the suffix (typically "...") will be appended on to the end of the string....

is_odd

Returns whether some number is in the set of odd numbers: {.., -3, -1, 1, 3, ..}

is_even

Return whether some number is in the set of even numbers: {.., -4, -2, 0, 2, 4, ..}

is_prime

A general primality test

ds_list_subset_can_sum

Tests whether some subset of the given list has a given sum. The algorithm is fast with small (target) sums, but slow with larger ones.

set_bit

Returns a modified version of n with some specified bit set to val. bit=0 indicates the least significant bit (worth 1, usually written on the far right), bit=1 indicates the next...

get_bit

Extracts one bit from some number n. bit=0 indicates the least significant bit (worth 1, usually written on the far right), bit=1 indicates the next (worth 2), and so forth; in...

ds_list_foldl

Folds a ds_list from right to left and returns the result. This works as follows. The first sub-result is obtained by executing scr with two arguments: init, and the last element of the list....

ds_list_foldr

Folds a ds_list from left to right and returns the result. This works as follows. The first sub-result is obtained by executing scr with two arguments: init, and the first element of the list....

ds_list_normalize

Normalizes a list of reals so that all the entries add up to 1

draw_text_wave

Draws some text in the pattern of a wave with the given magnitude

matrix_sum

Returns the sum of two matrices. These should both be ds_grids filled with real entries.

matrix_is_symmetric

Returns the whether some matrix M is symmetric, i.e., equivalent to its transpose. M should be a ds_grid filled with real entries.

matrix_transpose

Returns the transpose of some matrix M. This should be a ds_grid filled with real entries.

matrix_is_diagonal

Returns whether some square matrix M is a diagonal matrix. M should be a ds_grid filled with real entries.

matrix_is_lower_triangular

Returns whether some square matrix M is a lower triangular matrix. M should be a ds_grid filled with real entries.

matrix_is_upper_triangular

Returns whether some square matrix M is an upper triangular matrix. M should be a ds_grid filled with real entries.

matrix_determinant

Returns the determinant of some square matrix M using the recursive method. M should be a ds_grid filled with real entries.

matrix_identity

Returns an identity matrix with the given dimension

matrix_exponential

Returns the exponential of some square matrix M. This should both a ds_grid filled with real entries. This script uses the simple optimization of M^(2n) = (M^n)*(M^n), so it consumes O(log n) time....

matrix_product

Returns the matrix product of M1 and M2. These should both be ds_grids filled with real entries. This script uses the simple O(n^3) technique.

matrix_scale

Returns a scaled transformation of some matrix M. This should be a ds_grid filled with real entries.

fibonacci

Computes the n'th number in the fibonacci sequence. This is faster than the iterative method, but loses precision more quickly, making it accurate up to n=75....

fibonacci

Computes the n'th number of the fibonacci sequence iteratively, taking O(n) time. This is accurate up to n=78.

point_in_circle

Tests whether the point (x, y) lies inside a circle with vertex (xv, yv) and radius r

ds_list_concat

Constructs (and returns) a concatenation of L1 and L2 without mofifying either of the two lists

draw_text_progressive

Draws some text progressively, with a given delay between each character. The user can hold down a key (shift by default) to speed up the progression, or another key (space by...

string_ROT13

"Encrypts" a string using the classic rot13 algorithm. (See ROT13 on Wikipedia.)

ds_list_map

Transforms each element of a list by mapping it through a 1-ary script

ds_list_filter

Filters a list by calling script on each element and retaining only the elements for which the (1-ary) script returns true

ds_list_reverse

Reverses the order of elements in some list with minimal overhead

ds_grid_repr

Returns a string representation of the given grid

ds_priority_repr

Returns a string representation of the given priority queue

ds_map_repr

Returns a string representation of the given map

ds_queue_repr

Returns a string representation of the given queue

ds_stack_repr

Returns a string representation of the given stack

string_scramble

Scrambles the characters in a string

draw_piechart

Draws a pie chart illustrating the given list of data. The list does not need to be normalized; this is done automatically. Note that this function only draws the shape of the chart, not the labels....

equal

Tests whether two pieces of data are equal in both type and content. Useful for avoiding errors from comparing strings with reals.

is_power

Tests whether n is a power of base; more precisely, whether there exists some power p such that base^p = n.

num_divisors

Computes how many unique natural numbers divide evenly into the argument

ds_list_repr

Returns a string representation of a list in the form [E1, E2, ...]. Useful for debugging.

ds_list_min

Returns the smallest real in a list of reals

ds_list_max

Returns the largest real in a list of reals

ds_list_sum

Sums the entries in a list of reals

ds_list_sort_ext

This script sorts a list using a given quantifier script. This should be a 1-ary script which takes a list element as input and returns a real value that can be used in sorting. For...

ds_list_remove_redundancy

Efficiently removes redundant elements from a list

ds_list_random_element

Returns a randomly-selected element of the given list

string_ucwords

Converts the first character of each word in a string to uppercase

string_ucfirst

Converts the first character of a string to uppercase

string_trim

Removes whitespace from both sides of a string

draw_text_wordwrapped

An efficient method for drawing multiple lines of text with word wrapping. The arguments are identical to those used in draw_text_ext.

factorial

Computes the factorial of some number iteratively, avoid the overhead of recursion

random_integer

Generates a random integer between min and max, inclusive

string_implode

Joins together multiple strings (pieces) into one combined string

string_explode

Breaks apart a string into a list of pieces separated by delimiter

draw_text_outlined

A very customizable function for drawing text with an outline

tile_background_outside_room

GM contains something of an inconsistency, arguably a bug. In general, it does not limit you to the dimensions you choose to give to your room - it will handle instances that go...

random_word

Generates a random word. The result may not be an actual dictionary term, but it should have a natural sound (resulting from a good consonant/vowel arrangement)....

random_letter

Returns a randomly-chosen consonant or vowel

rotate_smoothly_toward

Rotate some angle toward some other target angle with a given speed, slowing down as the target comes near

rotate_toward

Rotate some angle toward some other target angle with a given speed

draw_text_shadowed

Draw text with a shadow underneath

decimal2fraction

Converts a decimal number into a fraction (represented as a string)

string_decrypt

The decryption function corresponding to string_encrypt

string_encrypt

A standard encryption function

data_unpack

Unpacks data stored with data_pack function and stores the individual values in an array

data_pack

Packs the given data pieces into a single value and returns it as a condensed string

bin2str

Converts a binary sequence string to an ASCII string

str2bin

Converts a regular string to a binary sequence string

bin2int

Converts a binary sequence of any size into integer format

int2bin

Converts an integer of any size into binary format

string_reverse

Reverses the characters in a string

is_palindromic

Tests whether the given string is palindromic

draw_circle_ext

A highly generalized function for drawing circular shapes

User's Links

Pygame Resources

A wiki page containing numerous links to websites with pixel art, music, and so forth

Lost Garden

"This site is about art and game design. You'll find galleries of my latest [beautiful!] illustrations. Also, I have extensive ramblings on a wide variety of game design topics."...

WikiBooks: Game Maker Programming

General information and basic tutorials for Game Maker

Game Maker Manual (PDF)

The official manual for Game Maker 7 in PDF format

Games in Learning Game Maker Tutorials

A small collection of very detailed Game Maker tutorials

Indented.net

An online code formatting/indentation utility. It was not designed specifically for GML, but it works fine with GML among other languages.

GameDev.net

From our humble beginning in June of 1999, GameDev.net has emerged as the leading online community for game developers of all levels, from the green beginner to the seasoned industry veteran....

RoboSquid

"RoboSquid is a community focused on making games: a game development community. Since game design is a wide playing field incorporating a numerous arts and a variety of artists,...

Free Game Ars

Free Game Arts promotes the use and development of free and "open source" game resources, including 3D models, sound effects, textures, games and development tools....

Free Game Artz

Free Game Artz promotes the use and development of free and "open source" game resources, including 3D models, sound effects, textures, games and development tools....

Free Game Arts

Free Game Arts promotes the use and development of free and "open source" game resources, including 3D models, sound effects, textures, games and development tools....

WP Clipart

WPClipart is a collection of high-quality public domain images specifically tailored for use in word processors and optimized for printing on home/small office inkjet printers....

Virtual Worlds

The goal of this wiki is to create virtual worlds under a free content license.

Reiner's Tilesets

A large collection of high-grade and original characters, tilesets and other objects by Reiner Prokein

GMbase Game Maker Extensions

An organized collection of Game Maker extensions

Game Maker Toolbox

Almost every Game Maker DLL and Extension ever released listed, categorized and searchable live in real time

SpriteLib GPL

A collection of sprite sheets freely available under the Common Public License

Debi's Icons

An original collection of free "cute and colorful" icons

Fast Icon

A collection of miscellaneous high quality icons

3dCAT

A collection of high-detail LightWave3D objects, many of them free

EO Game Development Community

We are a Game Development Community (GDC) dedicated to the creation of high quality games for you to play.

Will Host For Food!

A simple, free upload service run by GMC member "ChIkEn AtE mY dOnUtS".

Game Maker Resources

A handy tool for searching the GMC and other websites in order to locate resources

Game Make Blog

A fairly active Game Maker blog which covers a variety of goings-on in the GM community

Game Maker Affiliation

A traffic exchange service for Game Maker websites

GreenMan Games

A relatively high quality collection of games, scripts, and other resources.

Game Maker Station

Games, tutorials, scripts, media, and other resources for Game Maker users

Box.net

A somewhat sophisticated file hosting and management service. Registration is required, but the free version is quite satisfactory for most purposes.

RapidShare

A quick and simple file uploader; no registration required

Game Maker Resource

A large, organized database of links to various resources

FileFront Uploader

A general-purpose file hosting service

64digits

Upload and host your games/files, and create your own blog to talk about your game, all for free!

The Game Maker's Apprentice

This book, and companion CD, provide all you need to create your own games for Microsoft Windows using Game Maker.

GMking Audcast

An audio podcast provided by GMking.org

GMking.org Forums

Part of the GMking.org network

Game Maker TV

A popular Game Maker video podcast

MarkUp Magazine

MarkUp is a project of GMking.org, a network dedicated to support game developers of all IDEs

GMTech Magazine

Features interviews, reviews, exclusives, articles and more

GMpedia.org

A central wiki for Game Makers, Game Hackers and Game Players

GMLscripts.com Code Highlighter

The code highlighter used on GMLscripts.com

GML 2 Color

A free utility which converts GML code from plain text into a choice of HTML, BBcode, or Wikidot markup.

Game Maker Games

In late July 2003, Mark Overmars announced that he planned to stop posting Game Maker games on the official Game Maker site. Some disappointed Game Maker fans, led by Darthlupi,...

GM Tutorials

A large database of Game Maker tutorials

Game Maker Community

The official Game Maker IPB forum hosted by YoYo Games.

YoYo Games

Where the world comes to Play, Make, Share and Find games!

GMLscripts.com

A large collection of GML scripts of various types

User's Engines

Raster Terrain Engine

This is a raster-based terrain engine which supports both construction and destruction in real time. In the example, the left mouse button is used to destroy a region of terrain...

Linked List Library

This is a collection of scripts which implement linked lists in GML. Why use linked lists? Depending on what you're doing,...

Data Handling Example

Demonstrates how data can encoded and decoded to and from binary; also includes encryption and decryption

Graph Library

This is a library of scripts for creating, manipulating, searching and rendering weighted digraphs. The scripts mimic the built-in data structures, so they should be easy to adapt to....

General Application Framework

I put this together several months ago with plans to use it for some personal projects, but since switching to Ubuntu my access to GM has been very limited. Ergo, I'm opening it up...

Lighting Engine

A general-purpose lighting engine intended for use in top-down games

Smooth Collision Engine

This engine allows objects with arbitrary shapes to move smoothly against surfaces with arbitrary shapes, at arbitrary angles. The latest version includes support for smooth rotational...

User's Articles

Implementing 3D Arrays

>> Download Example << Although GM doesn't provide native support for 3D arrays, there are numerous...

How to Make Your Game Portal-Ready

Adapted from GDWiki; legitimately reproduced under the ...

Game Design - Tips for the One-Man Army

Article adapted from GDWiki; legitimately reproduced under the GFDL. I...

2D Super Mario Galaxy Gravity

Written by $pecter of the GMC. Reproduced with permission. [url=http://host-a.net/tarkimos/Super_Mario_Galaxy...

Data Packaging

Data packaging is a procedure that is heavily used in computing, but rarely are we aware that it is occurring. In broad terms, data packaging is the process of combining multiple...

User's Games

Prime Number Generator

Implements a very efficient algorithm for computing prime numbers.

Monotony

This is a small open-source game, inspired by Jonathan Mak's Everyday Shooter. I may expand on it if I have time later....

Catch the Window

Try to catch the window as it dances around the screen

General Info

Joined: April 27, 2008

Last Active: April 2, 2012

Advertisement