oosyrag's Forum Posts

  • You do not have permission to view this post

  • Well how do determine who shot it? Usually depends on which control input the shooting... What are you doing to have the bullet come out at the correct location?

  • You'll need one instance of your object in the layout editor somewhere to set defaults. Either destroy the original instance on start of layout, or put it on an unused layout.

  • By what method are you using to position the scroll to location relative to the ship?

    Ed: sorry didn't see you linked the project, I'll check that out.

    Ed2: nm you didn't bundle addons so I can't open it.

    Try setting the scroll to position directly with the system action instead of using a helper object and see if it makes a difference.

    Or set the helper object position manually instead of pin, if you're using that.

  • Try turning pixel rounding off

  • There are various color effects you can use, but this can be rather wasteful of processing power.

    There's also the set color action.

  • If you put scroll to on multiple objects/instances, the final position will be in the middle of them. After that, you can adjust scale until everything you want to be in the viewport is in the viewport.

  • Having 144 frames of animation per second would be a good start.

    Besides that, position wise you should be able to tell a difference. A simple way to confirm would be to record motion at 60 fps and play it next to your preview that's running at 144fps.

  • construct.net/en/make-games/manuals/construct-3/plugin-reference/local-storage

    Storage quotas

    To prevent abuse, most browsers implement a storage quota, which is a maximum amount of data that can be saved locally. On most modern browsers this is defined as a proportion of the free storage space on the device. You can check the available quota on a device by loading Construct and checking the About dialog which shows the quota available. If the quota is exceeded, the On error trigger will fire when writing to storage.

    This information is currently not readily available as an expression in the Local Storage plugin (although that could maybe be a pretty simple feature request).

    The best we have right now is to simply catch and display the error message when trying to write to storage and there is not enough space available.

  • Any object with instances that need to be differentiated per peer should have an instance variable to identify it - this is usually what the peerid is used for.

    Animations are not normally synced. All animation should be handled locally on each client. There are a few ways to go about this.

    Cleanest way is to set animations locally based on the change in position or angle of the object (because position/angle is already synced). This works for movement style animations, but not for anything that is based on an input.

    If you have an animation that results from a specific input, the host will need to relay that input to other peers manually so that the other peers can play the correct animation (inputs are normally communicated only from the peer to the host). However it would be silly to send every input of every peer to all the other peers all the time, since most of it is unnecessary information. Instead, the host can send the "state" of any particular peer's animation to all peers. This can be done either with a synced (number) instance variable (probably set on the particular peer's instance) or by sending a message (with the relevant peerid and correct animation state contained).

  • Right click the example - copy direct link

  • That condition was depreciated in R318.

    Multiplayer: deprecate 'Supports multiplayer' condition as it has been widely supported by all browsers for years now

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Set sprite animation frame to floor(random(sprite.animationframecount) to change them all to the same random frame.

    If you want to set a random order of frames, use the advanced random plugin's permutation table.

  • Instances by far. Each instance/copy of an object effectively doesn't take any additional graphical memory at all.

  • Text - Set text to Array.At(floor(random(Array.Width)))

    No need to shuffle.

    If you do shuffle, then put set text after the shuffle, and Set text to Array.At(0)