tulamide's Forum Posts

  • Wow, just took a few weeks off and on returning the forum is changed to such an ugly design and the alpha version is released!

    I really doubted the quality of the song, it helps my self confidence to read positive comments about it.

    -Silver- has done a very good job so far. I was in love with the wolf from day one.

    MrMiller

    What do you mean by "that itself has been buggy"? I never had issues of any kind. Also, I once made a tutorial about the XAudio2's peak and rms functions. If you read it to the end you will find a little gift, that might help developing code that uses music on sound channels, which offers plenty of new possibilities to handle music.

    -Silver-

    I wouldn't recommend using the "y"-key. Different languages use other key layouts. For example, the "z" and "y" key are swapped between english (qwerty-layout) and german (qwertz-layout) keyboards. There are also azerty- and qzerty-layouts. As long as CC doesn't report key-codes but characters, it might be best to let the user decide which keys to use?

  • Else was always buggy in Cc. I would guess that's what the issue is."Else" never was buggy in CC! It just doesn't work with human logic but computer logic. The greatest difference in that logic is that "else" doesn't pick. Which causes most of the problems CC developers have using "else".

  • Keep in mind that "Verve!" doesn't load in Construct 2 (104). At least not here anyway.You're right, it is a CC project. But on the other hand, this is the CC help forum ;)

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You're mixing resources and files in the description. So I'm not sure, what you heading for.

    Sound file play: You need to make sure that the files exist at AppPath & "xx.wav". AppPath always points to the directory, where the .cap or .exe exists. If you didn't save the .cap before running it, AppPath isn't valid.

    Sound resource play: You need to add the sounds to the files folder in the project tab and have to use the "load resource" actions.

    The two events you posted are quite a mess <img src="smileys/smiley2.gif" border="0" align="middle" />

    You seem to have a xaudio object called "1_XAudio2" and load the file to it. But then you try to play it on an object called "2_XAudio2", which never had any files loaded to its channels.

    Summary: Place all your sounds in the correct folder on disc. Use just one XAudio2 object. Correct the two events to only load and play on this one XAudio2 object. Save the cap before running.

  • Either I'm using it wrong, or the action isn't working as intended.Neither <img src="smileys/smiley1.gif" border="0" align="middle" />

    I know the action works correctly, because I use it so many times. For example in the example game "Verve!", or in the day-night-cycle demo of the Color Fusion (Masked) effect. Both of them downloadable (is this a valid word?) somewhere on the forums.

    But I remember that I also had a lot of problems when trying to animate parameters of the warp effect. It seems to be the effect itself. Normally, I'd advise you to contact the author. But in this case it's Ashley, and I'm pretty sure he won't have time to look after it.

    I'll send you a pm.

  • Yes, it is possible. You find the action under system/layer/set layer effect param

    Just make sure you enter effect name and parameter name exactly as you see them in the layer effect properties <img src="smileys/smiley1.gif" border="0" align="middle" />

  • The most important points on optimisation are already posted. I just want to point to an additional argument that is most often underestimated. You asked if there is any advantage in reducing from, say, 3000 to 2000 events, even if everything is working as before, game-speed-wise. There is! The leaner your event sheets the lower the risk of losing overview. You might not be able to maintain your game with redundant or not-so-optimised events.

    Let's say you have quite a few events for the movement of the player char. You can of course enter those events over and over again, wherever they are needed. But if you create a function instead and call that function wherever needed, you gain massive programming advantages. For example, if a change is to be made you only need to change once. Just that one function, no matter how often you use it in the event sheet.

    And if you put those functions on their own event sheet and include it into each layout where it is needed, it is again a lot easier to maintain the code.

    In addition, add comments as much as possible and enter a description for your groups. You might think that you know what the groups are for or those special events do. But if you release the game, work on something else and then later need to go back to the other game, because players reported bugs, you might not exactly remember.

    In short: Less and good commented code = better maintainability

  • Anyone know where I can buy a new F5 key? <img src="smileys/smiley2.gif" border="0" align="middle" /> <img src="smileys/smiley36.gif" border="0" align="middle" />

  • Tokinsom

    Thank you! Yes, there are lots of ways, modulus can serve well.

    I try to think of examples, but it's sometimes hard to build something, when you just wanted to quickly share some tricks.

    Also, aren't "conditionals" called ternary operations?That may very well be so (and Wikipedia says it is^^). I learned about it not before using Construct, so I used the phrase Ashley used too.

  • Thank you, that's really encouraging! If someone has a special wish for a font, tell me and I'll try. Thanks again <img src="smileys/smiley1.gif" border="0" align="middle" />

  • No comments, but over 2200 views, so I guess you want more. <img src="smileys/smiley2.gif" border="0" align="middle" /> I take newt's suggestion, so here's

    Tips'n'Tricks #3: Conditionals

    Construct Classic offers a shortcut for simple 2-state conditions. Let's say we have a game with a mean boss that talks to us. Whenever the player is near the left border, the boss should say: "I can see you!" but else the boss will say: "Where are you?"

    With normal events, it would look like so:

    + Sprite: X Less than 200

    -> Text: Set text to "I can see you!"

    + System: Else

    -> Text: Set text to "Where are you?"

    Already only two events. But you can express it in just one event, using conditionals. The way to use them is easy. Wherever you can enter an expression, you can use the syntax "condition ? a : b"

    The condition will be either true or false. If true, a will be executed, if false, b will be executed. Easy. And this is how it looks like in an event:

    + System: Always (every tick)

    -> Text: Set text to (Sprite.X < 200) ? "I can see you!" : "Where are you?"

    Now you might think it is too restrictive, because it only knows two states? For example, you might want the boss to say "I can see you!" whenever the player is near the left or the right border. You shouldn't use "or" to evaluate events, but you can do it this way:

    + Sprite: X Less than 200

    -> Text: Set text to "I can see you!"

    + System: Else

    + Sprite: X Greater than 440

    -> Text: Set text to "I can see you!"

    + System: Else

    -> Text: Set text to "Where are you?"

    You can't use conditionals for something like that, can you? You can! The best about conditionals is that you can call a function.

    We set up this function:

    + Function: On function "nearBorder"

    -> Function: Set return value to 0

    ++ Sprite: X Less than 200

    --> Function: Set return value to 1

    ++ Sprite: X Greater than 440

    --> Function: Set return value to 1

    Then we call:

    + System: Always (every tick)

    -> Text: Set text to (Function.nearBorder = 1) ? "I can see you!" : "Where are you?"

    Of course, you can create much more detailed functions. As long as they return one of two values, you can realize pretty much anything. And using conditionals can simplify your event sheets and make them more clear and well arranged.

  • Noone? <img src="smileys/smiley19.gif" border="0" align="middle" />

  • But I don't know if CC developpers already know the problem and intend to correct it.It is unlikely that it will be solved any time soon, if ever.

    However, you can avoid the hairlines using one of two workarounds:

    1) Make sure there's a 1 pixel transparent border on all 4 sides of the images. (This is an option for TiledBackground4 only in your example)

    2) Change sampling in the runtime properties from "linear" to "point". (This is an option for all the TBs, but will have influence on the visual presentation of stretched graphics)

    EDIT: Technically, what you see by those hairlines are fragments of the other side of the images, and you see them because of the linear sampling (which works sub-pixel) and because the images wrap around (that's the purpose of a TB)

  • I'm not sure, if there's need for bitmap fonts (aka pixelfonts) anymore. But here are three totally different fonts I created with Bitfontmaker2:

    1. Fewture (a thin, wide, clear font)
    2. Nerhoe (a small, condensed, vertical font)
    3. O'skool (a sligthly slanted, round font, reminding on the 80's)
    4. <font color="blue">Update (21 Oct 2012):</font>
    5. Halftone (a simple workhorse, made with a typical halftone pattern. For those 50% transparencies without alpha channel)
    6. Tiny Tim (probably the smallest aliased pixelfont available, that supports lower case letters while still being easily readable)
    7. Toose Ornament (a romantic, half-serif font, with ornamented upper case letters)

    Use them however you see fit. <img src="smileys/smiley1.gif" border="0" align="middle">

    \\Comments welcome<img src="smileys/smiley2.gif" border="0" align="middle">//

  • The video on this page shows the browser and its possibilities in detail. Nothing about gaming. I doubt that they wouldn't show browser gaming if it were a part of the browser...