General J's Forum Posts

  • I have a simple animation trigger that goes something like this:

    When Player Platformer is falling -> Play Jump animation at frame 1

    -When Input pressed -> Play Jump animation at frame 2

    (A setup for playing a certain frame for jumping while in the air)

    However since the mid-air firing animation plays when the input is pressed, it only shows the firing animation as the button is pressed. Since it's a sub-event of the player falling it just goes back to the falling animation after a milisecond of the button being pressed. As you can imagine this is not my desired effect.

    I want the mid-air animation to play when the player is in the air and fires the firing button, but for about a second for every time the firing key is pressed. I figured I could get this done with triggering a Boolean value and have that Boolean value make itself false after a wait command, but I feel like an easier workaround probably exists.

  • Is that the only solution though? I don't want to change the hue of the entire sprite, but rather a certain section of pixels on that sprite.

  • I've started to advance my moving box prototypes into actual sprites with animations. For the most part I understand everything, and the transition is going smooth. However:

    I want to achieve something similar to Mega Man where when a certain ability or weapon is selected, it changes the color appearance of the sprite.

    I have "Idle" animation, "Run_R", and "Run_L" animations. Would I just recolor everything and save it as a new animation set? Ex: "Red_Idle", "Idle", "Red_Run_L", "Run_L", etc. for all variations? I feel like that would rack up the animation count. I just thought that there was probably a more efficient way to do this that I'm not aware of.

  • Thanks! I wasn't aware you could do that. This is a pretty important thing to know ahead of time, I wish the really popular beginner tutorials mentioned that.

  • The title could not properly fit what I was trying to ask.

    Imagine this scenario: I make a game. This prototype build has three layers: Background, Game, and UI. Very simple. The Game layer has a player that shoots stuff. It shoots stuff by Creating an object on image point x On Layer 1. I do this numerous times for various things in the game layer focusing around the On Layer x action.

    Now the prototype is shaping up into an alpha/beta, and it's time to make the art better. I want to add Parallaxing background layers. This means that I need to add multiple Background layers under the Game layer. This means that the Game Layer is no longer Layer 1.

    When I slide the Game Layer around with other Layers, it doesn't change the value for ~On Layer actions. Is there any convenient way to move all of my "Create object on Layer x" functions to a different layer number at once?

  • My project is gaining traction, and I'm predicting that I might be finished in the alpha stage very soon. I've started to think about my project in the long-term, things like kickstarter, promoting, and the like.

    I wanted to get the game on Steam via Greenlight, and that brings up the question: How does Construct mesh with the Steam platform? On that topic, how does Construct mesh with other platforms? (Xbox, Wii U, 3DS), etc. This is the first game I've seriously developed, and this is all new to me.

    The second question is about piracy. I know that preventing all piracy is a flat-out impossibility, but how does this work for Construct? How does buying and installing a game made in Construct work in the file structure?

    What I'm trying to say is: When making my game, all files are stored in the project folder. Right now, if I distributed this to someone else, they could just copy the entire thing, send it out and anyone could play my game though Construct. Why does this idea of drag-n-drop copy piracy not work, and what does Construct do to make piracy not that simple? I have yet to purchase a full-edition of Construct, so I can't export to Node-Webkit, nor understand how doing so would change the way it works now.

  • Amazing work detective, the problem is solved and the day is saved.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • And here is the .capx I made with the exact same settings, except this time it works! Why?

    (The Working version does not have a Custom Movement behavior on the enemy, but if you add one with base settings and don't touch it, which is the same for the one in the non-working one, it still works.)

    It's imperative for the non-working capx to work, because I already remade all of the numerous abilities, additional enemies, and so on and I need that version of it to work. I've deleted all of them in the capx for protections sake, and to prove that nothing there was actually affecting this bug.

  • My last thread was more tailored around something else I was trying to accomplish, and now that I've delved deepr into the error I've found the underlying issue. I totally scrapped my bugged project and started fresh, yet here the problem persists again.

    I have made two instances of a simple setup. A sprite mirrors itself once it's "enraged" from seeing the player via LOS.

    Even though both setups have the EXACT SAME settings for the sprite, one absolutely refuses to work, and I'm at the end of my patience for troubleshooting this.

  • I think something exists here that is just beyond explanation. I have remade the system successfully in another .capx.

    The only way that I can recreate this bug happening is by adding a solid behavior to the player, thus screwing with the enemy's LOS behavior.

    Here it is fully working, with no platformer behavior, on standard LOS settings. I really appreciate all of your help, but I think this is a sign that I need to take all assets and settings to a new blank project.

    The only thing I can come up with, is that I started this projected using the "Platformer" template, and something inside of there is causing this, and when I do it on a "Blank" project template, it works fine.

  • That almost works!

    Now the issue is that the Enemy can see the player all the time, even when the player is behind a solid wall.

    After I add "On Start of Layout / On Enemy Created -> Add SolidTile to LOS Obstacles", the Enemy takes on the stuck behavior again.

  • Can't PM yet, so here, I removed pretty much everything else in the game except the player and this enemy.

    Don't worry at all about any other additional functions of the enemy, it's the simple fact that it needs a Platformer behavior to mirror that's causing all of my issues. I've tested it with the other enemies too, it's the same deal.

    I started a new project from scratch, made three sprites and sure enough, it worked just like yours. So it must be something here that I'm not seeing. If you can't find a solution, I'll just start over and copy all the art assets.

  • Could any potential accidental button-presses cause anything like this?

  • Yeah, it turns out something it just completely screwed with mine. Your non-platformer sprite mirrors when I jump over it, yet for seemingly no reason at all mine cannot do that without the platformer behavior.

    I might just have to scrap the entire thing and start fresh, something is definitely wrong here.

  • Okay I did that and it worked to some effect, pretty much I'm faced with a new problem:

    For some reason, the orange enemy sprite needs to have a Platformer behavior for any of these functions to kind of work, even though I don't need a Platformer movement at all.

    I believe it is the unnecessary Platformer behavior that is screwing with everything, but when I don't have a Platformer behavior attached to it nothing even starts, the sprite just stays there.

    This is the beginning behavior to the event.

    When the Platformer behavior is removed/disabled, The mirroring does not work, it stays not awake, and the sprite is locked to animation frame '1' when the player is in distance even though I specifically try to lock it to 0.

    I think this is the root of the problem.