oosyrag's Forum Posts

  • What exactly are you having trouble with? It will be unlikely anyone is going to put together the whole thing for you.

    So you've defined your states. Use an instance variable to keep track of the state.

    Then define the conditions under which you want to change the state.

    Then define the actions you want to take in each state.

    You should then have your AI basically complete. Make adjustments as needed if anything behaves outside expectations after testing. Ask if you can't figure out how to implement a specific thing to your liking.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You probably don't want to use the peerstate expression, unless your ready trigger is holding a key down. Peerstate is better used for inputs and not variables.

    I'd just have the peer send a message. When host receives the message, it also knows which peer sent it, and can set a variable for that peer to true or ready.

  • Never mind, it works the same way with the new file system plugin too.

    After picking files, you'll have a "directory" of all picked files, so just loop through each of the files (Repeat filesystem.filecount times) and display the contents.

  • For reading files, can't you just use the old file chooser plug instead?

  • Send a message to the peer indicating that they should create the relevant objects then. Or, have a peer only event that creates the child objects when the parent is created.

  • I'm unable to test without a subscription, but I imagine if all the child objects in the hierarchy were synced properly it should work fine.

  • I remember running into this issue a long time ago. I think it's an inherent problem with box2d at low speeds.

    Iirc it can be mitigated by using higher resolutions/sizes and downscaling, resulting in relatively higher speeds while visually remaining the same.

  • Recommend turning on the auto save feature in the options, so you don't lose as much progress if it happen again next time.

    There's the minor consolation that something that took you two hours to do the first time usually goes much much quicker the second time.

    Depending on your project, I also generally recommend taking advantage of project files heavily, so that work on individual data file sources are saved separately (and necessitate saving to update/import to your project).

  • I generally create and destroy as needed, but on a dedicated UI menu layer, so a bit of both 1 and 2. This layer is separate from gameplay huds/UI layer. That's more of a personal organizational preference thing than a performance issue though

    I don't like having hidden objects/layers that aren't serving any specific purpose. I also generate my menu item positions dynamically via events to be flexible. I imagine for someone who likes utilizing the layout editor to place and layout their menus, hiding and un hiding layers would be more suitable.

    I doubt there is any performance impact worth thinking about at all, unless you're doing something really crazy with your menus. For something like an inventory or character sheet, I'd definitely create it as needed, but for the reason that the contents are dynamic rather than any performance concern.

  • If there isn't an effect for it, duplicate the sprite, offset it and then use a blending mode on a layer with force own texture on to fill it with a solid color. Optionally pin to the original sprite as well.

  • You probably want to use a tilemap. construct.net/en/make-games/manuals/construct-3/plugin-reference/tilemap

    On trigger, for example if you click a block, change it into another block (or an empty square, in the case of digging).

    To refer to the correct tile to change, for example the one under the mouse, you'll use the tilemap expressions described in the manual linked above PositionToTileX(), and PositionToTileY().

    So in your set tile action, the tile x location would be Tilemap.PositionToTileX(Mouse.X) and the tile y location would be Tilemap.PositionToTileY(Mouse.Y). The tile would be whatever you want to change it to.

    If the above is confusing and you're not sure how to use an expression or what an expression is, you should probably start with the first two beginner tutorials and reading the manual.

    construct.net/en/tutorials/construct-3

  • If you're talking about the preset for making a new project, 1080p portrait or landscape is a good place to start for most current devices.

    If you're talking about an example or premade game template, then you'd best find one that is similar to the game you want to make.

  • They work fine for me, Android 12 oxygenos on chrome.

  • I did it - clean too, pure css with the default button-checkbox.

    dropbox.com/scl/fi/iiqc0sxnox003ghok3vyd/csstogglebuttonexample.c3p

    Not quite complete, it's a fixed size and doesn't scale with layout/fullscreen scaling yet. I'll update the same file when I get that figured out.