Stencyl 3.4.0 is now out. Get it now!

Ghost Song (back on Stencyl -- Warning, big GIFs ahead!)

I just wanted to say thinkyou for showing me what Stencyl is capable of. I started on my own project and I also want to stress Stencyl's limits.

twotimingpete

  • *
  • Posts: 1638
Thank you! I would be cautious in recommending Stencyl for a similarly sized project, because I'm finding myself dealing with a lot of anxiety over the project's size and how overladen it is and how it's starting to bog down (not the game at runtime, but the actual stencyl app) but much is possible if you are determined.

Here's a look at the molten shot, which can set enemies on fire:

https://gfycat.com/GrouchyYoungAsiansmallclawedotter

deepshock

  • *
  • Posts: 15
As someone else wanting to make a meaningful game in Stencyl, this is inspiring as all get-out. I'll keep this in my sights.
Steel Seraph- A shooter/adventure hybrid inspired by games such as The Guardian Legend, Star Fox, Fester's Quest, and similar adventure and vertical shooter games from the 8- and 16-bit era.

www.facebook.com/steelseraph
www.twitter.com/steelseraphgame



NobodyX

  • *
  • Posts: 1160
Whoa, zooming the camera with a shader?? Funky!

I've played around with
Code: [Select]
Engine.engine.master.scaleX = some number;
Engine.engine.master.scaleY = some number;
and it works well, except for the fact that it zooms the HUD as well. I suggested being able to set the scale of specific layers independently, to avoid this. I don't know if it would be an easy fix or not for a Stencyl dev (or maybe you can do that already and I don't know), but to me it seems like the shortest way to get proper zooming in Stencyl, I dunno.
“If you wind up with a boring, miserable life because you listened to your mom, your dad, your teacher, your priest, or some guy on TV telling you how to do your shit, then YOU DESERVE IT.”
― Frank Zappa

LIBERADO

  • *
  • Posts: 2014
I've played around with
Code: [Select]
Engine.engine.master.scaleX = some number;
Engine.engine.master.scaleY = some number;
I tried this, but it is inaccurate and difficult because we have not a formula to keep centered on the screen the exact point of the scene on which the camera will zoom in/out. Do you have such formula?
   
I use "engine.setZoom(some number);".
   
Both methods have drawbacks and don't completely fill the screen when zooming out.  :(

« Last Edit: February 02, 2017, 12:40:03 am by LIBERADO »
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

yoplalala

  • *
  • Posts: 1338
and it works well, except for the fact that it zooms the HUD as well. I suggested being able to set the scale of specific layers independently, to avoid this. I don't know if it would be an easy fix or not for a Stencyl dev (or maybe you can do that already and I don't know), but to me it seems like the shortest way to get proper zooming in Stencyl, I dunno.

Engine.engine.isHUDZoomable = false;
engine.setZoom(some number);

It will be quite difficult to have different zooms for different layers.
We have to think about the  "mouse over event".  ( this should be ok)
And we have to think about collisions too. ( I have no idea what will happen, if  box2d and simple physics will act the same)

LIBERADO

  • *
  • Posts: 2014
Engine.engine.isHUDZoomable = false;
engine.setZoom(some number);
This still zooms the drawn texts, which is an important problem because in any game we need to draw at least the score texts. I have to use Labels to prevent the texts from being zoomed.

« Last Edit: February 02, 2017, 05:06:25 am by LIBERADO »
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

yoplalala

  • *
  • Posts: 1338
Oh hadn't thought about this. I vever use drawn text.
So we should have an option for the drawn text on the screen. Is it the same with the draw text on the layer ?
Wasn't there a way to draw on a layer ? If we are able to draw the text on the layer hud, maybe it will work.

LIBERADO

  • *
  • Posts: 2014
When I use the block to set the drawing to the layer of an actor anchored to screen, the text is still zoomed.
Only when using Labels the text is not zoomed.
I'm spanish, excuse me for my bad English.
I'm not a private teacher. Please, post your questions in the public forum.

NobodyX

  • *
  • Posts: 1160
I tried this, but it is inaccurate and difficult because we have not a formula to keep centered on the screen the exact point of the scene on which the camera will zoom in/out. Do you have such formula?
Yeah I figured it out for myself a long while ago, it's really simple! The key is "1/scale", which you multiply by half of the screen width and height and then subtract that offset from the regular cam position. So like "x of camera = wherethecameranormallyis -  .5 * screenwidth / scale" (and then the same idea for y, obviously).
https://gfycat.com/QualifiedDistantKissingbug
As you can see it works, it jitters a bit though... I think it's because the camera position is always rounded to a pixel. But that's a minor concern at this point I think.

Both methods have drawbacks and don't completely fill the screen when zooming out.  :(
Oh yeah, tiles don't draw properly work when zooming outwards. Which is a problem but I guess I didn't mention it because I was thinking more about the bare minimum of getting it to work for a real game (where at least you can zoom in).
Engine.engine.isHUDZoomable = false;
engine.setZoom(some number);
Oh nice, thanks! So... I guess if the problem with drawn things like text being resized can be fixed, then Stencyl will have useable-for-a-real-game zooming?????? I know zooming has been brought up a ton in the past, and I think if we're this close maybe it needs to finally become a known feature with its own design mode blocks.
“If you wind up with a boring, miserable life because you listened to your mom, your dad, your teacher, your priest, or some guy on TV telling you how to do your shit, then YOU DESERVE IT.”
― Frank Zappa