Reasons for not using the PMO object?

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.
  • So I know this have been brought up before about using the PMO object vs your own custom made. But after I have gone and done some custom made movements, and looked at other peoples custom made movements (primary platform movement) I still don't get the real benefit of using them over the PMO object? Is there some major advantage to doing your own? I hear people say they want "total control" as an argument, but can someone give an example of something that can't be done with the PMO in regards of platform movement?

    It is just so simple to use, and as far as I know supported by all runtimes. I even heard it was faster in performance then doing it yourself, but I am not sure about that.

    Steam games: Please login to see this link.

  • People will generally use PMO if they're making a basic platform game.
    I'm not saying you cannot make complex games with PMO, but it's tougher to keep track of complicated events when merging them with PMO...

    For example: I've tried PMO, and it worked like a charm until I tried giving swimming and climbing controls to the player; the player does move well, but when it comes across a ladder or body of water, it either froze in place or fly off screen.

    The reason why some prefer custom movement is because it's easier to organize commands for novice to advanced programmers since every event they've imputed are organized linearly and chronologically from top to bottom. Glitch in an object? Read through the codes and find the mistake.

    Unless you know everything about PMO and its codes, you won't know which event is being controlled first; whether it's the horizontal movement, the vertical movement, or the collision movement. If you don't know any of this, the only way to make PMO work the way you want it to is with lots and lots of trial and error.

  • I try to use the PMO in most cases, as it's already bugless and you can concentrate on doing other code. Sometimes it might be better to do your own code (all my game's enemies use a custom engine that's assigned through qualifiers), but it's generally better to use the extension as it has a faster performance than mmf code.

    The only drawback I've found is that the positioning of objects is done at the end of the loop, so you're always going to be 1 frame behind relative to the position of the object moved by the PMO. But you can do a few workarounds to fix or conceal that.

    Please login to see this link. - Metroidvania RPG (Win/OSX/linux & PS4/Vita/Wii U)

  • PMO can't do things like sideways gravity (although I did get it to do upside down gravity) if you want that in your game. Although I guess you could compensate and make your own in concert with PMO, maybe even with functions of PMO itself.

    I see you.

  • you could easily do sideways gravity using additional x velocity. As for swimming and ladders etc. this is all really flexible and solid using PMO. I can't think of a good reason to not use PMO.

    Check out my Game on Itch.io
    Please login to see this link.

  • I use a modified version of DavidNs movement, and I personally find that I'm more comfortable having control of every aspect of it :) I don't know if there's anything specific that can't be done with the PMO though.

  • I've never bothered with PMO because I feel like if I'm going to make a platformer, I want to control all aspects... using a movement object is like moving a built in MMF movement to me. You lose full control.

    I don't want to have something not work the way I want, and have no idea why it isn't working. Also is PMO very platform friendly?

    I tend to try and stick with the most basic extension use possible, in order to be as cross platform and user friendly as possible.

    Please login to see this link.

    My examples:
    Please login to see this link.
    Please login to see this link.
    Please login to see this link.

  • PMO works on basically every runtime.

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • I can come up with 2 good reason not to use the PMO

    1
    I dont have controll over where the PMO events trigger relative to my code

    2
    I dont know what the PMO variables represent

    How can i change username and display name?
    Please login to see this link.

  • And I have 5 good reasons to use it:

    1. It is very stable.

    2. It is compatible with virtually every runtime.

    3. It handles slopes for you, an otherwise very difficult task.

    4. It is more user-friendly than the fastloop platform movement (for beginners at least).

    5. It is flexible.

    I could list more, but I think I've made my point.

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • To those who use PMO...

    Try adding this with an PMO controlled character.
    Please login to see this link.

    For some reason, the camera glitches out whenever the game scrolls.
    I don't know why it happens, but this doesn't happen with a Fastloop Platform character.

  • My main reason to not use it is that if I make my own movements, I can customize them better. Like, making a sloped roof that pushes the player down when you hit your head against it, or better wall climbing. There's no reason not to use the PMO if it covers everything you need to do. If it doesn't, it can be better to to create your own custom movement rather than trying get the PMO to work with something it isn't made for. If you find yourself building weird hacks around the PMO to make it work with the features you need, consider building your own movements, you may learn more about programming that way too.

    PMO and evented movements both has it's advantages, so it'd be silly to say that one option is always the best.

  • I like the default platform movement because it's simple, user friendly, compatible with every runtime, and it always acts as expected.

    For a list of my achievements, hit up Please login to see this link..com/
    Unless you want to party, then go to Please login to see this link.

  • Reading the original topic (I need to get better at reading that carefully) which is a request for the motivation of using a custom movement, here are some things that are hard to do with the PMO and easier with a custom movement. Many can be done with the PMO but will require some hacky solutions, often to the degree that a custom movement will be easier.

    * Automatic sliding down slopes sideways.
    * Rotated gravity, jumping from walls and the roof.
    * Wall and roof climbing.
    * Moving platforms.
    * Jumping against a pixel in the roof and being pushed down a pixel without losing X speed instead of colliding with it.
    * Conveyor belts, wind, and other modifiers that affect the vector which the player speed and maximum speed is to be measured from.

    Once, I read review about a hex editor that stated "it's very unclear what the purpose this software is". My own answer would be "It's so you can edit the binary content of a file. If you don't know why someone would want to edit the binary content of a file, you're not a person who needs a hex editor". It's the same with custom movements. If the PMO does everything you need, stick to it because it is a great object. If you at some point happen to make a game that requires a movement beyond what PMO does, you'll notice. Then it'll become clear why you'd want "total control" as you put it.

    Edited 3 times, last by Nifflas (June 9, 2013 at 1:05 AM).

  • I like the default platform movement because it's simple, user friendly, compatible with every runtime, and it always acts as expected.

    PMO is also compatible with every runtime. The built-in platform movement is buggy, but also compatible with every runtime. Which one were you talking about?

    Reading the original topic (I need to get better at reading that carefully) which is a request for the motivation of using a custom movement, here are some things that are hard to do with the PMO and easier with a custom movement. Many can be done with the PMO but will require some hacky solutions, often to the degree that a custom movement will be easier.

    * Automatic sliding down slopes sideways.
    * Rotated gravity, jumping from walls and the roof.
    * Wall and roof climbing.
    * Moving platforms.
    * Jumping against a pixel in the roof and being pushed down a pixel without losing X speed instead of colliding with it.
    * Conveyor belts, wind, and other modifiers that affect the vector which the player speed and maximum speed is to be measured from.

    Once, I read review about a hex editor that stated "it's very unclear what the purpose this software is". My own answer would be "It's so you can edit the binary content of a file. If you don't know why someone would want to edit the binary content of a file, you're not a person who needs a hex editor". It's the same with custom movements. If the PMO does everything you need, stick to it because it is a great object. If you at some point happen to make a game that requires a movement beyond what PMO does, you'll notice. Then it'll become clear why you'd want "total control" as you put it.

    Moving platforms are done in the example file for PMO...

    My Please login to see this link. (which I actually use), my Please login to see this link. (which I mostly don't use), and my Please login to see this link. (which I don't use anymore pretty much at all really). If there are awards for "'highest number of long forum posts", then I'd have probably won at least 1 by now. XD

  • Yes, but it's still a bit limited with those. If you jump from a moving platform, it won't be as easy using the platform's movement vector as a reference point for the player, which changes how jump strength, speed, maximum speed works. With the PMO it'll be hacky. With a custom one, it can be part of it's core programming.

    Outcast: Impossible to say, depends on how the custom movement is programmed. The PMO is faster, but with most runtimes it won't matter.

    Edited 3 times, last by Nifflas (June 10, 2013 at 2:13 AM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!