Category Archives: minecraft

I’ve spent a good part of this quarter in my 8th grade classes trying out some ways to code in Minecraft, as you know if you’ve been following this blog. See below for various attempts and approaches. I’ve looked at command blocks, LearntoMod, ComputerCraft (using Lua), ScriptCraft (using Javascript), Youth Digital’s Modding in Minecraft (using Java(!))…. They’ve all got features to recommend them, and I’m sure any of them would be awesome in the right situation. I’m not making any blanket thumbs-ups or thumbs-downs.

But here’s what worked best in my class —- something I got from the book Adventures in Minecraft by Martin O’Hanlon and David Whale. It’s an amalgam of Python, Minecraft, the Bukkit server, and Raspberry Pi. This odd little mutt suited my purposes really well. I call it Mython.

Technical details — you can get a folder with everything you need here, which includes the Bukkit server and the Minecraft/Python API. You’ll need to run Python 2.x (so far), Minecraft 1.6.4, and the current version of Bukkit. Others have ported it to other servers (Forge and CanaryMod), Python 3.x, and more recent versions of Minecraft. I just wanted something that would run with minimal hacking on my part, as time was running out in the quarter.

I had to do some monkeying around with accounts and permissions on my lab computers, and the results required more logins than I was happy with, but that can be fixed for next year. The important thing is that I was able to achieve my goal of introducing a text-based programming environment that was accessible to my 8th graders and did some fun and cool stuff in Minecraft. Mission accomplished!

Students were able to build magic bridges, instant houses, and “draw” in luscious Minecraft 3D with turtles! And if you know me, you know I’m a big turtle fan.

Not only that, but the authors were incredibly helpful in answering questions that I posted on their forum. So yeah, you can say I’m a fan. Can’t wait to fine tune it for next year!

I asked the students how they liked it compared to the other approaches, and someone said, “It’s about 4000 times better!” Good enough for me!

I spent some block periods (90 minutes) with my 8th graders, introducing Lua in ComputerCraft. I learned a lot my first period, as in what not to do: don’t let the students roam free and then expect them to bear down and do coding in the computer in Lua. Lesson learned.

The next class I made a flat world, set up each student with a computer next to a sign with his/her name, and used a disallow block to limit the building. Voila. I really should have anticipated that issue but didn’t. So students got into their computers, I showed them the intricacies of the command line, the terminal, the lua editor …. all those DOS-like things that they have never seen in their lives. Yes, the editor is clunky and colorless, and the pixellation of the characters is Minecrafty. Once we got through that we did some HelloWorld, some HelloUser, and even a GuessTheNumber game. So we learned variables, IO, random math, and if statements. Nice!

However, one of my students asked me what it all had to do with Minecraft. Very fair question. Answer: nothing really, but we’re just starting and tomorrow we’ll start with turtles. They know turtles because we went to Turtle Island, a wonderful world/mod made my Michael Harvey.

But that student’s question really started me thinking (btw, thanks, Ben!). We could do almost all of that in Small Basic, which has a much better editor, Intellisense, and turtles (though those turtles are not 3D). So I’ve also had some students dabble in LearntoMod, and that learning takes place in a familiar Minecraft world, and you learn to mod stuff that you use all the time in Minecraft: weapons, tools, zombies, creepers, etc.

Hmm. So Monday I’m going to try a little LearntoMod with those classes, and we’ll see what happens. I have my suspicions, but I’ve been wrong before.

I’ve spent a good part of my spring break investigating coding in Minecraft. Actually, I’ve been looking at all kinds of avenues to do this over the past several months. Why? Because Minecraft is an amazingly awesome piece of software, kids love it, and it can be a fantastic gateway to learning coding.

There are so many approaches, however. I’m not the only one who noticed the above, and there are a raft of avenues out there touting their awesomeness for teaching coding through Minecraft. I’ve looked at many of them, and there is no One Way to do it. So much depends on the age and experience of the kids you’re teaching, what you feel comfortable with, etc. I’m doing it in my 8th grade classes, as a bridge between GameMaker and Small Basic. So kind of a first introduction to text-based programming. Or as I call it: Taking the Training Wheels Off.

After looking at modding in Java, writing plugins in Java, some Snap and Javascript, I think I’ve found what’s going to work for me in my situation. The Computercraft mod uses the Lua scripting language, and Lua is just simple enough that I think it’s workable for an intro to text-based coding. Shameless plug — I’ll be presenting on Teaching Programming in the Middle School Using Minecraft at the CSTA conference in Dallas this July.

There’s a fair bit on his youth, family issues, and the first computer he learned to program, the Commodore 128 (yes, I had one. Loved that computer!). You can read this book for so many angles: a follow-your-dreams inspirational story, a history of the videogaming industry, a plea for indie games, or just a narrative of one of the most surprising success stories of the 21st century. And there’s a whole chapter on MinecraftEdu, the version I use in my Minecraft Club.

It’s such an unlikely game to sell millions of copies. But as I said in another post here, I have never seen anything like the response of my middle school students to anything that happened in my computer lab. When I asked for beta testers over lunch one day, I had a dozen students actually run into my lab to get seats and start. Why?

I think it’s the combination of imagination, strategy, open-endedness (copyrighted word), collaborative play, and funky old-school graphics. As teachers, we would be out of our minds NOT to find some ways to use this in our classes! The Google group of MinecraftEdu teachers is a great place to start.

Here at my school, we have clubs the last period on Friday. We change by trimesters, and this trimester I officially offered a Minecraft Club. We’re using MinecraftEdu. I stumbled and fumbled and tried to do a Linux install and was rescued by “Magic Mike” Schmelder, my IT head, who installed it on a Windows server.

I will now say that in all my years of teaching (lots), I have NEVER seen kids as excited about anything as Minecraft. Seriously. They literally run into the room, log in, and then start running in Tutorial World (the world we’re currently using), exploring everything, shouting to each other, talking to the screen, even jumping across the room to show a fellow gamer something. Now we did have to have a little chat beforehand about setting some guidelines, and they agreed that we would have two: no inappropriate in-game chat, and no griefing. Once we settled on that, I let them go.

There are 15 in the club, mostly hardcore MC fanatics, but also several noobs (I’m one of them). The vets are generally being generous with their knowledge, even though it takes precious time away from what they are doing. That’s a good sign.

And since there were quite a few more who wanted to be in the club but didn’t make it, I have offered to do an after-school club for them. Amazing response! I’ve had one student ask if he could build his house up during study hall (uhhh, no). I am very interested in curricular applications, since it seems a shame to waste all this enthusiasm!

And I am really a terrible player, so far. But that’s OK. I’m learning.