SketchyLogic's Recent Forum Activity

  • I think the image memory goes up to around 250MB. Some down-sizing will definitely be necessary, but I think it's doable.

  • Thanks. Yes, we have a site and twitter account. We're currently looking into our options with porting the game to mobiles or (less likely) consoles.

  • Last month, my partner and I launched Aviary Attorney on Steam. It's been quite a success!

    http://store.steampowered.com/app/384630

    I know the game's genre and style is quite different to most other Construct 2 games, so I thought I might briefly share my experience with using C2 to develop it.

    Areas where Construct 2 helped:

    • C2 allowed us to develop at a lightning-fast pace, especially in the early stages. We went from a blank canvas to a working prototype in under a week, and went to Kickstarter in 2 months. All in all, it took 14 months to create an 8 hour game. I don't think that would have been possible with another engine.
    • We used a lot of enormous sprites. There were 40-ish animated character sprites, each over 1000x1000 in dimensions, and numerous backgrounds that were often over 2000x1000. I know that large sprites are supposed to be one of C2's main weaknesses, so I'm happy to report that nothing bad came from this. A few users complained of long initial load times... and that was it. There were no memory or CPU issues, as far as I know.
    • There was half an hour of music files that played without issue.
    • JSON loading and parsing worked flawlessly - that's what drives the dialog scripts. If you have the game, feel free to unzip the package.nw file and see the dialog scripts for yourself.
    • We used the sepia WebGL filter on literally every layout. I was expecting this to set some people's graphics cards on fire, but surprisingly, there were few issues on that front.

    Areas where Construct 2 was a pain:

    • Switching from regular text to spritefont text was a nasty process.
    • The game is using an old version of C2 and Node Webkit because I was hoping to get Steam achievements running with Greenworks. I couldn't achieve this on Mac and Linux, so they had to be scrapped. Disappointing, but not an enormous deal.
    • I used C2's save states, and this resulted in some game-breaking save issues. I was unable to pin-down the exact cause, and it's possible that these problems have been fixed in a later version of C2, but it was frustrating to see dozens of people complaining of corrupted saves and having no way to fix them. In any future games, I'll probably write my own save files in plain text through NW so that I know exactly what's going on if a save file corrupts.
    • In the later stages of the project, the C2 worksheets started to become cumbersome to work with. I knew this would happen due to the scope of the project, but there were occasions where I longed for a text-based interface. Still, the speedy aspects of C2 probably outweighed the cumbersome aspects.
    • I had some issues with the NW window frame, and I think these problems are inherent to NW itself. For example, the custom cursor would occasionally change to a resize icon. This is hardly Scirra's fault, but it was infuriating to encounter "unfixable" bugs. Again, my issues may have been fixed in a more recent version of NW.

    Conclusion

    All in all, I'm generally happy with our choice of engine for the project, and there's a good chance that we'll be using C2 (or C3) for the next. C2 is clearly not designed with text-heavy adventure games and enormous sprites in mind, but it's great that the engine supported the assets without crashing under the weight.

    I can't help but wonder how the game would have turned out if I had switched to, say, Love 2D in the early stages of development. I think the game would have probably turned out a little more bug-free, but then, I'm not sure how much longer development would have taken. C2's layout view saved me weeks of valuable time over the whole course of development.

    206. I'm using version 0.3 of Greenworks so I can use the jankless 10.5 version of Node Webkit.

    Greenworks works fine for me on Windows, but even after following instructions and trying different combinations of versions, I have yet to get it working on Mac and Linux. Has anyone managed to get it working on these platforms? If so, I would love some information on exactly what I need to do.

    I would wait for the new version of the plugin, but my game's release date is fast approaching.

  • I initially posted this under the "How do I" forum, but now that I can reproduce the bug it's probably better suited here.

    Problem Description

    In Chrome (latest version), when a looped music file is playing, other non-looping, tagged audio files occasionally pause upon finishing, rather than fully stopping like they should.

    Attach a Capx

    https://www.dropbox.com/s/4uvx5dh58x2u4 ... .capx?dl=0

    Description of Capx

    The file plays a looped music audio file on start-up. Then, every tick, it checks if a tag is not being used, and then attempts to play a sound file with that particular tag.

    Steps to Reproduce Bug

    • Run in Chrome.
    • Hear beeping over piano music.
    • After a few seconds (can be anywhere from 1 to 30), the beeping stops.

    Observed Result

    The tagged audio sound file stops after a few seconds. Checking the audio debug menu at this point shows that the audio has paused at its last millisecond, and has not fully stopped; the tag has not been freed.

    Expected Result

    The tag ought to free up every time the sound file finishes, and as such the beeps ought to keep playing indefinitely.

    Affected Browsers

    • Chrome: (YES)
    • FireFox: (NO)
    • Internet Explorer: (?)

    Operating System and Service Pack

    Windows 8.1.

    Construct 2 Version ID

    204.2 (Also tested in 192)

  • I have been working on a game that uses webfonts to style the in-game dialog. I have tested the game on Chrome, Firefox, Node Webkit, Mac, and iOS (in-browser), and aside from some slight text bolding on Firefox that can be attributed to different HTML5 implementation standards, the font rendering was consistent.

    But today I tried running the game on another computer (one running Windows 8, where I previously relied on Windows 7), and suddenly all the webfonts appeared smaller. A font size of 20 on the old PC would appear as around 16 on the new one. This was true for Firefox, Chrome, and Node Webkit, and didn't seem affected by window size or desktop resolution. I can make some screenshots, if necessary.

    Any idea what's going on here? I'm probably going to make the jump to spritefonts to avoid future headaches, but it would be good to know what the source of this discrepancy is.

  • The game is upscaled to fit the screen on iPad and down scaled on iPhone. Can this be related ?

    Let's find out. See if the same lag happens in crop mode.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Animmaniac: if direct cell manipulation were implemented, you could probably make a work-around by importing the JSON data into an array, then parsing the array data to the obstacle map with a couple of loops.

  • That's fantastic. Thanks a lot Ashley.

  • That's not a bad solution. Unfortunately in my case the citizens all have completely unrelated paths, so using a common array of nodes wouldn't work. However, I could extend on your idea by making a single obstacle-map-calculating object that works out unique paths for any citizen upon request, then parses the node data back to the citizens to be stored locally (or an enormous array for every citizen's every node). The only downside of this method would be that only one path could be calculated at a time, so I would probably have to set up a queue in case two citizens try to calculate a path simultaneously. I have no idea whether this would be efficient on a large-scale, but it would solve my initial stuttering problem. I'll give this a shot if I can't find a better solution. Thanks for the idea and capx.

    How exactly would you want to adjust them? I'm guessing you're looking to be able to specify a specific cell, and either change whether it contains an obstacle, or have it recalculate to check if it contains an obstacle. If so, I don't believe there is a way to do this.

    Oh, I have no idea on the "how". I just figured that a "make this cell an obstacle" function would be hugely more efficient than the current "make this object an obstacle then recalculate" method.

  • I'm currently working on an isometric city sim game. Progress has been good - I'm at the stage where the user can put down buildings, and citizens will move from one building to another whilst avoiding obstacles in-between through use of the pathfinding behavior. I'm currently recalculating the pathfinding obstacle map for each citizen when a new building is placed. This works fine with a small number of citizens but, not surprisingly, it causes a stutter as the population grows (even less surprisingly, this stutter is most notable on mobile platforms). Aside from this, the framerate is consistent and high. My questions are:

    Since all citizens use an identical obstacle map, is there a way of calculating the map once, then applying it to all entities?

    Is there a way of adjusting individual collision map cells, rather than using the in-built "add object"/"re-calculate" functions?

    I suppose if there's no obvious solution I could write my own pathfinding functions, but it would be a shame to not make use of this in-built feature.

SketchyLogic's avatar

SketchyLogic

Member since 11 Jun, 2012

Twitter
SketchyLogic has 2 followers

Trophy Case

  • 12-Year Club
  • Regular Visitor Visited Construct.net 7 days in a row
  • RTFM Read the fabulous manual
  • Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

16/44
How to earn trophies