Castlevania Style Platformer

This forum is currently in read-only mode.
  • Nope. It's been requested before, quite a few times. Particles in most game engines have no collision ability, because it makes it more fast and efficient to render a lot of them at once. It's no different in Construct. If then engine had to calculate collision for a thousand or more particles then it would start to slow things down rather dramatically.

    The particles object is highly optimized for one purpose: to quickly and efficiently display a lot of little images on the screen. Nothing more, nothing less. It's a special effect, not an interactive simulation.

    But like I said, if you need interactivity for your particles then you could always make your own by spawning a bunch of actual sprite objects and giving them a few simple commands with events.

  • Thanks, I'll definitely try that and see what I can come up with

  • So I've made an object "rainmaker" to spawn objects "rain" but I'm not sure to to get it to spawn then at random point along it's width, all I can seem to manage is to get the rain to spot from the rainmakers image point, any ideas?

  • In the same event and after the spawning action, do this:

    rainSprite: Set X to random(n)

    where n is the width of your rain spawning sprite. When an object is spawned it is automatically picked by the SOL so you can perform actions on it immediately.

  • Awesome, thanks for the help.

  • Ok, so I've got

    Every 10 Ticks - Rainmaker spawns Rain

    - Rain Set X to random(rainmaker.width)

    and the result is that the rain falls straight down from the image point of the rainmaker object, but then it also falls randomly between X0 and X(rainmaker.width) when I need it to fall randomly along the width of wherever I've placed the rainmaker object

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I've sort of got it

    Rain: Set X to Rainmaker.left + Random(Rainmaker.Width)

    that get it's falling randomly along the rainmakers width, but I still have a constant stream falling from the image point, any ideas?

    I suppose I could always put the rainmaker below the layout and simply set the rain's x to 0, that just seems like the wrong answer though

  • Here's a question (sick of me asking yet lol) is there a way to preload a soundclip into the engine without having to call it from it's directory every time?

  • I've sort of got it

    Rain: Set X to Rainmaker.left + Random(Rainmaker.Width)

    that get it's falling randomly along the rainmakers width, but I still have a constant stream falling from the image point, any ideas?

    I suppose I could always put the rainmaker below the layout and simply set the rain's x to 0, that just seems like the wrong answer though

    Are you spawning multiple raindrops in the event? How are you doing it? Is it a loop or is it just a bunch of spawn actions?

    If you're just using a bunch of spawn actions then when you tell Construct to set the x of your rain it will only pick the first one that was spawned.

    If you use a loop and tell each one to set it's x then it will set each one individually.

    If that doesn't help then post your .cap, or a screenshot of your spawning event.

    Here's a question (sick of me asking yet lol) is there a way to preload a soundclip into the engine without having to call it from it's directory every time?

    Yes, add the sound to your Files folder in the project panel and use load or play as a resource. Unless I'm misunderstanding you.

  • It seems to be related to using the "Spawn" action. Replacing that action with a simple "Create" action from the system object fixes it.

    EDIT: I think the problem has something to do with the fact that there are two instances of the RainMaker sprite. Replacing the "Every 1 tick" event(which is actually the same as using an always event) with a "For each" event looping through the RainMaker sprites also works.

  • Okay, a couple of things:

    1. Instead of every tick, you should use a framerate independent condition like Every X Milliseconds. This will ensure that your rain will fall at the same rate on all computers.

    2. Physics can be demanding on the CPU, so you should only use it when you absolutely need it. You should have some events to fade out raindrops and destroy them over time (in case they aren't reaching the water) and also to destroy them if they are beyond the bottom of the layout (some of them are escaping the left edge of the level). By reducing the number of physics collisions you will reduce the load on the CPU.

    3. You can get a more efficient spread of rain using a loop like so:

    <img src="http://i48.tinypic.com/mw8kts.png">

    This gives a nice, rainy feel and you don't have to spam rain every tick.

    4. There is a picking issue when you spawn from an object based solely on a "every tick" or "every x milliseconds" condition. The SOL doesn't know which Rainmaker you mean, so it's picking the first one in the layout, which happens to be the small one off the screen in the left corner. That one is spawning things normally, while the one in the level is making a weird stream and acting funny. If you specify that you want all rainmakers to spawn things like that then it will work fine, but you need to pick the rainmakers somehow. I added a "For each rainmaker" loop to do so, but you could pick them another way if you like. Anyway, it works fine this way, just change your event to look like that.

  • You guys are all a ridiculous amount of help. Thanks muchly.

  • So I've been fiddling around, and this is what I'm up to now, any thoughts?

    http://dl.dropbox.com/u/4075855/Brent%27s%20Platform%20Engine%20Enemy%20Test.cap

  • What version of Construct are you using? Because it doesn't seem to work right at all in 0.99.82. The sword just sort of vibrates and it's always sticking out to the right.

    Edit: Actually, it doesn't seem to work right in .72 either. The sword doesn't even appear when I press D.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)