oosyrag's Forum Posts

  • There is an orientation project property iirc.

    You probably also want to change the viewport aspect ratio.

    I think there is also an action in the browser object that pertains to orientation as well.

  • tan(angle) will get you the slope of your camera angle. Multiply that by the distance and zscale to get the z height at any given distance. Remember to also add the z height of the origin/camera as well.

    Generally speaking though, Construct is still a 2d engine. A 2d engine with 3d elements features does not make it equivalent to a 3d engine. Making an fps is mostly an exercise in futility. You're only going to run into further road blocks down the line without 3d collisions, volumetric fog/lighting, sloped vertical surfaces ect. This is similar to the limitations of the Doom 2/Wolfenstein era, where you notably could not look up and down. Your effort would likely have better return if you spent it learning how to use an actual 3d engine like Godot or Unity instead if your dream is to make a first person shooter.

    But if you do want to continue, I highly recommend looking in to some basic trigonometry and geometry. It will be invaluable for working in 3d space, and you're not going to be able to get very far without it.

  • You can do it per pixel if you want, but I think that's unnecessary. Just increase the resolution/number of lines until it is as smooth a circle as you want, it will still take less iterations then going through one pixel at a time.

  • construct.net/en/forum/construct-2/how-do-i-18/pick-object-order-116837

    If they are different objects overlapping, you can use a family instead.

  • Overwrite?

    If you don't want the diameter line, use the drawing canvas's line action instead of add poly point to draw a polygon. The only difference is that you'll have to specify the next point along with the current point, and that the number of iterations goes down by one since the last point doesn't need a line drawn anywhere.

    + System: For "steps" from 0 to resolution-1
    
    -> DrawingCanvas: Draw line from
    (x+cos((a-90)+(180÷resolution×LoopIndex))×r,
    y+sin((a-90)+(180÷resolution×LoopIndex))×r) 
    to
    (x+cos((a-90)+(180÷resolution×(LoopIndex+1)))×r,
    y+sin((a-90)+(180÷resolution×(LoopIndex+1)))×r)
    with rgba(0, 0, 0, 100), thickness 1, cap Butt
    

    The example has also been updated.

  • I don't think it's a huge deal, but I do personally prefer having the debug button available as well considering how much it is used.

  • The line of sight behavior has a hit distance expression.

    The angle of the mouse click to the target would depend on your camera and field of view. You'd probably have to account for the height of the camera as well. With the angle and distance, you can use tan(angle)*distance to get the height of where your click was at the point it intersects the base of the object.

    Getting the angle might be finicky, I haven't actually tried to see if it can accurately be done myself. There is no support for 3d collisions right now afaik, the underlying engine is still 2d after all.

  • Round(object.platform.speed)

  • Use the line of sight behavior to cast a ray. On intersect, check the angle of the click with the hit distance and compare with the object height and z elevation.

  • | Global number mouse0‎ = 0

    [Mouse (Pan)]

    ----+ Mouse: Left button is down

    -----> Land: Set X to Self.X-(mouse0-Mouse.X)

    ----+ System: Every tick

    -----> System: Set mouse0 to Mouse.X

  • You do not have permission to view this post

  • You would not. A dlc is part of the same project, as dlcs normally do not work on their own. The base game is required. You would probably just export two versions of the same project, one with the dlc content and one without.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Generally speaking, for absurdly large numbers such as in idle games you'll want to store the number as separate pieces. There are several ways to do this. For starters, rather than using a series of if/then statements, you should be able to cover n number of digits with a single function, by getting the length of your number with len(number) or just getting the relevant portion of the number with left(number, relevantdigits). There should be a lot of posts about how this is applied to break up numbers. You'll always have to define labels/suffixes individually though. For a cleaner but more complicated system, you could store your suffixes in an array.

    To handle mega large numbers, one way is to push values into array cells. The most straightforward way would be for each digit to have it's own cell. The width of the array would correlate to the number of digits in the number, and each digit could be represented by multiplying itself with 10^xindex.

  • If you really want to set up your own - gabrieltanner.org/blog/turn-server

    These are pretty much outside the scope of Construct or these forums though.

    For services - These will be simpler to utilize.

    twilio.com

    xirsys.com