Why doesn't Scirra start its own game-porting service for consoles?

5 favourites
From the Asset Store
Small pixel icons for the 3 most popular controller types.
  • Why doesn't Scirra start its own game-porting service for consoles? Being able to expand to the PlayStation/Xbox(native)/Switch families would finally make the most friendly game-making software in existence lucrative too. The only porting companies I've heard of are "Chowdren" and "Ratalaika", and I hope they eventually get back to my e-mails--busy for Easter weekend maybe--but the info on their websites refers to the C++ translation process as "automatic". I'm sure there's more to it than the click of a button, but the very notion that it's possible--not to mention easy!--to convert C2/3 games to consoles, is enough that I can't help but wonder if Scirra is overlooking a golden opportunity to expand C2/3's capabilities, even if a special paid service is required as opposed to a do-it-yourself?

  • Because it isn't fully automatic, and each port needs individual attention.

    Because they have their hands full with developing Construct as it is, and perhaps that's what they want to do.

    You could try replacing instances of Scirra with yourself in your post, and maybe you'll gain some insight on the 'why' part.

  • In short, it's because consoles don't support HTML5 games. It's a shame as the technology works brilliantly, especially with the latest features like WebGPU, and JavaScript performance is extraordinary these days. If consoles did support HTML5 games, we'd add support for consoles at no additional cost.

    However with no HTML5 support, the only option is to rewrite the entire engine in technologies that consoles do support. This might even end up needing a rewrite per console platform. This is a project that would probably take several staff working for years to get anywhere near full compatibility, if it's even possible - browser things like iframes and the HTML Element object with custom HTML and CSS may never be portable. That would be hugely expensive to the company - and a huge loss if it wasn't compensated by a corresponding vast increase sales - and mess up our whole single-codebase strategy that has worked so well for many years (and which I think is a large part of the reason we even came this far).

    There's tons more to say about the subject, and I totally get it that people are very keen for this, and I'd do it if I thought it was realistic for us. But for the time being I think third-party porting services is a pragmatic compromise. What would really make it realistic is for consoles to support HTML5 games. The more people who push console makers for that, the more it will help incentivize them.

  • browser things the HTML Element object with custom HTML and CSS may never be portable.

    I think this is quite an (additional) important point against requiring us to use HTML/CSS for UI systems. Most popular C3 commercial games are ported to console thanks to those 3rd party companies but soon it might be impossible to ever port a C3 game to console if the whole UI of the game was done using HTML/CSS.

    And this is only one of the less annoying drawbacks with going with a HTML/CSS-based UI solution for C3 as we talked about recently

    twitter.com/OverboyYT/status/1638952637315047424

    (which is also why i think we need built-in UI features and they could be Hierarchy-based construct23.ideas.aha.io/ideas/C23-I-78 )

  • Inventing an entire UI system that replicates what HTML and CSS can already do is such a vast project that I judge it to be infeasible anyway with our resources. So it's not like needing to supporting consoles suddenly makes an in-engine UI library feasible.

    I think the all-round best solution is for consoles to support HTML5 games!

  • As i said several times in the past, we don't need to replicate everything HTML and CSS can achieve to be able to create UI in C3.

    We just need :

    1. Hierarchy-based autolayouting features (similar to Godot Containers docs.godotengine.org/en/stable/tutorials/ui/gui_containers.html as they're the best autolayouting ever created for a game engine)

    2. maybe a new "Selectable" behavior

    (The suggestion explain those 2 points further,https://construct23.ideas.aha.io/ideas/C23-I-78)

    The existing C3 features and all existing synergies that exist between them will do the rest and allow us to do anything we could imagine for our UIs using eventsheet features.

    On the other hand, turning HTML/CSS into a decent UI solution is a rabbit hole and might even be impossible for a bunch a reasons I pointed out in the Twitter thread. (live preview of UI at editime, reliable and consistent display across platform and browser, event sheet ways to manipulate the UI, Layer support just to name a few)

    Anyway sorry this wasn't the subject of this topic, just wanted to pointed out that 3rd party console porting would be 100% impossible to achieve for games relying on HTML/CSS UI as opposed to any game currently developed in C3

  • I don't think people expect you to create a ui system as complex as css and html.

    What most want, from my pov, is just having an easier time creating buttons, sliders etc. At least that would be enough for a start and could be expanded upon later, just how almost all addtions to the engines are done.

    ProUI which was the gold standart ui tool for c3 (until Aekiro stopped supporting it) does not add any crazy complex layouting features, the only thing that gets close to any layouting is a basic grid of elements. The main thing it adds is a simple way to create buttons, sliders, radio groups etc.

    While consoles supporting HTML5 would be a hugely amazing situation for Construct and developers using the engine, it's not really within our control, so is hardly a solution at all.

    Anyone developing a game that might even only have a smitch of a chance to maybe be ported to console will not use html and css, which is a lot of projects.

  • IMO Buttons/Sliders/Radio Groups and that kind of UI component are already achievable relatively easily with existing Eventsheet features (Families/Hierarchy/Custom Actions)

    While it would be great to have those "Components" built-in in C3, IMO this isn't the real pain we're facing with UI right now. It could bloat the engine with a bunch of additional Plugins/Behaviors and each person might want their Sliders/Buttons to act very differently. So Component would probably need too many features and parameters to cover everyone's need and might even be disappointing in the end, and dismissed in favor of "custom Components" created with existing features.

    If those potential "Built-in Components" were Plugin, it would be the same pain as today as there is not Multi-Plugin support for Families in C3 for example

    The biggest pain is manipulating the position (transform) of all UI Objects with auto-layouting which is almost impossible to achieve even with Families as Text and Sprite for example are different Plugin and can't share common logic. (it would be the same issue with Button/Sliders)

    This is why Hierarchy based autolayouting would solve this as it works with any world object (+ easy picking benefit and intuitive display in a potential Hierarchy view)

    Hierarchy based autolayouting + a "Selectable" behavior would help us to make those Slider/Button/Grid/Scrolllist "Components" ourselves

  • In an alternate universe, I'd take the option of being able to port a game to console, but have a "incompatible plugin" list that prevents you from exporting (iFrames, text input, etc.). People can design their games with this in mind (e.g. Instead of textinput, you will need to create an event-based onscreen keyboard and append to a string to type or something) or just flat out don't support it like iFrames.

    This isn't clean and would not be good for people that didn't realise this from the beginning, but to even humour the idea of getting a project running on a Nintendo Switch without having to complete the game and have bunch of money to get a porting service to do this, is very alluring.

  • In short, it's because consoles don't support HTML5 games. It's a shame as the technology works brilliantly, especially with the latest features like WebGPU, and JavaScript performance is extraordinary these days. If consoles did support HTML5 games, we'd add support for consoles at no additional cost.

    However with no HTML5 support, the only option is to rewrite the entire engine in technologies that consoles do support. This might even end up needing a rewrite per console platform. This is a project that would probably take several staff working for years to get anywhere near full compatibility, if it's even possible - browser things like iframes and the HTML Element object with custom HTML and CSS may never be portable. That would be hugely expensive to the company - and a huge loss if it wasn't compensated by a corresponding vast increase sales - and mess up our whole single-codebase strategy that has worked so well for many years (and which I think is a large part of the reason we even came this far).

    There's tons more to say about the subject, and I totally get it that people are very keen for this, and I'd do it if I thought it was realistic for us. But for the time being I think third-party porting services is a pragmatic compromise. What would really make it realistic is for consoles to support HTML5 games. The more people who push console makers for that, the more it will help incentivize them.

    Ashley, I feel it is a shame consoles don't support HTML5 games. I can't help but feel maybe in the future they will. But I wanted to ask WHY don't they support HTML5 games? Is it because they are paranoid of the openness of web technology? Or perhaps they are afraid of security issues with web tech?

  • But for the time being I think third-party porting services is a pragmatic compromise.

    I was speaking with my publisher about this and apparently they use porting services for all the games they release, whether it's Unity, Unreal, GameMaker (hell, they've even published an RPGMaker game using a porting service). They say that despite most engines claims to support console exports, the reality is that it's a bare minimum sort of thing and not fit for release.

    The real issue with Construct 3 though, and is pretty much my main sticking point in continuing with the engine after this current game, is that there are only two porting studios that support the engine, and one of those isn't taking on new projects... so essentially we have one porting studio to get our games onto console. This is actually a pretty major concern. What happens if they also get too busy to take on new jobs?

    I'm not sure if there's anything that Scirra can actually do about this, but for me moving forward, I consider it a deal breaker.

  • I think there are three porting houses that have ported construct games in the past, maybe there are more that I never heard of, would be cool to have a list

    seaven-studio.com

    ratalaikagames.com

    mp2.dk

  • I'm probably just daydreaming here, but in case it actually helps: Maybe Scirra can reach out to the few game-porting companies to talk about forming a partnership (or even acquire them), since those companies have already been doing this for years, so Scirra doesn't have to. Then maybe the porting companies can get more employees to get faster. And part of the deal is that every game ported thru them made in Construct legally MUST say "Made in Construct3" at the opening, much like Unity does. Maybe with the Construct logo is an attractive phrase like "Game-Making Made Easy!" to attract more business for Construct. (Although also useful to mention the words "No Programming Required") Then Construct reaches a whole new level of success, because every game ported to PS, XB, or NS thru the third-party companies attract new customers to Construct, thanks to the requirement to credit C3 in the game's opening. Everybody makes money and wins.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • And part of the deal is that every game ported thru them made in Construct legally MUST say "Made in Construct3" at the opening, much like Unity does.

    For both C3 and Unity this is part of the license. IF you pay, you can have your own splash.. If you dont pay, you get the company logo.

  • I personally believe that Scirra should support the small game developers that they have, the really talented ones. This would help them prosper and help Scirra get more publicity. If scirra does approach a port about making a partnership, they should include in the deal that they would like to include the names of the game devs.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)