konjak's Forum Posts

  • Playing around with adding sounds some more it seems really problematic. Attaching no samples to specific channels seems to place them all in the same one. I have a footstep sample and I made one foot in the run animation play the sound slightly faster, but this affects EVERY sample that plays if it plays at the same time or close to the foot sample.

    I imagined playing a sample outside of a specific channel would make it its own thing, hence why I requested the sample specific action like volume, frequency and stopping.

    Right now it seems really obnoxious and hard to get around.

  • But wouldn't that do the same thing where it could affect two sounds. And mind you, the current use for it I would have would be for a character who has all the sounds played AT the character, with a channel associated with the character. That would affect multiple samples playing at once, no?

    It's overall a simpler approach too. About affecting two of the same samples, it did in MMF but the way I usually did things was to say to "stop" that specific sample before ever playing it again (can you stop specific samples now?).

    If I don't associate the character with a channel, does Construct make a new channel for every consecutive sample being played, for any object?

    Also, needing a new event to make the settings of a sample seems annoying. Maybe you play two samples in the same event, how does getting the last channel used work then?

    Questions, questions, questions?

    EDIT: About affecting one sample, if the setting are given right after the sample is played in the same event, does that not make it possible?

  • I think it would be really useful if you could, with the sound plugin, just tell it to change frequency, volume or pan to "sound.wav" instead of seemingly having to do it to channels. Right now it seems a hassle to just change the volume of one sample that may play at the same time on the same channel as another sample.

    That's pretty much it. I would find it extremely useful, and I hate to bring up MMF again but that's how it works in it...

    EDIT: While I'm at it... it would be nice if the "play sound at object" didn't necessarily include volume, or have it seperate. I like it for its panning function, but sounds get quitier much too fast when you get away from the center of the listener position.

  • I'd like to point out OGGs don't play using this method...

  • Okay, thanks for being so thorough!

    As there are workarounds that work perfectly fine it doesn't matter. It was just confusing having been used to a different approach.

  • Okay. I've solved it anyway with the repeating of the creation event several times over, but how did this current approach come to be? Just wondering.

  • I actually can't seem to recreate it in a different .cap-file...

    Which is strange since I'm using the same approach.

    I have a work-around but it still doesn't solve the inexplicable mystery of my old approach. It did indeed set any of the objects created after the first "set values" to the values of that very event, though, I'm not imagining that part.

    EDIT: I created a CAP out of the game I have and it retained the strange error. I'd still like to know what causes it, even if my workaround is mostly better and tidier. Hopefully you can comprehend my code:

    http://www.konjak.org/creation.cap

  • Konjak, just set everything you want for the created objects on the action line right after the create/spawn action. Actions directly after a create/spawn action will pick the newly created one, and perform the actions on it.

    I explained this approach is the exact one I use, and it doesn't work with this approach. It will start reading the code anew and look for the topmost of these events and execute it for all the created objects instead of just the one I want.

    Maybe the "spawn" action works differently?

    And as someone suggested that creating then immediately destroying works, of course it does, my point was they both execute at the end of the code, and that would mean it creates and destroys at the end of the code.

    Destruction has done the same for me in the past, meaning I can have an event that says "destroy" then anywhere below have one that says "always + if object exists ---> play a sound" and even if the event is after it will play that sound one more time.

  • There seems to be an issue with Construct that I'm not sure if it can be worked around or if it's an oversight or if it's some kind of standard procedure I don't understand, but when I create an object (or destroy it, but I haven't tested that recently) any sort of event following the creation will be ignored. It seems to me any creation event is queued until all the code has finished, then the object is created.

    The problem with this is for instance if I have several animation frames in a sprite but I want it to start on a particular one upon creation. The sprite will appear, though it will flash in its initial frame for a single tick. This is the visual indicator, any event such as setting its position or size following that event, but not within that event, won't affect the object until the next tick.

    My great issue with this is the removal of being able to create several objects and have several conditions in the same event affect all the newly created objects. I have an event that follows now that if it's not 1 it will set all the values I want right after creation, then it sets the value to 1, and this event immediately follows the creation event, but is ignored until the following tick.

    Now I might have several of these events through the code that have an identical condition, but as it sets the value to 1 it should only affect the ones I want, but if it doesn't work for the same tick it will always pick the topmost event for all the created objects of the same sprite. I used this approach of value-setting back with Multimedia Fusion as well, and that program created objects at the same line of code as the event that asks it.

    It would be really nice and comfortable if objects were created and destroyed at their actual line of code rather than before each tick renders a picture, and I don't quite understand how this approach was chosen to begin with.

    Thanks!

    EDIT: A way around it is probably to make a single creation run several times over, but I think it still messes up the animation frames. And it just makes more sense for objects to create and have values set at the line of code where the event is.

  • Fantastic work!

  • Cool!

    As long as I can have internal sounds later. I just prefer it.

  • I'm getting a crash/inability to save when I have a sound of any kind in the resources. What confuses me is this though in the changelog:

    "- [FIX] A crash when loading an application which had sound resources (caused verifier to crash, therefore saving crashed too)"

    It seems to be the exact problem but it remains for me in 0.99.3.

  • Continuing on pixels being distorted on objects in the layout editor that Ashley didn't seem to see, here's a good example:

    Layout editor:

    <img src="http://www.konjak.org/layout.png">

    In-game:

    <img src="http://www.konjak.org/ingame.png">

    Obviously "in-game" is the correct look. I'm gonna guess that either there's som issue with zoom not being perfectly 100%, or the new 3D layering doesn't display correctly out of the game.

  • Okay, thanks.

    Now that being able to distort sprites on the Z exists, something like rotating on Z as an action would be nice...

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • How do collisions work with Z-ordering? Do they only collide if on the same Z, or do they always collide while on the same layer?