22 KiB
22 KiB
I think there's more to this idea. I don't think they're interested in branching out in that direction, but I think it comes down to software compatibility. Let's say you're Sony, and you want your ps3 controller to operate on Windows as well as your own console. Well you can create your own drivers, or you might already have some, so it's extremely easy to get that to be compatible with just about anything, given that you have the source code to your product and all that. In order to get the same controller to talk to the phone, you need to get them to speak the same language through a sort of driver as well. In Windows, this has been built in for a long time. And even if you're not Sony, you can reverse engineer the hardware to get it to do almost anything with the software by creating your own tools, or injecting custom drivers. This is not the case with just about any Apple product. Apple does not allow pretty much anyone to understand their products, hardware or software, so they don't allow companies, and certainly not the average consumer, to do literally anything that they may want to do. The company doesn't want you to use the hardware you own to do anything they don't want you to do with it, especially to use it past its arbitrarily chosen, forced obsolecense date. So if you want to use a ps3 controller with x Apple product, because Apple hasn't had any official support for that, and nobody else can create support for it without jailbreaking which Apple hates, meaning the only people who can get that to happen (without homebrew) are Apple, and since Apple stands to earn nothing from supporting hardware they don't sell, they won't support it. I stand by what I said when I said that, if they want you doing something, they only want you doing it in their ecosystem that they profit from. So they lock their code to themselves, which doesn't allow anybody to develop solutions to their problems, then they don't give solutions to those problems until they've decided they can invest in creating their own product so they can profit off of that problem they've created, which creates more e-waste and more stress on the individual. Though arguably, it does create more demand for competition from other corporations that don't suck.
I think they realize that they actually do stand to earn something called Consumer Trust, but they just think such a thing is worthless in comparison to Corporate Slavery. For every rich idiot that shackles themselves to the Apple ecosystem, there's a poor person who is far more free because they're just trying to use something GOOD rather than shiny.
Funny thing about that is, now I believe selfishness, rationally applied across time, is a virtue. So I'd probably reframe that statement to say that it's short-sighted to assume that voting with your dollar is a responsibility that you will bear the burdens of when the products get worse later down the line, so you ought to be making focused, disciplined purchasing decisions as a consumer. Consider that what you're doing is something that other people also are allowed to do, and assume they're just as willing to do it despite the potential harm. If everyone thought this way, we wouldn't reward bad business that peddle shoddy product.
===
To conclude this argument, why would it serve your goals of being the best platform for entertainment, to invest in creating your Special Gaming Box™ on its own Special Architexture™ and Operating System™ that only games that you invest in or approve can join that platform, when you could just create them for the universal platform that they're ALREADY ON, and optimize them so people with hardware they've already got, or can readily upgrade, can run the game? How can any console be even a good place to play games, when you have to get a brand new Gaming Box™ every 5 years, and backwards compatibility isn't always guaranteed? I cannot WAIT for consoles to become a thing of the past and for Sony and Nintendo in particular to become software-only companies. The PC is evolving every single second someone iterates on the hardware, which is constant, and the software goes right along with it. Sometimes they get out of sync, and one is ahead of the other, but that spurs the other to catch up, so it's a constant dance between the two. Either way, you can still run software created in 1995 in Windows without much of a hitch, and if you do run into one, there's official and unofficial methods to get it to work. The freedom creates infinite solutions. The console evolves only when the corporation that produces it decides to replace it, and leave all games of the past generation behind, a la Nintendo. They are destined to fail. The only thing keeping corporations like these afloat, are people too enslaved to their ecosystem to hold them to account.
To throw a bit of shade, and to go on yet another tangent, I was recently in talks with some pro-nintendo folks and one of the things I discussed was my perspective as a professional 3d artist but also as a dabbler in development. I was told that, indie devs in particular benefit greatly from Nintendo's platform, because the hardware is easy to optimize to, and the dev tools are easily accessible. That was a fucking lie.
Or, in the very least, it was an untruth and it was simply a gamble they made on their end because both parties lacked the information to support or rebut that claim. But I had a hunch, given that I knew developing for Mac was a pretty untennable process. For more on that, PirateSoftware has a great video explaining it. First, you must apply to become a developer through your developer account, and be accepted into the Nintendo Developer Portal in order to access official dev tools, SDKs, and documentation. You can then install the SDK, Unity and Unreal have switch support, but of course, only for licensed developers. Once you download the Nintendo Dev Interface you can install the SDK, and this is where the fun begins.
PirateSoftware's video on Mac development Nintendo Developer Portal
You MUST purchase or otherwise acquire a hardware devkit. This is a collection of hardware devices and other resources that allow a developer to interface with the console in order to deploy their games within a dev environment. This is absolutely unfeasible for an indie developer that isn't cool enough for Nintendo. So assuming you are approved by Nintendo, you then have to go and order a devkit, or multiple, if you have more people within your studio, and they absolutely will cost within the ballpark of a PC. These prices aren't exact, probably due to NDAs, but the standard NDEV kit is $500-$1500. A testing and debug kit is between 1500 and 2500, whereas the handheld-only kit allegedly for smaller developers is around $400-$800. And you don't even own them, you're often leasing them from Nintendo, which means there may be additional costs on a per-year basis. Now, I'm not saying it's unreasonable to charge for hardware and to try to ensure that your devkits don't fall into the unwashed hands of the unapproved. I'm sure that power in the wrong hands could be a potential liability if there were some kind of exploit found with the hardware.
But the barrier to entry for indie devs is high. They don't even typically sell the devkits to individuals. Even solo-person LLCs may find trouble acquiring one. Though if you're an individual, it's more likely you'll be rejected in step 1, given that they generally want to partner with corporations. They also want the games to fit a certain mold, and the only case they're willing to allow a game to break that mold is when it's too lucrative to refuse. So if your game isn't family-friendly, you have to be iD software. If you're an individual, you have to be ConcernedApe. Otherwise, FUCK YOU.
Oh, and if you acquire one second-hand, you're likely involving yourself with someone who broke an NDA, which could potentially mean legal trouble. And it'll still be useless to you unless you're a homebrewer.
Ebay search for Nintendo NX dev kits
Assuming you slog through all that red tape, you're completely boned if you're using your own engine, because the building process just to get it to run on the hardware must be developed yourself. Optimization is as shit as the hardware, but we already knew that. Have fun systematically destroying your game in order to get it to run on mobile hardware. They need very careful tuning to run in docked and handheld mode, but the good news is that Nintendo doesn't seem to care if even their own games are an Eyesore in 20fps.
Assuming you actually build and test your game to a satisfying degree, you must then pass Lot Check QA and be certified for UI behavior, crash handling, ESRB integration, and whatever else Nintendo wants. Expect to be rejected multiple times and to be sent back to various areas in the pipeline multiple times. Language support, accessibility, and compliance are to be expected from a multinational corporation with many stakeholders. But it's murder to indie devs. Localisation alone is bloody expensive. The vast majority of indie devs won't make the cut, because it's too damn expensive. And I'm not saying it doesn't have to be. [JP demand high standards, that's your thing, man.] I'm saying it's ludicrous to pretend that it's easy by any stretch of the imagination.
You can, of course, bypass much of this via homebrew development. But this naturally means that your game will have zero access to eShop, Switch Online, or Joy-Con libraries. Though homebrew solves this problem practically automatically, because you can do all of those things yourself, with a lifetime of reverse-engineering. I'd say doing it just to spite nintendo makes it worth it. But when you develop homebrew, you're developing to homebrewers; fellow enthusiasts and professional tinkerers with a lot of passion for doing so. That's not to say money can't be made here, but it certainly won't get you on stage, virtue signaling at the game awards anytime soon.
So, in review, the switch requires you to preferably meet Nintendo's general family-friendly or anime slop standards, be independently successful, and for you to be a fellow corporation and not a disgusting individual, because Nintendo can't stand the smallest unit of the Minority. For official support, you need Unity or Unreal and to code in C or C++. Anything outside of that is a indie-killing headache. And if that wasn't enough, you need to lease a devkit from nintendo that's likely the equivalent to another PC, which could potentially be worth it. If not for the fact that you must first get a legal consultant because indie devs probably don't have time to waste attempting to parse through an entire NDA. But even then, any mishap that could cause you to break said NDA could get you in a legal hell that will likely end your business and possibly your career. And if, by some miracle, you manage to dodge and weave all of that, you then have to add likely several months onto your development cycle in order to comply with their Quality Assurance. Once your game is up, if you want to push a patch, there will be a formal review process every single update.
On the PC with Steam? No standards except the standards of the free market. If your game finds a niche and satisfies its players, you might just become profitable, which would be a miracle to you and/or your team if you have one. Any language, any game engine. The only hardware you need is your PC, and if it can run on there, it's likely it can run on more. You can give players access to open or closed betas in order to test on a wider array of hardware. And users can tweak their own settings to match both their preferance and their performance standard. There is a $100 steam direct fee that gives you instant access. Patching is simple and quick. Community involvement is at your homepage. You can interact with your community on whatever platform you want, like discord or plenty of other alternatives, because they actually have keyboards and microphones and are likely quite happy to speak with you if they're a fan of your game. Marketing tools are built-in to the Steam ecosystem with Discovery, tags, wishlists, and other features. There's a 30% standard cut, which may be equivalent or worse than Nintendo's for indie devs. Digital rights management is not required by Steam, whereas you must integrate it if developing for Nintendo. Steam's QA is far lighter than that of Nintendo. And if you're not even looking for delivery on Steam, you can just send builds to your Patreon members, like with Subliminal, of which I supported and have playtested an early alpha myself.
There are no barriers to entry on the PC, specifically for Devs. Much of what we were talking about was personal preference, so barriers to entry on setting up or troubleshooting your own PC was a separate topic. That obviously doesn't apply here, because if you don't intimately understand hardware and software, you can't be a developer.
If you can't tell, I'm a little bloody pissed that I didn't know any of this when having this conversation. At least next time, I'll be better prepared, but I'd appreciate it if people could agree to tell the damn truth, or at least not to lie. I was on the defense for most of the conversation because I wasn't willing to say things I didn't know to be true. So for me it was more of an exploratory conversation. For my adversaries, it was a contest of wills, and it seems as though any standards for proof or truth were... nary to be found within their cognition.
===