Game Design: Minecraft Java
Take your passion for Minecraft to the next level by coding epic data packs that can be uploaded to the Recess SMP!
Hosted by 2 expert guides
What you'll do:
- Work 1 on 1 with an expert mentor
- Brainstorm a project idea and create a plan of action
- Upload your custom data packs to the Recess SMP
Concepts Encountered:
- Coding
- Project Management
- 3D Modeling (Blockbench)
The tools you'll use
Data Packs
- Data packs are custom content packages that modify game mechanics, recipes, and features without requiring mods. They work by altering the in-game data, such as advancements, loot tables, or structures, using JSON and functions.
Resource Packs
- Resource packs change the visual and audio elements of the game, like textures, sounds, and fonts. They focus on aesthetics while data packs handle mechanics and functionality, often complementing each other for a cohesive custom experience.
Before your first session
Follow this pre-session setup guide. If you have questions, please direct message your guide before your first session by sending them a message in Recess chat.
Pick a time
This course requires an intro call before you can register.
Meet the guides
Expert guides leading this course
Course updates
Updates from guides of this course
Mar 6 @ 7:17 PM
Stuck in an infinite Lore Loop...
Nice work today *****.
You continued working on your datapack ***** *****.
You looked at the lore of the Tome item. (The lore is just the name of the area where text is stored onto an item). Your idea is that the selected rune will be visible w...

Dec 6 @ 4:45 PM
Respawn Time!
Awesome work today ****!
You continued working on your ********** project, focusing specifically on getting the respawn plates working. Now, when you step on an iron pressure plate (that has power level **) you get instantly teleported back to your last checkpoint. You found o...

Feb 2 @ 9:18 PM
Today ***** and I focused on a lot of small improvements:
1) We made the miniboss room generate at the end of the level and programmed its doors to open
2) We fixed up the throwing knife/dart and...
3) ...also added a new "replaceable" tag that allows throwables to be mounted wi...

Jan 17 @ 8:10 PM
Hoverboring Problems
Nice work today *****!
Despite some technical issues with getting Minecraft launching, you were still able to do a little bit on the hoverboard datapack.
Once we got a Minecraft working, you looked at fixing a bug leftover from last week. The culprit? swapped

Dec 13 @ 4:38 PM
Respawning With Your Wand!
Awesome work today ****!
You focused on getting the respawn wand fully functional. Your idea was to have an item to teleport to your last check point, that way you don't have to worry about players getting stuck, or losing too much time walking back.
First, you built the custom...
Feb 2 @ 7:42 PM
Today *** and I reviewed how the event went and talked about some plans for improving the datapack for the second round later on!
We identified and fixed a bug with necromance/rapid, and we also identified another bug which prevents two infusions from being put on the same item....
Mar 7 @ 4:45 PM
Charging up Ideas for the Charger
Awesome work today ****!
Today you got started on the charger, which is going to be the machine you use to charge both battery cells and tools.
You created a recipe, which involves an energy cell. This recipe gives us a spawn egg that you rema...
Nov 3 @ 6:00 PM
Efficiency and Overlays
Today ****** and I hotfixed an issue that was causing lag spikes on the Recess server from our pack. We also talked about best practices when it comes to checking the data of entities.
Then, we went through how to create overlays to make datapacks work in multiple versions and u...

Mar 13 @ 3:10 PM
H********* A***** w**** t*** H****!
G**** w**** t**** N********!
Y*** w**** o* a**** t*** f**** s***** a***** f*** t*** b*** h**** t****: T** S******** H****.
T*** a***** m***** t** b*** o* a s******** h**** a** m**** h** h***** t* h***! I* w*** p*** w*** o**** a***** t*** h**...

Apr 18 @ 5:49 PM
***********************
***** **** ***** ****!
*** *** ******** ** *** **** ***** ****, * ********** *** *** ***** *** ** ********* *** ** ********* *** ** ********* *** ** ***!
*** **** **** ********** *** *** ********* ***** *** *** **** ** *** ********** ** *** *** ******...

Dec 6 @ 6:12 PM
Unbreaking after Another Update
Nice work today *****!
We decided it was best to update to the latest version of Minecraft today. This meant that the resourcepack broke and your amazing models got unlinked from the items in game. (Below is the result of that...)
But you worked on relinking them, and working ...

Nov 3 @ 7:40 PM
Moving Pistons
One of the key problems with the InfBlocks enchantment is the possibility of duplicating blocks. We did a bunch of code cracking today and figured out how to figure out if a piston is moving one of our infinite blocks so that we can move our marker along with it to catch the item...

Jan 12 @ 9:08 PM
Level Complete!
(Well, technically speaking)
As of today, you can generate a totally random jungle level, it will place you at the start, and you will have to navigate to the end. At the end, the level will end and bring you to the item reward selection.
Very proud of our work and looking forw...

Oct 3 @ 4:17 PM
Baby Husk Army and Ancient Statues Planning
It was fun working with you today ********!
Today you continued work on the King Husk's pyramid. At the bottom of the parkour pit, you added a trial spawner that will definitely capture players who miss a jump by surprise! You decided that the perfect mob is a baby husk who wi...

Jan 10 @ 8:12 PM
Custom Hoverboard Stats
Awesome work today *****!
You started out by taking a look at finally being able to craft multiple skins for your hoverboard. Now, you can choose which hoverboard design you craft, currently either the main hoverboard or the Batboardโข๏ธ. What is cool about the way you set thing...

Feb 23 @ 7:40 PM
With our new mana system working, *** and I turned our eyes to making the enchantments shiny again. Made some good progress thinking about how to improve infblocks and patched a couple of exploits while doing that.
While I'm gone for the next two weeks, *** should work on:
- Add...

Nov 24 @ 7:42 PM
Wrapping Up Infusions
Today *** and I did a full player walkthrough of the datapack and identified what (very few) pain points remain to fix. They are:
- Polishing the book
- Making sure everyone in the server gets a free book (using tags)
- Adding a crafting recipe for the basic book
- Adding some vi...

Feb 14 @ 4:50 PM
Battery Recipes and Deciphering Documentation
Awesome work today ****!
You first installed a couple libraries that we will be using so that your datapack will be useable with others, so that players can combine and make a great overall pack!
You then started implementing the r...
Apr 13 @ 6:40 PM
What a hugely productive day today! We're having a lot of fun implementing a bunch of new infusions for our players in our upcoming event. We've now added a rooting infusion, done a bunch of work on the School of Chronurgy (Time magic!) as well as some good progress on the School...

Mar 30 @ 6:46 PM
Today *** and I investigated upgrading to 1.21.5, but decided to stay on 1.21.4 for a little bit after seeing the massive changes that were implemented.
Once we settled into the version we're using, we implemented a robust system for custom potions! This allows not only for real...

Nov 14 @ 6:59 PM
Redstone Pickaxe and Sword
It was great to meet you today *****!
I really enjoyed seeing your custom models for the redstone sword and pickaxe. You laid out a plan for importing your models into the game, and also thought about how the player can obtain them.
Then, you worked on getting them in game so t...

Sep 19 @ 4:22 PM
Desert Temple Spawners
Great spawner troubleshooting today, ********!
You decided that inside the King Husk's maze, there will be spawners that add difficulty and a fun challenge to the parkour section. You worked on getting spawners working, but ran into some issues. We will continue figuring and ma...
Oct 6 @ 8:07 PM
Custom Structure Madness!
Pivoting away from designing game mechanics for a week, we talked about how nice it would be to procedurally generate our levels. This is a brand new venture for both of us, so we spent most of the lesson today reading documentation and playing around with spawning in the vanilla...

Feb 13 @ 7:12 PM
Cycling ***** Attacks!
Awesome work today *****!
After trying again to resolve the microphone issue you are having, you continued to work on the ***** for your ***** datapack.
Using relatively complex data manipulation, you now can read the data stored in the *****, including t...

Oct 20 @ 6:35 PM
Infinite Blocks!
Today *** and I abandoned trying to bootstrap our altars into a datatype that could support multiple of the same item, as it was eating up too much of our time and wasn't crucial to the pack. Instead, we laid out plans for the next set of enchantments and began work on the "Infin...

Feb 7 @ 8:18 PM
********** go brrrrrrrrrrr!
Great work today *****!
You focused on implementing 2 new hoverboards today, the ********** (yes "*****" is like your brand name for hoverboards ๐) and the **********.
The ********** is all about max speed! It can reach almost unlimited speed, but ...

Jan 17 @ 4:46 PM
Laying the Groundwork for Copper Tools
Nice work today ****!
Today you started your next project: Copper Tools.
The goal is to add a group of tools that will be crafted with batteries, and add some neat functionality not found in vanilla Minecraft.
Because you are planning on adding these new tools, you worked on sett...

Apr 13 @ 8:16 PM
sshh... there might be an announcement coming very soon!
Today, ***** and I made a lot of progress adding in post-fight loot, procedurally generated foliage around the map, removed a bunch of debug lines, and spiced up the miniboss fight some more.
Very excited for what's to co...

Feb 13 @ 3:23 PM
Homing Bones!
Amazing work today ********!
You focused on working on the next special attack for the boss husk: homing bones!
After you defeat the babies that the boss spawns in, they drop a bone. This bone will lay dormant until the homing bones attack goes off! This attack ...

Jan 3 @ 4:40 PM
Scheduling Some Fine Tuning!
Awesome work today ****!
You focused today on finalizing the disable checkpoints ****!
This **** now can be used to prevent the iron pressure plates from activating if the player steps on them.
This involved using a temporary helper tag, as well as the /schedule command. The /s...

Mar 6 @ 3:14 PM
Stomping out Special Attacks
Great work today ********!
You continued working on your datapack, looking at special attacks for the Boss Husk.
You worked on the big stomp attack, which now deals 4 hearts of damage when landing on the player.
You also got to take a look at the /p...

Mar 16 @ 8:09 PM
Today ***** and I built a bunch! We added procedurally generated decor to the maze, squashed some more bugs, added a new enemy, and also made a charm potion that can be used to temporarily turn mobs to your side!
All in all a great day, and looking forward to continuing this pro...

Feb 21 @ 4:49 PM
**************************************************
******************** work today *****!
You worked on implementing the API for storing energy into your energy cells (after all, how useful would they be if you couldn't!)
This took a lot of effort in tracking down a loading bug ...

Jan 26 @ 7:37 PM
Preparing for the Event!
Today was an exciting day as *** and I worked to design the logistics for the upcoming infusions event! We spent a lot of today not bugfixing, but instead working together on the multiplayer server to get a good feel of game design- how fast should we shrink the worldborder? How ...

Nov 17 @ 7:33 PM
Database Management!
Today was a fun day! *** was super helpful getting all the ghost blocks set up over the last week. Today we structured a database together, tying Players' UUIDs to the XYZ coordinates of their ghost altar, so that every player can only have 1.
When a player places a new ghost al...

Nov 3 @ 9:01 PM
Generating Rubble
After updating the pack to 1.21.3, we came up with a clever solution to our open-ending problem, where the jigsaw structure hit its max depth without generating a dead-end.
We solve this by putting command blocks inside our structures that see if they're open to air or not, and,...
