Arima's Forum Posts

  • I've got 10,000 events in loot pursuit. Still runs smooth.

    Good advice has already been given - there are lots of ways to optimize, some events like collision detection take up more cpu time, etc - but I want to bring your attention to wisely using subevents and groups. A big part of the reason that loot pursuit plays smoothly even with about 7,000 events in one layout is because construct is skipping over most events each tick. For example:

    mode="action"

    • game subevents

    mode="paused"

    • paused subevents

    If mode="paused" all of the game logic is skipped without you needing to disable any groups or anything.

    If you structure your code right, thousands of events won't matter.

  • What extra real estate? It's the same number of pixels, so that shouldn't make a difference.

  • I made a basic performance test for the new ipad - I was pleasantly surprised by getting 60 fps with about 250 instances in retina mode with safari.

    Until I tried it in landscape mode, which slams the framerate so hard I can't get ANY sprites on screen at 60fps.

    http://www.amirai.net/ipad/sprites/

    Give it a try - load it up on a new ipad and switch between portrait and landscape modes and watch the difference.

    It happens in another game I'm making too. Any idea why this happens?

    Here's the .capx if you want it: http://www.amirai.net/ipad/sprites/ipadfps.zip

  • They're called rounding errors.

    This isn't a problem with construct - it's a problem with how computers are designed. People working with other languages have to deal with it too.

    The simple explanation - CPUs don't have enough precision to calculate floats (decimals) exactly right, so you often get results like the one you posted.

    You can count integers being exact, like 1+1 equaling 2, but you cannot count on 0.1+0.1 equaling 0.2.

    Either don't use conditions that require exact floats, or when checking the variable make it an integer instead, like if a variable is 0.1, use "if round(variable*10)=1" instead.

  • I use a projector often, so I also would like the ability to increse the font size across every part of C2. While the new CTRL+mousewheel is a step forward, it's awkward because it doesn't increase the size of the field window, so it ends up obscuring the bottom part of the expression, has to be done for each field, the size isn't remembered so it has to be done each time, and it doesn't affect any of the other parts of the windows, like the text for object names in the wizard and expressions list, or the explanations of what things do - not to mention I often use alternative input devices so I would have to switch back to the mouse every time.

    It's a start though, so I second the thanks!

  • You do not have permission to view this post

  • You do not have permission to view this post

  • You do not have permission to view this post

  • You do not have permission to view this post

  • You do not have permission to view this post

  • I mentioned it in chat, but I want to apologize here - I didn't realize mods could delete games, otherwise I would have done it earlier. I've deleted it for you.

  • I think it would be far better to come up with a cross-platform file I/O system which works transparently with both Awesomium and browsers which support file systems. However, that means not using the traditional file I/O, so I'm not sure what that would look like. It probably means unlimited file I/O, but in a sandbox (where the user can only choose files previously saved to the sandbox).

    It sounds good, but I'm concerned with transferring the files in the sandbox into and out of the browser. It's not an elegant process having to use a windows dialog box to do it. What if I have a lot of files there that I want saved to a folder to reimport into C2's files section later? Would I have to save each one individually every time they get updated? Or would it instead work to basically "ship" the game WITH the sandbox to the user? If that's the case, then that would solve a lot of the reasons I wanted file I/O.

    > File size - Not as much of an issue these days, but it seems a waste especially with needing 3 copies of each sound file in each backup of a game.

    Not sure why this is a reason for EXE preview. Only .oggs are exported with Awesomium since it can read them.

    It was more a reason for file I/O - what you mentioned above about the sandbox would fix it though (and it wasn't much of an issue anyway).

    aving times - true, saving as a project is faster, but even with a small game it can start to take a bit of a disconcertingly long time when imagining how much longer it would take to save a big game.

    Not sure what you mean here, do you mean save times in C2? Why would a new preview option affect this?

    I was thinking the file I/O would affect it, because then c2's editor wouldn't have to do anything with the files when saving since they wouldn't be kept in the project, but on second thought, if you coded C2 so that if a file wasn't modified it doesn't get rewritten when saving, I guess that wouldn't happen.

    reviewing times

    Preview times for an EXE are likely to be the same as previewing in Chrome. Classic was slow because it would build a new data file for each preview, as if exporting. C2 now points the browser to the existing project files without copying anything, so even large projects should be fast. I don't see an EXE previewer improving on this.

    I was thinking that the browser itself could potentially take quite a while loading everything at the start. However, with how you described how it works, as long as the eventual option for loading objects/layouts can read things from disk as they're needed rather than all at once at the start, I guess that's a non-issue as well.

    pdating files - if we want to update a piece of music, we have to go through the process of importing and replacing it each time. If we could have it load from disk, all we need to do is overwrite the file.

    If you save your project as a folder, don't you get this already?

    *Facepalm* - yeah. Forgot about that.

    ome people want to make EXE-only games - it would be very, very nice to preview directly via the output method they're going to use - no having to wonder if the game is going to work differently via the EXE exporter (bugs in awesomium or such, etc). A lot of bugs are found when testing other stuff in the preview - having to do a whole extra round of testing specifically for the export would be extremely inconvienent, especially for large games like an RPG!

    I admit this is probably the best reason for making an EXE previewer. But if we can get it working nearly identically to Chrome, I still think that's a better solution. Hopefully the EXE exporter can literally be Chrome in its own window.

    I have to disagree here. I still think it's important to preview the game as it will be delivered, as well as a complex game could potentially expose previously unknown bugs. Also, I just feel... uncomfortable with the idea of shipping a game that I didn't test thoroughly in its shipped form.

    hat's worse, is when previewing via a browser, that's 2.5/5 MB shared for ALL games made with construct 2!

    The limit, if any, is per-game. However it is most likely any limit can be removed anyway.

    Per game if it's EXE, sure, but with web browsers it seems that the webstorage for all C2 games that I'm developing show up in the same keys list under resources in chrome - which implies they're sharing the same 2.5/5 MB limit. Is that incorrect?

    ebstorage issues - as browsers have limits of 2.5 or 5 MB for webstorage...

    This is only because browsers operate on the open web. The limit can be removed in Awesomium. I'll check if this is done already or if we need to do something.

    That would be fantastic, but it still runs into the problem:

    I'd prefer not to add a preview option for EXE if it basically works the same as the Chrome browser.

    ...that it doesn't work the same if EXE has no limit to webstorage and browsers do. Most of the benefits of unlimited webstorage are for while developing the game, rather than after export.

    I understand your reluctance to add EXE-only features, and if sandbox you mentioned was implemented and especially the limit for webstorage was removed, I guess I'm okay with no direct to disk file I/O as it won't limit us that much, but I still strongly feel the need for previewing as EXE for the webstorage limit reason alone, and also I still think it's important to preview a game as it will be played. Would it be difficult to add it as a feature? Because I think a lot of people would use and appreciate it.

  • MUCH better. I'm actually getting better framerates in FF than chrome!

    Edit: better framerates in one game, slightly worse framerates in another. Either way, vastly improved!

  • I would really, really like not only full file I/O, but also the ability to preview as an EXE instead of through a web browser like with construct classic - one click and an exe appears running on the screen. Reasons for this in order of importance, least to highest:

    File size - Not as much of an issue these days, but it seems a waste especially with needing 3 copies of each sound file in each backup of a game. However, it leads into...

    Saving times - true, saving as a project is faster, but even with a small game it can start to take a bit of a disconcertingly long time when imagining how much longer it would take to save a big game.

    Previewing times - while I haven't tested it yet, I'm concerned that at some point when working on a larger game it's going to start impacting preview times as well, as happened with construct classic. I realize C2 is written far, far more efficiently, but regardless that can be a lot of data to move around all at once and if some of it could be loaded at runtime when it's needed via actions instead it would make it much smoother.

    Updating files - if we want to update a piece of music, we have to go through the process of importing and replacing it each time. If we could have it load from disk, all we need to do is overwrite the file.

    Some people want to make EXE-only games - it would be very, very nice to preview directly via the output method they're going to use - no having to wonder if the game is going to work differently via the EXE exporter (bugs in awesomium or such, etc). A lot of bugs are found when testing other stuff in the preview - having to do a whole extra round of testing specifically for the export would be extremely inconvienent, especially for large games like an RPG!

    Webstorage issues - as browsers have limits of 2.5 or 5 MB for webstorage, that means if you want to use more than that you have to start resorting to swapping stuff in and out of webstorage to disk using clumsy save/load file from disk dialogs every time you want to swap between them, you have to keep track of which is which, and hope that is the dizzying process of making a game you don't accidentally save as the wrong file name and overwrite the wrong file or some such.

    Or then, what about on the user's side, if your save files simply need more than 2.5/5 MB, like if you include a level editor that the user can use? What then? Even with using EXE, there are simply no options other than asking the user where to save the file, then to load it later, both via a windows dialog box. Users aren't going to like that, it's not a smooth experience at all.

    What's worse, is when previewing via a browser, that's 2.5/5 MB shared for ALL games made with construct 2! Want to make multiple games that use a lot of data at once? Gotta swap webstorages every time.

    The full file I/O would really need preview as EXE to work well, though. Otherwise, you'd have to export to EXE each time to preview, which would be infuriating!

    If we had both preview as EXE and full file I/O, that would solve these problems completely and be a great working experience. Please, please add both to C2!

  • Ahauuhahua +1 for bringing on Avatar :D

    I second that :D

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads