Jump to content


Member Since 13 Mar 2006
Offline Last Active Mar 19 2015 04:56 PM

Topics I've Started

What RPG would you make?

16 September 2012 - 06:48 PM

Hi all! I'd like to see what RPG's this community can come up with. What are your ideas?

See, I'm planning on making a Game Maker based library for 2D RPG creation. It'd look something like Zelda or Pokémon games. I would make a free editor program that would make the process really quick and easy. The editor program could spit out the code, and all a person would have to do is to put the code somewhere in GM (maybe the creation code or creation event for an object). It'd be okay to modify the code yourself after it goes into Game Maker. The whole thing would be free, after all.

Advanced RTS Example #2

27 July 2012 - 01:11 AM

Description: Using Fede-lasse's original "Advanced RTS Example" (found here: http://gmc.yoyogames...howtopic=373552) as a starting point, I made extensive modifications in order to facilitate better troop movement. I also used icuurd42b12's lighting engine as a starting point to create a "fog of war" effect for my game, making extensive modifications to this as well. Unlike most fog of war programs I see here on the GMC, this one uses nice smooth circles, and it also puts a grey layer over the explored areas that are currently not in any units LOS. And when I say these modifications are extensive, I certainly mean it. Instead of moving in what looks like some type of randomized swarm, the units will group together like a proper Napoleonic army. This required that I start over almost from scratch, retaining only Fede-lasse's mini-map and box selection system. This "marching block" of theirs is represented by an array of positions that is created when a group is selected and told to go to a point. This array of positions can be automatically changed by an angular variable. This is so that as the troops move, their order will be preserved. Just imagine how silly it would be if there were a right hand turn on a parade route, and as soon as the band gets there, the marchers on the right become the front of the parade and start crabwalking or something. With my program, we can make sure the cheerleaders are always in front, and the tubas are always in back. Okay, maybe I went too far with that metaphor, but you get the picture.

Here's my update of Advanced RTS Example:


If someone did take this example and make it into something complete with AI that allows the computer and the player to fight one another, that would be great. The fog of war slows down the game a little bit; perhaps someone using this engine may want to use a different fog of war method in lieu of this. If you would be so kind, please share any updates with me. Thanks!

Fuzzy, Wuzzy, and Fluzzy 3

15 August 2011 - 02:22 AM

Fuzzy Wuzzy and Fluzzy 3

I present to you a game that I hope you will enjoy. I made it last year for PC, and ugriffin was kind enough to make a .app of the game for me back in June. Special thanks to him for that.

At its core, this is a very simple game with a basic concept. Dodge the penguins using the arrow keys. If you don't, they'll explode when they hit you. They're mafia penguins. Therefore, they like to do things in packs, so a good idea is to divide and conquer. Should you be in need of health, pick up the pink spheres. And to proceed to the next level, touch the exclamation point at the end.

The game, similar to Pacman in style and gameplay, has a completely original soundtrack, with animation by hanbaal here on the GMC, who deserves great credit for the part played therein.

Download the Mac version here:

Go to the old topic for the PC game here:

Posted Image

Indiana Jones, anyone?
Posted Image

Don't mess with these dudes.
Posted Image

Rotating a group of objects

17 July 2011 - 08:31 PM

So I have a group of seven objects rotating about the point(224,192). They do rotate rather smoothly. But as they do so, their distance to the origin decreases, and I'm not sure why. I used the following formulas for finding x prime and y prime as the objects step through the directions:

Posted Image

So the following are the only two pieces of code in the project. From the program and the Wikipedia article, I have thus far proved incapable of finding out what the issue is. Thank you in advance for stepping in.

Create Event:
relative_x = (self.x - 224);
relative_y = (192 - self.y);
theta_rad = 0;

Step Event:
image_angle = direction;
theta_rad = degtorad(direction);
relative_x = ((relative_x*(cos(theta_rad)))-(relative_y*(sin(theta_rad)))); 
relative_y = ((relative_x*(sin(theta_rad)))+(relative_y*(cos(theta_rad))));
self.x = relative_x + 224;
self.y = relative_y + 192;
direction -= 1;

EDIT: Never mind! I figured out what the problem was. I used the altered value of relative_x in my code to find relative_y. A classic mistake.

In-depth Questions regarding fede-lass RTS engine

26 June 2011 - 12:48 AM

So I'm working on an RTS right now, and I'm looking at fede-lass's RTS engine in order to build off of his logic.

I am trying to make a marching system that is even more polished than this one.

Inside fede-lass's file, there is a script, mp_move, which is as follows:
Moves the current instance to x,y using motion planning and GM's built-in physics functions.

grid - Motion planning grid used for pathfinding
x,y - Destination coordinates
speed - Moving speed
blockobj - Main wall/block object in your game
prec - How far the AI looks ahead (2-3 = recommended)

Script by Fede-lasse, travel distance prediction code by xot
var _minimumDistance;
_minimumDistance = (1+argument3)*(1+friction);

if (point_distance(x,y,argument1,argument2) <= argument3) {
  x = argument1;
  y = argument2;
  return (0);

if (collision_line(x,y,argument1,argument2,argument4,1,1) == noone) {
  if (path_get_number(__mpPath) > 0) {
  __mpPosition = 1;
} else {
  var _pathNumber;
  _pathNumber = path_get_number(__mpPath);
  if (distance_to_point(path_get_point_x(__mpPath,__mpPosition),path_get_point_y(__mpPath,__mpPosition)) <= _minimumDistance ||_pathNumber <= 0) {
    if (!mp_grid_path(argument0,__mpPath,x,y,argument1,argument2,1)) {
      return (-1);
    __mpPosition = round(_minimumDistance)+1;
  } else {

Let's look around the bottom of that script. I see that we make our path curved. __mpPosition is set to the sum of 1 and round(_minimumDistance). Earlier in the script we see that _minimumDistance is the product of (1+speed) and (1+friction). We then find the point (x,y) on the path and go to it via motion_add.

I can gather from all this that basically what has happened is we've told the object to go to point n; the value of n depends upon the speed at which the object is traveling, and the rate at which the object slows down when it has stopped traveling. This code works because the path is constantly updated, and we can constantly travel to whatever point number we want. I conjecture that the logic behind this code is to update the path at a reasonable distance ahead of the object in question. Is this correct? If so, how would we know that our path has enough points on it to avoid returning an error when __mpPosition is called? For instance, the units in the example have a speed of .5 and a friction of .2, yielding a _minimumDistance of 3 points.

If my conjecture is incorrect, than might I ask what the logic behind this script really is? Thank you!