Ashley's Forum Posts

  • They're conditions in the platform movement, which are reached by selecting the sprite with the movement while adding a new condition, and using the tab to pick Platform.

  • Actually, by the time it launches the DirectX installer, everything else should have been installed anyway. Even if it crashes at that point, you should be able to browse to the directory you specified and find a working Construct install.

    I really don't want to add a checkbox to disable the DirectX installer. A lot of people assume they have an up-to-date DirectX installation just because they have 9.0c because they don't know Microsoft periodically release updates which don't change the version number. I think some people would inevitably untick the option if it were there anyway, and complain when it doesn't work. And the last thing I want to do is have that problem just because WINE is broken.

  • Heh, I like the idea of community challenges. Davo and I came up with this one. You'll need the latest 0.98.4.

    It doesn't look as good as Squeemish's, but it uses instances of the same object, instead of a load of clones (which would get kinda annoying in the event sheet editor).

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Download 0.98.4 now!

    This update provides a lot of bug fixes and a few new features (the usual, really). Please remember to post bugs to the tracker, unless there's something really serious which breaks this build, in which post it here in the thread and I'll see if we can fix it ASAP!

    Remember you can donate via the main page. All your donations mean a lot to us and thanks to everyone who's donated in the past. We also pay for upgrades to the Prof-UIS library from donations, so it does come back around.

    Anyways here's the changelog:

    Behaviors

    • [ADD] Drag & Drop: ability to limit dragging to one axis
    • [ADD] RTS: Get destination X/Y
    • [ADD] Platform: can disable down-falls-off-platform, new conditions for testing wall left/right/above
    • [FIX] Ball movement: 'Set angle' had no effect when 'Rotate object' enabled
    • [FIX] RTS movement: issuing a move action on Start of Layout crashed
    • [FIX] Platform: objects with the 'platform' attribute are no longer solid sideways

    Event sheet editor

    • [ADD] Draws lines to show indentation of subevents
    • [FIX] Crash using 'go to' when no include had been made
    • [FIX] Adding events by the ribbon now insert at the right place
    • [FIX] Adding stuff from the ribbon now unselects the previous selection and selects the new stuff
    • [FIX] Adding conditions by the ribbon and by the right click inserts at the right place
    • [FIX] Can no longer add sub events in stupid places like comments and includes (ribbon, right mouse popup, drag drop, hover buttons covered)
    • [FIX] Deleting events or groups without deleting their children will no longer cause the children to reverse. Also, it will make the animation gap that the events move smaller so the transistion wont mess up
    • [FIX] Crash running a project with a blank event sheet include

    General

    • [ADD] New 'No serialize' attribute. Objects with this attribute will not be saved or loaded at runtime by the save/load/quicksave/quickload actions. Useful for objects like XAudio2 playing music etc (You need to add this attribute manually in old .caps)
    • [ADD] 'No to all' when resource prompts occur, if they are missing
    • [ADD] Some (long overdue) window settings: minimize box, maximize box, caption, resizable.
    • [FIX] Reordering layouts now sets the changed status of applications to true
    • [FIX] Editing/adding/deleting any resource now sets the application status to changed
    • [FIX] Crash selecting 'go to url' in insert object dialog
    • [FIX] Crash resizing selections in the Picture editor
    • [CHANGE] Double clicking in the object bar opens the picture editor now
    • [CHANGE] Updated to new Prof-UIS 2.84
    • [CHANGE] Update checker now runs in a thread, should stop all lockups at start
    • [CHANGE] The Directsound object no longer appears in the Insert Object dialog. You can still open old .caps using the object, though. Use XAudio2 instead of Directsound.

    Layout editor

    • [ADD] Holding enter while left clicking selects the object under the selected object (allowing you to get to those hard to select items!)
    • [ADD] While dragging, pressing enter will paste the object onto the layout making it easier to make large amounts of objects
    • [FIX] Crash with pasting clones
    • [CHANGE] Right click wont change the selection in layout editor if you mouse is over a selected object

    Plugins

    • [ADD] Timeline object: significantly upgraded, effectively version 2
    • [ADD] XAudio2: Limiter (on by default). The limiter dynamically adjusts the volume so sound does not distort if you are playing a large number of samples at once. This substantially improves audio quality in this situation.
    • [ADD] Layout object: transparent & resize-to-fit options, can scroll independently
    • [ADD] Sprite: 'is overlapping at offset' condition. Can be used instead of 'detector' sprites.
    • [ADD] Sprite: 'resume animation' action, which plays but does not go back to first frame
    • [FIX] XAudio2: possible crash in playing samples
    • [FIX] XAudio2: crash playing music from resource twice with two instances
    • [FIX] Tiled background: 'set image scale' did not display all parameters in event sheet editor
    • [FIX] Plasma object: is now timedelta-compliant
    • [FIX] Crash in Bone movement
    • [FIX] Minimap: invalid texture reference when device reset

    Runtime

    • [ADD] System object: cubic interpolation expression (cubic())
    • [FIX] Collisions: bounding-box tested against per-pixel objects was not working
    • [FIX] Debugger-reported event numbers are now always correct
    • [FIX] Problems with incomplete containers in layout editor again
    • [FIX] Weirdly rendered display if the layout was smaller than the window, and mouse co-ordinates sometimes wrong in that case.
    • [FIX] 'Pick a random object' didn't work correctly with families
    • [CHANGE] Animations are now allowed to skip frames if they are faster than the framerate
    • [CHANGE] Passing a family to a create/spawn action now picks a random type in that family and creates that
    • [CHANGE] Debugger can now also identify the event sheet a crash originated from if it happened in an action, condition or expression.
    • [CHANGE] Window automatically centers itself in the screen on startup.
  • Nice example! The effect is more noticable if you use a low fixed framerate eg. 15 fps - the blue object passes right through the barrier.

    You could neaten the events using the 'repeat' condition instead of a loop, which keeps everything in the same event, eg:

    + Right arrow key is down

    ----+ Repeat 5000 / redguy('Accuracy') times

    ----+ Red does not overlap wall

    ----> Set X to .X + (TimeDelta * redguy('accuracy'))

    This keeps everything inside one subevent. I don't really like the action-based loops - I'm not sure they deserve to be there - I think using condition loops is always superior. The runtime can run condition loops faster, and it keeps events in one place (it's bad for readability that 'start loop' runs the loop body somewhere else).

    Also, your example doesn't take in to account if it's running too many loops - if each iteration the object is being moved less than one pixel, it is a waste of processing to check the same pixel twice.

  • Yeah, you can do that or put all objects with the same texture on their own layer, so even accidental send to front/send to back won't change the layer, and still allows the GPU to keep the same texture loaded.

    However, that's probably of the more subtle areas you could optimize. The canvas thing is much more important (don't make them bigger than the screen if you can). I wouldn't bother building your game from the ground up with the Z ordering thing in mind. It won't make any noticable difference unless you're using hundreds, or thousands, of on-screen objects which are intermingled with other objects in the Z order, which is a fairly rare situation.

    You're much better off optimising the use of pixel shaders, or not bothering at all, until your framerates prove you actually need to start speeding things up (what's the point if it runs fine anyway?).

  • Deadeye, maybe rebuild it in the next build, 0.98.4. By then there will have been several XAudio2 fixes.

  • If I start distributing a copy of the installer without DirectX, I can imagine inevitably some Windows users downloading it and complaining that it doesn't work.

    I think you should take this to WINE, it's a bug in their program.

  • But it won't work without it, you need an up-to-date DirectX installation. Perhaps report it as a WINE bug, it's necessary and if WINE isn't up to the job, it shouldn't be down to us to fix it.

  • You can't, right now the shadowcaster only casts shadows around the bounding box. Sorry, there's no custom shape support yet. You can always use lots of invisible shadowcasters to approximate a different shape.

  • you can write your own plugins using C++, but not sure if I can use the SDK with MinGW / GCC

    You can't use the SDK with GCC or MinGW - I don't think they use the same member-function-pointer binary format (which is how the runtime knows what function to call for actions, conditions and expressions), so it just wouldn't work. Sadly C++ makes no specification about the binary format of these things hence we're stuck.

  • I'm not particularly bothered about porting to other platforms. C++ projects can, of course, be ported, but it's a do-it-yourself affair. We all only do this in our spare time and porting would be asking us to double the time we put in for maybe another 5 to 10% of users. Ask again when Windows market share falls considerably. Alternatively, you could try and find a developer willing to do the porting work.

  • OK, you're on!

  • Works fine here if I replace the 2 with "lyoStart"...

  • Try Google. They seem to have a good index of the forum.