Animmaniac's Forum Posts

  • I disagree about bounding box being the default. It should only be default when a frame doesn't have any collision polygon. Every other case the default should be to preserve the current collision polygon for that frame.

    It's annoying when you have made a complex edit on the collision polygon by aligning it perfectly, then you need to update some graphics by reloading them and loose all the work you have put on it. It discourages me from updating my game's graphics.

    And I must agree about the other suggestions like copy pasting. I also must add that I miss an option for snapping nodes to pixels when editing.

  • Since the latest release r72 C2 has a "Stop loop" action in the General category of System object.

    *Ninjaed by Kyatric

  • Here's an example that picks the topmost object under the mouse and move it on top of the others when dragged. I thinks this makes it a more intuitive behavior.

    Example

  • Make every segment of the belt as an object and use distant joints from physics behavior to attach them together. The rollers need to have physics as well with circle collision. Then apply a torque to the rollers through events to make them spin.

    As an alternative you can make an object with an animation of a conveyor belt and make the other objects be pushed when overlapping it. This solution would be simpler, but less "interactive" though.

  • Construct Classic also has a "Overlap by Offset" condition that can easily serve this purpose. It's something I've kinda been wanting to see in C2 as well.

    Yeah, I miss it too. I think this is more versatile than the Overlapping Left or Right.

  • Or use a conditional expression like: "loopindex%2=0 ? 40 : 180"

    Example

  • All that's being asked for (if I understand) is convert to JPEG on export to reduce the download size for certain images... ...it just could be an option to further compress JPEG suitable images when exporting.

    What I think would be really useful, and is what HotGod is probably suggesting, is not just a JPEG compression option on export, but a way to link an manage different file types as textures.

    Like HotGod said:

    All I asked was to keep the source file intact. If the game designer uploaded a jpeg it must have been in purpose. The same goes with Png.

    I simply use both formats cause I know what format gives me the best possible outcome.

    I share this very same desire.

    What comes into my mind is the way 3D softwares manage textures. They normally have a texture slot that you can set to any image you want, using any of the supported formats. They normally also include some options like ignore or invert alpha, use mipmap, interpolation mode, etc. Then the image gets linked to the texture slot.

    C2 does almost the same thing, the main difference is that it automatically converts any image you load to PNG. And that is what causes conflict with the designers intentions when using different image formats.

  • Here's a workaround

    You'll probably have to recreate it for every possible occasion.

    Thanks Noga, but this is not an ideal solution. If you look closely you'll see that the blue square overlap the background by a few pixels. To get it working just add another "set Sprite2 position to Sprite" inside the loop in my example, just like Rojo pointed. I totally overlooked the fact that the position was not being updated inside the loop.

    *I updated my example if you want to see how to make it work.

  • Silly me. Thanks for pointing that out Rojo, haven't noticed my fail.

    Edit: Taking the opportunity, I'm really missing a "stop loop" action like CC for this kind of situations. Any chance of implementing it on a next release Ashley?

  • Well, being a professional graphic designer I understand very well the difference between these formats and I must agree with HotGod that would be really handy if C2 could deal with JPGs besides just PNGs. The download time for intensive graphics games could be dramatically reduced.

    Indexed PNGs may seem like a good solution but they are only more efficient than JPEGs when the image has few details and lots of flat colors. When an image has lots of gradients and details a 24-bit PNG will be a lot heavier, and an indexed PNG yields poor results due to compression caused by the limited palette.

    The benefits of JPEG are not related with video memory. Consider the amount of hosting space, download time, and the user's disk space after downloading. Think that a lot of potential audience for web games have poor internet connections, or consider the emerging mobile market where the devices have low storage space.

    PNGs and JPGS are complementary RGB raster formats. Both have their strengths and weakness, but alone they don't cover all the ground. Supporting both would be a wise decision, specially for an application that is headed at web content.

    I wish C2 could load separated JPGs for the image and the alpha channel, then would be feasible to use large images with transparency. This way the alpha could have a very high compression, and not add a lot to the size of the image like an 24-bit PNG does.

  • C2 r71; Windows 7 32 bit; FireFox 8.0; GeForce 9400 GT

    Core 2 Duo E8400 3.00 GHz; 3,00 GB RAM

    I think this may be a bug.

    I'm trying to make a "pushout" event to prevent attached parts of the player to get into solid objects.

    This is my take at it:

    http://dl.dropbox.com/u/7871870/construct/c2-bug-test-05.capx

    *Instructions: Just run to the left.

    However, it seems that the "Repeat" ignores any conditional of it's sub-events but still executes their actions. So, instead of pushing the player just the right amount out of the solid, it is moving it 20 pixels to the left.

    Can you confirm that something is going wrong?

  • One feature I would like to see in the future regarding the dotted rectangle is the ability to drag it around in the editor as a way to set the scroll starting position. It seems like an expected functionality for it.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I don't know if it would be feasible to add or remove behaviors at runtime, but I think the ability to activate and deactivate them should be built in C2 by default.

    Unfortunately as of now, if your object need to change behavior the only way is to make workarounds like destroying and creating different objects, or making your own behaviors through events.

  • It seems this behavior can be useful for interfaces. But just toggling visibility is not so pretty and is easily achieved through events. Maybe you could add a "fade in" and "fade out" parameter to make it more versatile.

    Now thinking maybe it would be better to just make a fade behavior instead, since having only the mouse over trigger is too limiting. Then you could trigger it the way you want. And unlike the built in fade behavior you could make it fade in and out at anytime through actions, not making it just an automatic animation that fade in, wait and fade out (that is not much useful).

  • I made a big list of small features that I missed during the first C2 competition. I have been quite busy lately that's why I'm posting it just now.

    I will try to explain them with as few words as possible to not make it too extensive, so if you have trouble understanding something just ask. I added numbers to each one to make it easier to reference. There are probably some things that are already implemented in C2, so just ignore them.

    But first I'll start with the more descriptives:

    01. During competition I noticed that I can live without proper drawing tools for prototyping, but there are two essential things missing in the image editor that are indispensable: "paste clipboard" and "translate/move image".

    The ability to paste an image instead of loading from a file means that the task of cropping and exporting each and every single frame into a new file is not necessary, so an enormous amount of time is spared. ctrl+c ctrl+v FTW.

    And since (currently) we are only dealing with whole images, it should at least be possible to move the sprite to proper frame it within the frame bounds.

    02. Another thing that I missed during production was the basic "most relevant object coordinates" like TopY, BottomY, LeftX and RightX.

    I had to create those variables to every object that was hit by the laser and proper assign the values through events. Would be very handy to have those like CC.

    And in case those are added I also would like to suggest two more coordinates that I use all the time and could be very handy too: Center.X and Center.Y. Combining them you can quickly retrieve the 9 most relevant positions of an object besides the origin.

    Now back to a more straightforward list:

    03. remember action points and collision polygons when duplicate frame or animation (it currently reset)

    04. remember collision polygon when a new image is loaded over a frame (it currently reset)

    05. ability to nudge image points by 1 pixel

    06. ability to nudge collision polygon points by 1 pixel

    07. snap to pixels option when editing collision polygons in image editor. Maybe add a snap to "Pixel-grid" (between pixels) versus "Pixel" (pixel center)

    08. option snap image points to "Pixel-grid" (between pixels) versus "Pixel" (pixel center)

    09. ability to add line breaks in string variables in the properties panel and instance variables windows (maybe ctrl+enter and/or shift+enter)

    10. "New Instance Variable" and "Edit Instance Variable" windows should allow resizing to better work with long strings

    11. in a double parameter property like "size" when only a single value is inputed the both parameters could be set to the inputed value

    12. actions to set all the parameters of an animation (missing Loop, Repeat count, Repeat to, Ping-pong)

    13. actions to control the mirror and flip through events (auto-mirror and auto-flip are only useful for some specific cases)

    14. when you save a project with another name it should consider it as the last opened project and show on the start page "Recent Projects" list

    15. Export Project - extremely useful if could remember the last exported folder for current project

    16. Export Project - missing a way to abort exporting once started

    17. physics - apply force at position (not just image point)

    18. physics - for circle collision a "Collision Radius" parameter on properties panel and "Set collision radius" action

    19. physics - ability to set gravity angle

    20. physics - gravity per object instead of global

    21. physics - add a gravity parameter on properties panel

    22. physics - option to set collisions to compute only on the current layer

    23. "any key is down" condition (currently there's only "On any key pressed")

    24. browser object - missing condition "On alert OK" for when the user click on the alert OK button

    25. ability to select multiple objects in the project tab to permanently delete a bunch at once

    26. "angle is x" is only possible through the system compare, it should be available from the object just like other conditions

    27. expression "normalize(a, b, x)", return: (x-b)/(a-b) - (map a given range to 0-1 and returns the relative position of x. Useful to use with lerp)

    28. "get object effect name" expression or a "compare effect" condition (better both)

    29. else condition

    30. toggle solid behavior in runtime

    31. set text angle

    32. options to align two objects in the layout editor