12 ms·
Free Godot engine port for Nintendo Switch
- fwsgonzo 3y agoUnsurprisingly, no plugins. Just plain-old GDScript, but embedding a faster scripting solution into the C++ codebase is not too hard for serious work.
- andybak 3y agoWhy unsurprisingly? I'm not familiar with console ecosystems.
- a1o 3y agoThe engine has an interpreter for Godot script so if you port it you can already run the games. Native code is it's own porting problem, it should be easy for a developer but game developers in particular that knows an engine may not be familiar with writing native code - they may have been using a plugin they found on the internet and now they will have to port that native code too by themselves.
- runevault 3y agoI'll be curious if once the AOT c# hooks are added (hopefully with 4.3) if that will be able to work or not.
- TheRoque 3y agoWhat these people do is super cool. How can one learn to be in a team that does things like this ?
- Grimblewald 3y agoCouple of ways I can think of. 1. Build it and they will come 2. Talk to coworkers about a cool idea you had, gather the interested and start leading that project
- echelon 3y ago> 1. Build it and they will come This is absolutely true. Make sure you have a Discord or some social means of connecting with folks.
- delecti 3y agoBest bet is probably to start by making a game. One option is to start by building a simple game using an existing engine, and eventually get deeper and deeper into the libraries you're using until you decide to contribute back to that engine, or create your own. Alternatively you could just start by making something incredibly simple, a Pong or NES Mario clone, and then work your way up through the generations to something more modern. The first approach is probably easier, as you'd have lots of tutorials from the community around the modern engine.
- tussa 3y agoDoes Nintendo take a 50% cut if you publish on their eShop?
- utf_8x 3y agoIt's most likely around 30% which seems to be the norm for stores like this
- miohtama 3y agoAlso, physical retail distribution is likely around the same 30% ballpark.
- prophesi 3y agoAnd is why Apple chose 30% when they launched the app store; it was already an acceptable charge, and could be justified with storage/bandwidth costs and the suite of tools/services built for it. That doesn't seem to line up in my books, but we'll see how the next few years go while the 30% commission standard still has a target on its back.
- wmf 3y agoFor a console game you'd have to pay a 10-20% title fee and then the retailer also takes 30-40%.
- teamonkey 3y agoEpic’s store is 12%. Tim Sweeney tweeted that Epic take 5% as profit and the rest are costs[1]. Puts the other stores’ 30% in context, though Xbox/Playstation/Nintendo do significantly more QA than Epic. [1] https://twitter.com/TimSweeneyEpic/status/1120441795010338816 https://twitter.com/TimSweeneyEpic/status/112044179501033881...
- a1o 3y agoThere are a few companies to choose from here: https://github.com/godotengine/godot-docs/blob/master/tutorials/platform/consoles.rst https://github.com/godotengine/godot-docs/blob/master/tutori...
- kevincox 3y ago> Currently, the only console Godot officially supports is Steam Deck (through the official Linux export templates). This line makes me so happy that the Steam Deck is doing well. I hope they can show that by making it easier for developers and open source projects they will get more and better games. I'm sure it isn't a huge difference, but if over time an ecosystem can be built it would be very powerful.
- weinzierl 3y agoMy 12 year old and I made a little game in Godot and it turned out pretty playable. I think in her peer group the second most popular device after the iPhone is the Switch. It would be incredibly cool if we could get our game to run there. I already found two GitHub repos with Godot ports, and this RAWRLAB announcement confirms that it will be doable on a technical level. However, I reckon that we do not qualify for authorized Nintendo Switch developer. What would be the easiest way to get the game running on just our Switch? I already ordered a Mig Switch and a dumper[1], but I'm not sure if this is the best way to go. [1] https://migswitch.store/ https://migswitch.store/
- falker 3y agoThe migswitch will not allow you to run unsigned code, only clones of official cartridges. Get an old “unpatched” v1 switch or newer with a rp2040 modchip.
- lastgeniusua 3y agoI'm not sure the Mig Switch will allow you to play homebrew, it is designed to replicate the (apparently reverse-engineered) security protocol of game cards signed by Nintendo. The Github repos you've seen previously are probably your best bet, they're designed for homebrew development, but to launch these you'd need to mod your Switch: with an unpatched original model (could easily be verified on https://ismyswitchpatched.com/ https://ismyswitchpatched.com/) it's as easy as connecting two pins with a paperclip and injecting a USB payload with your PC, with patched later models this requires a modchip soldered onto the board.
- gjsman-1000 3y agoEven with that though, home-brew games are almost nonexistent on the Switch, or extremely minimal. Having the ability to launch a game with a modded Switch, doesn't mean you have access to the SDK, or the documentation. Without those things, you really can't write any useful programs. It's like gaining access to the cockpit of a plane, and having no manual or labels on what all the buttons do. If you truly want to develop a Switch game, you need the SDK, and dev hardware is basically necessary as well. That's only coming from a deal with Nintendo.
- weberer 3y agoMy Switch is hacked. Can I still use this to make unsigned Godot games and run them on my Switch?
- thejsa 3y agoNot without a Nintendo SDK license agreement and signing their NDA. On the other hand, there’s a nice homebrew port you could certainly use that’s been around for years: https://github.com/Stary2001/godot https://github.com/Stary2001/godot
- Aissen 3y agoIt's interesting that they did not keep this a paid product, and use that as a lever: 1. to either get more customers 2. or to get Nintendo to remove the terms forbidding the open source release of software built on their platform I am guessing that 1. will happen anyway, and 2. isn't needed since they have found a middle ground with Nintendo hosting details on their developer portal.
- teamonkey 3y agoThe fact that Godot requires/required a third party studio to port your game to consoles is a major turnoff and one of the things preventing developers jumping on the Godot train. From a solo dev point of view, too scary and expensive; from an indie company's point of view it's an unwanted extra expense and a potential point of failure that you can't control. This opens things up considerably, despite the Nintendo walled garden.
- LelouBil 3y agoI'd assume for solo devs porting to multiple platforms is harder without external help.
- TillE 3y ago"Official" paid console ports are coming very soon (Q1 2024) from W4 Games, the company run by Godot's core developers. https://w4games.com/products/ https://w4games.com/products/
- runevault 3y agoNo open source project can do it without third party support, the NDAs/etc required for getting access to the SDKs to build against those platforms prohibits it.
- weinzierl 3y agoWhat does 2. mean exactly? That I am not allowed to publish the source code of my Switch game as open source? What if my Switch port shared code (for example all the GDScript) with other ports. Does Nintendo also forbid me to publish this as open source? Can you use open source assets in a Switch game?
- drzaiusx11 3y agoI thought Godot was already being used in Switch games for the past couple years; for example, Sonic Colors used Godot for the engine. What differentiates this release? Did the sonic team make their own port or something?
- koromak 3y agoIn the PC-to-console world, there is no open solution. Everyone either builds their own ports, or (more likely) pays a porting company to do the work for them, who in turn have built there own solution. Console developer kits are proprietary, no one is allowed to share the API or source code. This seems to be unique in that, if you get a License from Nintendo, you're allowed to access this companies kit for free.
- ukd1 3y agoWhich then is MIT licensed - so why can't that then be further shared?
- gjsman-1000 3y agoYou aren’t prohibited under the license, but you are prohibited under the contract you agreed to, to get that code. For example, imagine a company hired you to write a library they want to later release as GPL. They still might have rules that you can’t release that library except under certain conditions. The real purpose of the MIT license is not free sharing with the world in this case - it’s so that developers don’t feel legal risk by using this port and building it into their games.
- danShumway 3y ago> You aren’t prohibited under the license, but you are prohibited under the contract you agreed to, to get that code. This doesn't make sense to me. MIT is a license to share and modify code. If another license can supersede that and remove rights granted by the actual license, then what prevents any company from releasing their code under MIT and then adding a shrinkwrap EULA that prevents looking at the code or modifying it? The license wouldn't mean anything. > imagine a company hired you to write a library they want to later release as GPL. They still might have rules that you can’t release that library except under certain conditions. Before it's released as GPL, sure. But once it's actually released as GPL, that company can't prevent you from looking at the code or modifying it or redistributing it. At best, they can sever their relationship with you over doing so, but they can't legally challenge you doing so. If that wasn't the case, nothing would prevent a company from taking 3rd-party GPL code, building on top of it, releasing the product as GPL, but then adding additional contractual requirements to get access to their product that prevented anyone from looking at or sharing that code. The GPL wouldn't have any power or enforceability. Companies do circumvent the GPL a lot and they get called out on it when they don't allow customers to get copies of the source code or to share it online. I've never heard anyone seriously suggest that a valid defense would be for them to say, "okay, yes we're using GPL code but to buy the product you have to sign a contract and that contract legally prevents you from sharing the code." Those restrictions would themselves be a GPL violation.
- ufo 3y agoWhat was the status quo before this?
- koromak 3y agoYou find a company who does Godot ports and pay them, with zero visibility into the underlying tech
- magic_hamster 3y agoThis is great news! Too bad there's no C# support as of yet. But it's definitely a step in the right direction. Plus, not all projects need the performance boost of C#. Seems like Godot is about to grab a bit more market share from Unity.
- FrustratedMonky 3y agoIn what way? The website says there is C# support. What facet are you describing needs it? Curious, because would also like to use C#, and website says it does, you say it doesn't. I'm wondering what is up.
- mattsan 3y agoThe website says this: https://arc.net/l/quote/btugrszz https://arc.net/l/quote/btugrszz
- FrustratedMonky 3y agohttps://godotengine.org/features/#script https://godotengine.org/features/#script ""Leverage your C# experience to feel right at home If you're an experienced C# user, Godot offers you first-class support for the .NET platform. Power your game with familiar libraries and give them performance boost, while still benefiting from close engine integration.""
- mattsan 3y agoYeah, thats the main engine site, the link submitted here is for a specific port. Not the same.
- tslater2006 3y agoThe linked page says the following: No C# or GDNative/GDExtension: Only GDScript is supported. Native extensions are not supported, but you can try to convert them into internal modules.
- wly_cdgr 3y agoVery cool project, but if they want this to matter for commercial indie devs, it needs to have C# support. It's not so much about performance, it's more about working with a marketable-skill language, ease of coming over from Unity / Monogame, and expertise level of developer community.
- arlcode 3y agoHow does that work with the MIT license? I presume they signed a rather restrictive proprieatary license and/or an NDA to get access to nintendos sdks and tool (as is common on other consoles). Then one person breaking the NDA would make the Switch Godotport (and therefore some of Nintendos property (method names /usage )) legally available to anybody else (they didn't sign an NDA after all and it's probably not a copyright violation unless it includes actual code/binary). I am not a lawyer so I'm probably very wrong.
- anthk 3y agoMIT allows that. LGPL would in theory but you would need to release the potential changes you did to the game engine. GPL woudn't in any way.
- kevincox 3y agoBut if they give me the source under the MIT license then I am free to redistribute it. So while they would be in their right to make a proprietary port it seems like they wouldn't be able to legally release it under MIT. (Or at least not the whole thing, as code that touches Nintendo's API would need more restrictions)
- vladms 3y agoMy understanding: it is possible to license under a different license any additions or modifications they made. So the original code can remain MIT, but their changes (API integrations, etc) will be under a proprietary license (note: this would not be possible with GPL for example, but MIT is not like that).
- Capricorn2481 3y agoI am interested in Godot, but seeing these projects makes me more nervous than not. I always wonder - How seamless is it - How screwed am I if it doesn't work - Would the headache/risk of dealing with Unity be less than the potential catastrophe of not getting a working switch version
- tombert 3y agoI know "asymptotically close to zero" about game development and the like, so if someone who works in this space could answer this I'd be appreciative: what, if anything, would make you use Unity or Unreal instead of Godot for making a game today? This isn't meant as a passive aggressive question to push some kind of open source narrative, but a genuine curiosity. Since I know basically nothing about the industry, I'm curious to what something like Unity or Unreal still offers over an engine that has no licensing fees.
- sbergot 3y agoI am also not from the industry but here are some godot downsides from what I understand: - script performances are worst than unreal or unity - no asset market place - 3d features are not up to par with other engines (level of details, shadows, etc) For a classic 2d game it seems to have no significant downside. For a resource intensive 3d game it will depend.
- LarsDu88 3y agoI've done game jams with both Godot and Unity. Mainly the plug-ins, particularly third party plug-ins for unity are better. One of them being cinemachine. Another example would be a tool call technique collider creator that let's you paint collider primitives. That tool alone saved about 300 hours of work. For many developers the Cinemachine tool is very useful as well. The other feature is the ability to edit game objects while the game is running in editor mode for debugging. This is the sole major feature Godot currently lacks compared to unreal and Unity imo Beyond that Unity has a better overall design IMO encouraging users towards composition over inheritance and NOT encouraging use of some one shot interpreted scripting language (GDscript) Does this justify the 100x greater size of Unity as an organization over Godot? Probably not
- tombert 3y agoThis is exactly the feedback I was interested in...thanks! I think these kinds of criticisms are necessary for open source stuff to become competitive with proprietary offerings; it feels like Blender, for example, has taken these criticisms pretty seriously and as a result it's started to become competitive with proprietary tools (at least in the "prosumer" and lighter professional spaces). I'm sure they're already doing this, but Godot should probably keep a list of all these bits of feedback and start fundraising to build these features.
- b33j0r 3y agoSo to clarify, a free game engine is being made available for free, if I have paid and/or been approved to be a qualified developer? At least words still mean something
- SXX 3y agoConsole version is using proprietary SDK and they can only provide you source code if you signed NDA with Nintendo. That's it.
- s17n 3y agoHow can they restrict access to authorized developers but also use the MIT license? Can't any authorized developer simply post the code on the internet?
- fl0id 3y agoYou answered your own question.
- SXX 3y agoBasically to use code they provide under MIT you also need to couple it with a proprietary SDK from Nintendo. If you post any proprietary bits on internet Nintendo will eat you alive.
- kevincox 3y agoBut presumably the port touches the proprietary bits. So either A) that interface is not allowed to be distributed under the MIT license and they have a problem with Nintendo or B) the interface is fine to publish under MIT so why not make it more available?
- TillE 3y agoIt's comparable to how open source code can also be patent-encumbered. It's MIT licensed but Nintendo's NDA still applies. The license can't supersede that.
- s17n 3y agoI feel like the license definitely can supersede that - you obviously wouldn't be GPL compliant if you required everyone who got access to your code to sign an NDA, for example.
- ronsor 3y agoNintendo's NDA would only apply to people that signed the NDA. If some third party acquired the code without signing the NDA, the NDA shouldn't apply to them.
- Donz1 3y ago[dead]
- Ghufran007 3y agoI'm intrigued by Godot popping up in Switch games - Sonic Colors being a case in point. What's newsworthy about this particular use? Did Sonic Team do a custom port with Godot?
- deleted 3y ago[deleted]
- ChadNauseam 3y agoIgnorant question: I don't understand why this type of thing is necessary. IIUC there is nothing illegal about looking at leaked SDK docs and using emulators to contribute a Switch build target for Godot. Then game developers who want to develop Switch games could buy a devkit and build their games for switch, just like how I can build an APK for Android in Unity and load it onto my phone. Is the only thing stopping open source game engines from doing this a lack of time/funding/expertise/interest?
- danShumway 3y ago> License: The source code is distributed under the MIT License, offering broad usage and modification rights. I might be missing something, but how did they manage to swing this? I thought proprietary NDAs around the Switch's API were the biggest holdups preventing Switch support from being added to Godot itself. I would have assumed this would be free but would require signing some kind of source-available license that forced you to still respect the NDAs.
- wmf 3y agoIt's not vanilla MIT but some kind of MIT + NDA.
- danShumway 3y ago> MIT + NDA Okay, that's... not MIT then? I don't understand, you can't just call things MIT if they're not actually MIT and don't have the same license terms. Is the page just lying about what the license is? "I'm giving away a product for free, but it's the special kind of free where it's free and you have to give me 20 dollars to get it." This was annoying enough when Mongo released source available code and called it Open Source, but have we graduated to releasing full-on proprietary code that doesn't even hit common thresholds of source available licenses and we're just calling it Open Source anyway?
- fifilura 3y agoIf you want to make games together with your kids there is also Fuze4 for Switch. https://www.fuze.co.uk/nintendo-switch.html https://www.fuze.co.uk/nintendo-switch.html