

Show HN: Our HTML5 Game Engine, with live demo - hebejebelus
http://flax.ie/flax-html5-game-engine-development-diary-part-10-2/

======
rsbrown
To the author: you mention determination as one of the keys to success.
Strongly agreed. If you want Flax to be successful, then stick with it and
continue providing timely updates and support. Don't waste time worrying about
whether each release is perfect. Just make sure that it is well-tested and
reliable.

For me, the biggest barrier when choosing which HTML5 game engine to use isn't
so much "is the feature set perfect?" as it is, "will this thing still be
around 6 months from now?"

~~~
hebejebelus
Don't worry, that's exactly what we'll be doing. We've got a hard deadline of
three weeks on each iteration, and a soft one of two weeks. After the soft
deadline, we'll bugfix anything and remove non-working features. Hopefully
this will keep us on track. Plus, when we put the progress bar in the header,
we inadvertently gamified ourselves. Can't help but want to move it up. ;)

Don't worry, we've made a pact that Flax.ie will be around for nine more years
(ten years from when we started), so as long as the internet doesn't explode,
we'll still be there.

Thanks for the kind comment, it's appreciated.

~~~
rsbrown
You're welcome. Great work so far, by the way. I really like the interface.

A group of friends and I built a small HTML5 game prototype as part of a
weekend hackathon a few months ago:

<http://diluvia.com>

We haven't worked on it since the spring, but I've been on the hunt for a good
level editor since then. I will be interested in watching Flax develop.

~~~
hebejebelus
Well, we certainly hope to not disappoint!

Diluvia looks awesome, great mechanic. Did you use node or websockets (or
another method?) for the multiplayer aspect?

Also, how did you do audio? I'm about to start working on Flax's audio section
again (and rewrite it for the fourth time) and I'm still having trouble
working around each of the browser-specific quirks. Did you use a flash
fallback?

~~~
rsbrown
Yep, the full stack is all javascript running on node.js and websockets. We
used SoundManager 2 for the audio:
<http://www.schillmania.com/projects/soundmanager2>

------
dpcan
Can you help me navigate your site? All I see is a demo of what appears to be
a map editor, I don't see a game engine to download, or any actual game demos.

~~~
hebejebelus
From my post: "There’s no “game” in “Flax game engine” so far. What we’ve got
is really a demo of our map editor, Weave. Naturally, we had to build the
tools before we could build anything even resembling a game."

Before the end of the summer, we'll have a game.

The code is on github, though we haven't publicised the link. It's simply not
finished, and not in a usable state yet. When it is, we'll release it properly
(it's open source, under Apache, of course).

------
simplify
Just curious, how do you plan to differentiate from impactjs
(<http://impactjs.com/>)? It also has a map editor quite similar to the one
you're showing off.

I just used impact for a client project recently, and it is phenomenally easy
to work with. The developer license is well worth the cost.

~~~
hebejebelus
The biggest difference between Impact and Flax is that Flax is written with
the Java language, using GWT to cross-compile into Javascript. We used GWT
because a year ago, when we started, neither of us really knew Javascript. As
well as that, we like our strongly-typed languages, and we figured there might
be more game developers who know Java than js (though that's totally
unfounded, and pretty much just plain wrong. ;) )

The fact that GWT compiles into super-optimised js (though that's hard to
tell, what with the 100% CPU usage) is nice, too.

Impact is very cool indeed. I seem to remember speaking to the dev behind
Impact just after we announced Flax - I guess he got there before we did. :)

~~~
walrus
Since the games themselves are written in Java, could you potentially make
another implementation of Flax that runs directly on JVMs (e.g., directly on
Android without using the browser)? Or it it tied to closely to GWT to do that
reasonably?

~~~
hebejebelus
Potentially, we could do so, yes. It would take some time, though, because the
engine is centred heavily on creating map object from a JSON string, which
probably wouldn't work so nicely out of the box in a simple JVM (though to be
honest I haven't looked into it).

~~~
walrus
I just brought that up because I found that to be a drawback of ImpactJS[1]
when I tried out some of the demos—they didn't run well on Android. By
allowing the user to compile into both JavaScript and JVM versions, you could
avoid that issue.

[1] <http://impactjs.com/>

------
ideamonk
The tilesets seem to be from GB/GBC editions of Pokemon, specially couldn't
help noticing "MART" written in one of the pieces of the tiles. Does
Gamefreak/Nintendo or any other game publisher that created games back then,
have not copyright/restrictions over uses of these images?

~~~
hebejebelus
The default one is, currently, from Pokémon Gold or Silver. You're right - to
use it under fair use we should include a copyright disclaimer. (However, does
the fact that the image is meant to be changed mean anything in terms of legal
issues?)

We're currently in the process of getting our own tilesheet made - this was
simply the first one we found several months ago. I'll add a disclaimer to the
post, and hopefully by the next iteration we'll have our own original
tilesheet.

~~~
ideamonk
I had once found tile-set extractors that would give you sprite-sheets and
tile-sets right out of GBA/GBC/SNES roms. Always tempted to use them on my
personal projects, but never did due to legal issues.

"However, does the fact that the image is meant to be changed mean anything in
terms of legal issues?"

Haven't much experience in copyright/laws to comment on that. Had a discussion
on sprites/tiles once on SO, [http://stackoverflow.com/questions/143050/where-
to-get-sprit...](http://stackoverflow.com/questions/143050/where-to-get-
sprites-tilesets-for-2d-games)

------
matthiasb
Good job guyz! There are a lot of new neat feature in this release:D Keep it
going!

~~~
hebejebelus
Thanks, Matthias. You've been there since the start, thanks for everything
(especially helping us with the JSON serialisation).

------
leon_
wow, you rally need to improve the performance.

~~~
hebejebelus
It's certainly on the cards. There's a whole bunch of optimisation we have yet
to do, but we wanted to get a version out the door.

