oosyrag's Forum Posts

  • The hight at any point of a slope is the perpendicular distance from the edge times the tangent of the angle of slope.

    Construct is not a 3d engine. Not recommended to try to make a 3d game without being very confident in your math, and even then you're going to run into a lot of limitations.

  • Use a bullet behavior with negative deceleration. Every x seconds, set speed to something and set angle of motion to something.

  • You can store binary data as a string, in an array or other data handling method you like, and load it back into the binary data plugin as needed for downloading.

  • Define "holding".

    Are you using the drag and drop behavior?

    You could simply disable it on collision with another object, and re-enable on mouse released.

  • You possibly have an infinite loop, preventing your game from loading or running past the first tick.

    Without additional information or seeing your project, it will be difficult to help.

  • You can also always use an absolute path instead of a relative path.

    Or maybe you're looking for the 'set path' action?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • JSON is a suitable format for storing dialogue. You've got a lot of options here though so use whatever you're comfortable with. You could even store it in instance variables per npc if you want.

    I'd use multiple instances of a text object for clickable responses. I'd use a separate text object for non interactive text though.

  • What exactly are you having trouble with? It's not much different than any other clickable interactable object.

    If dialogue is waiting for response

    On 1 clicked, do something

    On 2 clicked, do something

    On 3 clicked, do something

    On 4 clicked, do something

    Although for most classic rpgs, they all actually do the same thing, which is to advance the dialogue anyway.

  • You can 'include' one event sheet into another. If all your event sheets include a particular event sheet, that sheet effectively becomes global.

    You can also just set the second layout to use the same event sheet as the first layout in in the layout properties.

  • I don't have a tutorial or example, but I'd imagine to start you would need a method of keeping track of your inputs over time. This can be done with pushing input values to an array.

    Then it's just a matter of running a function on each key press to check if the last x inputs within a defined time window matches a valid combination. I'd use the timer behavior to reset the array to define the valid input window.

  • Very rough guess, but if I were to approach this I would draw them dynamically with the canvas plugin. To get the points/angles in the beam use a sine function and transform the resulting points to add irregularity. If it's animated, you could use a noise function from the advanced random plugin to keep it smooth and not just spaz out randomly.

    Layer two or three of these on top of each other, and add a fourth that's for the background glow and lighting.

    The width of the beam at any given point or section could use another noise function to vary it.

  • The problem does seem to be that you're pinning every tick. Basically every time the position updates, you're resetting the pin to the new location, not letting pin do it's job.

  • What? Pinned objects do move with the base object, that's the whole point.

    Perhaps you are confusing the advice not to use the pin behavior with physics?

  • Construct 2 didn't have a json plugin. I don't know about third party add ons and what they can do, I'm guessing they just didn't include the arraysize expression. Or it might be called something else, would need to check the documentation of the plugin.

    You can get a similar value and store it in a variable by using a "for each" at the path of the array, and add one to the variable in the for each event.

    If you're doing this in c2, I'd say just use an array, the array.asjson expression and load from json action. It's a little more cumbersome because you can't edit the project file directly in the editor in c2 either, but it should still work. I'll put together another example in c2 when I get a chance, it would double as an example for how to do this with arrays.