Arima's Forum Posts

  • I agree with all of these. I want to make blank events frequently but have to keep switching between methods depending on the situation for the most optimal way to get one. Right-clicking the event above where I want it, adding else then deleting the else is another method I use a lot.

    The mouse wheel scrolling speed setting could work similarly to my request for a setting for the scrolling speed when clicking the scroll bars. Currently it's inconsistent, and requires two clicks in the event editor and 3-4 clicks in the layout editor to scroll most of the screen whereas it's standard in the vast majority of applications that one click does the same, and even C2 itself behaves that way in other areas of the same program like the object properties and the list of instance variables. Having a setting would make it so we could tailor it however we want.

  • In the tutorial partway down it describes how to import a font into the project files which get distributed with the game and how to use it. Isn't that what you're looking for?

  • SketchyLogic - I was going to try getting around that problem by turning off the display scaling for the exe in properties/compatability (right click the exe), but I haven't tried it on another machine yet so I don't know if that setting will carry over when installed on another computer.

  • If it works, there's no reason to switch. As far as I know, you can also embed fonts for offline use: https://www.scirra.com/tutorials/237/ho ... -web-fonts

    The main differences are that spritefonts can be customized to look however you want and are easier to render, but text objects are easier for translating a game into multiple languages.

  • You do not have permission to view this post

  • You do not have permission to view this post

    You've already been told to stop begging for money here. Next time you do it you're getting a temporary ban. Knock it off.

    I've been working on RPGs in construct for a while and I can't even imagine trying to make something so complex with clickteam fusion.

  • I use a 'branching tree' Structure for the most part.

    Example:

    If gameMode="action"

    • Controls code
    • Enemy AI
    • Etc

    If gameMode="cinema"

    • If scene="intro"

    If gameMode="menu"

    Coding this way makes it easy to find what I'm looking for, as the base events are like categories and each subevent becomes more specific.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You do not have permission to view this post

  • Are you running XP or Vista? I started getting a similar error and it turned out be that nw.js's main branch doesn't support XP or Vista anymore.

  • You do not have permission to view this post

  • LaDestitute - Er... whoops. I read the post and responded without checking who the poster was, thinking it was you. Apologies for participating in the derail!

    MPPlantOfficial as LaDestitute said, please create your own thread.

  • Here's how I do it. The method I use might be more complex than you need, but it's also very flexible:

    All player characters, enemies and such are in a family called units.

    I create an invisible object called base and put it in a family called bases.

    All variables given to those objects are done by giving the families variables instead of directly to the sprites. This makes it easier to compare the values of two of the same object interacting with each other.

    At the start of the layout, I create an invisible base object at each of their locations. I store the UIDs of the units/bases they're paired with as family variables.

    I also create a shadow sprite. It's separate from the base for positioning purposes.

    The base objects are the real controlling objects where most of the code happens. Because all the player characters, enemies and NPCs are controlled by the same type of object, it's easy to control them however I want by just changing their variables, like if variable mode = wandering, etc.

    The part you're probably most interested in --> The base objects have the variables z and zModifier. The zMod variable is the speed of movement on the z axis (jumping in the air, visually it's the same as the y axis, the z variable is really just the distance between the base location on the ground and the unit in the air), and it is added to the z variable. When in the air, the gravity rate is always subtracted from zMod. When z is lower or equal to 0, the object is on the ground, and depending on the velocity in can be set to bounce.

    Every tick, unit locations are set to base.x, base.y-base.z. Because of how construct works, as long as there are the same number of bases and units (destroy any in the layout before creating them for each unit) no for each is needed, and the units are all at the location of the correct base. I place the shadows at unit.BBoxLeft, base.y and set the shadow width to the unit width (the shadow hotspot is on the left).

    Another benefit to this method is collision can be checked in 3D by first checking for collisions or distances between bases, then checking if their units are overlapping.

    The main downside to this method is it requires a lot of for each loops in situations where construct's auto-picking doesn't work, but I consider the ease of use while coding and versatility to be worth it. If only C2 had containers that could be modified at runtime like CC had with the picker plugin... maybe C3 will have that feature.

    I haven't checked your code, so apologies if I just explained most of what you're already doing, I just thought I should make it clear. Even if you don't want to use my method, perhaps the part about the variables will be helpful.

    You can see this method in action in the gif in my sig. There are more including some of a flying enemy in the first post of Loot Pursuit's devlog.

  • The problem with that method is it's inconsistent based upon the speed of the mouse and where it happens to be when the measurements of its position are checked - if the mouse moves quickly, it's a large gap.