I think what you are looking for is stamps and png/gifs, which are also supported in most relevant chat platforms these days.
MacOS: grimace
Windows: frown
Android: scowl
Samsung: growl
Firefox: angry face
That’s pretty much what the emoji situation is today. I don’t understand what the actual use case is for the requirement that emojis differ across platforms.Yes, I realize they are widely used, but they are widely used despite this stupidity, not because of it.
Here is just one random article from Emojipedia about the history of the "folded hands" emoji: https://blog.emojipedia.org/emojiology-folded-hands/ There are many more examples.
In addition to that, almost all emoji keyboards now autocomplete the emoji based on standard names, so if you search for "disappointed" on most any emoji keyboard, you will get the same face.
For reference, here is the current official emoji set, including the standard names and images showing how they render on different platforms: https://unicode.org/emoji/charts/full-emoji-list.html
Even if there was no vendor consensus, I'm not sure what the misunderstanding could be with this particular emoji. There is only one pistol emoji, and regardless of whether it is rendered as a water pistol or a revolver, it still is used to represent the concept of a pistol. There are better examples of emojis that used to be displayed with a facial expression or hand gesture that had a relatively different meaning depending on the platform. For example face with rolling eyes, person tipping hand (information desk person) and so on.
Well... yes? That's because avalys is obviously correct. The "solution" defined by the Unicode consortium is so spectacularly stupid that everyone has unanimously agreed to move away from it by synchronizing their images, because it makes no sense to send an image unless you know what it will look like.
To your point, this is an aspect where integrating and regularily adding emojis to unicode pushed a very technical system under popular attention, and attracted a lot of people from unrelated backgrounds who now have to understand how it works and what its goals in the first place.
It was even more dumb when they did it for CJK. Unicode is now neither fish nor fowl; you can't rely on things to look the same in different places, but you can't rely on them to mean the same either; there's no proper separation of concerns because they decided it's fine for the meaning of a character to change based on the font you're using.
I kind of get why we got here, as encodings were a quagmire for a long time, and coming to a real clean, everybody's happy solution with unicode looked completely unrealistic.
We now have way better compatibility, got to settle for one encoding in most cases, and the annoyances are for now somewhat manageable (if/when China opens more to the global net, it might be a different story). Installing fonts is still easier than adding encoding compatibilities.
This would promote an open culture of creating inline symbols. E.g. where is our "covid" symbol, and why do we have to wait for the Unicode consortium to define it for us, and app makers to implement it??
Just like we all go "bla bla" on the phone because we can choose our own sounds?