EvasiveBits's Recent Forum Activity

  • Hilarious, I love it.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Of course you can. Construct 2 can make any 2D game one could imagine. It seems like it's geared to make platform games but it can do everything, I think they focus on presenting platforms because physics and transforms trip people up when starting game dev., C2/C3 made it as buttery as you can imagine. You will need to purchase it to have access to enough layers and events, I recommend C3 though, mostly because it makes arrays easy for beginners and will have more features in the future. I tried every game engine that is current, as far as 2D goes Construct is my favorite even though others are free or can export to native(android). I was caught up on native until I ran some tests of my own and C2 apps run almost just as well, the new C3 runtime should close that gap.

    With my fanboy stuff out of the way I want to say this, no game engine gets it all perfect. Prefabs in Unity are fantastic, Godot scenes and nodes are great, GameMaker can organize large projects very well. Construct specialty is communicating to the developer, once you learn arrays, stings, math, you'll be able to figure things out without even researching it. Construct biggest fault is managing large projects, it's up to you to keep the event sheets clean and not lose track of your programming. Use groups and Do Not Repeat Yourself then you should be good.

  • My horror story: I made a calorie counting app that allows the user to save nutrition facts of foods. I was an amateur at the time I didn't know how to manipulate arrays; I built a custom array to store user data, each x value would be a food name, each food had 11 attributes at the time. I made 250(x) custom slots with 11(y) attributes, a single event for each attribute was used to save all the data properly (in my amateur head :/), that is 2750 events, don't worry it gets better. I had 3 menus, one for a log, another for recipes, and finally one for individual food. That's 8250 events.

    A few months later I learn some python and learned what to search for in construct in order to program more efficiently.

    I replaced that 8250 conditions with a single event to trigger a save, a loop sub event with an incremental function, another sub event to organize and save the array. I refactored the programming (which originally took me a weekend) in less then 10 minutes. Now the menus are Infinitely sized.

    The end result left me feeling like I am probably wasting tons of time and don't even realize it. But then again I got in so many reps and learned a very valuable lesson; stuff will indeed go wrong and I will be the one to blame half the time, and that is why creating is hard work, not quitting + experience * talent = success. My advice is to abstain from the project for a few days until it bothers you so bad that you want to go back. If a week goes by then it time to go to work.

    Point is we all do dumb things in our own dumb little ways. Its the ones that stop putting in effort that you never hear about, although you will read them complain a lot about the app store : ).

  • Count On Calories, wells its not a game but I spent the past year working on it.

    https://play.google.com/store/apps/details?id=com.IanZ

    Fun Facts

    + I wrote a python console application to create a food database of more than 8,000 items. The console app made a c2 array in json string format.

    + I created a fraction system that simplifies fractions that are calculated serving by volume function. Simplifying fractions required me to use Euclid's algorithm. (after

    programming that I built up the confidence to learn how to code which I later used to build the food database.

    + The entire app takes place in one scene with one event sheet

    > godot already has visual scripting, however it is not the same as construct.

    > Godot's visual scripting is similar to Unreal's blueprints

    >

    From the looks of it I'd rather go with scripting.

    I would have concerns with lag in the editor with all the extra rendering involved.

    I gave Godot a go because it was supposed to be like python, but it just gave me nightmares of gml. By the way, for all of you who are going to leave Construct because you don't want to pay for the sub, I highly recommend NOT going to any of the free engines. I've seen more crashes on GDevelop than when I went to a demolition derby, but do as you wish and remember you can play Battlefield 1 with 8 gigs of ram and a GTX 660.

  • > You may want to check the store and see if there are any templates,

    >

    This is the LAST thing you want to do.

    Thanks for the heads up.

  • Hard to tell for sure with the little information you gave, I mean that in no offense but you simply described the problem, there are a lot of different factors that can cause this.

    Have you checked the origin of the sprite? maybe its not where you expect it to be. My best guess would be that the two objects have different origins.

  • You may want to check the store and see if there are any templates, however her is my 2 cents.

    You definitely can do that. My answer is not going to be a simple copy and paste type, rather its suggesting how one would need to think in order to achieve what you ask.

    First off one would need to think about the origin of the bullet and how its going to be generated. If it is going to be generated from a sprite that will be be twisting around then all you have to do is focus on the timing that each bullet is fired, and the speed of the sprite rotation, the environment in which you created will generate the pattern naturally (the generation from sprite and traveling in direction of angle of the sprite when generated.

    If you want the bullets to generate from a object that generates bullets from random areas (basically there is no front facing location) then you need to focus on physics, not the physics behavior but physics the study of energy. One would have to tweak generate events that spawn bullets in different directions (angles), then focus on timing and speed. If I were to do this I would get an image of a 360 degree compass and imagine how many bullets I want to for the spiral I imagine. Then I would experiment with timing (the time between each bullet generated done with wait actions & create actions). If you try this you will find that the timing and angle are responsible for creating the spiral, the speed of the bullets I would focus on last, but I'm sure you'll reach a point where you'll be fine tuning all three to get the desired effect.

    In short; Focus on generating the circle with angles > Focus on generating the spiral with timing > Finally use speed to generate the desired affect, slow if its enemy bullets you want the player to move around or fast for chaos. Then wrap it all up with a loop condition.

    Take it one step at a time, if it sounds intimidating it just because you didn't start yet.

  • I'll have to test this on my phone. It doesn't work in the construct 2 preview but I think it doesn't save any game progress and deletes everything after I close the browser.

    Interesting, I haven't tested it on mobile so sorry I can't help you from here. Hopefully someone with more mobile experience will chime in soon.

  • I would handle this with a global. Lets focus on blue. Make two animations big and small. Make global: BlueSelect = 0

    Now make two events:

    Event: BlueSelect = 0 | Action: set animation to "big"

    Event: BlueSelect = 1 | Action:set animation to "small"

    Then in your existing code that selects and deselects blue simply add an action that sets the global.

  • I tried to use local storage to achieve that but it didn't work. I used "Set Array to Array". Then when I enter the layout with the scores I've done "On start of layout - Set "Array" to Localstorage.itemvalue"

    Here is how I save and load an array:

    The save event (lets say click "save" button) triggers the following actions to save High Scores array (we'll call this "hscore":

    Object Local Storage: Set item "hscore_key" to hscore.AsJSON

    On Layout Start:

    Object Local Storage On item "hscore_key" exists: Get item "hscore_key"

    Object Local Storage on item "hscore_key" get: Object hscore (the array) Load from JSON string LocalStorage.ItemValue

  • Question: Are you saving as a JSON string?

EvasiveBits's avatar

EvasiveBits

Member since 26 Jan, 2017

Twitter
EvasiveBits has 2 followers

Trophy Case

  • 7-Year Club
  • RTFM Read the fabulous manual
  • Email Verified

Progress

9/44
How to earn trophies