C-7's Forum Posts

  • Hmm... the browser capping the framerate at 60 FPS makes it hard to tell any difference. Maybe try closing all instances of Chrome and run again from the Start -> Run dialog as:

    chrome --disable-gpu-vsync

    Then you should get an uncapped framerate which makes for an easier comparison.

    That doesn't seem to change anything. It's still capped at 60. In fact, I don't even see the vsync flag anywhere in Chrome (canary/45 or 43). I wish I could give some better benchmarks, but I'm not sure of any way to show more than 60 FPS.

  • I decided to run a test in three varying areas of my game to get a feel for how it handles. So for three sections of Courier:

    Overworld section:

    Back to Front:

    ~11,890 Objects, 60FPS, 70-85% CPU load depending on what I'm doing

    Front to Back:

    ~11,800 Objects, 45-55FPS, 90-96% CPU load depending on what I'm doing

    Effects range from low to medium-high depending on location, many objects but not always a lot moving, medium characters in one area.

    Small Town Section:

    Back to Front:

    ~1,335 Objects, 60FPS, 25-27% CPU load

    Front to Back:

    ~1,335 Objects: 60 FPS, 30% CPU load

    Effects-light, little movement, medium amount of characters

    Dungeon with a lot of water and effects:

    Back to Front:

    ~1850 Objects, 60 FPS, 68-75% CPU load

    Front to Back:

    ~1850 Objects, 60 FPS, 70-80% CPU load

    Effects-heavy, lots of moving objects, low amount of characters

    Core i7 4770 3.4 GHz, 16 GB ram, GeForce GT 640 4GB

    My game is typically composed of a lot of overlapping objects, so I would think it would be good candidate for Front to Back. I do have effects in some locations which may be negating gains. I also have layout-wide HSL and Exposure shaders for color correction, so that may be a problem with it too. I do get some rendering differences between them, but that's beyond the scope of this post.

  • One thing to do instead of constantly creating and destroying objects (though this takes more work) is to just move them. IE, recycle the objects that are already present. So have an ever-constant pool of objects to use and then just move them to a start location instead of creating a new one and destroying it later. Believe it or not, but this runs better on a lot of hardware by quite a bit.

  • I second that you should look into Spriter. I'm making my game solo as well and Spriter has been the best way for me to have a large quantity of unique characters in the game.

  • I'm not at my computer, but this should get you where you need to be. The loading bar goes from 0 to 1.0, so you can use interpolation to make it move smoothly between the values.

    So something like

    Object set width to lerp(progress, progress*maxWidth, 2*DT)

    Where max width is however wide your progress bar will be at completion. Adjusting the 2 will change how quickly the bar moves. I don't remember the value construct uses for loading progress, but substitute that with "progress".

  • I suppose I'll show a new shot for #screenshotsaturday of Courier! Here's a waterfall area I've been working on.

  • I thought it was entirely CPU-dependent and had very little to do with hdd speed. I believe disabling audio pre-loading may make a difference if you have a lot of audio in the game yet.

  • I remember you working on this before, but holy cow this is impressive! Aside from a few parallax values being different from the original game, this is absolutely stunning work!

  • I've only previewed my game at our local public showcase of indie developers. I got about 2 hours of watching different people play Courier (and there was a line!). The feedback and communication was really valuable to me, but it obviously wasn't a big press thing.

  • It depends on how you're building your levels. If that is one static image, that's more difficult. If it's multiple objects placed on top of each other, it's quite simple. In my game, I just group the different objects in families that change a variable to let me know what surface the player is on. Then events are just modified based on that variable. So I just check it all against the family they're in.

    If your maps is a solid image, you'll need to do some sort of invisible object. It could be a tilemap or just some tiled backgrounds stretched and rotated to fit.

  • As far as I've always heard, you should set up SVN (source control) for your project so that things are synced essentially as you go. Ashley wrote a good tutorial on setting it up--and it sounds like it might really alleviate some headaches for you.

  • An early version of the game I'm currently making

    That looks really well-done and quite polished for an early version! The simplistic visuals are initially deceiving--there's a lot of neat detail in there! Great work, I look forward to seeing more from your game!

  • I ran through your demo on my computer. I got a stutter briefly when leaving the menus, but never anywhere else. My FPS stayed at 60 for the most part. At times it would shift back and forth between 59 and 61 but nothing that was able to be perceived. DT difference was 2 or 3 pretty consistently. I'm posting a shot of the plotter just to show the 59/61, though I really don't think that's an issue. I had C2 with my game and Photoshop running in the background, though I don't think those would make a difference in this case.

    Specs: i7-4770 3.40 GHz, 32.0 GB ram, NVIDIA GeForce GT 640 with 4 GB vram

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I posted a new devlog update and some more screenshots to Courier's page! Check it out! Here's one of 'em:

  • I've posted an update to my devlog detailing the Academy section of the game, which is the integrated tutorial for the game. After a brief introduction, you start out on your final day at the Academy. Read more here!

    And, of course, some new screenshots!