Puck's Forum Posts

  • I agree with mystazsea - that would be very useful. When I have dozens of objects on one layer, many of them overlapping each other, it's a real pain to try and select one. I'd love an expandable layers palette like photoshop where I can hide and lock individual objects or folders of objects, and not be limited to hiding/locking the entire layer. Even with multiple things on multiple layers, as soon as my project gets reasonably complicated I start wishing for this feature.

  • NugMan: That's awesome - Very smooth animation/control. I like the pixel art too.

  • I've uploaded a new test build of a top down zombie WIP I'm working on for fun.

    If anybody has time I'd really appreciate people trying it and specifically telling me what their FPS are and what sort of system they have (browser, CPU and GPU). There's three levels of quality that effect how many shadows are drawn, which you can toggle through by pressing SPACE. Ideally I would like people to be able to run it with 'very high' settings (even the enemies cast shadows), but I expect that will tax most machines to be honest.

    <img src="http://dl.dropbox.com/u/5478701/ZombieWIP/screengrab_01.jpg" border="0">

    Press E to toggle between a pistol and flamethrower. Right click to shoot a Flare which attracts the zombies. The red dots are exploding barrels.

    There's no goal in this build, it's just testing out the recent things I've put in (like gibs when a zombie explodes, and spreading fire etc).

    Test it out here.

  • I just tried this out on my ipad - it worked brilliantly! Well done. I would love to see a version that can do complete panoramas with vertical motion as well.

  • Have a trigger, such as time, score etc.

    Then - System -> Create Object (which is right at the top)

    Choose a layer and then input and X and a Y value. X and Y being a pixel value corresponding to the playing area. Just say your layout size is 1280 by 1024 (you can check this by clicking on your layout in the Projects Bar), the enter a number between 0 and 1280 for X and 0 and 1024 for Y.

    Instead of entering a number, you can use the "random" expression to make it generate a random number. In which case enter random(0,1281) in the X section, and random(0,1025) in the Y section of the Create Object event. The random() expression will return a random number between the two numbers you enter. Well actually, it will return a value between and including the first number, and one less than the second number, hence why I added 1 to the last number of those examples.

  • You need to use an image editing program like Photoshop to make several small images that will fit together to make up the larger image. Photoshop has a 'slice' feature that can do exactly that. But more likely your image is larger than you need it anyway, so perhaps try resizing it in your image editing application first to make it smaller. Yes, it definitely improves performance, the more 'big' images you have, the longer it takes to load the game, the more memory it uses up and the slower it runs (potentially). Keep your images small, and think of ways to reuse the same images for different purposes, look at the way almost every game that exists (except for some strong art games like Machinarium) use 'tiles' to create their levels, reusing the same tile over and over.

  • Seriously? What a terrible waste of your time.

    Edit: If you can't say something nice, or at least constructive, don't say anything at all... So even though I think the idea behind this is insultingly absurd, here's some constructive criticism: The countdown slows it down too much, it gets boring, make it quicker. At the end of a round, chart the persons score and let them keep playing a new round so you can see if there's an actual improvement after several rounds. Also, have a version with hot guys in it that you can choose at the start, not every person who uses a computer is a heterosexual guy.

  • Really cool looking game, love the graphic style. I think perhaps he could move a bit faster when he's on the ladders, and also it would be good if it was possible to move off to the side of a ladder to let go so you could fall when you want to - in the first down ladder if you accidentally grab on as you're falling you have to wait until you get to the very bottom before you can let go. Also it would be good to explain at the start how you can attack. Good work!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Yeah that's a similar effect to what I was trying to achieve, but I think it's done in a better way there than they way I've done it here. They actually calculate out the proper polygons for each object, so all the shadows are accurate. My one just draws a shadow sprite (that looks like a black wedge) behind each object, which is fine for enemies and small objects, but very inefficient for walls (need dozens of 'shadow casters'). I'm not sure how to use their method in C2.

    Here's an even better implementation with the same method, though it goes a step further and has soft shadows - http://www.gamedev.net/.../dynamic-2d-soft-shadows-r2032

    And of course, what originally made me want to try and make a simple zombie game with dynamic shadows, Notch's "Left 4k Dead" test game before he made minecraft.

  • Thanks. Sorry but I've been updating that Shadowtest directory as I build the game I'm working on, so the html page was no longer a representation of what I originally posted. I've gone back and edited it now, so it's pointing back at the original shadow test.

    The zombie game I'm working on is where that test originally was, which is here. It's uses the same shadow system, but with a tweaked shadow sprite (basically just a solid wedge of black with a bit of blur to the edges).

    <img src="http://dl.dropbox.com/u/5478701/Shadowtest/shadowtest_07.jpg" border="0">

    I'm just trying to get it optimised at the moment. It runs fine on my desktop PC, even when it's forced to use Canvas2d in IE, but I tried it on a laptop today at it was unplayable. The optimisations I've done (such as culling out shadows when they're off screen) actually loweres the overall fps (especially in webgl, which could handle the extra sprites), but it also smooths it out, so hopefully less dips into the 20's. Plus with the optimisations it also means I can hopefully increase the level size without any slowdown.

    I thought using sprites as shadows was a good idea, and it works fine for enemies and collumns and small things, but you need heaps of shadow casters to make a wall (butted up against each other to fill the gaps) which isn't ideal. I can't think of a method to do the walls and buildings in a simple way though. If I could use vectors / polygons this would probably be easier I expect?

  • Yeah no worries, that's why I made it. I tried implementing your previous solution in my game but it seemed quite buggy, often spawning more than one shadow per caster. When I get a chance I'm going to try using a distance check rather than a Culling sprite to see if that works any better, as I've had other issues with the "on overlap" being a bit flaky.

    Thanks for the help Potato!

    (Also I turned webgl on in my wip game and now I get a steady 60fps in chrome, so at the moment I'm going to ignore optimization and focus on gameplay).

  • Add a Browser object to your game (Insert new objects, down the bottom under "Web").

    With a mouse Object too, then the event can be - Mouse, On Left button clicked on (whatever) -> Browser, Go to "website" in new window.

  • Thanks Potato, that works how I wanted it to, good stuff! I don't quite understand 100% what's going on in your one as I haven't used instance variables before, but I'll figure it out. Thanks again.

  • I'm trying to make a system where objects that are not near the player are not created until they're needed - my game has a very small visible area around the player, so until enemies are right on top of him they don't need to have lots of extra sprites that are slowing the game down.

    The idea I had was to have a Culling sprite around the player, and when it touched an enemy it spawned all the extras (i.e. a shadow), but at the moment it's spawning one shadow per tick, even though I have a "Trigger Once" condition (sometimes? it seems very flaky).

    You can see the problem here.

    Move with the arrow keys and try overlapping the pink "Culler" over the HTML5 icons, see the Shadow count skyrocket even though there's a Trigger Once condition.

    and here's the Capx.

    That's not even mentioning trying to delete an object when it's outside of the Culling sprite, which seems to be even more flaky. Am I approaching this problem the wrong way?

    Thanks.

    EDIT: The reason I ask is because I'm struggling to maintain a decent framerate in the game I'm building, so I need to find all the little ways to make it run as fast as possible. Perhaps I'm trying to do too much with C2, not sure yet. Here's what I have so far: Shadow test for zombie game. I'm getting about 50 fps in IE9 until a flare goes off, then it halves.

  • Thanks Kyatric, that clear's up a lot.