dop2000's Forum Posts

  • Characters are appended to the text one by one, but I'm skipping * and ^

  • It's difficult to pause the typewriter at exactly the right moment. As far as I know, there's no reliable way to detect the current typewriter position. And no way to tell it to skip parts of the text (the pause tag).

    You can split the text into multiple sub-strings, and type each sub-string separately. But there is another problem - the built-in typewriter clears the text if restarted..

    I would make my own typewriter, here is an example:

    dropbox.com/scl/fi/zf1tmjxl5deo6srrl4i3o/BBCode_Typewriter2.c3p

    I'd also suggest not using square brackets for tags, because Construct can mistake them for BBCode. I often use ^ symbol for breaks in the text.

  • Programming chess with events would be a pretty big task - there are a lot of rules. Especially if you’re planning to take the classic array-based approach.

    I'd actually suggest avoiding arrays altogether and instead building everything with sprites, tilemaps, collision checks, image points, raycasting, etc. - it should be easier.

    If you hadn't mentioned 'alternative rules', I would've just recommended using a JavaScript library. Here's an example:

    howtoconstructdemos.com/chess-game

  • I think vectors are inherently broken in 8behavior. Here is why:

    github.com/Scirra/Construct-bugs/issues/6323

    And here's another example:

    Two almost identical events produce different results. Basically, it’s hard to make an object move in the exact direction and speed you want just by setting vectors - especially when it’s close to max speed and acceleration/deceleration are involved.

    The boolean "in water" sets correctly.

    Not really. Remove "every dt" and "trigger once" conditions, they are not needed. And the "trigger once" will cause bugs with multiple entities.

    Also, why are you testing at 10 fps? Construct won't work correctly at framerates below 30.

  • Check if you've accidentally set a non-zero z-elevation on the tilemap or on the layer.

  • Combine events 229 with 230, 237 with 238, see if it helps.

  • Here is an old demo:

    howtoconstructdemos.com/communicating-with-an-iframe-in-construct

    You can pass JSON as text and parse it on other end.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • No, unless you are running some heavy code on start of the layout.

  • No, it restarts the current layout.

    It also resets event groups - something I only discovered recently.

  • when these timers trigger it randomly makes the wrong ones begin an action meant for a different boat.

    What action? Events 20-21 look good to me, you need "For each" there. The hooks should be created and attached to each boat correctly - you can check this in the debugger.

    Perhaps some other events ignore the fishing state?

    Some names on your screenshots are truncated. Is there only one "crew_b..." family?

    Can you share the project file?

  • That's why I asked to post a screenshot of the code :) The forum always makes a mess of it.

  • You can add it to the same event:

    Boat On Timer "arrived"
    For each Boat 
    

    But your issue may be caused by something else. Can you post a screenshot of your code and explain what exactly goes wrong?

  • Yes, "On timer" can trigger for multiple instances, if their timers expire at the same moment. The easiest solution is to add "For each" condition.

  • You need to store the current SFX volume in a variable and use that variable when playing new sounds.

    I suggest creating an AudioPlay function and calling it whenever you need to play a sound. Inside the function, you can calculate the volume correctly based on the tag and game settings. This also would make it easier to modify the entire sound system later — you won’t have to go through all your individual "Play" actions every time you want to change something, like renaming a tag or adjusting the volume.