oosyrag's Forum Posts

  • Scale the layer.

    Although you should probably downsize the tilemap source image instead, to not waste memory.

  • Compare with the included multiplayer pong example file and see what you're missing.

    If the pong example doesn't work you might have a connection issue and need a TURN server.

  • You'll want to save the x, y, and angle of each sprite object presumably.

    Make an array for each object.

    For each instance of the object, push x, y and angle into the array.

    Save the entire array asJSON to localstorage

    When loading, loop through the array and create an instance of the object for each entry in the array, positioning them according to the saved data.

  • Try Construct 3

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

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

    AFAIK shutting down a chromebook shouldn't clear it's cache, unless you were using incognito.

    But a user could manually clear the cache and lose the save anyway, so it's always best to use localstorage.

    Edit: Manual says system save doesn't use the cache at all in the first place, so I dunno.

  • Are you running any proxy on edge or chrome? Disable all add-ons and plugins? Update to latest version?

    To troubleshoot I would do a fresh install of both of them on the same computer, then test again.

    Edge is based on chromium, so it should work the same as chrome. The chat example works fine on my device with both browsers as well.

  • letmegooglethat.com

    For hosting text without your own website that doesn't require authentication try GitHub or pastebin.

  • If it works from chrome and not edge from the same connection, it's clearly not a connection problem, which means it has nothing to do with stun/turn to begin with.

    Again, if it works in Chrome, it also doesn't have anything to do with where in the world you are located.

  • I'd recommend an invisible helper object(s) as a reference to keep track of locations. Either a single object with 3 image points or 3 separate instances. They are position 0,1, and 2. On trigger move the visible objects from position 0 to 1, 1 to 2, and 2 to 0.

    Or pin the objects to the helper object, and rotate the entire helper object 120 degrees.

    There are many options to approach this.

  • You can set up 2 or as many los cones as you want, facing the directions you want, with the distances you want.

    Or associate the player and the enemy objects by storing the uid of the platform they are touching in an instance variable. If they match, do the thing.

  • If you have to ask here, you're probably not going to want to or have the ability to set up your own TURN server. This also isn't really the place to ask either, since it's outside the scope of these forums and you probably won't get much help. STUN is also not particularly relevant here, as it is already included for free and setting up your own isn't going to make much of a difference.

    Just using a TURN server is another matter though. There are websites/companies that provide TURN server services for a fee. You simply sign up for their services, point your app at the URL provided by them and provide the proper credentials with the multiplayer "Add ICE server" action.

    That's pretty much it and will solve most of your connectivity issues.

  • There are two approaches to loading screens based on the way images in memory are handled between layouts.

    construct.net/en/make-games/manuals/construct-3/tips-and-guides/memory-usage

    Specifically:

    When the layout ends, all images that are loaded but not used on the next layout are released from memory.

    If an object is not placed in the layout view, but events create it at runtime, its images are not pre-loaded.

    You can have your "loading screen" be either an intermediate loading layout that will create the objects required on the following layout, or a loading layer that covers the contents of the layout while they are being created.

    In both cases, you don't want to place the objects in the layout editor, so that the layout is not required to load everything into memory before starting. If you are using the layout editor to arrange your objects/level, then the first method would be more suitable (Place the objects in the following layout, not the loader layout. They will remain in memory when changing layouts). If not, the second might be more straightforward.

    Note that this normally should complete very quickly (thus defeating the purpose of having an animated/interactive loading screen in the first place) unless you're really pushing the limits of memory on the user's device, which is a situation you generally want to actively avoid.

  • Boids/flocking/steering style mechanics are probably the "best" way to do it. I don't know if the plugin implements it well or not though. It may have utilize calculations you may or may not need.

    Game performance drops in vampire survivors too, towards the end of a round. Also note that there aren't actually that many enemies on screen at any given time in vampire survivors. How many are you reaching before you have performance issues?

  • The very basics would be to first decide what data format you're using to store the state of your tiles. Either an array or tilemap would work well.

    When placing a building, check all relevant tiles/cells relative to the cursor/placement position to see if they are valid. If not, then do nothing or display an error. If all valid, then place the building and update the tile/cell data it now occupies.

    If using arrays, recording the uid of the building object is one way to keep track of what is currently occupying any cell. If using tilemap, the tile number itself could naturally identify the building.

  • What is your question?

  • You would normally use a tilemap, and check the if the tiles next to each water tile meets the conditions for a change, and change it if it does.