Combining ScriptCraft and PrintCraft: Write code to build Minecraft structures and 3D Print them

3DPrint2

I have bundled ScriptCraft and PrintCraft so that you can write JavaScript code to create objects in Minecraft and then generate 3D printable models with them.

https://www.dropbox.com/s/1adh02ri5w2bvff/printcraft_scriptcraft_1_6_4.zip?dl=0

The PrintCraft server is one created by Paul Harter of http://www.printcraft.org/, version 1.5.0 for CB 1.6.4. It has Paul’s default world with 36 building plots arranged in a clearing in the jungle.

The ScriptCraft plugin is created by Walter Higgins, available at http://scriptcraftjs.org/, version dated 2014-08-23.

How to install:

Just download the zip file from this link and unzip it: https://www.dropbox.com/s/1adh02ri5w2bvff/printcraft_scriptcraft_1_6_4.zip?dl=0

It is a Minecraft server that you run.

How to use:

  • Run the server with Run_windows.bat or the corresponding Linux/Mac files.
  • Make sure you are an admin: in the server window, type op <your_username>
  • In Minecraft, connect to the server by selecting Multiplayer – Direct connect and enter localhost
  • Go to one of the plots and press the button to Claim it.
  • Create an object with ScriptCraft code. For example, try /js stonehouse(), which was written by a member of CoderDojo Athenry.
  • Press the Print button to create a printable version of the object. You’ll get web link where you can download your model.

Notes:

  • Glass, doors, fences and other objects that are not basic blocks don’t render; you just get voids.
  • Many 3D printers are single-colour, so bear that in mind.
  • If you want to reset your world, copy the one in “BACKUP-world”.

The picture below shows the house created with /js stonehouse(). Follow this link to see its PrintCraft 3D model.

2014-11-29_21.54.40

Python Games – Week 7: Collision Detection

Today the Python games group explored one of the most important things used in graphical computer games, collision detection. We also investigated the use of lists and for loops to manipulate sprites in our games. Our demo code is available here.

We are still working on our ocean game and we will add audio next week.

These are my slides from today python session_7

Week 6 – Scratch Beginners – Guessing Game

Hi everyone,

Last Saturday we did a slightly different game to usual., There was no movement, no sensing when something happened. It was a Maths Game, a guessing game where the computer picks a random number and we had to guess the number.

GuessNumbers

We had to first make sure that a random number was picked using an Operator. Previously we have used a Variable to store a Score or Lives, but this time it was storing the random number and our guesses. Leaving them on screen as we were testing allowed us to understand more about the variable and what it does…it also made the testing a little easier.

Depending how any guesses we were given we repeated our code that number of times. As well as having to make decisions, i.e If_then, we also had to do a comparison before making the decision, to determine whether the guess was correct, too low or too high.

5guesess

I hope you all enjoyed the difference this week and we are going try something else different next week. We  (You)  are going to create a Animated Christmas Scene. Get your Thinking Hats On!

Here are this weeks notes in PDF: CDA-S4-Week_06-GuessNumbers.pdf

 

ModderDojo Athenry: Planning for MineVention

mv

The Minecraft fans’ convention, MineVention, will take place on Sunday 7 December in the Radisson Blu Hotel, Galway. Tickets are completely sold out, unfortunately.

The organisers of the convention invited CodderDojo Athenry to participate, particularly as we do Minecraft Modding. We will have a booth beside the 3D printer.

Here is our plan for what we will do at our booth:

  • We will demonstrate Java mods written by our group
  • We will demonstrate structures created by people in our group using ScriptCraft
  • The 3D printer will print out a structure that we created in ScriptCraft, and we will show the structure itself
  • We will also show off any other cool Minecraft-related things our modders have done, e.g. their own YouTube videos, their own command blocks, and any interesting structures they have
  • We will also have information and demos to highlight the range of different things done in CoderDojo Athenry apart from Minecraft modding.

Any members of CoderDojo Athenry who have tickets are welcome to join us for some of the time.

Python Games – Weeks 5-6: Getting started with Pygame

Last week we relocated to NUIG for a Massive Open Dojo Session. There was lots going on to enjoy and it was great to see such a large turn out. Well done to our own Michael Madden and to Karl Sweeney from CoderDojo Galway City for organizing it all. Thanks also to Martha for the t-shirts.

The ninjas from the Python Games group who attended didn’t do any new coding but they enjoyed personalizing the Bunnies And Badgers game with their own images. We were set a challenge to create a game to highlight the environmental issues facing the oceans. We started working on that today and we will continue with that for a few weeks. Ocean Cleaner

Before we started working on that today we had a look at some basic Python concepts contained in this demo program. Next week we will look at using lists and for loops in Pygame and at collision detection.

Here are my slides from today python session_6

Week 5 – Scratch Beginners – Paddle & Ball

Hello everyone

We had a great crowd again on Saturday and had some new registrations as well. Hope you enjoyed your first week at CoderDojo Athenry.

This week I wanted you to design how your game looked. I kept my game very simple, just a paddle and a ball but you all had great ideas.

paddle

yourgame

I always mention that there is no right way or wrong way to do things. This week we used Broadcasting to send a message when something happened rather than using some of our senseing code to figure out when it happens.

BROADCAST

Here are last weeks notes in PDF CDA-S4-Week_05_Paddle_Ball.pdf

See you next week

Massive Open Dojo Session MODS

Hi there,

A huge thank you to all who turned up in NUI, Galway today. There was a great turn out and it was a very successful event. CoderDojo Athenry was very well represented and we especially want to thank parents for their commitment, we know its hard to keep everything going. A special thank you to our Core mentors who turned up today and really helped with the smooth running of the event.

Here are the “Cheat Sheets” from the Scratch session today in case any one would like them. Scratch_CheatSheet.pdf

Week 4 – Scratch Beginners – Improved Ghostcatcher

Hi again everyone,

This week we improved on our Ghostcatcher game from last week.

We introduced two new concepts which we haven’t used before, animation and broadcasting.

Using a simple technique of changing between costumes and having a waiting time we can animate our Sprites. In our case, we animated the Ghosts so they were blinking or sticking out their tongue. You could of course use this technique to have a sprite look like they are walking etc.

animation

We also then had our first introduction to Broadcasting, which is a way of exchanging data/messages between our sprites.

We used Broadcasting to send a message from the Ghosts (that they have been eaten) to be received by the Pacman, who then will change costumes i.e. Open and close its mouth.

BROADCAST

Hope you all enjoyed the session and we will be using animation and broadcasting over the next couple of months.

Here are this weeks notes in PDF CDA-S4-Week_04-BetterGhostCatcher.pdf

Hope I see a lot of you next week in NUI, Galway, it should be a great day!!

Python Games – Week 4: Lists and For Loops

We learned about some new concepts today in the Python Games group – multi-line strings, lists, for loops, methods, elif statements and the dictionary data type.

We had a quick look at the Hangman Game from Invent Your Own Computer Games with Python (http://inventwithpython.com/chapter9.html). We covered Lists which are a way of storing a number of values in one variable and had some fun writing code snippets mainly based around X-Factor. We looked at some new ways of working with strings called multi-line strings.  We also learned about new types of functions called methods and a new type of loop called a for loop. At the end of the session we started to get to grips with Pygame. Our code snippets are available here and my slides from today are here python session_4

Forge Modding Tutorial #1 – Setting up your Development Environment

To prepare for MineVention, a handful of you will be making Java mods. This is the first of the posts showing you what to do.

You need to download the following:

The steps to install the Forge Java modding environment are below.

To install Eclipse:

  • Eclipse does not have an installer: you just unzip and run it.
  • Create a folder C:\Eclipse, copy your Eclipse zip file into it, and extract it
  • In the sub-folder, find Eclipse.exe: make a shortcut to it on your desktop
  • Start it up and make sure it works
  • We can write a first “Hello World” program: see below.

To install Forge: http://www.minecraftforge.net/wiki/Installation/Source

  • Extract the Forge .zip file to a new folder -> C:\Forge
  • Open a Command Prompt/CMD window

In that CMD window, navigate to C:\Forge. Use cd .. a few times to go up a level to C:, and cd Forge to go to the Forge folder.
Now run this command (followed by the second gradlew command, see below):
gradlew.bat setupDecompWorkspace –refresh-dependencies

Let the installer download all necessary files. This takes 20-30 minutes. Watch out for errors!

  • It will download MCP (Minecraft Coders Pack) automatically, as well as libraries
  • It will then download assets. These are non-code elements of Minecraft, e.g. language files, music files, record audio, sounds and more. These are now stored in a folder called “assets” under the “.minecraft” folder.
  • Finally, it will begin decompiling the Minecraft source code. When finished, you will have a new folder inside your “forge” folder called “mcp”.
  • Finally, create an Eclipse workspace for Forge with this command:
    gradlew.bat eclipse

Start up Eclipse and select the workspace that Forge created, in the Eclipse folder under Forge:

forgeworkspace

Note: if the workspace is empty, make sure that you ran the command gradlew eclipse and that you selected the correct folder.

Press the green Run icon: you should see messages in the Eclipse console window and Minecraft will launch and will initially have 3 mods.