I think we know what the problem is.
As a temp workaround until the fix, you may create a factory with GO that has only one component: a particle without emitters. It should help for now.
Thank you for this report and especially for a repocase!
Version is: 1.9.8
Engine: 67542769598a1b794877c96f740f3f527f63f491
I removed all particlefx still same - occurs every run in html.
Happens on bundle and build html. (serving locally)
Also tested in Chrome, Firefox and MSEdge all the same result.
On desktop build (Win11 x64) everything runs fine, no errors.
Referring to the “new” particlefx system, the f18 project was built originally around 2-3 yrs ago and used the old particles. This is what I refer as new .. soz.
I enabled debug info and such, and there isnt any extra info in console or in the folder? Is there somewhere there might be more detailed html debug info? are there crash dumps (or equivalent) for html?
Im probably going to park this, since Im working to get the desktop version ready. I was surprised to find the same error, which is why I added here. Is it possible there is some buffer limit I need to change in project settings that might help?
If you’ve removed the particle fx, I don’t think it’s a particle fx issue?
The message size <= Capacity() is just the check inside a dynamic array. We use such arrays in many places.
We’re slowly working on improving the HTML5 debugging experience, but other stuff keeps getting in the way unfortunately.
I think the best option is to report an issue and attach a repro case project that we can debug.
@Mathias_Westerdahl - thanks. I’ll try to make a small repro if I get the time. Not knowing where it is means Im not sure how to do that atm, so I’ll prob ignore the web side for a few weeks until I can slot some time in for it.
The reason I thought it might be particlefx because it looks very similar (but of course as you said its in a core array type, so could be anywhere) but also its one of the few things that is quite different in the game changes Ive done (Ive added various engine and smoke effects) and almost all the other changes have been purely state/ai/gui lua changes which I dont think even interact much with the engine itself (Im using imgui for the gui btw).
Thanks for the tips/ideas. If I come across a solve I’ll update.
Back again. I think I might be onto the source of the problem, it might be meshes sizes. In the log (much earlier) I have this error:
ERROR:GAMESYS: The platform doesn't support 32 bit index buffers. See the setting 'model.split_large_meshes'
dmloader.js:820:40
printErr http://localhost:51213/html5/dmloader.js:820
_ http://localhost:51213/html5/index.html line 328 > injectedScript:1
runEmAsmFunction http://localhost:51213/html5/index.html line 328 > injectedScript:1
_emscripten_asm_const_int http://localhost:51213/html5/index.html line 328 > injectedScript:1
< cut out rest >
This error appears on Chrome, Firefox and MSEdge along with the assert (later in the console log).
I did also recently add a large road mesh that has alot of polys. Im working replacing that to test the theory, since I was doing some changes anyway. Will update if this ends up being the case.
Side note: I tried to use --model.split_large_meshes=1 in the html engine arguments, but it did nothing.