3 Arks - Adventure RPG (2D iso)

Post your Construct-made creations!

Post » Mon May 10, 2010 7:48 pm

Hi

I'm new on Construct (I have downloaded it saturday, the 8 may 2010).

I'm an advanced user of GameMaker since 2006, and I work in a professionnal game enterprise since 2000 (we made 3D games, or 2D games). I'm infographist 2D-3D, and art director on my projects.

So I have to say that Construct is a very great open-source software, with a lot of very interesting features :D .
I was really surprised with the power of construct. Of course, I have compared it with Game Maker and other tools I know, because I have used a lot GM, and make some "little big" games with it (demos in fact).

So, I would like to thank all the developpers for this very great soft :wink: .

[size=150:1jkwnsku]My Game[/size:1jkwnsku]
Name : 3 arks

Genre : Adventure with a storyline, RPG. I hope to create an online mode, but I don't know if it's possible and easy as with 39dll ;).

Style : sprites are Rendering with Blender. The style is cartoonish, colored and lightened.

[size=150:1jkwnsku]Screenshots and Videos[/size:1jkwnsku]

Construct Version (only made in 2 days):






GM version :


With GM, I have made a Level (map) editor. I hope to do the same with Construct, but I don't know if it's possible to load some external map that I will create with this editor.

For the moment, I try to see if we can use Construct in a professionnal porduction (for a 2D isometric game), but we need a lot of graphics, and we have to use some external ressources (between 300 and 600 Mo of graphics perhap's) :) . But I don't find how to use external encrypted ressources (without python).


Some questions

1. Is there a way to attach an image/somes images to the instances of the same object :
ex : the shadow under the character. The shadow will be the same for all the different characters, which could be randomised (I hope). For the moment I use a Turret behavior, but I think it's not a good solution. But I haven't find another way to do that (because drop shadow isn't made for isometric game).

2. Is it possible to use an object in differents layouts ? How can we do that ? (I don't talk about the inheritance fonction of the layer, because, we can't move the elements).
For example : I have a tree and I would like to use this sprite in differents layout, move it, change his colour, size... on these layout, but with a unique sprite.
[edit]OK, I think I need to make a global object (common settings).[/edit]

3. is it possible to "free" the memory which is no more use, because, for the moment, the game use 80 Mo of ram, (with GM it's only 10 mo with more graphics and features (fx..)). A sort of plug ins like "free memory" of GM would be great ;) .

4. Is there a sort of A* pathfinding (following an iso grid and avoid the obstacle, and go to the waypoint)? I have found the RTS behavior, but it's not that I'm looking for (the way is direction free for example, because it's made for top-down game and not iso game.).

5. Can I load different image on an object (not the same methode as add image in different frames of an animation (in the animator editor)), and how ?


Thank you for answers, and sorry for my bad English :).
B
2
S
1
G
2
Posts: 23
Reputation: 846

Post » Mon May 10, 2010 9:13 pm

Impressive stuff!

As I am using construct for a commercial game as well, let me give you some advice and answer some of your questions.

Making a map editor is completely possible.

If you're going to have between 300-600 MB of graphics, you're probably going to have to roll your own image loading solution. Construct can take a while to compile if there's a lot of graphics in the .cap. Each time you edit the graphics and preview the application again with that many graphics, it's going to take an excruciatingly long time for it to compile. As such, if you put all of your graphics in a folder and load them from there, it will go much, much faster, as the game will only load the ones you need when you want them. As for encrypting them, lucid's plugin "s" has encryption capabilities.

1. Attaching a shadow underneath characters is definitely possible, I'm doing it in my game right now. What you do is first, create the shadow object and give it a variable 'uid'.
Then put every object that needs a shadow into a family, let's call it 'shadowfamily'.
Give that family a variable 'shadow' via the family manager under the project tab.
Have two events:
if family's variable 'shadow' is equal to 0
- create sprite "shadow"
- set shadow's variable 'uid' to shadowfamily.uid
- set shadowfamily's variable 'shadow' to 1
event two
for each shadowfamily
if shadow's variable 'uid' is equal to shadowfamily.uid
- set position of shadow to shadowfamily

2. Yes, you can create objects from different layouts. The easiest way to get objects from different layouts to appear in all event sheets is to temporarily make the object global, then it will be accessible from every layout's event sheet. Remember to uncheck global when you're done!

3. The system object has an action that frees up VRAM, "load/unload layout textures." However, in the application properties, there is a setting for "load textures" - if that is set to per layout, then it will automatically load all textures needed for the layout at the start of a layout, and unload the previous layout's textures. There are a few new tips up about memory management on the wiki section on VRAM: http://sourceforge.net/apps/mediawiki/c ... ation_tips

4. I don't know of any way to do exclusively isometric pathfinding.

5. Yes, using the image manipulator, you can load images from disk and copy and paste images to and from sprites. One limitation at the moment is you cannot create extra frames of animation at runtime. You'll need to make sure that the sprite has enough animation frames before you compile.
Moderator
B
88
S
32
G
33
Posts: 3,005
Reputation: 27,432

Post » Tue May 11, 2010 12:11 am

Welcome to the board.

On the drop shadow I would suggest placing it into a container with the desired object, and placing that object into a family, rather than using a private variable.
[code:3arxkrwf]For each shadow
-> shadow set position to family.character [/code:3arxkrwf]
When its in a container with the object, its paired object is already picked.

Also the Sprite object has a built in function to load an image directly to the desired frame, called "Load animation frame from file". You just have to make sure the animation is set to the frame number you want it to load to.
Image Image
B
161
S
48
G
90
Posts: 7,350
Reputation: 66,755

Post » Thu May 13, 2010 12:44 pm

Hi

Thank you very much for the answer, it will help me a lot ;) .

[quote="Arima":3ec11ake]Impressive stuff!

As I am using construct for a commercial game as well, let me give you some advice and answer some of your questions.

Making a map editor is completely possible.

If you're going to have between 300-600 MB of graphics, you're probably going to have to roll your own image loading solution. Construct can take a while to compile if there's a lot of graphics in the .cap. Each time you edit the graphics and preview the application again with that many graphics, it's going to take an excruciatingly long time for it to compile.As such, if you put all of your graphics in a folder and load them from there, it will go much, much faster, as the game will only load the ones you need when you want them. [/quote:3ec11ake]YEs, for the moment, I use the "load animation frame from file" feature to change my sprite, to avoid to have a too big time for compiling.

I don't know if there is another feature.
Can we load any file at the begining of the layout (with the image list or image manipulator, perhap's), and change the image sprite object when we desire ?

[quote:3ec11ake]As for encrypting them, lucid's plugin "s" has encryption capabilities.[/quote:3ec11ake]Thank for the information :) .
I have find the "S" plugins from Lucid, and I will tried it.
So I'm trying to create the same level editor as I have created with GM.
But, I don't find a good pathfinding system (like A*).
The RTS will not work fine good in this case (not square case, but "iso" (diamond ?)).


[quote:3ec11ake]1. Attaching a shadow underneath characters is definitely possible, I'm doing it in my game right now. What you do is first, create the shadow object and give it a variable 'uid'.
Then put every object that needs a shadow into a family, let's call it 'shadowfamily'.
Give that family a variable 'shadow' via the family manager under the project tab.
Have two events:
if family's variable 'shadow' is equal to 0
- create sprite "shadow"
- set shadow's variable 'uid' to shadowfamily.uid
- set shadowfamily's variable 'shadow' to 1
event two
for each shadowfamily
if shadow's variable 'uid' is equal to shadowfamily.uid
- set position of shadow to shadowfamily[/quote:3ec11ake]Thank you very much for this tips, I will tried it :) .
For the moment, I use the family to create the shadows for the non-animated object, and the turret for animated characters.
Your technic seems to be better than the turret technic :D.

[quote:3ec11ake]2. Yes, you can create objects from different layouts. The easiest way to get objects from different layouts to appear in all event sheets is to temporarily make the object global, then it will be accessible from every layout's event sheet. Remember to uncheck global when you're done![/quote:3ec11ake]Yes, I have discover this feature (global), it's veru usefull.

[quote:3ec11ake]3. The system object has an action that frees up VRAM, "load/unload layout textures." However, in the application properties, there is a setting for "load textures" - if that is set to per layout, then it will automatically load all textures needed for the layout at the start of a layout, and unload the previous layout's textures. There are a few new tips up about memory management on the wiki section on VRAM: http://sourceforge.net/apps/mediawiki/c ... ation_tips[/quote:3ec11ake]ok. For Vram it's a good things to know. I use the "load textures per layout" settings in my game.
IS it a way to free up the RAM ?
My game with GM use only 5 - 10 Mo in ram, but with Construct, the same game use 80 Mo in ram.
How can I change that (if it's possible) ?

[quote:3ec11ake]4. I don't know of any way to do exclusively isometric pathfinding.[/quote:3ec11ake]And for a normal pathfinding like A* with squarre cell ?
The RTS behavior seems not working pretty well in some case.
Is there another technic ? (simple if possible :) ).

[quote:3ec11ake]5. Yes, using the image manipulator, you can load images from disk and copy and paste images to and from sprites. One limitation at the moment is you cannot create extra frames of animation at runtime. You'll need to make sure that the sprite has enough animation frames before you compile.[/quote:3ec11ake]ok. it's great. Can we use several image on a single sprite object ?
For example :
- 1 image for the character
- 1 image for his shadow
- 1 image for his sword
..
On the same sprite object ?


[quote:3ec11ake]Welcome to the board.
On the drop shadow I would suggest placing it into a container with the desired object, and placing that object into a family, rather than using a private variable.

Code: Select all
For each shadow
-> shadow set position to family.character

When its in a container with the object, its paired object is already picked./[/quote:3ec11ake]I have tried it, but it doesn't in my example :
shadow.cap

[quote:3ec11ake]Also the Sprite object has a built in function to load an image directly to the desired frame, called "Load animation frame from file". You just have to make sure the animation is set to the frame number you want it to load to.[/quote:3ec11ake]Yes, I have seen that feature. Thanks ;).
B
2
S
1
G
2
Posts: 23
Reputation: 846

Post » Thu May 13, 2010 4:21 pm

[quote="blendman":2u8rz71j]YEs, for the moment, I use the "load animation frame from file" feature to change my sprite, to avoid to have a too big time for compiling.

I don't know if there is another feature.
Can we load any file at the begining of the layout (with the image list or image manipulator, perhap's), and change the image sprite object when we desire ?[/quote:2u8rz71j]

I'm confused. The feature you're asking for is load animation frame from file, which you said you're already using?

[quote:2u8rz71j]The RTS will not work fine good in this case (not square case, but "iso" (diamond ?)).[/quote:2u8rz71j][quote:2u8rz71j]Is there another technic ? (simple if possible :) ).[/quote:2u8rz71j]

It might be possible to hack together a system where you place node sprites all over the map (automatically via an event at runtime, of course!) arranged how you want isometrically, have a pathfinding sprite with RTS behavior that goes ahead of the player, keep track of which nodes it overlaps or it gets closest to, then have your character walk towards those node sprites in order. I don't know if that'll work, but I'm using a sort of hacked system like that in my game for node-based pathfinding.

[quote:2u8rz71j]ok. For Vram it's a good things to know. I use the "load textures per layout" settings in my game.
IS it a way to free up the RAM ?
My game with GM use only 5 - 10 Mo in ram, but with Construct, the same game use 80 Mo in ram.
How can I change that (if it's possible) ?[/quote:2u8rz71j]

Oops, sorry, I thought you were talking about VRAM. As far as I know, there's no way to control how much RAM construct is using.

[quote:2u8rz71j]ok. it's great. Can we use several image on a single sprite object ?
For example :
- 1 image for the character
- 1 image for his shadow
- 1 image for his sword
..
On the same sprite object ?[/quote:2u8rz71j]

Yes, using multiple sprites and containers. http://sourceforge.net/apps/mediawiki/c ... Containers
Moderator
B
88
S
32
G
33
Posts: 3,005
Reputation: 27,432

Post » Thu May 13, 2010 6:39 pm

[quote:1ehw7pkq]I have tried it, but it doesn't in my example :[/quote:1ehw7pkq]

Actually, you don't even need a for each here, just use "Always" instead.
You will need to add an event to change its z to "place behind object" since the shadow was added to the layout after the shadow caster.
Image Image
B
161
S
48
G
90
Posts: 7,350
Reputation: 66,755

Post » Fri May 14, 2010 3:42 pm

[quote="Arima":2vnp95m7][quote="blendman":2vnp95m7]I don't know if there is another feature.
Can we load any file at the begining of the layout (with the image list or image manipulator, perhap's), and change the image sprite object when we desire ?[/quote:2vnp95m7]

I'm confused. The feature you're asking for is load animation frame from file, which you said you're already using?[/quote:2vnp95m7]in fact, it's not the same function as "load animation frame from file" I look for.
Because this function replace an animation frame of a sprite by a new picture. But all the instance using this sprite object are changing.

What I'm looking is the ability to change the frame of a unique sprite Object, but not for all the instance of this Object : Only by example for the instance which private value"type" = 3.

Like in this example :
- I create 20 Objects named "sprite" have different private variable value (1 to 5).
I would like that for the instance with Private variable Type = 1, they have the image 01.png. For the instance which have the private variable type = 2, they have the image 02.png, etc..
[code:2vnp95m7]
+ Sprite.value('type') = 1
-> load animation frame from file "data\01.png"
+else
+ Sprite.value('type') = 2
-> load animation frame from file "data\02.png"
etc...[/code:2vnp95m7]
But, in my file, it doesn't work. I don't know if we can do that, and how.

I have made a little example (.cap with 4 images) :
[url:2vnp95m7]http://blendman.free.fr/construct/spriteImage.zip[/url:2vnp95m7]

[quote:2vnp95m7][quote:2vnp95m7]The RTS will not work fine good in this case (not square case, but "iso" (diamond ?)).[/quote:2vnp95m7][quote:2vnp95m7]Is there another technic ? (simple if possible :) ).[/quote:2vnp95m7]
It might be possible to hack together a system where you place node sprites all over the map (automatically via an event at runtime, of course!) arranged how you want isometrically, have a pathfinding sprite with RTS behavior that goes ahead of the player, keep track of which nodes it overlaps or it gets closest to, then have your character walk towards those node sprites in order. I don't know if that'll work, but I'm using a sort of hacked system like that in my game for node-based pathfinding.[/quote:2vnp95m7]I try to understand, but if you would have an example, it will be more easy for me ;) .

[quote[quote:2vnp95m7]]ok. For Vram it's a good things to know. I use the "load textures per layout" settings in my game.
IS it a way to free up the RAM ?
My game with GM use only 5 - 10 Mo in ram, but with Construct, the same game use 80 Mo in ram.
How can I change that (if it's possible) ?[/quote:2vnp95m7]
Oops, sorry, I thought you were talking about VRAM. As far as I know, there's no way to control how much RAM construct is using.[/quote]perhap's with a plug ins, like with GM.

[quote:2vnp95m7][quote:2vnp95m7]ok. it's great. Can we use several image on a single sprite object ?
For example :
- 1 image for the character
- 1 image for his shadow
- 1 image for his sword
..
On the same sprite object ?[/quote:2vnp95m7]
Yes, using multiple sprites and containers. http://sourceforge.net/apps/mediawiki/c ... Containers[/quote:2vnp95m7]But we need to create several object Spirte, we can't use several image in a single sprite object ?

[quote="newt":2vnp95m7][quote:2vnp95m7]I have tried it, but it doesn't in my example :[/quote:2vnp95m7]
Actually, you don't even need a for each here, just use "Always" instead.
You will need to add an event to change its z to "place behind object" since the shadow was added to the layout after the shadow caster.[/quote:2vnp95m7]oh, yes, sorry, I have forgotten the always event to actualise the shadow 's position. Thanks.
B
2
S
1
G
2
Posts: 23
Reputation: 846

Post » Fri May 14, 2010 3:55 pm

[quote:3qlawz3p]
What I'm looking is the ability to change the frame of a unique sprite Object, but not for all the instance of this Object[/quote:3qlawz3p]
Ah. I'm not sure if there is a way to do that.
[quote:3qlawz3p]I try to understand, but if you would have an example, it will be more easy for me ;) .[/quote:3qlawz3p]
It took me a month to figure out how to do it for my game, and I'm very busy. I might give it a shot, though.
[quote:3qlawz3p]perhap's with a plug ins, like with GM.[/quote:3qlawz3p]
Unless the "s" plug-in has some sort of feature like that, there aren't any others that have memory management. You'd have to create your own.
[quote:3qlawz3p]we can't use several image in a single sprite object ?[/quote:3qlawz3p]
No.
Moderator
B
88
S
32
G
33
Posts: 3,005
Reputation: 27,432

Post » Fri May 14, 2010 4:30 pm

Different animation frames / subanimations?
B
62
S
21
G
12
Posts: 1,910
Reputation: 13,155

Post » Fri May 14, 2010 5:09 pm

The example was quicker to make than I thought. It's a lot faster to make when you already know how to do it!

viewtopic.php?f=16&t=6400
Moderator
B
88
S
32
G
33
Posts: 3,005
Reputation: 27,432

Next

Return to Your Creations

Who is online

Users browsing this forum: No registered users and 0 guests