• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

HTML5 HTML5 is broken

Status
Not open for further replies.
S

Sam (Deleted User)

Guest
Hi.

If anyone is considering to purchase the web edition of GMS2, I urge you to read this post first.


It is so broken, it doesn't work in any way with all of my projects. Yes, I made sure I cleared the cache before running. So many bugs, I don't even know where to begin. I payed for GMS2 web edition last night and I'm very unsatisfied with the results of my purchase. The only reason I have for not requesting a total refund is the hope it will become much more stable as time goes on. I refuse to file over 50+ bug reports because YYG failed to deliver a truly cross-platform game development environment. This version has more bugs than the 1.4 HTML5 module, and the 1.4 version of the HTML5 export was so buggy I couldn't use it, as it is... The primary reason I bought the 2.x web edition, was with the hope, since it's more supported, that I would have a more stable HTML5 export, but it's over 10 times worse. To be clear, I'm not requesting a refund, as tempting as it is...

Good day.
Samuel
 

rIKmAN

Member
GMS2 in general does seem to have been rushed out of beta too quickly, for whatever rea$on.
Maybe when the discount period ends they'll get fixed - 40-50% price reduction = 40-50% functionality reduction? :p

Seriously though, I held off UWP after reading a thread by a user on here who purchased it and can't even compile with it because of errors.
Not sure how that got through QA, successfully compiling is a pretty obvious thing to test, probably #1 on the list I would assume. Hit compile > does it work?

UWP YYC is also broken on both 1.4 and 2.0 but has been fixed "internally" - which is great for the YYG office staff, not so good for us users waiting on an update.

@Samuel Venable - If you posted some of the bugs maybe other HTML5 owners could test and compare just to rule out it being anything specific to you / your setup.
Not saying it is, but at the very least other people can confirm the issues if you post some of them.
 

rIKmAN

Member
Man, I love YYG and what they have done, I really do. But, it is a matter of feature$ over functionality these days. (Maybe always has been, I don't really know).

All I do know is that whenever I post something and take Mike and Russell in to, I never ever get a reply. I know full well the community wont answer (and I understand that) as my questions always relate to the internals of GMS.

But, years of 'no reply' gets a little disheartening and people wonder why I keep going back to pure C++ over GM. You know times are tough when your productivity is higher in C++ than something like GMS.
Yeah I also like GMS2 (I was late to the party with GMS1) and love the IDE in 2.0 in general.
I just think more communication and transparency would go a long way

A better bug tracker would also go a loooong way to alleviate a lot of the frustrations users have, as currently you submit a bug and it disappears into the ether never to be seen again.
The last time I tried to report something I ended up with 6 different emails detailing merges of reports that then all got joined into each other, and told to "watch future updates" if I wanted to track any of them. It was later cleared up by Dan (I think?) who apologised and added them to Mantis.

Mantis is just confusing, sometimes I can see it, sometimes I get asked to login (and can't), some users seem to have access, others don't, there are bugs marked as "assigned" which are dated 2014 and still not looked at etc, it just seems a bit of a mess (or I'm an idiot, whichever takes your fancy).

If there was a clean, simple system to report and track a bug, and you could see it's progress (even if that progress was "low priority / not being fixed") then at least we can keep an eye on things ourselves and have some kind of attachment to the product and know what we are working with / waiting on.

Hopefully YYG can see that through all the gentle jabbing, joking and sarcasm in threads regarding certain issues, that everyone on here has a vested interest in YYG / GMS succeeding.
We all want a great product, we all want to help make it a great product, and that by being a little more open about things would only help ease frustration / stress for both sides.
 
R

renex

Guest
I see no issues with the workings of mantis - only the infrequency with which it is updated.

Right before a release shows up, you'll see dozens of bugs being resolved in quick succession. It gets random spurs of updates, then a long stall.

It works fine - they just don't really bother updating it as much as would be comfortable for us.
 
H

Homunculus

Guest
Well this is really disappointing, since I bought the html5 edition for the same reasons you did.

I simply stopped working with the html5 module in 1.4 because of what you describe, and to be fair, at some point it wasn't that bad, but every new version seemed to fix some stuff and introduce a plethora of new bugs even on really basic things like sorting lists or boolean operations. While you could work around most of the issues, it just felt too much work for something that should not be there to begin with, and the updates were just a jump into the void.

I don't like to rant, I still think that there isn't much to complain about for a software as complex as gms2 at this stage, but i have to support you on this. The html5 seems to be always lagging behind the other modules, and it really feels like the most neglected platform as of now.

EDIT: i'd like to add that this gets even more complex when dealing with marketplace assets. I used to test my assets for html5 compatibility before publishing, just to discover that in a recent update or in version X of the beta/stable channel some key thing is broken and purchasers (rightly so) complain about selling broken stuff on the marketplace.

End of the rant, I hope it's clear that if i'm writing this is because i love game maker and hope to see it get better and better
 
Last edited by a moderator:
S

Sam (Deleted User)

Guest
It's a shame to hear the UWP isn't doing so well either.
@Samuel Venable - If you posted some of the bugs maybe other HTML5 owners could test and compare just to rule out it being anything specific to you / your setup.
Not saying it is, but at the very least other people can confirm the issues if you post some of them.
Objects are placed at wrong positions. Some not moving at the speeds they should. Some objects are moving when they should be stationary. Some objects are stationary when they should be moving. Some are invisible when they should be visible. Math isn't being calculated correctly for a lot of things. It all just looks like a glitched out mess. It also lags significantly more than the 1.4 equivalent.

The desktop edition seems to be really solid and mostly bug free. Linux has a really annoying bug with starting in full screen but other than that, I can't think of anything that's majorly wrong with the desktop edition.

The 1.4 iOS and Android targets are super stable, at least in my testing, does anyone know how the 2.x mobile edition is doing?
Well this is really disappointing, since I bought the html5 edition for the same reasons you did.

I simply stopped working with the html5 module in 1.4 because of what you describe, and to be fair, at some point it wasn't that bad, but every new version seemed to fix some stuff and introduce a plethora of new bugs even on really basic things like sorting lists or boolean operations. While you could work around most of the issues, it just felt too much work for something that should not be there to begin with, and the updates were just a jump into the void.

I don't like to rant, I still think that there isn't much to complain about for a software as complex as gms2 at this stage, but i have to support you on this. The html5 seems to be always lagging behind the other modules, and it really feels like the most neglected platform as of now.

EDIT: i'd like to add that this gets even more complex when dealing with marketplace assets. I used to test my assets for html5 compatibility before publishing, just to discover that in a recent update or in version X of the beta/stable channel some key thing is broken and purchasers (rightly so) complain about selling broken stuff on the marketplace.

End of the rant, I hope it's clear that if i'm writing this is because i love game maker and hope to see it get better and better
Yeah I don't mean to rant either, it's just really disappointing. I'm super happy with the 2.x desktop edition and the 1.4 mobile (iOS, android) targets and I know time in all likelihood will fix the bulk of the HTML5 bugs. I'm in full support of YoYoGames and all their hard work, and I don't want to discourage them by any means.
 
Last edited by a moderator:
R

renex

Guest
I don't know what you guys are going on about because the 1.4 html5 module works just fine for me... it does have its quirks but if you even bothered to look up, all the issues have workarounds.

Just gotta put a little bit of effort, not everything ports over 1:1 but it's certainly workable. Plus, having access to js, you can easily patch in weaknesses with that aswell.

You can't really expect to import a project and have it work out of the box - things are different, and for the most part the documentation covers the differences. After a few years working with html5, I am comfortable with them.
 
S

Sam (Deleted User)

Guest
@renex what version of 1.4 are you using for HTML5? Also, you say I can't expect it to work out of the box with GMX imports, but here's the thing, I imported my GMX projects and ran them in GMS2's desktop edition and they worked flawlessly out of the box on windows (and linux if I do it in windowed mode). But using the same exact code it should be the same for HTML5, but it isn't. Desktop works out of the box, and true cross platform development would imply that running in HTML5 should run the same, but it doesn't.
 
Last edited by a moderator:

rIKmAN

Member
Objects are placed at wrong positions. Some not moving at the speeds they should. Some objects are moving when they should be stationary. Some are invisible when they should be visible. Math isn't being calculated correctly for a lot of things. It all just looks like a glitched out mess.
That sounds really bad!
I don't have any interest in the HTML5 module but if that is the current state of it then it shouldn't have passed QA.

The 1.4 iOS and Android targets are super stable, at least in my testing, does anyone know how the 2.x mobile edition is doing?
I've only tested Android so far with a couple of small projects but didn't experience any issues at all, I'll get round to trying iOS sometime this week.
Yeah I don't mean to rant either, it's just really disappointing. I'm super happy with the desktop edition and I know time in all likelihood will fix the bulk of the HTML5 bugs. I'm in full support of YoYoGames and all their hard work, and I don't want to discourage them by any means.
It shouldn't be considered ranting when you are voicing displeasure because a product you paid for doesn't work as advertised - everyone is entitled to voice their opinion, and it isn't a beta anymore so bugs like you describe shouldn't be happening.

As I said above all users want YYG / GMS to succeed and be the best it can be, but we just need more of a chance to help out and have some kind of meaningful / impactful back and forth with YYG with regards to the product. It might come across as moaning / ranting or whatever, and I'm sure YYG read some threads and think "oh ffs moaning again" but it's all coming from a good place, we all want GMS to be the best it can be and want to help out any way we can to make that happen.

Staff have said on here that the QA department is what slows the release of updates, and there aren't enough people doing QA.
If they somehow would/could allow some able users to help out with QA (for example), then I'm sure that bugs in the HTML5, UWP etc would have been reported way before they were released for sale and taken out of beta.

Maybe they were and they released it anyway intending to fix them quicker than they have , we don't know what happened internally for that to happen but it seems pretty poor that showstoppers got through any kind of QA. The point is we don't know, because we aren't really told anything other than "coming soon", "fixed internally" with no release date for a public update etc. The new updated roadmap might be a good step in the right direction in terms of this - again we don't know until we see the roadmap, but hopefully it's more detailed than the IDE roadmap that just has Q1/Q2 etc on it.

Who knows, it just all feels very isolated sometimes and can seem like an "us and them" kind of relationship, where we are the baby chicks chirping and waiting in the nest to be dropped morsels of food from the mother bird and we better be happy about it when she does, rather than us all working together to a common goal which would (IMO) ease a lot of the frustration I'm sure both sides feel.

I'm a big YYG fan and I like the direction GMS2 is taking, it just seems to have had a rushed release in terms of bugs etc that should really have been sorted before coming out of beta.

PS. There is a lot of text, but this isn't a rant... :)
 
R

renex

Guest
what version of 1.4 are you using for HTML5?
Latest.

And I'm not saying it's perfect and or acceptable. Just that I have learnt to deal with the flaws and am comfortable developing for it.

The things I can list off the top of my head, and their solutions are...
  • no networking (use js)
  • buffers have their own encoding format (preconvert the buffers)
  • ?_getpixel() returns posterized results (this is solved by not depending on it, it's bad practice anyway)
  • base64_encode() is broken (use js)
  • textures are randomly garbled (clear cache and you're fine)
  • fonts are garbled (force font texture rebuilding)
  • obj.var is broken (use a with construct)
  • sprite culling disregards transformations (use fake view coordinates)
  • event order is reversed across instances (if your code depends on instance order, then it's bad code, handle events yourself in this case)
  • draw_?_part() is broken (use primitives)
  • music is unstable (i wrote a js extension that handles audio elements for me)
  • matrix transforms are buggy (don't use d3d_transform_set_?)
  • no file operations (i wrote 10 lines of js that can handle desktop file drag and drop / generate download from / upload to string support)
I have personally reported most of those on mantis, but the current focus of yyg seems to be pushing gms2 out of the oven, and as such we html5 devs haven't got any love recently. Things used to be smoother two years ago.

My job is making educational browser games, so over time i've amassed a sizable collection of enhancements for the html5 engine that make my life much easier... the same cannot be said for everyone.
 
Last edited:

chance

predictably random
Forum Staff
Moderator
Objects are placed at wrong positions. Some not moving at the speeds they should. Some objects are moving when they should be stationary. Some objects are stationary when they should be moving. Some are invisible when they should be visible. Math isn't being calculated correctly for a lot of things. It all just looks like a glitched out mess. It also lags significantly more than the 1.4 equivalent.
I haven't seen anything like this in GM2 HTML5. Haven't tested every possible HTML5 feature, of course. But so far, my HTML5 games run smoothly. There were errors with box2d initially, but they were fixed a couple versions ago.
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
@renex what version of 1.4 are you using for HTML5? Also, you say I can't expect it to work out of the box with GMX imports, but here's the thing, I imported my GMX projects and ran them in GMS2's desktop edition and they worked flawlessly out of the box on windows (and linux if I do it in windowed mode). But using the same exact code it should be the same for HTML5, but it isn't. Desktop works out of the box, and true cross platform development would imply that running in HTML5 should run the same, but it doesn't.
OKay, so this is an IMPORTED project and not one that you've created from scratch? Then it could be an issue with the compatibility scripts and not the exports. 99% of the runner code for all the exports in GMS2 is the same as the exports in 1.4, so everything should work fine (and in my experience it does with new GMS2 projects).
 
H

Homunculus

Guest
I don't know what you guys are going on about because the 1.4 html5 module works just fine for me... it does have its quirks but if you even bothered to look up, all the issues have workarounds.
First, I have to clarify that what I'm talking about is the 1.4 version, I haven't been able to work with the GMS2 version long enough to draw any kind of conclusion.
Of course, as far as I am concerned, it's not about the features that we know not to be working due to the limitations of the platform. If you want an example, in the latest version sorting ds_lists of strings and ds_grids with columns holding strings is broken. I can work around that by adding my own javascript call or implementing a quicksort myself I guess?
Another problem (I don't know if it has been fixed by now) is that at some point, this was broken:

Code:
var a = true;
var b = true;
var c = a && b; //c is now <nul>
Both of those can be solved in one way or another, but honestly, stuff like this shouldn't be broken to begin with imho, not even in the beta channel.

As said, I'm not concerned about the current state of the HTML5 export, but the instability every new update introduces
 

Mike

nobody important
GMC Elder
Man, I love YYG and what they have done, I really do. But, it is a matter of feature$ over functionality these days. (Maybe always has been, I don't really know).
All I do know is that whenever I post something and take Mike and Russell in to, I never ever get a reply. I know full well the community wont answer (and I understand that) as my questions always relate to the internals of GMS.
But, years of 'no reply' gets a little disheartening and people wonder why I keep going back to pure C++ over GM. You know times are tough when your productivity is higher in C++ than something like GMS.
These are called community forums for a reason. We can't and won't reply to everything, there is just too much here. If you have a bug and need someone from YoYo to look at it, then file it. If your just after advice or whatever, then you'll have to depend on the community if we can't respond. We don't give 1:1 coding advice for obvious reasons.

As to how the product was released.... we released it based on bugs filed. If there weren't many bugs for a module for a while, or they were deemed to be low (there will always be bugs of some kind in a product like this), then we'll figure it's good to go. If you are only now trying their projects then yes, there may well be things no one has filed yet. But we did lots of testing on the modules ourselves. We've said for years now, file the bugs and they'll get fixed, don't and they won't.
 

rwkay

GameMaker Staff
GameMaker Dev.
on uwp the window_device() will return NULL this is true, and will always be true because unfortunately on DX11 you need access to 2 pointers to be able to use it fully.

We have moved this interface to the os_get_info() call, this returns a map with extra information the entries you want are

"video_d3d11_device" - has the pointer to the D3D11 Device
"video_d3d11_context" - has the pointer to the D3D11 Context

This is for both GMS1 (not in public version yet) or current GMS2 (both Desktop and UWP) - I am going to caveat this as it definitely works on UWP for the internal version here, but I am not 100% sure if that code change is in the public version.

Russell
 
R

renex

Guest
I can work around that by adding my own javascript call or implementing a quicksort myself I guess?
List shuffling is broken too! For that I've been making use of the Durstenfeld shuffle algorithm. Wikipedia provides a js implementation.
Another problem (I don't know if it has been fixed by now) is that at some point, this was broken:
It has been fixed. This stemmed from the same bug that plagued all boolean operations, that I reported myself, and linked to about 7 similar reports in mantis - they were all fixed shortly after by the same core change.

It also lags significantly more than the 1.4 equivalent.
It can lag if you're doing too much stuff, but I've seen the opposite effect too - some operations that are rather slow on desktop are surprisingly fast on js, sometimes even surpassing that performance. If the game is slow on html5 this can be an indicator of bad design.
 

rwkay

GameMaker Staff
GameMaker Dev.
Ok that is not the supported way to do it, and we explicitly give you the context so you don't have to derive it in some way

Russell
 

rwkay

GameMaker Staff
GameMaker Dev.
The os_get_info() is the supported way across both 1.4 and 2.0 (once the public releases happen over the next few weeks) - that is from YYG

Russell
 
R

renex

Guest
Have you filed a bug?
Actually I got this information from an existing report by other user ;)

Not sure if they actually reported it directly to mantis. But they should have.

edit: I'll go research, this should be trivial to test for.
 

rIKmAN

Member
(once the public releases happen over the next few weeks)
What are the chances of an update "Before the end of March" like you mentioned was being targeted as a release date in another thread?

If that's not gonna happen, will one drop before April 9th when the discount ends?
It seems unreasonable to expect people to pay for a module (UWP) that doesn't compile, even at the discounted price.

(If anyone owns the GMS2 UWP module and can successfully compile with it, please post in here!)
 
S

Storyteller

Guest
this is good to know, I think will hold off on buying HTML5 until the bugs are w
 

Ednei

Member
It's a shame to hear the UWP isn't doing so well either.

The 1.4 iOS and Android targets are super stable, at least in my testing, does anyone know how the 2.x mobile edition is doing?
On the Android module I can export and compile the project. However, the problem remains in creating the file.keystore that is critical to publishing a project on Google Play.

I reported these bugs but so far it has not been resolved, see the topic below:

https://forum.yoyogames.com/index.p...-gm2-android-module-setup-and-keystore.18558/

Ednei
 

rIKmAN

Member
On the Android module I can export and compile the project. However, the problem remains in creating the file.keystore that is critical to publishing a project on Google Play.

I reported these bugs but so far it has not been resolved, see the topic below:

https://forum.yoyogames.com/index.p...-gm2-android-module-setup-and-keystore.18558/

Ednei
I tried this the other night after remembering you post about that.

You are right that the dialog does display the wrong filetype and it looks like you are trying to save a project, but when I saved it anyway to see what happened, it did actually create a keystore file.
 

Ednei

Member
I tried this the other night after remembering you post about that.

You are right that the dialog does display the wrong filetype and it looks like you are trying to save a project, but when I saved it anyway to see what happened, it did actually create a keystore file.
GM2 is currently creating a file. But the file does not have the file.keystore extension.

When you press the "show key hash" button, codes appear in the "key hash" box but nothing appears in the "key hash (sh1)" box. Several errors appear in the output box.

I have 3 games published on Google Play and I can really say that this is a bug.
 

rIKmAN

Member
GM2 is currently creating a file. But the file does not have the file.keystore extension.

When you press the "show key hash" button, codes appear in the "key hash" box but nothing appears in the "key hash (sh1)" box. Several errors appear in the output box.

I have 3 games published on Google Play and I can really say that this is a bug.
I believe you, I'm just telling you what happened when I tried it.
For me it generated the keystore with a .keystore extension, even though it was telling me to save a project in the dialog box.
 
S

Sam (Deleted User)

Guest
@Lonewolff

Both @Mike and @rwkay have seen all your posts already, so I'm not sure what you have to hide in deleting all your content from this thread. This isn't the first time I've seen you do that. :p

It can lag if you're doing too much stuff, but I've seen the opposite effect too - some operations that are rather slow on desktop are surprisingly fast on js, sometimes even surpassing that performance. If the game is slow on html5 this can be an indicator of bad design.
@renex

I wasn't comparing desktop (native) with HTML5. I was comparing 1.4 HTML5 wifh 2.X HTML5. 1.4 HTML5 is significantly faster. This can be an indicator of YYG's bad design. My code is simple enough and with so few objects there is no way it has anything to do with how I coded it.

@rwkay

Why does your profile picture say "I <3 HTML5" when that is the least stable platform you guys try to support? Maybe the answer is tied to that terrified look on your face in the photo? (jk)
 
Last edited by a moderator:
O

oliverr

Guest
Damn, only just found this post (after purchasing). Even some of the very basic functions are broken. I am really shocked and disappointed. I guess this is the reason I couldn't find any HTML5 game examples.

Desktop works flawlessly, I love it, but the current HTML5 version just isn't ready.

I just feel a bit deceived, I would have been happier had they said "Here is our HTML5 exporter, these are the current limitations".

I'm just hoping they are working away on these issues and will be releasing a major update soon.
 

Toque

Member
I bought the mobile module.
For a new user only used studio 2. Was going to buy html, This is a bit of a surprise/concern.

Too new and incompetent to figure out working code let alone “work arounds”.
 

Toque

Member
GMS2 in general does seem to have been rushed out of beta too quickly, for whatever rea$on.
Maybe when the discount period ends they'll get fixed - 40-50% price reduction = 40-50% functionality reduction? :p

I didn’t realize there was currently was any discounts.

Price -= 10$*#bugs;
Compile
Purchase.
 

chance

predictably random
Forum Staff
Moderator
Damn, only just found this post (after purchasing). Even some of the very basic functions are broken.
<snip>
This topic is over a year old, and many of the HTML5 issues have been resolved. So a topic claiming that "HTML5 is broken" is misleading and unproductive.

However, if there are specific issues and/or functions in HTML5 that aren't working for you, then post a topic about that issue.
 
Status
Not open for further replies.
Top