New to Game Develop...Doubts

Hi everybody.

I was going to start with Game Maker 8.1 when i founded an article talking about Game Editor And Game Develop.

I have started to check both programs (Game Editor and Game Develop) because of their free and goo features.

At first sight Game Develop looks like more pulished in the interfaz and close to Game Maker.

Can you please tell me differences and advantages between this two programs? and Game Maker 8.1?

One thing i noticed is that you can define the size of the world in Game Editor and when you zoom out the grid you can notice the grid is divided in the virtual screens that you will have…nice to define levels or the map.

I do not know if i can do something similar with Game Develop.

Another thing i would like to know is how layers works…what is the mask in the grid?..can i define regions? can i put a frame to a game and visualize the game in a region in the middle of screen?

I downloaded the parallax scroll example but the zip is corrupted and i am not able to open it with no one utility…can you tell me how to get a working example ?

How TiledScreen object works? how can i build a map with tiles¿?

How i decided if i want scroll or just when the sprite get the extreme of a scene he goes to another one? can i make the levels in one scene or they must be different scenes?

One thing i noticed is a lack of tutorials compared with game editor.

Do you have any tutorial about platform games using tiled backgrounds, layers with parallax and physics??? it would be great

How i need to create the sprites? Transparent color? masks?

Does Game Develop any scripting? how can i know the scripting functions?

Sorry for this many questions but i feel that this program is very powerfull but difficult to get information …even i see the creator is developing it so for me is good to know that if i decide to work with it is gonna be updated and adding good features.

I am sure that this program is and will be more great with support of comunity.


Wow, many questions :astonished:, well, maybe I can help you a bit (excuse my English, I don’t use Google a lot):

Really I use Game Editor one day or two (I can’t remember) and never use Game Maker, but I can tell you I choose GD 100 times over Game Editor, Game Editor turned me uncomfortable (maybe I was scared about coding, now I know a lot more and I could try Game Editor again, but I love Game Develop and the idea that only one person is behind the entire project but anyway it’s free :laughing: ). I can’t compare them for you, but I can answer many of the other questions.

This is easy, in Game Develop (GD), you can set your project’s window size (right click in your project at Project manager window and then “edit the properties of the game” option). After that, in your Scene (every project has one or more scenes) you can activate the grid on GD Scene tab at top, of course you can edit the grid size, line color and snap to grid option too, set the grid size = your project’s window size :slight_smile:

Layers works as surfaces (I don’t know if you understand me, I use Pygame and surface is a basic knowledge, I don’t know how them are called in other softwares), you can set the layer order to be drawed on screen, and can draw object on each layer, important: each layer can get many cameras, each camera with custom size and position.
The mask in the grid only show to you a region with game’s window size I think :confused:
GD works a lot with sprite objects, you could create a region object with the shape and size you want and check collisions.
I don’t undersand the last question :question:

I make a new one for you :imp: (left and right to “move”, basically it flee :stuck_out_tongue: ): ParallaxScrolling.rar (31.6 KB)
Look the Layer Editor, there are 4 layers, the last layer is drawed first (at game’s back)
4ian should re-upload the corrupted file :neutral_face:

I don’t use Tiled objects, but I’m testing it. Apparently, if you have a texture (i.e. a wall’s block with size = 32x32), you can set this texture and then resize your object, automatically the texture will be multiplied every 32 pixels for fill the size intead of resize the image.

Maybe I’ll incorrectly respond to this question, because I don’t understand what you want to say with “scroll or go to another scene”
You always can move objects, they never get the extreme of a scene because the scene’s size is infinite :ugeek: , of course you can check positions or add limit objects where you want the scene finish to check collsion with objects.
Move an objects from one level to another is a bit hard if the levels are different scenes, but you can create external files with information, i.e. objects lists. You could add the object that leaves Scene_1 (collide with a limit object) in the file, and load objects in Scene_2 from the same external file.
You can set many levels in one scene (you can move the camera at actual level position) or use a scene for each level
GD has External Layouts too (if the levels has the same properties, same events): you can make a scene with all the necessary events, and then make an External Layout for each level, in each External Layout you can add, delete and modify objects to change the level.

Now you get the parallax and backgrounds example, you can check the GD examples at respective folder for many ideas about physics (you can add automatisms to object, one automatism is physics), platforms, forces, shooting, etc. :wink:

I don’t know if GD support selected transparent color, but images with alpha channel (i.e. *.png) works excellent.

Yes, there is a feature to add C++ codes to your project, but is not “absolutely” stable yet, but you can test it, again in your project’s properties (right click in your project at Project manager window) search for C++ feature and activate it, then you can add *.cpp or *.h files in the Project manager window at “C++ source files”. GD has an Cplusplus example.
I don’t know where is the GD C++ documentation, but there are links to another documentations (SFML, wxWidgets and Boost) in Code tab at top.

I’m making a tiled RTS type game right now and Game Develop is performing just fine for making it. I have made the tiles by drawing an 80x80 tile and layering them on the base layer, z order 1, so they are always the lowest thing. Everything snaps to grid by using the floor function. I’ve found it easiest to make separate levels in separate scenes and using a menu scene to switch between Do you have any tutorial about platform

If you have more specific questions when you arrive at a difficulty, people on this forum will be more than happy to help out.

Florian is doing a great job of updating Game Develop so far!

What kind of game(s) are you considering creating?

Thanks Lizard-13 for answering so well to all the questions :slight_smile:
Can I add your parallax example to the examples bundled with GD?

For levels you can indeed either uses multiple scene ( You’ll have to recreate the objects or use global objects, and uses links to avoid recreating events ) or using only one scene and then dynamically destroy and recreate the levels that you created using External layouts: See the example Multiple levels with external layouts :slight_smile:

Yes using cameras it quite easy to do, but only for the native platform for now ( May be implemented for HTML5 games one day ).

No problem :slight_smile:

Of course, but you will have to edit the file a bit: backgrounds images were taken from Wikipedia (I didn’t found any good background in the GD resources folder for explain parallax, maybe you want change they), feel free to modify the file anything you want.

Thanks to all for the quick answers… now i can see that this is a powerful system with good support of the comunity…and just one programer…just amazing.

Please i have some other doubts while i am working on the examples…

Thanks so much for the parallax example…how can i make the background layers in the example to scroll in a cyclic way…i mean…if i define the resolution of the game in 800x600 and the background layers have the same size…can i make them scrooll infinitely (cyclic) and just change the layer where actors are? or i have to create the background layers as large as the levels even if they are always the same repetitive screen?

About TiledBackground …how it works??? If i have the tile graphics in one or more archives…how can i compound the background using that tiles in the editor? differences if i do with that graphics as actors and tiledbackground?

There is not too much info about cameras…how can i stablish the point where i want to start in a large map?

How does c++ code injection works?

Can you create predefined movements (paths) for actors?

Sorry for this many questions and the future ones…but i decided to give a try to this program instead os Game Editor


Don’t worry.

I made a new example for you again, only added 2 new events, like:

when background x position < camera.centreX - (camera.sizeX /2 + background.sizeX) If the background image is on the left of the camera (respective camera and layer), add 2 * background.sizeX to the backround position x, so it now is at camera’s right (only if background.sizeX == camera.sizeX). Similary when background is at right, up and down.
You need 2 backgrounds at least, you see both images, or one and the other moves. Events are too long because I can’t “link” background with it’s layer, I made one condition for each layer :unamused:
Parallax Scrolling.rar (32 KB)

The tile should be an image to be repeated; you should set your image in the Texture parameter, then you can resize you tiled objects and your image should be repeated.

I have a problem with this feature:
It should look like this:

But I have this :astonished: :

It is too easy in GD, cameras are full supported. In any event’s action, search for “Layers and cameras”, there are many actions referred to cameras (of course), i.e. center the camera at point, center the camera on an object (with or without limits), camera’s render zone, etc… If you want center the camera at (-600,400), where you level start, put:

Condition: At the beginning of the scene .......Action: Set camera x position = (-600,400)

Sincerely C++ code is not working for me, the GD’s C++ example returns a compilation error :frowning: , but looking at scenes I can tell you:
After activate the C++ code in the project’s options you can add an especial event (in event tab, press the giant green “+” for more events and search for “C++ code (Experimental)”), in that event you can simply write you code. When scene is launched, if code conditions return True your code will run.
You could create external C++ files in Project manager window too, and then, in the C++ event, add your files as Dependences for call their functions.

Happily yes :smiley: , there are two automatisms called Path Automatism and Pathfinding Automatism:
Path Automatism: this let you create predefined paths with an editor to make objects follow that paths, search for Predefined paths.gdg example.
Pathfinding Automatism: gives you the possibility of add an IA pathfinding on an object, this object will move to a position and evade obstacles, search for Basic pathfinding.gdg example (I open it this morning, the file is “remasterized” and looks very good :wink: )

Yes…i noticed that when you double click in a backgroung object and the editor opens, the scrolling bars are not working properly and do not scroll

You’re right, I had not noticed. You have to scroll with the side bars and then click the image, for refresh it’s position :neutral_face:

Maybe I will report these problems in the appropriate forum (then or tomorrow) :exclamation:

Fixed for the next version.

I don’t get it, could you explain a bit more how to reproduce the issue? :slight_smile:

Of course, how to explain it?..
“Object’s sprite editor window” is the window that lets you edit the object sprites animations, points and collision masks. When you select an image, it appear at window’s middle, and, if the image is too long, you can move the scrolls bar at image’s right and bottom (because you can’t see the full image).
The problem: when you move the scroll bars, the image doesn’t move. But, if you move the scrolls bar and then click the image (only left button), the image’s position is “refreshed” and moves where it should. I haven’t the PC with GD, so I can’t take any screenshot, I hope you understand. Anyway is a minor bug, nobody will dead :wink:

Thanks Lizard for the new example of parallax scrooling…i am trying to understand the mathematic operation but it created me more doubts…

In the object background i can see you have an animation for each layer…but i can not get the dimensions of this animations? i tried with properties and so on…but where can i find the size of the images in the sprite editor? knowing that gris is 32x32 i can guess but…

Another question…if i add backgrounds of 640x480 by example, and it is defined in the properties of my project a resolution of 800x600…do the images get stretched to become 800x600 or you will have 640x480 inside a 800x600 window?

If i create e big multidirectional map, how can i define the start point in that map including the margins?

Can i create a grid to work just with the dimensions i want?

When i create sprites do i have to put special color to transparent area?

Sorry for this many questions but i am really impressed with this software and the lack of tutorials …


Lizard i can see you are living in Uruguay…Hablas español¿?

Ask all you want and don’t worry.

At the end of the message I explain the actions.

In GD, I cant’ fount a way to know the image’s size, but every image is loaded with it’s original size, but then you can resize it with the object’s properties.

No, the images are not streched, to change your image’s size add the sprite object to the scene (drag an object from the object window to the scene window, then right click the object’s sprite > “Properties” and search for “Custom size?”, obviously you have to check it, then “Width” and “Height” define the size), there are actions to change object’s size and scale too :slight_smile:
Note: Remember your project’s window size, if you change the window’s size with an action/event, every object will be resized (i.e. if you have a background 800x600 and your window’s size = 800x600, of course your background will fill the window, then if you change the window’s size to 640x480 (action event), the background still fill the window).

The start point in a map is only where the camera is looking at. Don’t matter the map size, where the map start or the map direction, simply add a camera (with limits if you want) at starter point. To know a specific position for your camera and it’s limits you can use the cursor: put the mouse/cursor where you want the camera look at, and search for “Position” at the bottom of scene window, there are the X and Y mouse position in the map. Of coure, if the camera have to follow something, you only have to add an event to follow the object with the camera and… ready :sunglasses:

In the scene tab (at top), search for “Edit the grid”, you can edit the grid size, color and change the “Snap to grid” option (very useful).

I think I already had said :confused: , but you should use *.png images or images with alpha channel support for transparency (I use *.png for sprites and *.jpg for backgrounds)

Of course, I speak perfect spanish (at least I think), but there isn’t a spanish forum yet.
Por supuesto, hablo perfecto español (al menos eso creo), pero en el foro aún no hay una sección para dicho idioma.

Camera and background movement actions (with images, I’m so good :stuck_out_tongue: ):

Red rectangle ==> Player
Blue rectangle ==> Camera
Blue mark ==> Camera’s centre/center
B1 rectangle ==> Backgound 1
B2 rectangle ==> Backgound 2

Camera follow the player (player is moving at right):

The player only see one background:
Condition: The X position of Background is < CameraX("Layer",0)- (CameraWidth("Layer",0) /2+800)
Better: The X position of Background is < CameraX("Layer",0)- 3*(CameraWidth("Layer",0) /2)

The Background move at right:
Action: Do +1600 to the X position of Backgound
Better: Do + 2*CameraWidth("Layer", 0) to the X position of Backgound

If you don’t want to write new posts, is easier just edit the previous one :wink:

Lizard…i just can say thank you and amazing…

But it leads me to another doubt, or maybe i do not understand well the coordinate system…

B1 and B2 are two background objects right? or just 1 backgorund object is considered (B1 + B2)?

Then in events , when you are checking the conditions for background object and adding 1600, you are doing it for all the backgrounds in the scene i suppose…But dont you have to do a group with the backgrounds to apply the changes to all of them? B1 and B2 are not independent?

About If statement in the events you have || condition…how it works? if for example in that or the first condition is true, || stop testing the other 2 or check all 3 conditions and apply changes?

In many languajes OR conditions works in different ways…

Thanks a lot Lizard

There is another bug…if you are in the events and you try to run the example in a windows it does not work…you have to be in the scene and then run the example in a windows to make it work.

It’s not a bug, you have to be on the scene to launch the preview.

Here I am :slight_smile:

In the object window you have only one background, then you add two instances from it (in a space game with many enemy ships you only create a enemy and then add many instances from it), they are two different objects from the same class, with the same animation (they could have different animation, size and layer). Then you use conditions to take one or other for your actions :wink:

In effect, B1 and B2 are independent, I add 1600 (really should be “2Camera.Width" ) only to the left background, because only it background satisfy the condition "pos.X < Camera.CenterX - 3Camera.Width/2” that means is at left and you can’t see it (second image in previous post).
Note if I add 1600 to X position of all Background objects, the left Background (B1) will move at camera’s right (you can’t see it), and the Background you can see (B2) will move two camera’s width at right (you couldn’t see it), so you will lose your backgrounds :frowning:

There are other ways to do it, but I thought in this:
You see B1 and B2, when you move at right and only see B2 > move B1 at B2’s right, when you move at right and only see B1 > move B2 at B1’s right. A cycle where one background is moved at front of other.

Nice question… I don’t know :neutral_face:
If it stop after check a true condition (probably GD do it) I made the event wrong (because in each frame only one background will be moved, you should wait 3 frames to move the three backgrounds, 0.05 seconds at 60 fps), you can solve it in two ways (that I know) :bulb: :

1- Instead one event with a big OR and 3 sub-AND you could make three events, each event with one AND condition and the same action, so each event will move one background.

2- Add a “For ach object” event with Background as target (it will repite the sub event one time with each background in the scene), and put as a sub-event the big OR, then: check first background > satisfy > move, check second background > not satisfy > none, etc :imp:

You are right, but far as I know, is very logical stop when one condition is true and don’t ask for other.

If you need I explain anything in more detail, ask for it :smiley: