Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - froz

Pages: 1 2 3 4 ... 17
Ask a Question / Re: Scene switching problem
« on: July 13, 2013, 02:32:19 am »
I would add 2 games attributes. One for storing x coordinate, another for y coordinate. Let's call them here Xgame, Ygame.

What you want to do is:
- do not set the actor on manually (in the scene), but do it via code
- in the second scene, when actor is leaving, you need to set Xgame, Ygame to proper values (those would be x/y of position where you want the actor to appear in the first scene)
- in the first scene, make a scene behaviour that "when created" creates your hero at Xgame, Ygame. The little bit tricky part is to make it also work when you first start the game. Assuming you have some kind of menu scene, you would need to set Xgame, Ygame when player press "start game" or something similar, before the menu scene goes away and first scene is loaded.

That's how I would do it, but keep in mind I'm not an expert.

Resolved Questions / Re: How to Zoom in SceneEditor with Background
« on: July 13, 2013, 02:24:16 am »
As far as I know, background is always on the screen - the coordinates of the background picture doesn't change when you move camera around in game (if you have bigger scene then screen) - ofcourse unless you are using background scrolling feature.

So, while it seems buggy, the behaviour you described is kind of correct. Any way you should be able to work around it if you use the picture as an actor, not background. Just create new actor, put the picture as his animation, set actor x/y to 0/0 and it should work ok. Just make sure this actor will be on the bottom layer and everything else will be on higher layers. You should also disable physics of the actor, so he doesn't collide with other actors and doesn't need many calculations.


Some time ago I have returned to stencyl and I'm working on a new project. I have stumbled across a problem that I don't understand. I probably can (and probably will have to) make a workaround, but first I would like to understand why things aren't working the way I think they should.

Here is what I want to accomplish - this is a top-down game about ships, regular battle "map" is just a sea that I want to be quasi infinite in all directions.

So, what I did:
- I created quite big scene (3 screens wide square).
- camera is following the player's ship
- when player's ship is 1 screen-distance to any edge, all actors (of the group "actors") are moved 1 screen-distance in the opposite direction (it happens through scene behaviour). Later on I would make sure actors that are outside of the scene would be killed/recycled now.
- it seems to work well, actors are moved like they should, however they loose their velocity - their x and y speed is set to 0. I'm not sure, but I guess it may be a normal behaviour when you use "set x/y" block.
- I tried to fix this by adding a code that runs in the same loop "for each actor of group actors" where I change x/y position of those actors. The new code first remembers x and y speed of an actor, then apply set x/y blocks, then set x/y speed to what it remembered.

It doesn't change a thing.

After more research with some print blocks I have found out that in fact speed is not reset just after changing x/y position - it happens on the next frame. What is the most strange for me is that it looks like while normally in each frame scene behaviour and actors behaviours act one after another, when I'm moving the actors via scene behaviour, the actor behaviour is not executed this frame. It looks like this:

Starting game
scene behaviour execution
actor behaviour execution
scene behaviour execution
actor behaviour execution
scene behaviour execution - here I move actors, at the end of this frame actors' speed is not reset
scene behaviour execution - at the beggining of this frame actors' speed is 0.

I'm thinking of a workaround now - save x and y speeds of each actor in a table(s) in the scene behaviour before changing their positions, then at the beggining of the next frame set x/y speed of each actor according to the tables (I hope the order of actors in "for each actor" loop is always the same). Before I try that I would still want to know why the thing that happens, happens and maybe what am I doing wrong.

Also, if you think my approach to the problem of "invite" sea is wrong, tell me how else I could do it :).

Chit-Chat / Re: Building new PC need suggestions
« on: November 10, 2012, 08:25:57 am »
Well, sure, but did you see how cheap that APU is? It's basically free, compared to any decent CPU + GPU combination.

Ah, yes, that's true. And "layer of self" is also layer order, not layer ID.

Seems the block was changed at some point, in stencylpedia there is no "ID" in that block:

Ask a Question / Re: Getting/Setting Attributes between Actors & Scenes
« on: November 07, 2012, 08:30:58 am »
Well, make sure that the attribute is really switching to false and is not staying true (or is not switched to true right after it switches to false).

Ask a Question / Re: Getting/Setting Attributes between Actors & Scenes
« on: November 07, 2012, 05:33:04 am »
Well, it really depends on details. How do you generate objects?

Ask a Question / Re: Getting/Setting Attributes between Actors & Scenes
« on: November 07, 2012, 02:07:32 am »
You need to first create an actor attribute and set it to your player. There are several ways to do it, if the actor you need is the only member of player actor group, you can use "for each member of actor group". When you have that attribute and it is set to your player actor, just put the attribute inside "self/last created" field.

You may find it easier to do it the other way - have the attribute in the scene and change it from the actor behaviour. Use block "for this scene, set boolean to true/false". This is preferable if your actor doesn't use this boolean for other things often.

1.- they should get some translator for that task. They are charging an annually fee for this program, i don't understand why they don't do it. It's like when you buy a 60$ game and only works for 10 minutes before crashes.. Where the money goes?
I would rather see that money go for other features. I don't need the translation - and since you are writing in English fluently, you don't need it either. TO be honest, even if Stencyl was translated, I would be still using English version.

2.- Actually they way to implement the blocks is cool for a puzzle game, where you don't mind to get your skill tested. On the other hand, when we are trying to make a game if we have to get used to something would be in the best interest to be something faster and easier. Also thank you but i knew those commands. About the blocks that they won't stick anymore. Is was a funny situation because they were all chained and working. I separated them take them apart  to copy a sequence of blocks, they did not get together again.
Yes, that sometimes don't work like it should, but that's rare (f.e. I noticed problems with exit loop blocks which are generally restricted and those restrictions sometimes don't work well with loops inside loops).

3.- I could think a couple of ways. Actually i work as developer and i use different frameworks. All of them have figure this out.
Well, do they really had design mode similar to stencyl and used as3 code? Stencyl doesn't have design mode blocks for everything you can write in code, that's why you have code blocks and behaviours.

4.- Attributes: In the events Editor -> Command+B (i use MacOsX).Those are like game attributes but for that actor only. Sometimes you like to have private atributes like health for some actors. Still not working.
Great, seems you discovered the shortcut without discovering the actual attributes menu (lower right corner, next to palette, there is card "attributes" - you can see and delete them there).

6.- I don't understand. You must use tiles to create the enviroment in any game. However, you may try it's a big mess.
Not every game is platformer or whatever else that use tiles.

The big deal about Stencyl is the mobile development, and specially IOS. For Android, flash and HTML5, there are a lot of tools that do the same or even better but cheaper or free. The native conversion of the code in stencyl to Obj.C is a great idea, shame that does not work.
Not for me. For me, the big deal is that Stencyl is really easy to get into and in the same time (this is important) it allows to create almost anything, thanks to possibility to use code.

Without IOS there is not point to create games with this tool, specially when there are others much more simplier to use.
I don't know anything simplier (with at least similar possibilites) for making games in flash. I tried few game development tools earlier, none of them was even close to Stencyl.

Hmm. Are you sure the framerate drop is not caused just by the number of actors? I found that usually it's too many actors that slow down my games, never simple mathematics. Check it by simply creating those actors at runtime without the timer.

If the number of actors creates those problems, then you could try a method described here:

It's a little tricky and it's not good solution for every situation (especially not good if you are using built-in collision system for those actors or you want them to rotate and be animated each one independendly). On the other hand, on page 27 of that tutorial you can see how effective this method is.

Resolved Questions / Re: Managing Layer of Actors created in runtime
« on: November 06, 2012, 04:29:13 am »
Hmm. I just tried it and it works.

Try checking if the actor is really on the layer it is supposed to be, when you fade it (print layer of self).

Edit: I did some more checking. It seems that in one of those blocks, it's not layer's ID, but the layer order number. After I changed order of my layers, it stopped working. To be more exact - I sent my actor to layer 1, then I faded layer 1. When layer ID 1 was the first layer, it worked. However, when I moved it below, it stopped working.

Another edit: I think it's the fade layer block. It doesn't take layer ID (at least not the one shown in the scene designer).

In my example, when layer ID 1 was on top and layer ID 0 was below, when I sent my actor to layer 1 and then fade layer 0, it worked.

Old Questions (from 1.x/2.x) / Re: Need help on making the actor jump
« on: November 06, 2012, 04:12:21 am »
MikeZteal - you want to use built-in gravity system. Set the actor to be affected by gravity and set gravity in the scene.

Game Ideas / Re: Last Xenos 2.5D Engine
« on: November 06, 2012, 02:10:51 am »
My eyes, it hurts! ;)

Nice idea though.

Well, some of "bugs" you mentioned seems like not bugs, but just you doing something wrong. I don't use mobile mode, so I can't say anything about that (though I heard it's bugged, it should all be fixed in Stencyl 3.0 though, it will use the same engine for flash and mobile, unlike now).

1. Language - yeah, in my opinion this is a big mistake. I wrote about it once and was told it's because translations are created by users, some (most) of them are not finished. I would rather don't see that option at all or at least have English phrazes for everything that is not translated yet.

2. "The events block editor" - you have to get used to it. Sometimes it's hard to put block where you want it, but after some time you get used to it. Sometimes Stencyl won't allow you to put some block where it should not go, though (for example you can't attach drawing block in not drawing event), I believe sometimes this doesn't work like it should though.
Some hints: alt + drag creates a copy of the block you are dragging
shift + drag dragges only the block you clicked, not blocks attached below it.

3. Preview code. How would you imagine it if you could edit it? Yeah, that would be nice, but how would stencyl convert your changes back to the design mode? I could imagine it only if in most cases it would transform the changed part into code block (a design block with code in it) which wouldn't be really helpful. IIRC in Stencyl 3.0 you will be able to easily transform from design mode to code mode (again, one way only). You could do it now too, with copy&paste.

4. Attributes. That's not true. It is possible to delete or edit any behaviour. Just click on it and then click on minus sign on the top.

5. Stencyl forge. Yeah, it's a mess right now. I really hope they will rebuild it. Currently it's mostly unusable.

6. Tiles - I can't say anything about them, never really used this function.

Windows / Mac / Flash / HTML5 / Re: Bugongo - Sponsored and Released! :)
« on: November 05, 2012, 06:06:06 am »
Played the first level - I love it. It's really good, very polished. Now I'm going back to play other levels :).

Pages: 1 2 3 4 ... 17