What type of frameworks are more popular games using?

Started by
20 comments, last by stupid_programmer 7 years, 5 months ago

And it's confusing why Steve said they didn't allow Flash and now they "allow" it anyway through AIR.

Most likely the same reasons game consoles reject it, unless it is compiled and built into the finished product. Any time you allow external code to run or be compiled it is a risk for the platform.

If Flash is an external application then the other program needs to be installed and configured correctly, then Flash basically compiles or interprets the script on the fly. If it compiles the code it opens up all kinds of security concerns regarding permissions of the newly-compiled program. If it runs it dynamically from inside Flash then it has the same permissions as Flash has, which may not match what the program needs. If there is a need to kill the app or remove the permissions, that doesn't fit well.

And of course, if Flash is running it then you get all the exploits Flash is famous for.

If instead the file is compiled through Air or through a system in a larger game, then the product is something standalone. There is no generation of an additional executable which may introduce permissions problems. There are limited problems of the program escaping the sandbox as the sandbox is unique to each program instead of using a shared Flash sandbox. There are still some Flash exploits available, but since the executable is locked it can be controlled through sandbox protections and the permissions the user selects (although users granting all permissions to everything is a separate issue). Many problems solved with a requirement that no compiling or modifiable scripts can be executed.

Advertisement

The flash runtime was thrown out from having too many memory leaks and poor performance. Just like they would do if one or another JVM implementation would fail on the platform.

Android did the same with OpenCL to promote their own RenderScript. Nobody uses RenderScript because it is slower than software rasterization.

Flash is the victim of quite a bit of FUD and propaganda (thanks Apple), much of the criticism isn't reasonable, or is no worse than the alternatives when examined objectively. And of course you have the political/business aspects, Apple had the power to do serious damage to a platform poised to destroy their App Store profits (mostly from gaming, like Flash excels at), so of course they pulled the trigger. And Adobe, being much smaller with the marketing/communication skills of a chimp (vs. Apple's marketing machine), of course didn't win that popularity contest. Even with Microsoft building it into their Edge browser, Flash indeed seems to be on it's way out, so I guess there's little point in beating this dead horse topic. I will add though, the HTML5 security exploits have started, and won't be going away. Exploit stats will now be harder to gauge due to more fragmented implementations (which brings other fun issues), but security risk will always be there. Now we'll have to deal with more browser exploits.

AIR is an interesting alternative platform, absolutely great to develop for. I've read somewhere (can't remember) that supposedly Apple was legally blocked from banning AIR from their devices in Europe. I'm not really a fan of legal bullying (or other types), but at least it gives people an alternative software platform choice. AIR isn't supported on Linux, so I can't really get too enthusiastic about it anymore, but Adobe's site does claim a wide range of support with hardware acceleration. Adobe seems to be focusing on the "casual" gaming market now.

I have zero interest in mobile gaming dev or the casual market, but if I did, I'd have to seriously consider AIR because it's an easy way (outside of something commercial like Unity) to create something cross platform with a single code base.

For the type of things described by the OP I think Unity is probably going to be the most popular. Maybe someone here has proof otherwise, but I'm pretty confident that HTML/JS are not particularly popular for gaming on mobile, or even desktops really.

Flash is the victim of quite a bit of FUD and propaganda (thanks Apple)

No, Flash was an abominably unstable and insecure platform. How it was still riddled with holes right up into 2016 despite the platform being largely stagnant, I have no idea. It shouldn't be possible. But it shows that the software is just not fit for purpose.

the HTML5 security exploits have started, and won't be going away. Exploit stats will now be harder to gauge due to more fragmented implementations (which brings other fun issues), but security risk will always be there

There are fewer of them, they're getting caught and patched with more urgency, and browser makers don't typically try to foist adware on you when you update, and if they did, you have a choice of providers.

Well, I don't mind discussing the topic, actually I think it's good to hear other perspectives from people with in depth knowledge. Usually people that don't like Flash I see only know that they don't like ads (easily blocked, and they're usually unblockable HTML/JS crap now anyway) or the stupid "skip intro" movies (extinct now, a good thing). Flash definitely hasn't been stagnant though! They've had many new releases over years, adding major features like AS3, JIT compilation, hardware acceleration, multi-threading, new security features... I know I'm forgetting things. All that stuff was way before W3C got their act together enough to even get specs out for HTML5, so that we could be spammed with new harder to block popup ads. :) Makes you wonder, maybe corporations didn't like how Flash was so easily blocked, not good for marketing! They are the ones running these standards committees, after all.

Maybe you're an Apple or a FireFox user (both had questionable motives, particularly Apple, and neither put much effort in to improve integration), and maybe there were more problems in conjunction with those, but who's fault is it if it's working fine in other major browsers? Hard to say I think. FireFox has an unusual plug-in architecture which possibly caused issues (I've seen browsers crash too, but almost never due to Flash). Apple has their own control issues which Adobe had pointed to as a problem. So I don't really trust those guys, Flash was certainly working well enough to obtain record setting numbers of installs, and embedded itself into commercial software so firmly that it's still there today. Anything with that kind of popularity will always be a huge exploit target (like Java and Windows) and there will always be many people with issues because of the sheer size of the user base.

In contrast to FireFox and Apple's terrible security records, Flash seems to have done pretty damn good.

I'm pretty sure Flash doesn't come with any adware, I don't remember it ever, so you're probably thinking of Java. Or otherwise you could have downloaded malware (a fake version of Flash not from Adobe, no wonder it would crash then). Flash was one of the most successful and popular front-end software platforms in computing history, it's hard to believe that'd happen because it's terrible.

I'm not sure what stats you're looking at for HTML5, but I don't think the HTML5 security stuff is going to just get patched once and go away. Everything ends up with security exploits eventually. All that code still has to be maintained for new browsers, new hardware, new drivers, new features, and so on, so new issues will always arise. Since browsers are now accessing the same lower level API calls that Flash accesses, and implementing many similar features (JIT compilation for JS, hardware acceleration), they've expanded their own attack surfaces. So I have trouble believing biased critics like Apple when they claim that there's an actual difference here in terms of security. Especially considering browser security stats I've seen, these guys aren't any smarter than Adobe's devs.

I suppose if platform fragmentation is counted as a positive for security, it might be a small "improvement" (with it's own cost). If your platform is less consistent and reliable due to fragmentation, it makes malware harder to create (as well as regular software, of course), so I guess there's that. Not sure that's a great strategy, making all the software suck. And now the security problems are going to be harder to track and measure; the exploits and security stats will be scattered into browser stats, so it might look like an improvement, but maybe not a real difference. It's a complex topic for sure, not nearly as simple as so many content-less critical tech bloggers would have us believe.

Even as recently as last year, 4 of the top 5 zero-day exploits are from Flash. It's bad software, and deserves to die.

I'm pretty sure Flash doesn't come with any adware, I don't remember it ever, so you're probably thinking of Java. Or otherwise you could have downloaded malware (a fake version of Flash not from Adobe, no wonder it would crash then). Flash was one of the most successful and popular front-end software platforms in computing history, it's hard to believe that'd happen because it's terrible.

It actually depends on where you are downloading flash from, but in some countries Adobe wants you to install other programs such as McAfee when you download (or even update) flash. You need to remember to uncheck the box before you start the download. Once it also wanted me to install an Intel utility, I don't remember which one.

In contrast to FireFox and Apple's terrible security records, Flash seems to have done pretty damn good.
I'd be curious to know where you got that impression from.
Definition of a man-year: 730 people trying to finish the project before lunch

Maybe you're an Apple or a FireFox user (both had questionable motives, particularly Apple, and neither put much effort in to improve integration), and maybe there were more problems in conjunction with those, but who's fault is it if it's working fine in other major browsers?


Blame-shifting? Really? What's your dog in this fight? If Adobe wanted Flash to survive they should have done what was necessary to make it happen.

Why on earth would it be the job of Apple or Firefox to make Flash succeed? That's like jumping off your roof and calling the ground unreasonable for breaking your legs.

The suggestion that the IETF are a bunch of cartoon villains conspiring against some noble, benighted software is laughable.

The minimum standard of living for the web has exceeded Flash. Evolution is taking it's course here.
void hurrrrrrrr() {__asm sub [ebp+4],5;}

There are ten kinds of people in this world: those who understand binary and those who don't.

2015 was indeed a bad year (much of it was due to that single highly advertised 'hacking team' incident), although they patched these things in a matter of days, which is extremely fast. Before 2014 the numbers drop significantly, and the majority look to be only in recent years from what I've seen. Could be due to Adobe reassigning staff duties and cutting corners, the additional publicity, malware authors getting better or changing tactics, who knows. To be clear, I'd agree that security is indeed a weakness. Now we'll never know if that battle could have been sustained, were the platform not under siege by so many competing interests, or if a bigger/better company was behind it. I'm mostly saying here that we need to at least take these things with a grain of salt, because the harshest critics have ulterior motives. I'd be curious to see Symantec's methodology for ranking exploits, how the others rank in terms of severity, and what data there is on how much actual damage occurred, all of which may paint a different picture.

In raw numbers, very rough NIST National Vulnerability Database stats (all-time numbers, so keep in mind Flash's age in comparison) look something like this below. Flash isn't a stand-out among the crowd here, especially considering that for many years the thing was on virtually every PC connected to the Internet, in contrast to most of these. I would expect far worse numbers with that in mind.

FireFox 1,484
iOS 883
Flash 991

Chrome 1402
Safari 746 (why so many for such a niche product?)
Quicktime 329 (Hard to think of a more niche product, why is this so high? Flash's record is far better, especially considering it had 95% market penetration, and it does more than just play video...)

The last few years have been pretty terrible for all software really. Numbers are up drastically all across the board pretty much (I wonder if some of that is due to HTML5). Main point here, these other guys aren't so perfect either.

Making statements like "it's bad" or "deserves to die" is like beating your old work horse to death after 20 years of helping you put food on the table. I don't really understand the strong hatred. The alternatives simply weren't up to the task, and are still quite lacking in some ways. I'm not in denial that the only path now is to retire Flash, especially from the public Internet, and I've already moved on to other things.

But considering broader context of private/intranet usages (places where security is already mitigated due to limiting or blocking Internet access entirely), it's not as urgent an issue. A lot of productivity software needs to be re-written, particularly in certain industries like banking/financial (believe it or not), which takes significant time and money. Some indicators I've seen are that often the replacement software isn't as good, costs more to develop, takes longer, is expensive to maintain, and so on. Development workflow for a former Flash dev on mobile or web is a painful experience, having experienced a much better platform to develop for before. The whole situation sucks all around.

The security issues aren't actually what I was referring to when I brought up anti-Flash propaganda though, it's my biggest issue with it too. Usually when the critics attacked it years ago, they'd have the same 10 things in a list they'd always hit it for, most of which were easily debunked or debatable, so seeing those things endlessly repeated over years wears on you. Security was probably the hardest to disagree with, but again, considering only that is like tossing out Windows purely for security reasons. I'm here on Mint and I'm not even suggesting that...

@Khatharr Was Adobe blame shifting? Maybe... I doubt the info is around anymore due to time passage, but Adobe had some technical reasons for that claim. Something about restrictive APIs forcing awkward implementations and not having them upgraded to provide needed features, API flaws, or whatever. I recall reading that Flash can only function as well as the environment it's provided, or something of that nature.

But yeah, maybe you're correct, maybe that was just Adobe taking their turn at poking their finger at the other guy, so you probably have a valid enough point.

I don't really have a dog in a "fight"... the fight is over. The only thing that bothers me about it is that a lot of people and companies got away with telling half truths to kill what was a perfectly good competing technology back when Jobs put out that "open letter" or whatever it was. People have become a little too trusting in everything these technology company "authorities" say or claim, they have their own interests and profit margins to look after. It's kind of a problem in recent years, with developers too--everyone just loves to bash the other guy's tech, and it gets old to me.

This topic is closed to new replies.

Advertisement