dop2000's Forum Posts

  • So the camera doesn't zoom out, it scrolls. Simply set camera position to player position in "On start of layout" event.

  • This is weird, can you share the project file?

  • Do you have any form control objects (even invisible) on this layout - text boxes, buttons, sliders etc.? Cursor may change when it's hovering over them.

  • And why do you need AdvancedRandom or seeded random for that?

    floor(random(1,7)) or choose(1,2,3,4,5,6) will give you a perfectly random result every time you roll the dice.

  • Just set the scroll to player position in "On start of layout" event.

  • Programming pieces movement is fairly easy. Detecting check/checkmate/stalemate is doable, but quite difficult. I hope you are not thinking about programming an AI, because that would be a very ambitious task :)

    I think the easiest solution is to use some external JS library, for example this one:

    github.com/jhlywa/chess.js/blob/master/README.md

  • TILK Why do you need to generate a new random seed on every tick or after every random function?

    Seeded random in game development is most commonly used for procedural level generation. For example, if you generate levels in your game randomly, but you want levels to be exactly the same for all players, you use the seed.

    Generating a new seed on every tick doesn't make sense. Just don't use it. Or if you are already using it, update the seed once to AdvancedRandom.RandomSeed or to unixtime and forget about it. Here is an example:

  • Instances you create in runtime will inherit all properties from the first (default) instance which you place on the layout in editor. So if you set collision=circle for that instance, all dynamically created instances will also have circle collision mask.

    Note that if you have several instances of the same object on one or several layouts, the default instance is the one with the lowest UID.

  • R0J0hound Maybe this thing?

    https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/imageSmoothingEnabled

    I've already tried it, doesn't seem to work..

  • R0J0hound Thanks! Do you know the name of that property? (I can modify the plugin to test)

    We don't need to support many browsers, just NWJS.

  • I usually do this is with event groups. Say, I have "Controls Game" group (active) and "Controls Dialog" group (deactivated). When I need to display a dialog, I deactivate "Controls Game" group and activate "Controls Dialog".

    There are other methods of course. For example, if you have lots of different controls on different layers, you can add them all into a family AllButtons, and create instance variable FunctionName. When AllButtons is touched, pick the instance which is on the highest visible layer and has the highest z-index. Then call the function from FunctionName variable.

  • To clarify matriax's question - the problem is that when drawing on Canvas plugin using actions like "Draw circle" or "Draw path", lines always have anti-aliasing.

    R0J0hound, do you know if it's possible to disable AA for methods like ctx.stroke() or ctx.fill() ?

  • Add action -> Advanced random -> Update seed

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Well, a simple test shows that if you leave the seed field empty in plugin properties, it will not be used. (basically no different from the system random)

    If you enter seed value, all random functions will use this seed and generate the same numbers every time you run your game.

    However, if you need to set the seed to a random value later in the game with events, don't set it to "", set it to some time expression (tickcount for example, or unixtime)

  • No, you need to use "Set frame" action. Set frame to random(Sprite.AnimationFrameCount)

    Also, don't forget to set animation speed to 0 in animation editor.