Jump to content

[OpenFL] [(almost)Complete] Path Squared


Penry
 Share

Recommended Posts

Path Squared, my new 40 level path following puzzle game is now complete !

 

let me know what you think  Here's the Link : http://www.wigsgames.com/html/pathsquared/

 

 post-7009-0-62289200-1441986280.png

 

Path Squared has been developed in Haxe, designed from the beginning to be native HTML5 (compiled to js), the HTML5 version uses soundjs to handle music and sound effects.  It's also available as Android Native (compiled as cpp), and Flash (compiled as3) ! 

Link to comment
Share on other sites

I enjoyed the game play on desktop, clear presentation and intuitive!  Nice subtle sounds, and elegant transitions.

Might be nice to add some a message on fail, with an auto restart timer.  Saves hitting the restart button.

Are Stars to do with speed?  Might want to make this more obvious, and award them visually at the end of the level.

 

A few technical issues I encountered on mobile (test device Samsung S3, Chrome and Stock):

 

1) Initial load has a large delay before anything is on screen (i.e. before the loading bar)

2) Resizing of the game (e.g. on orientation change) caused some cropping 

3) Audio still plays when browser minimized

4) Framerate is low (I'd estimate <12fps which is odd given no scrolling), making it frustrating to play

5) Game doesn't appear to pause when tabbed away, so any other game open at the time is noticeable slower

Link to comment
Share on other sites

HI, thanks for the great feedback b1ob , I'll spend more time on everything you've found. my latest efforts were improving performance for android native, which dont seem to help in html !

 

1. all the game script is loading (just over 1mb) before the loading bar is shown, i guess i could look into wrapping the openfl js within an additional preloader ? am not sure how other folks using openfl would preload.

2. strange cropping indeed, i see it now when i switch orientation and lose the bottom edge, the same also now happens in browser resizing. (just traced this to openfl's graphics.drawTiles function setting bounds relative to the stage size rather than the displayobject size!)

3 and 5. I'm listening for an Event.DEACTIVATE on the stage to stop the audio and pause gameplay etc, works ok on desktop browsers and native, is there something i dont know about happening on mobile browsers ?

4. 12fps ! (unhappy face) - performance wise, i managed to get a single tilesheet.drawTiles call every enterframe event works well on native, but it seems openfl haven't optimised tilesheet use for html5 :( , i'll have to look for other redering options for html5 mobile.

 

Hi Neoprofessor, thanks for trying,  I thought i'd got this right this time !, i'd really appreciate knowing which type of device (desktop/tablet) and which browser this failed to load on for you. and how far along the loading bar it reached.  If it is exaxtly 50%, or further along that would help me narrow it down alot !

 

back to the drawing board a while me thnks....

 
Link to comment
Share on other sites

old iphone4 safari : loading bar hangs at 3/4, usually it's sounds format with openfl, note : redblocked loads fine and plays fine (but onscreen controls are tool small and close for my fingers)

old galaxy tab2 7" : sames as b10b, but stock browser is faster than chrome (it's usual on this device) and has no sound (usual too)

desktop : works fine.

Nice to see that openfl is usable for js now, if you don't mind i'd like to know hat version of openfl do you use and is it vanilla openfl or a special framework?

Link to comment
Share on other sites

Penry, take a look at the "visibilitychange" JS event.  Try pausing and muting on that also.  I don't know if OpenFL ties into this event yet - no mention of it in your source - ideally it should be done up the chain.

 

I see the JS file at 1.25Mb (the bulk of which is OpenFL).  Unfortunately that's too big to run through uglifyjs or similar approaches, so I was unable to quickly reduce it for experimentation purposes.

 

Maybe the workaround is to separate the game into multiple files, e.g. OpenFL + Haxe Std lib as one, game code as another, then compress each in turn?  I see some mention of this on this recent OpenFL issue, but no solution:

http://community.openfl.org/t/solution-html5-canvas-1-1-pixel-ratio/265/5

 

I expect the solution will use the Compiler macros to do multiple compilations, including and excluding appropriate packages.

http://api.haxe.org/haxe/macro/Compiler.html

 

That said, I couldn't find a way to do this without some overlap, and dead code elimination will make this a challenge.

 

Sound file hangs ... double check the format is 16bit and duration is >=1s.

Link to comment
Share on other sites

thanks again b1ob, i'll investigate the visibilitychange event, and see what i can do about minifying the code too. Haxe has "dead code elimination" compiler options (which currently completely break the game, but does half the .js file size), and openfl has a -minify flag when compiling to html, which doesn't work with my current version! ,

sounds >=1s ? will check that too !

 

totor, thanks for the extra feedback. hanging at 3/4 bar to me mean code+ graphics + sound effect loaded, but failing to load the larger music files!,

 

OpenFL, i'm almost at the latest version, a couple of minor patches behind (which contain changes which currently break this game), and i'm using openfl as it is (without an additional framework). 

Link to comment
Share on other sites

  • 2 weeks later...

Hi, Path Squared is one step further forward, fixed the cropping (and fed back to openfl forums) and properly implemented pausing on visibilitychange events occuring (by injecting javascript directly into the haxe code, to listen for the event, - something i didn't know was possible this time last week !!) tweeked one of the sound files to over 1s as it was sub 0.3s, allof the .ogg files were already 16bit 44khz files !

 

I'm struggling to work out low performance - i have 2 tablets to test on, a 4 year old generic tablet, which always gives low performace - if i completely remove sound from the game (soundjs implemented), the framerate jumps up to about double it was before, but still less than desirable.  My other tablet, a Hudl 2 (nearly a year old), runs the game as smoothly as my desktop browsers do, with sound playing correctly !

 

(next step, dead code removal and crunching)

Link to comment
Share on other sites

Hi @Penry

 

Can't load your game in Safari (Macbook Pro) ...

 

[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (click1.mp3, line 0)

[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (symbol1.mp3, line 0)
[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (symbol2.mp3, line 0)
[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (music1.mp3, line 0)
[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (music2.mp3, line 0)
 
It works perfectly in Chrome.
 
I understand that everything looks blurry, because you're using lo-res assets and scaling the game up. I would however change the font, as it looks horrible when scaled to full screen.
 
Apart from that, everything seems fine and the game plays nice and smooth.
 
Hope this helps :)
Link to comment
Share on other sites

Thanks Ninjadoodle,

 

My error for your safari test, after making adjustments to the sound files a few days ago, i omitted reuploading the .mp3 versions after some checking/testing of the .ogg sound assets (Chrome should default to .ogg which were still present), reuploaded now !

 

Thanks for the feedback regardin gthe font too, and you're right about scaling up, all of the graphics (icluding the bitmap font) are rendered to a 450x600 bitmapdata, which is then positioned as to best fit the viewing window on all platforms and devices ! , I've read that web fonts are the things to use for html, is that what most folks use ?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...