Proposal for Nintendo Switch support for Godot

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By nightblade9

I read the first two questions about Switch support in Godot, and I don’t find the answers satisfactory. Let me explain with a proposal and some background.

My gamedev backround is most recently in HaxeFlixel, which is another FLOSS 2D game development library. The code compiles to C++ also. They recently added Nintendo Switch support; how?

  1. Some of the core library contributers are licensed Nintendo Switch developers
  2. Their core engine is cross-platform, and strives to maintain this stance
  3. (And this is the core one) the Nintendo-Switch specific parts of the code are isolated in a non-open-source repository; when you send them verification (eg. screenshot after logging in to the Nintendo dev site with your company/user name and Switch options), they grant you access.

This has the benefit of separating open-source, common platform code from platform-specific code, with none of the drawbacks of, say, breaking Nintendo’s NDAs.

Could this work for Godot also? I know there are a number of people in the community who are interested; hopefully, there’s enough “critical mass” there to maintain the platform-specific code demanded by this approach.

Does anybody knows what’s the price Lone Wolf is asking to port a project to Switch, or PS4? How can someone even think to start a project not knowing the price to reach publication. Switch and ps4 dev kits costs are known, but the cost of a Godot project?

caronteone | 2018-07-27 15:50

It could be the posibility that this port works like the Android?
I mean, that the tools are in the Engine(something like an export template), but you need the platform SDK to export the project to that platform. In this case only a person that is licensed by nintendo can export to the platform, so I think that is a good idea, well if it could be posible.
I take as an example the Mac or IOS exports, not everybody have a Mac, but the one who have it also has the posibility to develop for that platform.

TecoSV | 2018-10-17 19:04

It is a huge risk for aspiring console developers, to depend this much on a single individual (not trying to be ungrateful or underestimate the effort it took to write the code to port to Switch, just being realistic from a business point of view).

The process to port to console and the access to the code and libraries, once you are approved by Nintendo, needs to be more transparent and automatic as with other platforms, if Godot will ever be intended for serious and commercial game development beyond PC and mobile. The current situation is not sustainable. There has to be a better way.

For new developers reading this and considering to use Godot for console projects, I love Godot, but think twice, as of september 2021, the situation described in the post and comments has not changed, sadly. For the sake of the community and the success of Godot for commercial use, I hope it does.

jeudyx | 2021-09-15 15:26

Honestly, at this point, i think the best solution to get your game published on Switch is to talk to a publisher. There are at least three as of writing. i don’t know if that means you will get access to the Switch SDK or not, but at least you can get your game published on the Nintendo e-Shop. I can’t recommend/endorse any publishers in particular, do your due diligence and go with whichever you feel comfortable with.

nightblade9 | 2021-09-15 15:32

Of course you can go to one of the 2 existing publishers, but 1) there is no guarantee they will take your project. 2) as a developer, you should be able to at least have the option to transparently, do it yourself if you are already licensed by the console and if you have the money to cover the licensing fee. That is the main point here. I guess the third option is, if you love Godot enough and have the time, make the effort to write the SDK c++ implementation yourself (but that takes away time to actually develop games, which is the reason one goes to an engine like Godot in the first place).

jeudyx | 2021-09-15 15:40

:bust_in_silhouette: Reply From: eons

Read the documentation regarding console support:

TL;DR: Console support already exists (and always existed) but not official (as in public), Switch port exists, and you can access it by the correct ways, it should work similar to HF, you should ask Manzur via private channels.

I read that link well before posting. It doesn’t address any of my concerns. But thanks for the tip – I will ask Manzur via private channels.

nightblade9 | 2018-07-10 02:55

I think it gets weird when you think about all future console ports of Godot games. Is the entire community reliant on Ariel to release on console?

madcapacity | 2018-07-29 20:48

No, users can make their own port and, if the community wants, can make something like OpenFL people do, but those kind of things take time and need many licensed users to cooperate.

eons | 2018-07-29 22:56

Yeah, don’t even bother sending them emails, they don’t answer.

Godot shouldn’t say a switch port exist if it is not even possible to negotiate a license about it. Just say it is not possible and leave it at that.

PurpleOrangeGames | 2018-12-17 16:53

Yes. As of September 2021, the situation is still the same :-/

jeudyx | 2021-09-15 15:28

Is the same as in that console companies only give access to SDKs to other companies and Godot is a non profit which does not allow to qualify, that is a restriction that console companies won’t lift in the foreseeable future.

Is not the same as in the amount of companies offering porting and publishing, at this moment there are at least 4 known porting companies doing that (you may not see all of them listed in the documentation because they need to send PRs to include their names on the list).

And of course the option to do the porting by yourself always existed but it has some technical requirements that most studios cannot afford (time and resources).

eons | 2021-09-18 22:01

:bust_in_silhouette: Reply From: eska

the Nintendo-Switch specific parts of the code are isolated in a non-open-source repository

Who do you reckon writes this proprietary code?

The Godot Engine public leadership committee can’t hire for that, because it’s not open source and thus does not further the mission of Software Freedom Conservancy.

You can get a third-party to write the code, but they want to be paid for their work. This is offered by Ariel Manzur’s (aka punto) Lone Wolf Technology, as detailed in Console support in Godot — Godot Engine (stable) documentation in English.