For Glory

0 favourites
  • Hello dear Constructors,

    I was working for some weekends on this small project in Construct and finally got around to get a license (many thanks Tom for resolving my issue immediately and even coming up with an extra <img src="{SMILIES_PATH}/icon_e_biggrin.gif" alt=":D" title="Very Happy"> To honor this commitment I did an all-nighter and puzzled together the fragments of my last 3 weekends for a small demo:

    Subscribe to Construct videos now

    And a simple mockup screenshot from last week:

    Watch in 720p for 60fps

    Everything is work in progress and will most probably change <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

  • Looks awesome - and your audio placeholder works very well with the teaser.

    And I love your water effect.

  • Looks brilliant! Be sure to email us when you have a version to play

  • Such eye-candy xD i'm looking forward to trying this out.

    That water compliments everything

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Thanks for the compliments on the water. It's basically a one liner from my old qbasic days

    It also didn't reflect anything on mobile if I recall my previous tests correctly. Is there anything I have to do differently on mobile in regards of GLSL?

  • You've done some pretty impressive work, although I would be cautious about it looking so much like Luftrausers.

  • Luftrausers was clearly my inspiration, my first draft looking basically absolute alike just so that I could see what I would face going in this direction <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile"> I have much more plans though on additional stuff and think that the final product will be different enough from luftrausers <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    https://my.mixtape.moe/jlqfth.webm

  • yeah I'd be super careful.. it doesn't look just inspired by Luftrausers, it's almost identical looking (although I think yours is slightly better looking actually - it could easily be L2!) and it plays the same.. and has the same exact bullets, water mechanic and screen shaking behaviors etc..

    but cool reproduction.. so kudos for that..obviously not easy to do.. it looks amazing.

    EDIT: just read above that you planned to change it and that it was just a test to see what you could do... I was only saying incase you didn't see it.. I know how when working on something and are super close to it you don't really "see" it anymore..

  • I'm curious how you go about you transition player animations: side view to top view.

    in my game I've been playing around with making the player do something like this but my problem is making it smooth, and when held in 1 direction it looks too much like an ordinary sprite. How many frames are you using there? how many animations?

  • Hi Jobel, to achieve this effect you need exact 0 animations if you want THIS (just siluette) look. If you have a detailed space ship surface texture, my used approach will look like crap.

    In case you want to know anyway, 3 very simple steps:

    1. All you need are two sprites. One from the side (Sprite1) facing west and one from top (Sprite2) facing west. I would recommend putting them in the same container.

    2. Store the height of each sprite in a variable on each sprite.

    3. On every tick:

    3a) Set the height of Sprite1 to cos(self.Angle) * self.originalheight

    3b) Set position of Sprite2 to Sprite1

    3c) Set angle of Sprite2 to the angle of Sprite1

    3d) Set the height of Sprite2 to sin(self.Angle) * self.originalheight

    You can use this solution with any behavior that modifies the angle of an object, nothing else is required.

    At least this is the solution I thought of when I saw Luftrausers for the first time, so I tried it in Construct and liked the final result. Maybe there are other ways to achieve this too (like creating a 3D model in Blender/C4D/3DSMAX/MAYA/... and rendering ~64/128 frames). Luckily we have enough rendering power at hand nowadays so that we don't need to worry about the usage of sin and cos in real time graphics, unlike my QuickBasic days <img src="{SMILIES_PATH}/icon_lol.gif" alt=":lol:" title="Laughing">

    Btw regarding similarities to luftrausers: I know it's similar now, but I spent a total of 3 Weekends + 2 days on it so far (the exact same amount of time I spent on Construct 2). I'm at the very beginning and learning Construct 2 at the same time. Walking a similar path along Luftrausers gives me guidance and when I'm happy with what I have _technically_ I'll implement more and more gameplay changes. In the end we all get inspirations from somewhere and have to take it from there to the place we envision. I understand that this looks very much like Luftrausers, but I also know that my vision is so much bigger than what I've achieved so far, so I'm not worried at all if I hear things like "This looks too close to Luftrausers" as I know what MY goal is <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    And no, I did not switch back and forth to Luftrausers to see if my Screenshake effect works in the same way. I actually discovered the screenshake effect in consturct 2 by accident and liked the impact it creates as games without hit feedback are bland as heck (in OMF2097 you could even manually change the hit stop emphasis in the options!) so I'm not sure if all those points are things that are absolute exclusive to Luftrausers, it's not like they created the genre of ships flying around and shooting each other... After all I grew up with https://en.wikipedia.org/wiki/Sopwith_(video_game) <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    I was also working on some other games on Unity and on LibGDX (and previously XNA) but when I'm done with this I'll most likely switch them all over to Construct 2, even though I face some issues with Containers and Families, but I guess that it's just a simple case of EIFOK.

  • In case you want to know anyway, 3 very simple steps:

    1. All you need are two sprites. One from the side (Sprite1) facing west and one from top (Sprite2) facing west. I would recommend putting them in the same container.

    2. Store the height of each sprite in a variable on each sprite.

    3. On every tick:

    3a) Set the height of Sprite1 to cos(self.Angle) * self.originalheight

    3b) Set position of Sprite2 to Sprite1

    3c) Set angle of Sprite2 to the angle of Sprite1

    3d) Set the height of Sprite2 to sin(self.Angle) * self.originalheight

    You can use this solution with any behavior that modifies the angle of an object, nothing else is required.

    ahh very clever.. yeah that probably would not look good with a detailed sprite.. I will try it though

    Btw regarding similarities to luftrausers: I know it's similar now, but I spent a total of 3 Weekends + 2 days on it so far (the exact same amount of time I spent on Construct 2). I'm at the very beginning and learning Construct 2 at the same time. Walking a similar path along Luftrausers gives me guidance and when I'm happy with what I have _technically_ I'll implement more and more gameplay changes. In the end we all get inspirations from somewhere and have to take it from there to the place we envision. I understand that this looks very much like Luftrausers, but I also know that my vision is so much bigger than what I've achieved so far, so I'm not worried at all if I hear things like "This looks too close to Luftrausers" as I know what MY goal is

    I totally get what you are talking about..definitely a good way to learn. Honestly it just looks so polished and "finished" that thought this was your game. Even the color scheme is the almost the same Luftrausers. I didn't mean any offense, you just didn't mention Luftrausers at all. Even if it is your remake Luftrausers, that's totally cool too...I was just saying be careful when trying to sell it is all.

  • oh haha.. doing it with a non-silloutted image doesn't only look bad.. it just doesn't work.. the very concept of it! okay.. good to know.. so I'm back to my 48 frames of rotation.. thanks anyways!

  • I'm surprised at how much you were able to accomplish in such a short period of time! It looks pretty great. I'm super interested in how you got the water reflection to look so fantastic.

  • The water reflection is basically just a one line shader. For each pixel you just go to the corresponding pixel on the other side of the surface and pick the color. To create the small ripples you just add a simple cos(...) calculation which is based on the time passing (global variable seconds) and multiply it by the distance to the surface, thus creating bigger waves the further you move away. And in a second step I create 100 of my 8 frame (if I remember correct ) single color, single animation water ripple sprite upon start of layer at random positions and store away the original x position and set the width of the sprite to be a multiple of it's y distance to the surface, thus making the ones closer to the bottom bigger and the ones closer to the top smaller.

    In a foreach loop of these ripples I just say that their x position is their original x position times the distance of their y position to the water surface % screenwidth, thus making the ones in front move faster than the ones higher up. I was inspired by the water effect in Kingdom, which I liked very much.

    These two effects combined create a very neat water surface with comparatively very little hardware impact. I guess the second step with 100 water ripples etc could've also been solved via a shader and a layer ontop of the water with it's own texture that increasingly stretches pixels in width the further down we go in the image, but I didn't want to spend too much time on it, as this effect was reasonable fast enough and my laptop has more cpu processing power than gpu power

    As most hardware intensive tasks in this game are basically just bound to the amount of particle effects I create, I'll implement some options which will allow the user to turn the count of effects down for better performance on lower-end hardware Also most calculations are not dt based, so this game most likely will run too fast on 120fps... or is there a 60fps cap in Construct 2/WebGL?

    When I'm done with the game I could write a proper tutorial with screenshots for this type of stuff, but beware, I just started with Construct 2, so maybe I'm wasting rendering power with my approach. I was just happy that my effect runs well enough on my laptop, so I stopped investing any further time in performance tuning.

    And I'm quite happy with the development performance in the last few days myself. Since I received my key I was able to weld the pieces together and add quite a lot of "game".

  • Also most calculations are not dt based, so this game most likely will run too fast on 120fps... or is there a 60fps cap in Construct 2/WebGL?

    no it's not capped...

    someone was having streaming issues when using dt though... I use it everywhere timing is important though.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)