JavaScript Comes To Minecraft
mikejuk writes "JavaScript is the language of the client and it is becoming the language of the server. Now it seems set to be the language of Minecraft. ScriptCraft is a Minecraft mod that can be added to the game to allow the player to use JavaScript commands. Walter Higgins ported the Rhino JVM implementation of JavaScript in a few spare weeks over Xmas. Some additional JavaScript classes allow the construction of blocks making it possible to automate construction. It also provides a 'turtle like' drone class that makes it easier to move in 3D. It makes use of a fluent API to create a domain specific language for movement. As its creator says: 'Ultimately I think the ScriptCraft mod could be used to take building in Minecraft to a whole new level. With a full-blown language at the Player's disposal, it should be possible to create not just castles and forts but entire road networks and cities.' Most importantly of all, it not only pushes the boundary of Minecraft, it also provides a way to get kids who are already hooked on Minecraft to start learning JavaScript."
RTFS. Just because Java and JavaScript appear in the same paragraph doesn't mean someone is equating the two. This is a JavaScript engine coded in Java, hooked up to Minecraft.
I saw the headline and half expected that someone had in fact implemented a Javascript interpreter with MineCraft.
Don't blame me, I voted for Baltar.
You can already do all this in Java. What is the benefit of exposing players to the wonder of javascript via minecraft vs exposing them to the wonders of java via minecraft? Either one is a POS.
I wish someone would do a C rewrite. People make excuses about the fully manipulable world and such but the reality is that there is nothing going on in minecraft that would make it tax a Pentium 3 without no gpu offloading had it been authored well in a decent language.
Don't get me wrong it's a great game and fun to play. The implementation just leaves a lot to be desired. Buggy as hell too but you can't blame that on the language!
Most importantly of all, it not only pushes the boundary of Minecraft it also provides a way to get kids who are already hooked on Minecraft to start learning JavaScript
No, most importantly for my kid, it has the potential to get a highly JS-capable dad interested in Minecraft (a diversion he has hitherto managed to avoid).
However, whether this be a good thing or a bad one is a matter that's entirely up for debate. :)
Il n'y a pas de Planet B.
RTFS. Just because Java and JavaScript appear in the same paragraph doesn't mean someone is equating the two. This is a JavaScript engine coded in Java, hooked up to Minecraft.
Couldn't have said it better myself. It boggles the mind how many don't realize languages can target different run time instances and that *gasp* compilers sometimes are just layered language implementations. One of my college professors wrote a prolog compiler entirely in Java that was a very good compiler actually. Hell if one were so inclined, they could write a C# application that targets a JVM instead of the .NET framework.
Why better than Python?
I would imagine this will primarily serve to ostracize the xbox port even further away from mainstream minecrafting.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
Does python still use whitespace as part of control flow structures? Ugh. I don't want to be the guy who posts the equivalent of "mysql doesn't have transactions" over and over in 2013, but I can't be bothered to keep up with a language I don't use, either.
It is however a fact that Python at least USED TO BE in a really bad neighborhood, sandwiched in between COBOL and FORTRAN in the "compiler really cares a lot about whitespace" ghetto, even if they've fixed it since then. I'd rather write a million parenthesis in LISP.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
I find it amusing that this is news but what about LuaForge? It allows you to do Minecraft stuff in Lua, a language that can't be easier to learn, and is also pretty fast out of the box.
Haven't fixed it, won't fix it.
>>> from __future__ import braces
File "", line 1
SyntaxError: not a chance
Do you even lift?
These aren't the 'roids you're looking for.
"JavaScript is the language of the client and it is becoming the language of the server. Now it seems set to be the language of Minecraft."
translated : "Javascript is a language that is often used in client side programs, and increasingly is used in server side applications. And soon it may also be usable within minecraft." Hell the second sentence makes it pretty clear that the first sentence isn't even talking about minecraft.
If that's the only thing you can find wrong with Python, then I think that speaks much more good about the language than bad. When I first started playing with Python, I got tripped up a few times about inconsistent use of tabs vs spaces, but I have vim configured to take care of that for me now. Even if I want something fast or low-level, I will typically compile a shared object file for some C code, and then wrap it up in Python with Python's ctypes API. This gives me a good trade-off of the performance and predictability of compiled C and the ease-of-use of Python for more trivial code.
Apparently wizard is not a legitimate career path, so I chose programmer instead.
I feel sorry for the Minecraft developers. Have fun with a language that doesn't have a class object system like every other modern mature computer language which makes working in a team environment so much easier.
While we're at it, why don't we introduce PERL to minecraft?
HTML was upgraded to HTML5 and CSS was upgraded to CSS3. Why can't JavaScript be upgraded so it is more in line with modern languages? If that could happen then Google could give up on developing their new DART language which is designed to replace JavaScript.
Not sure how this is a groundbreaking achievement. ComputerCraft already provides a LUA interpreter and turtles, and has a lot more documentation. There's also RedPower's Control module, that gives you an emulated 6502-based 8 bit computer. A FORTH boot disk can be crafted in-game, or you can edit your save files to bring in either an BASIC boot disk or your own assembler code. (Previous /.coverage of the 6502 emulator blocks)
#include <signature.h>
That would be CraftScript, which yes, has been around for quite a while. It also uses Rhino.