R0J0hound's Recent Forum Activity

  • Here's what I've got so far:

    http://dl.dropbox.com/u/5426011/examples/sand2.cap

    I've added a few more features since I've uploaded that but the file is on my other computer.

  • Actually I think Quanzi has made a falling sand game. Here's the link to the topic, but the link to the file seems to be broken. http://www.scirra.com/forum/viewtopic.php?f=16&t=1639&p=11505&hilit=falling+sand#p11505

    I recommend using the image manipulator object to manipulate the pixels themselves instead of a object per pixel. It should allow the frame rate to be somewhat constant as the number of particles increase instead of becoming progressively lower. I got it working but found the frame rate wasn't to great on my low end machine.

    Here's a good resource about making falling sand games:

    http://fallingsandgame.com/viewforum.php?f=13&sid=87b24cee4be9f238e27bff5a6a48c240

    Here's a game made in construct where the physics route was taken:

    http://www.fun-motion.com/forums/showthread.php?t=3135&highlight=lafesim

  • Don't use create by name if you want to modify the object right after it's created. In this situation it's easy enough to just add a few more events. It will only be one extra event per object.

    <img src="http://dl.dropbox.com/u/5426011/pics/events.GIF">

    p.s. mspaint makes some retro looking GIFs.

  • Citnarf I like your example, very inspirational. I was messing around with dungeon generation after looking at your example and came up with a few ideas.

    For the rooms, box objects would work well to define them. Then to draw the map with walls and floor just sample locations say every 16 pixels over the boxes. If the location overlaps a box then it's a floor, or if the location doesn't overlap a box in any of the 8 directions around it, then it's a wall.

    So all that's left is to do is create a number of boxes, of random size and build onto already placed boxes. I found the "push out of object" actions of the custom movement behavior to be useful in this situation. My Pseudo code for box placement is as follows:

    1. create a new box so that it overlaps existing boxes.

    2. push the new box out of the existing boxes so it isn't overlapping but is next to other boxes.

    3. move new box toward the closest box by a small distance. (this helps eliminate isolated rooms).

    Here is the result of this interesting idea and some free time, enjoy.

    http://dl.dropbox.com/u/5426011/examples/mapgen.cap

    req 0.99.91

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • No matter the setting the text object has some level of filtering, at least for me. Use the spritefont plugin to bypass the filtering.

  • Silhouette

    The burring is due to how your graphics driver resizes windows.

    Here is a way to have 2:1 scaling without any filtering:

    * Check "unbounded scrolling" in the layout properties.

    Then run these actions:

    -> System: Set Zoom to (200, 200)
    -> System: Set layout size to 640 x 640
    -> System: Change display size to 640 x 640
    -> System: Scroll to X 0
    -> System: Scroll to Y 0[/code:1bbuufdj]
  • The "set at offset" only works for power of two textures. Another way would to put four instances of the 640x480 sprite and move them when they reach some boundaries.

    Here is an example of infinite seamless scrolling:

    http://dl.dropbox.com/u/5426011/examples/seamlessScroll.cap

    req 0.99.91

  • Welcome to the forms.

    I recommend you use the distance expression instead of that long expression, which seems to be missing a few parenthesis.

    so your condition should now look like this:

    distance(player.X, player.Y, enemy.X, enemy.Y) Lower or Equal 2500[/code:28cyosyy]
    You probably want to change the 2500 value to something lower, because I can almost guarantee that when the cap is previewed the enemy will be within 2500 pixels of the player, and will flash instantly.
    
    -Cheers
  • My method on installing a font from a game is flawed, while I got it to work in XP it doesn't work in vista.

    I found another way. Sounds like it's the same way you spoke about where the font will only be loaded until a restart. I plan on adding this to my resource plugin, but until then here's an example using python.

    Note: you will probably need to install python for this to work as it requires the "ctypes" module.

    http://dl.dropbox.com/u/5426011/examples/custom%20font.zip

    made with 0.99.84

  • All resources need to go into the "files" folder on the project bar, the sounds, music, and fonts folders are not fully implemented yet. The XAudio plugin retrieves resources from the "files" folder. If you want to access resource files outside of XAudio use the Resource Plugin.

    EDIT:

    It's possible to make your game install your own fonts.

    Add the font to the "files" folder of the project bar.

    Use the "File" and "Path" plugins to see if the font is in the windows font directory.

    If it isn't, use the "Resource" plugin to extract the font and then copy it to the windows font directory.

    Then display a message to the effect that a font was installed and you need to restart the program.

    Then close the program.

    I'll make a cap if that helps.

  • Here are two ways to check if two sprites have the same x and y positions:

    + System: Always (every tick)
    -> Sprite: Set collision mode to Point
    -> Sprite2: Set collision mode to Point
    
    + Sprite: Sprite overlaps Sprite2
    -> Do Actions
    
    + System: Always (every tick)
    -> Sprite: Set collision mode to Per Pixel
    -> Sprite2: Set collision mode to Per Pixel[/code:1y35dq1p]
    [code:1y35dq1p]+ System: For each Sprite2
    + Sprite: X Equal to Sprite2.X
    + Sprite: Y Equal to Sprite2.Y
    -> Do Actions[/code:1y35dq1p]
    
    Keep in mind thought that positions in construct are floating point, so objects will almost never be at the exact same location.  But if you want to compare x,y location I'd recommend comparing the distance between the two objects and consider it a collision if they are close enough.
    
    Ex:
    [code:1y35dq1p]+ System: For each Sprite2
    + Sprite: Pick by distance(Sprite.X, Sprite.Y, Sprite2.X, Sprite2.Y) Lower or equal 10
    -> Do Actions[/code:1y35dq1p]
  • Add a "Trigger Once" condition to the global variable comparison events so the actions a done only once when true. As it is now, every tick sets the animation so the the multiframe animation don't get a chance to play.

R0J0hound's avatar

R0J0hound

Member since 15 Jun, 2009

Twitter
R0J0hound has 155 followers

Connect with R0J0hound