Suggestion Special Extension Development Forum

Mert

Member
I believe this is a "must" and wouldn't really take up much time from Yoyo team. The current Forum order looks pretty neat, but I have hard time posting my questions related with developing extensions. Stackoverflow and reddit are great for solving these problems, but as you know, developing them for Game Maker is a bit different than regular programming operations, you don't get some of the details sometimes. Plus, I really want to help to/get help from people who precisely work with Game Maker.

My suggestion is that:
  • Can we have a special Forums for this ?
  • If possible, with post prefixes Java, Javascript, C/C++ etc..
 

FrostyCat

Redemption Seeker
I know there's this "GMC is only for GML" mantra going on at YoYo, but this suggestion needs immediate attention. There is a very real need to learn, encourage and demystify extension development in GMS 2, especially for people involved in iOS and Android publishing, and I hope @Nocturne agrees.

The lack of education for extension writing has left 99% of the commercial GM userbase as sitting ducks at the mercy of third-party support. This is no way to expand GMS 2's reach or market share, and no way to alleviate needless workload from the core development team. With the extension revamp all the way in Q2 2019 and no sign of continual action on the Roadmap, the chances of us having to monkey-patch official extensions in the near term is undeniable. Just look at the Google Play Services extension, for instance. Now there are only 2 weeks left before the Google+ API shutters for real, and the only thing we have from HQ thus far are empty promises. If I have a game that depends on this extension, in the absence of practical YoYo action I'll happily take the assistance of self-taught extension authors.

Without a critical mass, extension developers also suffer from chronic YoYo neglect. The extension mechanism has been under-utilized and under-explored, and the holes in its functionality almost always come up last-minute when it's time to make an integration, with the only recourse being the helpdesk. When we do report bugs or functionality holes in the extension mechanism (e.g. deep-linking, documentation of system-level hooks, interoperability of GM data types with extensions, etc.), the tickets languish on the helpdesk queue because the requests aren't considered popular.

If the bad karma from neglecting all those official extensions is too much for YoYo to resolve in the short run, then they should open a forum for us to learn to save ourselves while they clean up their own mess. It's the least YoYo could do to repent for their deeds.
 
I

immortalx

Guest
That sounds like a great idea. I had a recent experience asking my son to write a tiny extension and when I pointed him to the documentation he said "That's it? :D
He managed to do it but if it wasn't for a tutorial post by member Ghost in the IDE, he wouldn't know where to start. And even after that, a small extension that isn't worthy of the marketplace, or snippets of code, would be nice if it was posted in a special forum section, as suggested, and not lost in the myriads of posts in the programming section.
 
L

Lonewolff

Guest
I'm all for this. :cool:

Once you start writing extensions, this is when you really start to learn GMS. It is a whole new world once you peek behind the curtain.
 

Pfap

Member
Also, anybody who builds games with gml will eventually need to learn another language even if only to integrate a public leaderboard... At least until gml can be practically run on a server.
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
Traditionally, extension sub-forums have existed and been pretty much dead-zones on the GMC, with very few people participating in conversations or even creating extensions. That doesn't mean I'm not open to trying this again, but I would say that we currently have a forum which is underused and which is 100% appropriate for posting questions about extensions, or other languages being used in an extension, or even showing off stuff and getting feedback, etc... Note that it's a discussion forum, not a straight Q&A forum, so it's perfect for what is being asked for.

You may use this forum to discuss advanced programming issues or concepts. These topics are not limited to only pure GML, and discussions featuring other languages are permitted, although we would expect any discussion about other languages to have some application within GameMaker.
As for publishing the extensions that are made, we have the MArketplace forum for that and we won't be making any forum specifically for sharing extensions.

Like I say, I'm open to this suggestion, but currently I can't see any need for a separate forum section... convince me otherwise?

PS: I can add any prefix that you guys desire to the Advanced forum, so hit me up with a list if that's what you think is required. :)
 
L

Lonewolff

Guest
Does this mean the advanced forum will be opened up to all 28,000 forum members or do we need to apply via PM individualally still?
 
B

Bayesian

Guest
Why exactly is it closed in the first place? Where there actual moderation problems or has it always been closed? Would the 20 post requirement like the advanced GML board on the gmc be possible?
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
The Advanced forum requires permission to post, and this won't be changed. The reason it's like this is because in previous versions of the forums, we've found that EVERYONE thinks their problem is advanced, otherwise they'd be able to solve it and so we get a lot of people posting really simple things in the forum that shouldn't be there. It ends up just becoming a programming QA forum like the rest, which is NOT what it is for. I'd love to see it used more and see some real discussion about extensions and advanced programming techniques... I still miss the "good old days" from about 10 years ago when the Advanced forum was active and had people like GearGod and FredFredrickson and Xot, et-al making really interesting topics and posts!
 
I

immortalx

Guest
@Nocturne, I'd like to quote @FrostyCat here, just to make the point that the request isn't simply about a forum section:
There is a very real need to learn, encourage and demystify extension development in GMS 2.
The ideal thing would be if YY stuff could spare some time and start a discussion with the more advanced members (especially those capable of writing extensions), give their advice and reveal some of the internals, and the rest will come in.
 

FrostyCat

Redemption Seeker
Traditionally, extension sub-forums have existed and been pretty much dead-zones on the GMC, with very few people participating in conversations or even creating extensions. That doesn't mean I'm not open to trying this again, but I would say that we currently have a forum which is underused and which is 100% appropriate for posting questions about extensions, or other languages being used in an extension, or even showing off stuff and getting feedback, etc... Note that it's a discussion forum, not a straight Q&A forum, so it's perfect for what is being asked for.
I would have agreed with you if YoYo and other Marketplace vendors didn't become so negligent in upkeep for their extension offerings.

It used to be the case that a few people would create extensions, and then lots of people download them without much need to engage in conversation. These extensions tend to be long-lived without frequent modifications, and generally well-designed, trouble-free and adequately supported while active. In particular, the GMAPI in legacy 8.0 provided a documented interface for interoperating with internal GM runner hooks (albeit an unofficial result from reverse engineering), so the extension landscape was in a good position to fluorish in that timeframe.

This is no longer the case with the faster release cycles of GMS 2 and the shifting mobile development landscape. Extensions can come apart instantly between runtime updates, and to date there is still no formal equivalent to GMAPI in the extension mechanism. Whereas the probability of self-servicing is negligible in legacy times, it is almost certain today. Extension vendors on the marketplace are either abandoning extensions on a whim, not doing timely updates, not offering enough variety to suit contractual obligations (e.g. using a specific but new/uncommon ad vendor), or overcharging in a virtual monopoly. YoYo isn't doing much better, with the last updates to official extensions being at least one year behind on virtually the entire roster and most the related tutorials gone with the GMS 1.4 sunset.

By providing a dedicated place to help people learn to make and service extensions, you empower current and prospective commercial GM users to control their own GM destiny. Developers can start simple integrations on their own now instead of having to "buy" basic functionalities, and API vendors now have resources for integrating with GM properly (and no, just returning reals and strings is NOT enough). That way GMS 2's commercial use cases won't rest entirely in the hands of a few vendors (many of whom I think have been completely irresponsible), and professionals won't be forced into abandoning GM because of the general incompetency in the extension development landscape. They will be part of its rebirth.

As for publishing the extensions that are made, we have the Marketplace forum for that and we won't be making any forum specifically for sharing extensions.

Like I say, I'm open to this suggestion, but currently I can't see any need for a separate forum section... convince me otherwise?
We are not asking for a place to share extensions, we are asking for a place to learn how to make extensions and how to manually service them in emergencies.

Extension techniques are becoming a distinct use case in its own right, and the today's circumstances demand a grasp of it for all current and prospective commercial GMS 2 developers. The use cases range from simple (e.g. removing a single permission) to advanced (e.g. interacting with system-level hooks that may not have been adequately documented), so I would NOT agree with lumping it all into Advanced. And given their platform-specific nature and requirement of knowing other languages, I would DEFINITELY NOT agree with lumping these concerns with other advanced topics that are purely algorithmic and otherwise doable entirely within the GML domain.

The helpdesk articles are a good starting point, but they are entirely inadequate for the most common integrations needed in practical situations. Returning reals and strings and throwing a few Social Async events aren't enough. Details such as listening for system events (e.g. intents from API vendors, deep-linking, carrying out other actions in mobile exports, etc.) and data type interoperability (e.g. drawing on the application surface from an extension, handling/returning buffers from an extension, etc.) are now mostly unwritten knowledge, but are essential in doing things right. So having a place where we can publicly discuss and document these in a learning-oriented setting is essential and not fulfilled by any existing GMC or YoYo resource.
 

Fanatrick

Member
I'd love to see it used more and see some real discussion about extensions and advanced programming techniques... I still miss the "good old days" from about 10 years ago when the Advanced forum was active and had people like GearGod and FredFredrickson and Xot, et-al making really interesting topics and posts!
You do strike a spot (I personally was inspired by h0bbel), but most extensions are seldom in the zone of Advanced Programming territory. There really is no concern of a lacking talent pool, as there are new trailblazers filling their shoes.

There is a huge disconnect between extension development and the average user, this has been a consistent state of affairs ever since GameMaker: Studio was released and YYG is simply not doing enough. Extending GameMaker is one of its contributing selling points, therefore an average user shouldn't need to pay attention (much less require permission of participation) to "Advanced Programming" boards in order to fully utilize the engine. You just can't have both in the same space.
 
Top