Overboy's Recent Forum Activity

  • Is the plan to have one export option for each platform, but with a unified extension system ?

    - MS WebView 2 for Windows

    - WKWebview for MacOS

    - Custom wrapper from WebkitGTK for Linux

    But all of them would support the same extension system as MS WebView2 already supports ?

    Would the custom Linux wrapper help for Steamdeck support ?

  • 6. Allow to drag and drop an Instance from the Instance Bar to the Layout to copy this instance

    Right now we can drag and drop ObjectTypes from Project View to the Layout to create an instance of this ObjectType but we can't do the same with the Instance Bar

    It would be amazing if we could just Drag and Drop instance from this new bar to the Layout to create a copy of this instance. (currently, drag and dropping instances from the Instance Bar to the Layout does nothing)

    Ideally, the created instance should be exactly the same as the original instance (same common props like size, same variables values etc...). If the original instance was a Template Source or Replica, then it creates a Replica of this Template.

    Exactly as it works when copy pasting an instance in the Layout.

    It would allow cool workflows such as easily set-up "Templates Palette" in a top folder of the Instance Bar to then easily build levels of Replicas by just drag and dropping stuff (especially with the "Show Template infos" option enabled)

    (the user could put "Template Palette" instances on a "Template Palette" Global Layer)

  • 5. Allow unfolding searched Hierarchies and Folders

    This would be amazing both for Project Bar and Instance Bar, it's something i always wished we could do in Project View.

    This way by default, only explicitely searched Folders/Instances are displayed (folded), but then we can just unfold those Folders and Hierarchies to find their children (even if those are not explicitely searched)

    See example below, where i want to find a "Player" instance by typing "Chara" as its part of a "Chara" folder.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • First of all, I'd like to say a big thank you for this amazing feature, it's the feature I've been waiting for the most for several years, and the implementation is perfect, it already comes with a lot of very handy things and the changes that have been made to my "Hierarchy Bar" suggestion are even better. It's very cleverly designed.

    Also special thanks for all the right click context menu options on the instances in this new Bar (flash selection, scroll, hierarchy/template/layer etc..) this is just awesome.

    Here are the first feedbacks i'd like to provide after trying the Instance Bar:

    1. Show/Hide UID Option

    Add an option to show/hide the UID number of the instances, as we can name instances using tags anyway but also because it could help to lessen the number of infos so it's less overwhelming in some situations(this option could be available in right click context menus)

    2. Put extra info on a seperate, right-aligned column

    So it's more readable, we should be able to drag the separator horizontally because the space required for the extra info could vary a lot between "Template/Replica infos" and "Layout/Layer" info for example, and we should be able to make sure the whole Template/Replica infos fits in 1 line (in case the name of the instance itself is very long for example)

    Also maybe the separator column would allow to remove the parenthesis ?

    3. Selecting an instance Folder should select all its instances in the Layout View

    (or at least, there should be a right click context Menu > "select all child instances" option for the instance folders)

    4. Option to automatically select the layer of the selected instance (while displaying Layers/Layout)

    This is an adaptation of a suggestion i made for the Layer Bar but for the Instance Bar instead, as it might be better.

    If the Instance Bar is currently showing more info for Layers/Layouts, add a check option just above to automatically select the layer of the instance. It would be very handy as way to select layer in workflows were a lot of instances are placed in the Layout. (avoid placing new instances on wrong "HUD", "FX", "Background" layers)

    Also now we have a lot of handy bar but not many places in the editor to dock them, it would allow to stack the Instance Bar and the Layer Bar together, and switch between the 2 only when needed. (as Instance Bar would allow to select Layer too)

    (it would only do something if the last selected instance was selected individually or if all instances selected together are on the same layer, if several instances were selected exactly at the same time on different layer, it wouldn't switch the Layer)

    That being said, having that option directly on the Layer View too could be great, maybe the best would be to have that option accessible both from Layer View and for Instance Bar in "show infos for Layers/Layouts" mode (disabling it in one place would disable it in the other place)

  • What about the 'Reload all from folder' option for folder projects? You can have an external tool that changes files in the project folder, and then use that option to update the files in Construct.

    A "Reload all from folder" button would be great, would it work for everything ? (Layout/Eventsheets/Families/ObjectTypes etc.)

    It would be nice if there was a shortcut for this.

    Now maybe I'm missing something and I'm talking nonsense, but doesn't construct have almost 2 million paying users?

    We don't know how many gamedev subs they have exactly but based on several infos we can estimate : in 2022, Scirra revenues were 100k/month (probably bigger now), approx 50% of their revenue are indiedevs/hobbyists and 50% is from education/school, the sub price varies a lot between regions. US/EU is 100-200 dollars per year but some other countries pay much lower price

    I would very roughly estimate the number of individual/gamedevs subscribers to be approx 10k (not counting Education licence : there are probably even more children/students using C3 than hobbyist/indie but the licence is very different - it's one big entity paying for many students)

    if we consider 1.2M revenu per year, 50% rev from gamedevs subscribers and approx 70$ paid per year for each gamedev subscriber, it gives 8571 gamedevs subs. But it's hard to estimate how much is paying a sub on average, if most users are from EU/US then there is less subsribers like 5K, if more users are from other countries then it's more subscribers like 20K.

    I would say none of this above is our business but they definitely COULD hire 3 additional devs, but Scirra probably think it wouldn't be worthwhile for them. It would lower the profit of the founders or make their position more risky because they could not afford losing a big Education client or losing 30% of their userbase for Godot etc.

    Hiring at least 1 additional dev is long overdue though, based on subscription price increases or Construct Animate which was supposed to help Scirra to hire additional workforce so it benefits gamedev users in the end even if it's targeting a different audience etc.

    (Edit : to answer UltraLion below ↓, I don't think the numbers of the frontpage are meaningful, any account created automatically follows Ashley, so it looks like there is approx 1.2M accounts ever created for Construct, but most of them never paid a sub, also 60K exported games per month doesn't mean 60K different games are released but just the button "Export" is pressed 60K times per month, an export can just be a test to check if it works, a student exporting their homework, an alpha, a bugfix release etc. Those are mostly marketing tricks)

    They do have limited resources (only 2 devs working on the engine) which is why I don't think it's a good idea if we depend on them for every single thing and if they limit the expandability of the engine and what 3rd party devs can achieve. Because we know a lot of popular feature request are sleeping for 5+ years, while some of them are created pretty easily by addondev thanks to SDK1. Even if Scirra had 20 fulltime devs, it wouldn't be a great idea to limit the expandability, the industry standard is to give users the power to do what they want, not to lock/hide/break everything on purpose

    "industry standard", "encapsulation", "desperate customers with ruined projects come and beg us for help"

    Each of those points were already heavily nuanced by everyone and for multiple reasons. So anyone can just read this thread and the previous one from 2 month ago to understand why it doesn't justify what is happening here

    But i just want to insist on this "desperate customers with ruined projects come and beg us for help", "happening often, happening right now"

    We all know how you're handling users facing bugs/black screens : copy pasting this same message :

    If you run in to a problem please file an issue following all the guidelines.

    If at least one of those extensive guidelines isn't respected, you just immediately close the issue without even invastigating. Which is fine, we understand you can't afford spending several hours each time someone think the bug is due to C3 codebase when it's just the user who did the mistake themself in their eventsheet (Even if sometimes actual bugs following all guidelines are closed for arbitrary reasons)

    But here is what has always been written in those guidelines :

    You never provided any support to anyone facing an issue with an addon : even if that addon use only documented feature. You always put the responsability on the addon dev (and you're probably right to do that) and that's all.

    So it doesn't seem worth it to destroy all the collective work and all projects relying on it, and make it impossible to expand the engine in relevant ways, for an issue you never ever took responsibility for to begin with. And your policy regarding this would be exactly the same after SDK2.

    Besides that, a lot of the most active addon devs like Skymen, piranha305, Mikal, Federico, MasterPose, Wackytoaster, Chadori, ppstudiomty or me replied in those 2 threads about SDK2. And it looks like none of us is aware of those users "with ruined projects" you keep mentionning again and again. (Also many of those addondev provide extremely qualitive support for their tools, they even fix broken addons made by dev that left the community, or provide their work under open source licence to let anyone fix it). The only reason some addons started breaking during the past few weeks is because you started your work to lock everything with SDK2. So all the arguments provided are looking very sus.

    Over the past 2-3 years they already :

    - spent 1+ year working on working on a new seperate product targeting a different audience : Construct Animate (back then Scirra said it would allow to expand their team so it would benefit us, which has yet to be seen...)

    - increased the subscription price for gamedev users even if less time was allocated to gamedev features as lot of time was allocated to Construct Animate instead

    - spent several months to work on a RTS game instead of improving the engine (EDIT: to answer Dop2000, you're right it was a personal project but it wasn't presented that way and it was Scirra allocating their "limited resources" on this instead of other stuff)

    - Then spent many months developing a opinionated Flowchart feature

    Sure those projects maybe allowed to add a few handy features useful for specific gamedev needs but who asked for it ? i'm pretty sure it would have been 100x better for anyone if they focused on community requests, you know the actual subscribers needs.

    Now we're here funding a massive regression in the expandability of the engine and the destruction of 6 years of collective work (actually 13+ years as there is also a bunch of working addons that were ported from C2 and that will also be impossible to port in SDK2). We know we'll have to stick to a frozen version forever to expand the engine meaningfully and still need to pay a yearly subscription just to open old projects on obsolete versions until they no longer work at all in a few years. Feels great paying a subscription. 👌

    I mean if you don't have time or don't care about community requests and feedbacks, then at least just let 3rd party devs do their stuff 🤷‍♀️

    official UI plugins

    This is a perfect example of the whole issue with Construct and community feedback. Everybody has been asking for in-editor UI features (like Unity or Godot) for years, and instead, they chose to spend about a year implementing a solution that requires CSS/HTML. This solution involves tedious workarounds and shenanigans, doesn’t allow any preview of what it would look like at edit-time, and has very limited synergies with other C3 features. HTML/CSS support is a cool feature, but who asked for it? Is C3 really a beginner-friendly engine if it requires using Eventsheets, JS, HTML, and CSS with an unintuitive workflow to make a simple game?

    Addon devs have been asking for years to expose existing hidden methods, that would allow to easily create 3rd party UI Solutions, in the Editor SDK (which is fully locked/obfuscated, making it totally impossible to create relevant stuff with it : exactly as the Runtime SDK is about to become with SDK2), and the answer is just "we prefer users to use HTML/CSS to create UI". So not only they don't want to create UI system themself, which could be understandable, but they also don't want to spend a few days providing the capabilities for anyone to do it themselves and share it with the community. Great example of collaborative effort with Addon devs !

    It's just a massive regression in what's achievable with Construct. It looks like C3, as it exists today, is at its peak. The upcoming versions might bring some fancy vanilla features, but they won't counterbalance the huge loss of expandability, customization and power that is happening. Meanwhile, all the alternative engines will continue to get more powerful, fix their actual user issues, grow their 3rd party ecosystems and achieve more indie game hits.

    Several less drastic and more efficient alternative solutions to the issue you're describing were suggested. Everyone mentioned the biggest drawbacks of this decision, which feel far more important to actual gamedev subscribers than the issue it was supposed to solve, an issue we haven't experienced over the past six years.

    Believing that community feedback could be heard by Scirra, as Unity did after the runtime fees disaster (by changing their mind), seems to have been a mistake. I’ll just try not to waste more energy on this.

    Industry Standard

    Please understand that any mention of "Industry Standard" does a disservice to Construct here. The industry standard in game engines is to remove as many obstacles as possible when it comes to making our games (by being able to extend the engine capabilities for example) and to support and endorse third-party developers. Regarding vanilla features, there is also much to say about the industry standard: for example, the industry standard is to provide some in-editor tools to create UI for our games.

    Encapsulation

    Regarding encapsulation, perhaps indeed, many tools are doing that. But you must realize that popular engines were often designed from the start to provide a vast set of APIs. Because in those engines, the exposed API are used to develop many vanilla features (while again C3 vanilla features don't and won't use SDK2 but the SDK1...)

    Even worse : most of the other engines mentioned here offer significantly more power thanks to their exposed APIs than what the undocumented features of the C3 runtime have allowed us to do until now

    That's right: being able to access 100% of the undocumented features of C3 Runtime/SDK1 is still not as powerful as the publicly exposed APIs of other game engines that do encapsulation. So what about SDK2, which only exposes 1 or 2% of it?

    Given the fact that you're such a small team with limited resources and you have no time to implement popular community suggestions requested for 5-6 years + the track record of rejected suggestions for exposing existing hidden APIs for both the Runtime and the Editor (which sometimes would take a few seconds/minutes) + the overall lack of acknowledgment from Scirra about the issues we're facing in our production:

    How could anyone believe we will still be able to do anything relevant with addons once SDK2 is enforced as the only way to extend the engine ? The current process is already incredibly tedious and painful using 100% of C3 power.

    It looks like the balance that existed with SDK1/Undocumented feature wasn't perfect but at least it was a good compromise

    "Group Handler" addon

    This is a perfect example of what won't be achievable at all soon, and how small the compatibility break issue was before all of this SDK2 madness started. The plugin is 6 years old, totally based on undocumented features, and still works perfectly and would probably keep working as long as Construct exists since the Event Group feature will never be deprecated. (Worst case scenario, a method would have to be renamed in a few years, that's all.)

    This WackyToaster plugin inspired me to create a similar Group Management addon with different features to make it more modular and usable for large games, and it allowed me to solve several major performance issues that I had with my game. Soon it will just be impossible to do that, and my game performance will suffer a lot.

    I made a bunch of private addons that use at least some undocumented features, but those features are used extensively by the C3 codebase and are very unlikely to ever change (I never had to fix any of them since I started making addons). These addons allowed me to solve all the performance and usability issues I was facing when making my Roguelike game using Construct. They also allowed me to get rid of some systems that required 500+ events (unreadable/impossible to maintain) and involved a bunch of weird tricks and workaround, or to overcome many limitations such as the lack of modularity in many aspects of C3 or things that are just 100% impossible to achieve with vanilla stuff.

    >>> This is why I really think you should let advanced users access undocumented features forever at their own risk if they enable the hidden Developer Mode. <<<

    ^ This would be the perfect solution and would solve the issues for Scirra + Addondevs + Gamedevs users, for the reasons i explained in my previous posts : SDK2 would be the default way of doing things, and most of the users would only use SDK2 addons, but powerusers/complex game productions can still use C3 to make their games with the help of SDK1/C3Runtime (because the alternative is that we're forced to use an other engine to make those games)

    Overall the C3 runtime code (SDK1 + undocumented features) is just far more pleasant to use than SDK2/Scripting interfaces, because SDK1 is used across the whole C3 codebase, as Scirra itself is using it to make any features of the engine, it provides a bunch of handy things that are useful to create new stuff.

    SDK2/ScriptingInterfaces on the other hand, is incredibly limited because it's not written by someone who will actually have to use it to create relevant stuff, it's incredibly verbose and the APIS often assume way too much about how the user might want to use them, there is many situations were it does way too much things under the hood VS what i actually wanted to do, so it's sometimes not performant enough for no reason.

    Also Scripting interfaces have been here for 4+ years and they still lack a bunch of obvious APIS, so SDK2 isn't even on par with the most basic stuff we could find in the already very limited documented features of the SDK1

    Among the many many obvious things missing in SDK2 : what about all the methods to manipulate the SOL/picking of an ObjectType in the current eventblock ?

    Even if in several years, the SDK2 implements enough APIS to port the publicly released SDK1 addons that already exists (such as Spriter/Spine/ProUI among many other), with a time-consuming and tedious dialogue between Scirra who have no time for this, and addon dev who have no time for this either, arguing for days/weeks for every single missing APIS :

    What about all the private addons that were made for ambitious productions ?

    What about the wasted potential of all the addons that could have been created and largely enhance the capabilities of C3 in the same spirit as 3DObject/ProUI/Spriter/Spine ?

    Mikal : As guidance I would be very interested to hear what some of your top 2-3 3rd party addons are - that you think substantially help the C3 community and Scirra? I think this would help us understand what type of addons you are thinking about as you update the V2 SDK.

    Ashley : The addon SDK is best at integrating additional platform features or third-party services. For example third-party addons that provide support for ad networks (of which there seem to be dozens), or back-end services like authentication, high-scores and analytics with various third-party providers, or enhanced platform services such as advanced IAP or other monetization features (perhaps through Cordova plugins, which I think the addon SDK has reasonably good support for), or integrating with third-party platforms like itch.io and Newgrounds, are all good examples of the kind of thing the addon SDK was designed for. All the possible integration work with different services and platforms is a huge amount of work which is infeasible for us to complete alone, and if we do it anyway it takes development time away from core engine features that only we can do. Allowing third-party addons means all that integration can happen without needing us being involved. None of that needs addons to access the internal engine, and that is partly why the originally documented API was quite thin.

    So what you're saying is service integration is "the kind of thing the addon SDK was designed for", and it is the "type of addons you are thinking about as you update the V2 SDK"

    So apparently this is part of the reason why we're about to go from being able to use 100% of the features of the C3 runtime when we need them, to only 1-2% with the locked/restrictive SDK2.

    (even though SDK1 and C3 Runtime will still exist and still be used by every single official Plugin and Behavior under the hood)

    But service integrations (like firebase/ads provider) require a very active maintaining, and the fact they break so often has absolutely nothing to do with official C3 updates. Most of the popular existing service integration addons require to be updated every few month to keep working, because external services themself are evolving pretty fast. So if 80% of the addons are service-related post SDK2, then the average addon would break much more frequently than today.

    It looks like a few big 3rd party services like GameAnalytics made their own C3 integration in the past, but then never updated them since then, so you're about to do the opposite of the stated objective (supporting external services) by making the few solutions that exist today obsolete and by restricting everything else (actual engine/gameplay extensions)

    As opposed to Scirra vision about 3rd party addons, every single competitor understand the value of letting anyone to create and share actual tools and game engine extension (besides just service integrations), here is the industry standard in gamedev :

    • Game Maker: just *open sourced* their runtime this year (while you plan to lock/hide yours even more), this week they also announced support for in-editor extension + JS support coming this year btw
    • Unity: source available, thousands of great tools on Github and the official Asset Store, used by probably >95% of commercial Unity games and often more robust than official features
    • Godot: open source, fastest growing engine in term of resources, game releases, addons and popularity
    • Unreal engine: source available, huge asset store
    • GDevelop: open source (closest alternative to C3), a bunch of community-made addons are officialy endorsed by the GDevelop team and can be directly added from the editor as official behaviors
    • Phaser: open source
    • PlayCanvas: open source
    • Defold: source available
    • ... and many more

    One of the main reason why some of those indie engines (like GMS or Godot) have 100x more indie games hits is because there are 100x less frictions for addon devs to create powerful tools to extend the engine, which also means 100x less friction for any gamedev using of those engine to make the game they envision thanks to those tools

    For example YellowAfterLife, one of the best GameMaker Studio 3rd party dev, is credited in those games : Nuclear Throne, Forager, Shovel Knight Pocket Dungeon, Voidigo, Cave Blazrs, Samurai Gunn 2, Knight Club, Rivals of Aether, Nidhogg 1 & 2... and many more because all those games use their amazing GMS tools

    RexRainbow, who was the most prolific and talented Construct addon dev at the Construct 2 era, decided to quit C3 because of all the restrictions that were added to addon making a few years ago (and it was nothing compared to what's about to happen here), so they instead became a profilic Phaser addon dev and a bunch of their Phaser tools were used to develop one of the biggest indie hit ever : Vampire Survivor.

    I'll advise my clients and the users of my addons to keep using the last version supporting SDK 1 so i'll still be able to help them to achieve their vision and to develop powerful tools for them.

    The addons i made for private use + all the addons the community made are worth about 4-5 years of vanilla update at the pace features targeting actual gamedev are pushed. (Not even counting all the very specific addons I made to target my own production needs, and not counting services integration like Chadori addons, just speaking about stuff that feels Vanilla here).

    => The tradeoff is not worth it : even if some top suggestions requested for many years like Hierarchy View, Better 3D or Family Inheritance gets added in the upcoming years - which i doubt, it would still not worth dropping the modularity/flexibility Addon SDK1 allows, all the custom features already made by 3rd party devs and the fact I know i can implement almost anything I want when i need it.

    Overall it really hurts my faith in the engine, as such unilateral decisions hurting gamedevs subscribers keeps happening again and again and i'm not confortable with the feeling i don't have any ownership over my own work, so i'll keep digging in the free Open Source alternatives, made by gamedevs for gamedevs, that are growing at light speed in term of popularity/features/resources such as Godot (for full desktop/console/mobile games) and GDevelop (for little no-code/web games). It's disheartening but it just feels too risky to bet long term in C3.

    Coincidential timing but TODAY, Godot just announced big improvements coming for their Web export in the upcoming 4.3 and 4.4 releases. Given the ease of use of GDscript, the incredibly prolific content creator/addon dev community in Godot, and the fact every single addition is targeting actual gamedevs and adressing their actual issues (Open Source)...

    web export is one of the last main competitive advantage i find when using C3 (especially if C3 addons allowing to overcome limitations are all about to be broken and addondev is about to become 10x more restrictive) and it looks like that C3 web export advantage won't last very long.

Overboy's avatar

Overboy

Member since 21 Oct, 2013

Twitter
Overboy has 7 followers

Connect with Overboy

Trophy Case

  • 11-Year Club
  • Entrepreneur Sold something in the asset store
  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • Enduring Visitor Visited Construct.net 90 days in a row
  • RTFM Read the fabulous manual
  • x18
    Quick Draw First 5 people to up-vote a new Construct 3 release
  • x15
    Lightning Draw First person to up-vote a new Construct 3 release
  • x25
    Great Comment One of your comments gets 3 upvotes
  • Delicious Comment One of your comments gets 10 upvotes
  • Email Verified

Progress

23/44
How to earn trophies