TiAm's Forum Posts

  • Bullets would seem to be the worst thing to put on a render cells layer. They are always moving. I would guess enabling render cells in such a case would result in worse performance.

    As always, test and see. Maybe you'll be surprised.

  • 70mb...you are awful close.

    When you export, look at your 'images' folder and your 'media' folder. What is the size of each? If most of it is images, there probably isn't much you can do short of shrinking sprites, dropping frames, reducing color depth, and all that unpleasantness.

    OTOH, if you have 20 or 30mb's of data under the 'media' folder, and most of it is SFX and music, you might have some options. If you are 'encoding' those files at more than 128kbps, I'd suggest shrinking them. 128kbps aac/ogg sounds far better than 128kbps mp3, and will only fall short in quiet environs with good headphones or excellent speakers.

    volkiller730 is very right about checking your spritesheets; sometimes shrinking an object by 1% is enough to halve the resolution of the exported sheet. Still, that probably won't affect export size much (blank space squeezes down to nothing with png), but it can improve your performance and slash your memory usage.

    Semi-Off Topic: Always work in higher rez than you'll end up using (at least 4x; preferably 8x) so you can go back later and 'reshrink' your graphics with minimal artifacts.

  • Layouts:

    https://www.scirra.com/manual/67/layouts

    Put different levels on different layouts. Only 1 layout is active at a time.

    Your entire game must load before starting most layouts. The one exception, if enabled, is your loader layout. It loads and starts before anything else.

    https://www.scirra.com/tutorials/318/ho ... ng-screens

  • newt

    Itch.io...this site looks great. Lots of unique indie content, some real gems here. Thanks for linking it.

  • Pretty sure you can't upload to the arcade anymore, as of r190.

    Edit: Yeah, search for the word 'arcade' here (comment is by Kyatric):

    https://www.scirra.com/construct2/releases/r190

  • spacedoubt

    Thanks for the link, I'll keep it in mind for a backup. Right now I'm just psyched at how good altervista is working. Plus, since it's not a hack like w/ Gdrive or dropbox, I don't have to worry about it breaking.

    herrislow

    Will definitely deploy to kongregate when I have a finished game.

  • Well, I think Ashley's blog was pretty exhaustive, and included example cases where render cells would be helpful.

    Basically: good for large layouts where you have lots of static objects that don't move or change their z order.

    Put all those static objects on one layer and enable render cells for said layer.

    Make sure not to put any other objects on that layer that you would be repositioning (moving or rotating; opacity changes are fine) regularly.

    Enjoy better framerates (assuming you have > 1000 static objects).

  • Rayek

    Well, to hell with dropbox. I just tried altervista, and it's great.

    Exported a project, zipped up my folder, uploaded it (it auto-extracts zips), and brought up my game. Works perfect.

    You get 1gb of space, and traffic caps at 15gbs per month. I don't think I'll be coming near either of those limits.

    Color me happy.

  • Sargas

    This works for you on a free dropbox account? Doesn't work for me.

  • I think you could do this with the ajax plugin (Ajax.PostToUrl), but I'm not 100% sure, haven't tested it myself.

  • I think you want anglelerp. For example:

    anglelerp(Self.Angle,TargetAngle,8*dt)[/code:25qrzfms]
    
    ^This will lerp from the turrets current angle to the target angle. The rotation is determined by the closest angle. So:
    
    [code:25qrzfms]anglelerp(Self.Angle(is 0),170,8*dt)[/code:25qrzfms]
    
    ...will rotate clockwise, because that is the shortest distance. Whereas:
    [code:25qrzfms]
    anglelerp(Self.Angle(is 0),190,8*dt)[/code:25qrzfms]
    
    ...will rotate counterclockwise, for the same reason.
  • Yeah, migrating instance variables up to family variables is a bit of a pain. What kind of solution do you think would be best?

  • hgr

    I agree, it can be a pain. I just try to work around it.

    The best thing is to keep a small number of event sheets. I used to use event sheets for partitioning a project into components; now I tend to pack more into an event sheet and use groups to sort things.

    For example: instead of a sheet for every level, put the logic for each level in a group, and all those groups in one event sheet. Start with all level logic inactive, and activate/deactivate the groups as needed.

    For logic that needs to be included across different sheets, I try to encapsulate as functions unless the operation is going to be called so often as to become a performance issue. All the functions go on one sheet, which is included where needed.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Ashley

    Yes they do...more so than I thought, now that I look at it. I thought global layers automatically appeared on every layout; didn't realize they were 'opt-in'. Now that I look at them, they basically work like 'include' for layers.

    Nonetheless, copy/paste would be handy for cases where you wanted to copy 'template' layers and iterate on them in the editor, without having to resort to events to reposition objects and tweak attributes.

    On globals: I still wish the editor handled layer conflicts better. You have to be careful you don't duplicate the name of another layer on another layout, because the editor doesn't rename anything or warn you, it just overrides the non-global layer. For a game with many layouts, this means breaking out notepad++ and trawling for layer names.

    Oh, and when I was playing w/ global's, I think I spotted a glitch: If you have a non-global layer on one layout, override it w/ a global layer on another layout, then DELETE the global layer, the local layer still says 'Global, overridden', and prevents you from placing objects on it. If you save the session and reload it, this corrects itself. Can you see this, or should I file a bug report proper?