
Skycraft: Minecraft clone in WebGL - r4vik
http://skycraft.io/
======
itafroma
Edit: I just wanted to preface this by saying I think this is a very cool
demonstration and a great first step towards a game: I should've made that
clearer in the rest of my comment which continues below.

The state of the demo is about where Notch was about this time in 2009:
<http://www.youtube.com/watch?v=F9t3FREAZ-k>

I point that out because every month or so someone creates a "voxel"-based
terrain generator with basic building and gets branded a "Minecraft clone", as
if that's all there is to one of the most abnormally successful indie games of
all time.

Unfortunately, it takes a lot more than that just that to make something
that's actually fun to play and is comparable to even Minecraft in its pre-
alpha incarnations.

And if his success wasn't enough, Notch was comparatively fast at developing
Minecraft (at least initially). Within a couple of weeks of the video I linked
above, he had water and multiplayer working[1]. Nevertheless, it still took
another 2.5 years to get to a 1.0 product, and Mojang is still hacking away at
it. Skycraft, on the other hand, doesn't appear to have changed at all since
it was last featured on HN[1] two weeks ago.

I don't mean to be a negative Nancy about it: I think it's great to mess
around with this stuff and if playing around with a basic Minecraft/Lego-esque
builder scratches a gamedev itch for you, that's awesome.

But it seems really premature to start asking for money for it[2], even as a
"Kickstarter"-type pledge drive: I'm not sure I'd even consider this a MVP or
proof-of-concept yet. Skycraft today is, relatively speaking, the easy part,
and really more of a technical demo: there's no game here yet.

Best of luck to the developer, though: I'd love to see if they stick with it
and make something really cool. The other ones I've seen all seem to die off
shortly after being featured.

[1]: <http://www.youtube.com/watch?v=kEAHqgZU-0o>

[1]: <http://news.ycombinator.com/item?id=5738984>

[2]: <http://skycraft.io/#buy>

~~~
andrewljohnson
It's interesting that so many people don't like this common class of article
(I cloned X of Y in Z time), which I find very positive and hacker-like.

You are actually posting a common class of comment, which I don't much regard,
but is unfortunately a formula for lots of karma.

X clone is not nearly as good as Y original for Z reasons. And of course the
implied statement, or explicit in this case, that the hackers who made it
shouldn't show so much pride or ambition.

~~~
itafroma
I clearly failed at the point I was trying to make then. To be clear, and I
should've been more emphatic about that in my original comment, this is a
great demonstration of skill and ingenuity. The creator should be applauded
for creating it. What it's not is a game, much less a "Minecraft clone".

There was a story the other day on Hacker News about not being able to impress
developers[1]: that there's a tendency amongst developers believe whatever
someone else did is easy and they could do it in a fraction of the time.
Almost every time someone hacks something together that sorta resembles prior
art, what I see is a rush to label it a clone of something else that's really
successful, as if the work of the really successful product could be cobbled
together by anyone who has a couple of hours/weeks/months of free time[2].

All I'm trying to say here is that while this is very cool and the creator
should keep at it because this could be a great start to something new and
interesting, there's a whole lot more work to do to make a game out of this
and let's collectively temper the implications that all Minecraft is is a
basic terrain generator.

[1]: <https://news.ycombinator.com/item?id=5807770>

[2]: Another recent example where months of work was reduced to "we did it in
an hour": <https://news.ycombinator.com/item?id=5747418>

~~~
aptwebapps
I don't think your second link is a good example of what you are talking
about. They spent a really long time building a framework which, they claim,
let them build a replica of Snowfall in an hour.

~~~
itafroma
The narrative wasn't that they spent a really long time building a framework
so anyone could build Snowfall in an hour, it was that "the NY times spent
hundreds of hours building Snowfall, we did it in an hour" implying that if
you spend more than one hour working on creating something like Snowfall,
you've wasted your time.

Even if had been the more forgiving narrative, it still ignores the 6 months
the New York times did doing interviews, compiling the photography, and
writing the piece itself. The technical part was, comparatively speaking, the
part that took the least amount of time on the NY Times's end. You can't
replicate Snowfall in an hour, even with Scrollkit's help.

------
RKoutnik
As an avid Minecrafter, I don't see what this adds to Minecraft. Sure, there's
more blocks (I actually see that as a downside, increased block resolution
means that it takes more work to build something) but what's the killer app?
It's also annoying that it requires fullscreen to play. Why can't I multitask?

It's worth noting that one can play Minecraft in a browser [0], so Skycraft
doesn't have that as an advantage. Yes, Minecraft requires Java, but that
won't get me to buy a poor clone of a game I already have and love.

[0] <http://minecraft.net/play>

~~~
wwwtyro
> It's also annoying that it requires fullscreen to play.

It's probably because Firefox currently requires fullscreen in order to engage
pointer lock.

~~~
haeric
You, sir, are correct! :)

------
ChrisNorstrom
Really nice.

As I created my sweet tree house and bridge to the other islands in your game,
my thoughts of "wow what a capable developer" kept turning into, "Why's a
talented person like this working on a clone of someone else's work? Why not
invest this energy in an original title and truly shine?".

If you're talented enough to put together a clone, you're talented enough to
create an original title with it's own audience. Maybe this is just an
exercise but I do hope you iterate this towards something unique.

If anything here's a list of things that I HATE about minecraft and that you
can use to differentiate yourself:

\- I hate having to harvest blocks. I wish I could just click once and
immediately harvest the block. Someone made a browser game like that a while
back (forgot the name) and I immediately spent hours building a city because
it was so much more intuitive and easy.

\- I hate having to collect all the blocks I've broken up by walking over to
them. Just give them to me directly.

\- I hate having to harvest a block in order to plant it somewhere else. I
wish I could just harvest a block type once and then be able to infinitely use
copies of that block.

\- I hate the closeness that I need to be in order to harvest and plant
blocks. I'd love to be able to build something 20 blocks or so away from me
rather than have to be close by blocks.

\- I hate how Minecraft didn't explain anything in-game. I shouldn't have to
rely on an external source to understand a game. Call me stupid but I think
this is terrible user experience and is just taking us back to the days of
games that required strategy guides or online faqs to beat.

~~~
Impossible
"- I hate how Minecraft didn't explain anything in-game. I shouldn't have to
rely on an external source to understand a game. Call me stupid but I think
this is terrible user experience and is just taking us back to the days of
games that required strategy guides or online faqs to beat."

The XBLA version of Minecraft has an in game guide, and many people prefer
that version because of it. I think there is an assumption that on the PC and
mobile versions of Minecraft players will always have easy access to a
browser, but that there would be too much friction to look up info in a
browser on a console (requiring you to quit the game or look it up on an
external device).

------
robbles
Nice work on building this!

It's probably mentioning that the open-source and awesome
<http://voxeljs.com/> has more of the base features of Minecraft than this,
and _much_ better performance too. If you're planning on building a Minecraft
clone, don't reinvent the wheel!

~~~
haeric
Voxel.js is great! But it didn't exist when I started, (so it wasn't really
re-inventing the wheel at that time) and it lacks some of the things which I
have spent the most time tuning and getting right, like lighting and ambient
occlusion. The lack of these features is also part of why voxeljs has better
performance at the moment.

I contemplated changing to voxeljs when it came out, but Skycraft has some
properties that might not fit properly into a generic voxel engine.. the
islands, for instance, allow for some unique optimizations. And the small,
one-color blocks allow for other optimization again. So it wouldn't be easy to
make Skycraft work with voxeljs, or use the optimizations of Skycraft in
voxel.js.

Thanks for the "Nice work" though! :)

------
hkmurakami
I'm on a 30 inch monitor (and whatever the standard resolution is) and when
the game was loading in full screen, the explanation text went way into the
white clouds and it became very difficult to read.

An edge case, but wanted you to be aware of it.

(Firefox 21.0 + Ubuntu fwiw)

~~~
DigitalSea
29 inch monitor here on Google Chrome (latest) in Windows 7 and no problems
here. Looks great having all of that extra screen space with that background.

~~~
hkmurakami
Thought I'd share a SS.

I used Firefox's full screen mode since WebGL's fullsceen mode would exit to
normal mode when taking a SS.

<http://i.imgur.com/UpNjiBJ.png>

you can see how the last 2-3 lines are low contrast and hard to see

~~~
haeric
Thanks for taking a screenshot; I'm only on a 1680x1050 22", so I really have
no good way of testing large resolutions! :) What's your resolution? Is it any
better now, care to take a new screenshot? (Proxy debugging/designing through
HN ftw)

~~~
lgieron
You can create a virtual machine with arbitrarily large resolutions (VMWare
supports it) and test there - The vm's screen will be rendered into a window
with scroll bars.

------
recursive
This is a very minor point, but it's difficult for me to move around in a
first person environment without an inverted mouse.

~~~
stephengillie
I agree, and I would like to be able to bind EDSF to direction keys when
possible.

But it IS just a tech demo. Changeable settings I would expect by mid-beta at
least, but this is probably late alpha.

~~~
RobotCaleb
I have long fought the battle by spouting the many advantages of ESDF, but
WASD is just too ingrained in people's heads.

~~~
stephengillie
I'm not sure of many advantages, other than having an extra button or 2
available for the pinky finger. Otherwise it's basically just a matter of
shifting your keyboard about an inch right or left.

I started as a WSAD user in 1999, but I turned EDSF in 2004. (And I'll argue
the letters should be arranged in "up-down-left-right" pattern, not "up-left-
down-right" :p )

~~~
RobotCaleb
More keys available on the left side. Easy to find by feel given the tick on
the F, not to mention (but I will) that it's the natural location for your
fingers to return to.

I'm more about the speed of things. I played a ton of twitchy 1v1 UT2k4 and
had all weapons that would see real use mapped to a key right around my left
hand. Also, jump on right click. Jumping was crucial to movement and the throw
time for the spacebar had an (to me) noticeable effect.

------
luisbebop
Nice work. I really enjoyed the description about your infrastructure:
[http://haeric.github.io/2013/05/26/under-the-hood-of-
skycraf...](http://haeric.github.io/2013/05/26/under-the-hood-of-skycraft/)

------
ritonlajoie
Please, WebGL demo creators, support additional key bindings. On an azerty
keyboard it's unplayable.

~~~
haeric
Sorry about that, key mapping is coming soon!

------
geuis
Regular minecraft player here. Your blocks are way too small.

~~~
Houshalter
You can change the cursor size with the number keys. Try it.

------
uvdiv
Chrome users need their settings to "allow sites to disable mouse cursor".
Just an observation: this wasn't obvious to me.

------
RobotCaleb
Please, if you're going to present a demo, take time to add a toggle for
look_y * invert where invert is 1 or -1. :(

~~~
xaritas
I think we y-inverters are a dying breed, brother.

~~~
taternuts
I think it's from the days where flight-sims ruled

~~~
xaritas
No doubt about it. I think Elite was the first first-person, 3D game that I
played. It pretty much wired my brain to y-invert, with lots of reinforcement
from Flight Simulator II and Starglider... carrying it over to Doom and Duke
seemed most natural.

While we're on the topic, Google Maps has mousewheel zoom backwards, too, and
now it has become convention. Jerks.

------
KingdomSprite
I think this game has some real potential, but in its current state I don't
think it's worth backing. I think that the most deciding factor for me at
least will be efficiency. I am waiting for the day that someone creates a
voxel game with near infinitie sized worlds that has a super efficient way of
generating "chunks" (they don't even need to use the concept of chunks) that
makes the game run really fast. To me, that's the largest downside to
Minecraft and something that could really be improved upon.

~~~
haeric
World generation is definitely one of the most time-consuming bits, and
Skycraft is nowhere near where I want it to be at this point. It'll get much
better, and I'll keep experimenting with new ways to store the blocks instead
of as pure voxels. But I think the chunks will be there in some form or
another, as it's a very natural way to not have to send ALL the vertices of
the world to the GPU each time you build a new block :)

------
jlgreco
There is something very wrong with the camera/movement for me. The camera
seems to be "tilted" to the side, and perhaps offcenter from the movement?
Like if I had eyeballs coming out of my right bicep instead of my head. Mining
also seems to happen somewhere to the right of the center of my screen, not
from the middle.

Screenshot showing the tilt: <http://i.imgur.com/tW2h9Dr.png> (I un-
fullscreened for the screenshot. )

------
shocks
Hit "Play Demo" and it went fullscreen with no indication of loading. Nothing
appears to happen even if you wait. What is going on?

Firefox Nightly 24.0a1 (2013-06-02)

~~~
zachlatta
It took quite a while on my machine to load. The green rotating block on the
right shows the loading progress. If you don't see that, chances are that
WebGL is disabled or not supported.

~~~
hkmurakami
I thought that green block filling up was a really nice playful touch. Letting
us get closer to the game during a loading screen with an in game element gave
me some positive anticipation for when the load would finish.

~~~
dmd
The green block filling up is all I ever got. It consistently stalls at about
50% for me.

~~~
haeric
:(

What browser/OS?

~~~
dmd
Chrome 27.0.1453.93 on OS X 10.8.3.

~~~
haeric
That's quite weird. It would be really awesome if you could open your
developer console when this happens (cmd + alt + j) and then copy what it says
and send it to bugs@skycraft.io :)

------
kristianp
One question, is this a bug? When I started playing, the blocks I created were
large, and I couldn't mine, but after hitting esc, then resuming again, the
blocks I created were 16th the original size and I could mine small blocks.

The brown block in the foreground here is the first size I could create:
<http://imgur.com/R3ywZ6T>

~~~
Houshalter
The number keys seem to change the size of the blocks.

------
epidemian
Pretty nice. I found a spherical cave with a 3x3x3 cube of some light-blue
material suspended in the middle. Have i found diamonds? =D

The light-blue blocks emit light when they are in block form. The illumination
looks quite good and seems very reminiscent of the original Minecraft
illumination technique, where light "leaks" through holes. Props to that!

~~~
haeric
You found the "Gravity crystal"... which currently does very little except
glow, but that will change! ;) Thanks for the kind words! I tested several
different illumination techniques, including having shadows depend more on the
direction of the sun, but the "Minecraft-radiance" lighting just looked the
best in this kind of world, in my opinion :)

------
pdknsk
How did you submit this?

<http://news.ycombinator.com/item?id=5738984>

~~~
hkmurakami
HN allows duplicate submissions after some period of time has passed.

Maybe the current threshold is 2 weeks.

------
epinlb
I looks pretty cool and just that fact that it is 6 dollars was enough for me
to buy it and see where it will end up. But I always buy games that are that
price as long as it doesn't look totally broken and is kind of cool.

~~~
haeric
Thank you! Seeing people buy it this early is a great motivation for me, and
is the reason I can quit my summer internship this summer to work on Skycraft
instead :)

------
vxxzy
Strange... My HAVP proxy picked up some of the JS as an exploit??

<http://skycraft.io/skycraft.js> HTML.Exploit.Heap-2

~~~
haeric
Hum.. it seems your antivirus might react to Skycraft using a lot of memory,
which it seems to associate with a certain exploit. What browser are you
using?

------
Houshalter
I like the small block resolution and the ability to place/break both large
and small volumes. That is very cool.

------
Tiktaalik
Really great presentation during the loading sequence.

------
zobzu
doesn't support international keyboard mappings properly :) else.. its pretty
cool!

~~~
haeric
Coming very soon! :)

------
bluepill
very nice, pretty expensive for a work in progress project though

------
510
[Insert pointless negative comment]

