Notes on Alan Becker's Ghiblicraft Projects  


Existing Features

My Changes

Existing Features

Everything in this chapter describes what is present in the last known public upload of the Ghiblicraft Spirited Away and Totoro world, as uploaded on the 29th August 2017.

Mobs (Villagers, etc.)

Villagers are used for most of the workers and guests that are seen in fixed locations around the bath house.

In the Ghibli texture packs, the villager profession and career determines the body appearance, and the head armor item determines the head. All of these can be found by standing near the one you're interested in and carefully examining the output of the command:

/entitydata @e[type=villager,c=1] {}

Frog man ("Is that human I smell?"):

/summon villager ~ ~2 ~ {Profession:4,Career:2,ArmorItems:[{},{},{},{id:"minecraft:brownmushroomblock",Count:1b,Damage:0s}]}

/summon villager ~ ~2 ~ {Profession:4,Career:2,ArmorItems:[{},{},{},{id:"minecraft:cooked_chicken",Count:1b,Damage:0s}]}

Player Heads (Skulls)

On the Bridge level of the bathhouse is a room depicting the No-Face banquet scene. The floor is littered with all manner of food items, including a large number of "player head" or "skull" items that are not in the standard Creative inventory. These items can only be acquired with a command (usually so long that it requires the use of a command block).

The process I use for getting access to more of these items is described on my Minecraft page, but the basic essential steps are:

Alan Becker head

player ID: b6310a91-919e-4f31-920b-42dbc15957a8

1.8 - 1.12 /give @p minecraft:skull 1 3 {SkullOwner:"alanbecker"}

/give @p minecraft:skull 1 3 {SkullOwner:{Id:95687883-93ba-37de-9568-788393ba87de,Properties:{textures:[{Value:"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvN2FlOGU0OWYzMzljYmNjZTI4M2I0NDQyNTU0NDEwOGE5NDdiNmQ1MjZkNmFhNjkyMTc4NGRlNGNiZTU2YzZhIn19fQ="}]}},display:{Lore:[""]}}

1.13-1.15 /give @p minecraft:player_head{SkullOwner:"alanbecker"}

/give @p minecraft:player_head{SkullOwner:{Id:95687883-93ba-37de-9568-788393ba87de,Properties:{textures:[{Value:"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvN2FlOGU0OWYzMzljYmNjZTI4M2I0NDQyNTU0NDEwOGE5NDdiNmQ1MjZkNmFhNjkyMTc4NGRlNGNiZTU2YzZhIn19fQ="}]}},display:{Lore:["{\"text\":\"\"}"]}}

1.16+ /give @p minecraft:player_head{SkullOwner:{Id:[I;-1788315517,-1816512546,-1788315517,-1816492066],Properties:{textures:[{Value:"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvN2FlOGU0OWYzMzljYmNjZTI4M2I0NDQyNTU0NDEwOGE5NDdiNmQ1MjZkNmFhNjkyMTc4NGRlNGNiZTU2YzZhIn19fQ="}]}},display:{Lore:["{\"text\":\"\"}"]}}



/give @p skull 1 3 {display:{Name:"Books"},SkullOwner:{Name:"raxo55"}}

Bowl with soup (miso)

1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Bowl with Soup"},SkullOwner:{Id:"dd3c2362-ab60-4175-bb37-4518d8c0c02c",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTM4MWUxZWIzZGUxNDZjNzgxYWE4YjM3NGQ3NDc0YjRhYTYzZmI4ZDAzNGZiODFjMTM1NTgxNDQzZmQ1OTYyIn19fQ="}]}}}

1.13 - 1.15 /give @p minecraft:player_head{display:{Name:"{\"text\":\"Bowl with Soup\"}"},SkullOwner:{Id:"dd3c2362-ab60-4175-bb37-4518d8c0c02c",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTM4MWUxZWIzZGUxNDZjNzgxYWE4YjM3NGQ3NDc0YjRhYTYzZmI4ZDAzNGZiODFjMTM1NTgxNDQzZmQ1OTYyIn19fQ="}]}}} 1

1.16+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Bowl with Soup\"}"},SkullOwner:{Id:[I;-583261342,-1419755147,-1154005736,-658456532],Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTM4MWUxZWIzZGUxNDZjNzgxYWE4YjM3NGQ3NDc0YjRhYTYzZmI4ZDAzNGZiODFjMTM1NTgxNDQzZmQ1OTYyIn19fQ="}]}}} 1



1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Ham"},SkullOwner:{Id:"25c79e23-1569-4951-ad97-22b6a26c03fa",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjYzMzZmNWJiOTk3NWJmNTdlMTRkYjY2MTVjMTg5NmM1YzRiOWMzOWFhZDE3YjE3ZTRlZTIwYjIzMWNmNiJ9fX0="}]}}}

1.13 - 1.15 /give @p minecraft:player_head{display:{Name:"{\"text\":\"Ham\"}"},SkullOwner:{Id:"25c79e23-1569-4951-ad97-22b6a26c03fa",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjYzMzZmNWJiOTk3NWJmNTdlMTRkYjY2MTVjMTg5NmM1YzRiOWMzOWFhZDE3YjE3ZTRlZTIwYjIzMWNmNiJ9fX0="}]}}} 1

1.16+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Ham\"}"},SkullOwner:{Id:[I;633839139,359221585,-1382604106,-1569979398],Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjYzMzZmNWJiOTk3NWJmNTdlMTRkYjY2MTVjMTg5NmM1YzRiOWMzOWFhZDE3YjE3ZTRlZTIwYjIzMWNmNiJ9fX0="}]}}} 1


Ice Cream (two scoops of vanilla, one strawberry, and one chocolate)

1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Sundae"},SkullOwner:{Id:"c099447f-fd4b-4da4-b162-7d808d3755be",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTBjODcxOWI2YjFmZGFlZTU5YTc4OTU1NTI2N2FkY2ZhMWU0MjYwODg5ZmRmNzA4ZTdjYTg3M2MwNTUxZDkifX19"}]}}}

1.13 - 1.15 /give @p minecraft:player_head{display:{Name:"{\"text\":\"Sundae\"}"},SkullOwner:{Id:"c099447f-fd4b-4da4-b162-7d808d3755be",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTBjODcxOWI2YjFmZGFlZTU5YTc4OTU1NTI2N2FkY2ZhMWU0MjYwODg5ZmRmNzA4ZTdjYTg3M2MwNTUxZDkifX19"}]}}} 1

1.16+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Sundae\"}"},SkullOwner:{Id:[I;-1063697281,-45396572,-1318945408,-1925753410],Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTBjODcxOWI2YjFmZGFlZTU5YTc4OTU1NTI2N2FkY2ZhMWU0MjYwODg5ZmRmNzA4ZTdjYTg3M2MwNTUxZDkifX19"}]}}} 1


Rubik's Cube

1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Rubik's Cube"},SkullOwner:{Id:"609515f0-c3d3-476d-80ef-1474b4945f3f",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGY5MjMzYzEyNDdlMDNlOWZkMjc3NDI3MzdlNzllNGNjZWJkMjI1YTliMDU5ZDU5NmQ1Y2QzNGUyNmYyMTY1In19fQ="}]}}}

1.13 - 1.15 /give @p minecraft:player_head{display:{Name:"{\"text\":\"Rubik's Cube\"}"},SkullOwner:{Id:"609515f0-c3d3-476d-80ef-1474b4945f3f",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGY5MjMzYzEyNDdlMDNlOWZkMjc3NDI3MzdlNzllNGNjZWJkMjI1YTliMDU5ZDU5NmQ1Y2QzNGUyNmYyMTY1In19fQ="}]}}} 1

1.16+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Rubik's Cube\"}"},SkullOwner:{Id:[I;1620383216,-1009563795,-2131815308,-1265344705],Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGY5MjMzYzEyNDdlMDNlOWZkMjc3NDI3MzdlNzllNGNjZWJkMjI1YTliMDU5ZDU5NmQ1Y2QzNGUyNmYyMTY1In19fQ="}]}}} 1



1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Sushi"},SkullOwner:{Name:"lmaoki"}}

1.13+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Sushi\"}"},SkullOwner:"lmaoki"} 1


Watermelon with a large bite taken out:

1.8 - 1.12 /give @p skull 1 3 {display:{Name:"Open Melon"},SkullOwner:{Name:"Squattamelon"}}

1.13+ /give @p minecraft:player_head{display:{Name:"{\"text\":\"Open Melon\"}"},SkullOwner:"Squattamelon"} 1



1.8 - 1.12 |

1.13 - 1.15 |

1.13+ |

1.16+ |

source: URL

Item Frames

To query an item frame, stand in front of it as close as you can (remove objects on the floor if needed, facing it with the framed object at eye level, and type

/entitydata @e[type=item_frame,r=2] {}

A lot of information is displayed, look for "Damage=" followed by a number. This number is the map ID (seen when the map is in your inventory, e.g. "Map #7986").

You can also discover map IDs for maps that have been generated in the past, but which you have not encountered in the game. In Ghiblicraft these are sometimes used to create display artwork. To discover the map IDs for past generated maps, look in the "data" subdirectory within the saved game directory. Any file with a name like map_7986.dat is a map that has been generated and placed, and possibly is still extant somewhere in the world.

List of Map Images

1-5 Cabinet doors
6 Month Calendar (June)
7 Japan
8 Yield sign
9 Totoro Bus Stop sign (round blue)

To give yourself any of these items, use this command but change "27" to the ID number from the table above.

/summon minecraft:item ~ ~ ~ {Item:{id:filled_map,Count:1,Damage:27}}

Inventory Items

Some decorative items are not directory available in the Creative mode inventory but can be acquired with commands.

Bento Boxes

These are all variants of cake with different numbers of bites taken. The inventory cake item is a new cake with no bites taken. For the others you can use /setblock ccommands to place one where you are standing:

/setblock ~ ~ ~ cake 1 - stack of 4 sushi

/setblock ~ ~ ~ cake 2 - stack of 3 sushi

/setblock ~ ~ ~ cake 3 - miso soup and something else

Red Bowl

This is a flower pot with a poppy

Sink : /give @p anvil 2 1

When placing this item, make sure it has something to sit on. To remove an anvil, stand on top of it and use /setblock ~ ~-0.5 ~ air 0


Two White Time-cards (Name Tag) :

/summon minecraft:item ~ ~ ~ {Item:{id:name_tag,Count:1}}

Red and White Time-cards (Brick) :

/summon minecraft:item ~ ~ ~ {Item:{id:brick,Count:1}}

Two Red Time-cards (Rose Red dye) :

/summon minecraft:item ~ ~ ~ {Item:{id:dye,Damage:1,Count:1}}

I set up a redstone circuit to send red time-cards to Kamaji's chair in the boiler room (52, 111, 72) every few minutes.

Toilet (western) : /give @p anvil 1 1

When placing this item, make sure it has something to sit on. To remove an anvil, stand on top of it and use /setblock ~ ~-0.5 ~ air 0

Two Covered Serving Bowls

This is a flower pot with a mushroom.

Wash Tub

Place a cauldron, then use a water bucket on it (it will turn into the wooden wash tub).

You can also get a sink filled 1/3 (or 2/3) with water, by placing a cauldron and using a Water Bottle on it once (or twice). The appearance is pretty much the same as in the normal Minecraft textures.

Hard-to-get Blocks

Red Mushroom

Some of the corridors in the Yubaba's office area have a nice red wallpaper pattern, which is made from red giant mushroom blocks. In version 1.12 and earlier, the only way to get the various giant mushroom blocks is with a /setblock or /fill command. For example:

/setblock ~ ~ ~ redmushroomblock 14

creates a red mushroom block with the red texture on all six sides. Data values from 0 to 15 are possible, and most of them create different combinations of which sides have the red texture, with remaining sides having the "mushroom interior" texture.

Smaller-Than-Normal Blocks as "Placed Items"

In a few places (e.g. the series of ornate rooms you pass through when opening the coloured double-doors to reach Yubaba's area) there are objects like a block of gold_ore sitting on a table, but only about 3/4 the size of a normal block, and placed halfway between the positions available when placing a normal item like a player head. These were done with armour stands and at least two commands.

For example, stand somewhere that has at least two solid blocks below your feet (i.e. the block you're standing on, and one more below that) and do the command

summon armor_stand ~ ~-1 ~ {ArmorItems:[{},{},{},{id:"gold_ore",Count:1}],DisabledSlots:2039583}

The armour stand will appear, with the gold ore block a little higher than the surface you were standing on. To make the block appear to be sitting on the surface, the coordinates of the armour stand need to be adjusted down by 0.4. You can also make the armour stand invisible and disable gravity on it, so that it won't fall even if the lower layer(s) of blocks are removed.

In one example I used /entitydata @e[type=armor_stand,c=1] {} to find the coordinates, rounded off the X and Z to the nearest 1/2, and adjusted the Y downwards by 0.4.

/entitydata @e[type=armor_stand,c=1] {Pos:[25.5d,195.6d,35d],Invisible:1,NoGravity:1}

The 'd' suffix on the numbers ensures they are all double-precision floating point. You could also just make sure each one contains a decimal point (25.5,195.6,35.0).

Baby's Room is Crying

When first visiting the Baby's Room, you will notice it is full of waterfalls. These result from the use of ice blocks for decoative purposes (they are translucent light blue, good for sky) in close proximity to lighting elements (Sea lanterns, and any torches the player might add while exploring adjacent void space). To fix this, I removed many of the sea lanterns (replacing with cyan wool until I think of something better) and removed ice in a few from the upper layers (replacing with snow until I figure out which lights to remove)

Doors to Yubaba's Office

When attempting to reach Yubaba's office from the elevator (the first time Chihiro goes there as seen in the film) one finds that the doors are closed, and there is no button to open them as seen in Alan Becker's video "GhibliCraft Progress Rprt 10". The doors are blocks by invisible "barrier" blocks. To get through the doors, just break the barrier blocks. The doors themselves cannot be broken and you can walk right through them as if they were not there.

One can explore the area below the floor (below the doors themselves, and below the nearby kitchen) and find a ton of command blocks that look like some sort of elaborate puzzle mini-game.

Yubaba Doors (armor stands)

To make a door appear, use a command like this:

/summon armor_stand ~-0.49 ~0.5 ~ {ArmorItems:[{},{},{},{id:"wooden_hoe",Count:1,Damage:6}],Invisible:1,CustomName:Yubaba_Door_l3,DisabledSlots:2039583}

The different colour doors are distinguished by the "Damage:" value.

To make a door rotate, set a rotation from 0 to 360 (in this example 15):

/entitydata @e[type=armor_stand,name=Yubaba_Door_l3] {Rotation:[15f]}

To remove all doors with a particular name, use a kill command:

/kill @e[type=armor_stand,name=Yubaba_Door_l3]

In the commands using @e[...] you can add ,c=1 at the end of the parameter list to specify just a single target; it will act on the one closest to you (or to the command block executing the command).

door Damage door Damage color
Yubaba_Door_l1 2 Yubaba_Door_r1 1 red
Yubaba_Door_l2 4 Yubaba_Door_r2 3
Yubaba_Door_l3 6 Yubaba_Door_r3 5
Yubaba_Door_l4 8 Yubaba_Door_r4 7
Yubaba_Door_l5 2 Yubaba_Door_r5 1 red (the left pair of doors, that don't open)

Yubaba Doors Puzzle Mini-game

The 2017 Aug 29 version of the world included a set of non-working doors, and a ton of command blocks that appear to be attempting to implement a puzzle or mini-game.

check for wooden button at (20, 197, 24) (to right of last doors as seen from the 1st long hallway - this is accessible by entering Yubaba area by climbing the long ladder into the bathroom window as seen in the film)

-> delay 1 place redstone at (35, 189, 28), (35, 190, 21) remove button(s) from (20, 197, 24) and from (23, 197, 46) display message "Please get through the doors ONE BY ONE" add Yubaba_Operator tag to player's entry on scoreboard, if they are standing at (20,197,24) delay 8 place redstone at (35, 189, 29) delay 8 place redstone at (35, 189, 30), and fill redstone at (22-21, 203, 28-29) delay 8 place redstone at (35, 189, 31), and fill redstone at (22-21, 203, 34-35) delay 8 fill redstone at (22-21, 203, 41-40)

check for wooden button at (23, 197, 46)

-> delay 2 place redstone at (35, 189, 31) and at (35, 190, 25) remove button(s) from (23, 197, 46) and from (20, 197, 24) display message "Please get through the doors ONE BY ONE" add Yubaba_Operator tag to player's entry on scoreboard, if they are standing at (20,197,24) delay 8 place redstone at (35, 189, 30) delay 8 place redstone at (35, 189, 29), and fill redstone at (22-21, 203, 41-40) delay 8 place redstone at (35, 189, 28), and fill redstone at (22-21, 203, 34-35) delay 8 fill redstone at (22-21, 203, 28-29)

Yubaba's Bathroom

When Haku (as a dragon) is being attacked, Chihiro gets to Yubaba's office by climbing in through a bathroom window. The route she takes from the bathroom to the office would seem to involve stairs, because the shows the bathroom as being a couple floors below Yubaba's office. GhibliCraft project resolved this with teleport commands. These teleport commands were driven by 20-Hz "setblock clock" as described for example here. (This suggests that the project was begun in version 1.8.x or earlier, before command blocks could be set as Repeating Always Active.)

A setblock clock has two commands placed at (x,y,z) and (x+2,y,z). In GhibliCraft's version, the first (located at the lower x value) contains /setblock ~1 ~ ~ air and the other contains /setblock ~-1 ~ ~ redstone_block 0 destroy

The addition of "destroy" at the end of the second command makes this a bit different from the most common setblock clocks. It makes it so that if you break the first command (the one that does /setblock to air), the second causes a runaway spawn-destroy loop, making dropping countless Redstone blocks like the Germino curse in Harry Potter. It's worth trying just for fun — make sure to destroy the other command block when you've had enough, then break the redstone block before recreating the command blocks.

My Changes

Trip and Fall Down the Stairs

When Chihiro goes on her own down the outside stairs to the boiler room, at one point a step breaks and she quickly falls down the remaining wood stairs to a stone landing. GhibliCraft seems to use a constant velocity along a diagonal (probably with something like /entitydata @p[tag=tripping] {Motion:[0.0,-0.1,0.1]} on the affected player) which is okay, but pretends that gravity went on holiday for a few moments. I prefer a more natural physics that combines the uncontrolled falling with gravity and any player keyboard motions (e.g. a well-timed jump).

Create the armor stand that will detect player position:

summon minecraft:armorstand 66.5 134.5 21.5 {Tags:["triphere"],Invulnerable:1,DisabledSlots:2039552,Small:1b,Invisible:1b}

Detect player and start the fall-effect counter:

RUAA: execute @e[tag=trip_here] ~ ~ ~ testfor @p[r=1] > comparaotor > IUNR: scoreboard objectives add tripfly dummy CUAA: scoreboard players set @p tripfly 0 CUAA: scoreboard objectives setdisplay sidebar tripfly CUAA: playsound block.wood.hit master @p 66.5 134.5 21.5 2.0 2.0

Increment falling counter:

RUAA: scoreboard players add @p tripfly 1

While falling (limited interval) teleport in the direction down the stairs (gravity is still operating on the player, so the combined effect is a rolling bounce):

RUAA: execute @p[scoretripflymin=1,score_tripfly=54] ~ ~ ~ tp @p ~ ~0.2 ~0.3

Hide the timer after the action is done:

RUAA: execute @p[scoretripflymin=60] ~ ~ ~ scoreboard objectives setdisplay sidebar

Smoking Area

When Chihiro regains her composure on the stone landing, she sees a frog-man leaning out a nearby window, smoking. I added this, similarly to GhibliCraft's version, but made the smoking area a small upper level inside an existing room. A sign directs employees to kindly blow your smoke out the window.


In the video "GhibliCraft Progress Rprt 10" (10th October 2017), Alan Becker indicates that there is "a new elevator system using invisible shulkers and command blocks" with a very nice-looking elevator car interior that looks to be made from oak elements and stained glass supported by invisible armour stands.

We can also see a similar elevator beng used in "Weekly Update # 9 from 20th January 2018 (skip to 1:55 in the video). Here we see a "lever" which appears to be an arm of an armour stand (in one of its alternate poses), and we see that the first elevator (coming up from the boiler room area) ends at atrium level L1 (one atrium level below the level of the manager's office and women's sleeping bo)

I'm sure these elevators are nice, but as of August 2021 they still were not present on the public server (in multiplayer Minecraft, join I suppose this is because elevators, which can only be in one place at a time, would be hard to share when there are lots of people on the server.

Since the actual design (by AnJineer) is not available to look at more closely I tried to figure out on my own what they are doing.

There are two "shulker" designs I found. The first (and the only one of which involves command blocks) is SimplySarc's design shown in the video Smooth Elevator Tutorial. The construction is not fully explained, and no command code or world download is given, but it is clear that the basic idea is to have an armour stand ridden by a shulker, both invisible and invincible, and also ridden by another block such as falling sand with the iron block texture. The elevator "car" is 1×1 and there is no provision for automatically stopping at a floor or at the top/bottom extent of travel.

The other shulker-related elevator I found was Mumbo Jumbo's Infinitely Expandable Shulker Elevator. It is only functional in survival mode, because it uses the shulker's ability to hit the player and cause levitation; and it needs to use multiple shulkers to achieve vertical travel of more than 8 blocks.

After dismissing those, I went with a design that is fully described, much more flexible, and capable of working as far back as 1.9.x — IJAMinecraft's design using a boat and levitation, shown in the video How to make a working elevator in Minecraft. There is a full description of the command blocks needed to create the elevator car, make it move up or down, and make any players or entities ride properly when heading upwards (this requires levitation effects). Like most of the other elevator designs, there is no provision for automatically stopping at the top and bottom, for elevator call buttons, or for nice embellishments such as sound. I added all of these. I also extended elevator #1 to go up one floor higher, to Atrium level G which is the level of the manager's office.

My Elevator Design

I used this design for the 1st elevator in the bath house, which is the one that Lin and Chihiro use to get from the boiler room area to the customer levels.

Create elevator car (This only needs to be done once, mainly just if you need to change the textures of the floor)
IUNR with a button: kill @e[tag=el2]
  -> CUAA: kill @e[tag=eb2]
  -> CUAA: scoreboard objectives add timer dummy
  -> CUAA: scoreboard players set @p timer 0
  -> CUAA: scoreboard objectives setdisplay sidebar timer
vertical repeater
IUNR: summon armor_stand 18.0 102.8 76.0 {Tags:["el2m","el2"],NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,Small:1,Passengers:[{id:"Boat",Count:1,NoAI:1,Invulnerable:1,Tags:["eb2"]}]}
vertical repeater
IUNR: execute @e[tag=el2m] ~ ~ ~ /summon armor_stand ~ ~-0.3 ~ {NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,ArmorItems:[{},{},{},{id:"planks",Count:1,Damage:3}],Tags:["el2","el2b"]}
  -> CUAA: execute @e[tag=el2m] ~ ~ ~ /summon armor_stand ~0.63 ~-0.3 ~ {NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,ArmorItems:[{},{},{},{id:"planks",Count:1,Damage:3}],Tags:["el2","el2b"]}
  -> CUAA: execute @e[tag=el2m] ~ ~ ~ /summon armor_stand ~-0.63 ~-0.3 ~ {NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,ArmorItems:[{},{},{},{id:"planks",Count:1,Damage:3}],Tags:["el2","el2b"]}'
vertical repeater
IUNR: execute @e[tag=el2b] ~ ~ ~ /summon armor_stand ~ ~ ~0.63 {NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,ArmorItems:[{},{},{},{id:"planks",Count:1,Damage:1}],Tags:["el2"]}
  -> CUAA: execute @e[tag=el2b] ~ ~ ~ /summon armor_stand ~ ~ ~-0.63 {NoGravity:1,NoAI:1,Invulnerable:1,Invisible:1,DisabledSlots:2039552,ArmorItems:[{},{},{},{id:"planks",Count:1,Damage:1}],Tags:["el2"]}

Elevator movement and rider levitation
RUAA: tp @e[type=armorstand,tag=e2dn] ~ ~-0.06 ~
RUAA: tp @e[type=armorstand,tag=e2up] ~ ~0.045 ~
RUAA: execute @e[tag=e2_up] ~ ~1.2 ~ effect @a[r=1] minecraft:levitation 0 0 true
RUAA: execute @e[tag=e2_up] ~ ~0.9 ~ effect @a[r=1] minecraft:levitation 1 0 true
RUAA: execute @e[tag=e2_up] ~ ~0.6 ~ effect @a[r=1] minecraft:levitation 1 1 true

Sound for downwards movement
RUAA: testfor @e[tag=e2_dn]
RUNR: scoreboard players add @p timer 1
CUAA: execute @p[scoretimermin=7] ~ ~ ~ scoreboard players set @p timer 0
CUAA: execute @a[scoretimermin=6] ~ ~ ~ execute @e[tag=eb2] ~ ~ ~ playsound block.piston.contract master @a[r=25] ~ ~ ~ 0.1 0.7
CUAA: execute @a[score_timer=5] ~ ~ ~ /playsound entity.minecart.riding master @p 18.0 102.8 76.0 0.1 0.7 0.02
CUAA: execute @a[score_timer=5] ~ ~ ~ /playsound entity.minecart.riding master @p 18.0 102.8 76.0 0.05 2.0

Sound for upwards movement
RUAA: testfor @e[tag=e2_up]
RUNR: scoreboard players add @p timer 1
CUAA: execute @p[scoretimermin=9] ~ ~ ~ scoreboard players set @p timer 0
CUAA: execute @a[scoretimermin=8] ~ ~ ~ execute @e[tag=eb2] ~ ~ ~ playsound block.piston.extend master @a[r=25] ~ ~ ~ 0.1 0.5
CUAA: execute @a[score_timer=5] ~ ~ ~ /playsound entity.minecart.riding master @p 18.0 102.8 76.0 0.10 0.5 0.02
CUAA: execute @a[score_timer=5] ~ ~ ~ /playsound entity.minecart.riding master @p 18.0 102.8 76.0 0.05 2.0

Auto-stop for bottom of elevator shaft
located 3 blocks below the desired stop position:
RUAA: testfor @e[tag=e2_dn,r=3]
IUNR: entitydata @e[tag=el2] {Tags:["el2","e2_st"]}

Auto-stop for top of elevator shaft
located 11 blocks above the desired stop position:
RUAA: testfor @e[tag=e2_up,r=11]
IUNR: entitydata @e[tag=el2] {Tags:["el2","e2_st"]}

Downwards command (located anywhere you want a button that makes

the elevator start going down)

IUNR: entitydata @e[tag=el2] {Tags:["el2","e2_dn"]}

Upwards command
IUNR: entitydata @e[tag=el2] {Tags:["el2","e2_up"]}

Yubaba's Bathroom Mirror Effect

One of the videos shows that a mirror in the bathroom has the classic Minecraft mirror effect, done by having glass with a mirror-image duplicate of the room on the other side. This was eliminated for no good reason when the bathroom was moved below ground. I restored it, and improved it a bit by using glass pane rather than glass block, with the alignment of the mirror-image room carefully adjusted so that there is no unexplained block-deep offset on the other side.

Yubaba's Private Residence

The film does not depict a bedroom for Yubaba, and we also don't see a convenient door or hall that might connect her bedroom with her office and the "loft" area (with its private roof balcony). I decided to create the bedroom, with two exits each with a hallway that leads to the loft area and to the office.

The loft area connection leads into the area where there is a spiral stair up to the rooftop spire.

The hallway from the bedroom to the office needs a new door through which the office can be entered. I decided the best place to add this office entrance is with a hidden door in the bookshelves.

Create armor stand (this can be anywhere):

IUNR: kill @e[tag=bgk]

CUAA: summon armor_stand ~ ~1 ~ {Tags:["bgk","bc0"],NoAI:1,Invulnerable:1,Invisible:0,DisabledSlots:2039552,Small:1}

Detector beneath left end of bookshelves:

RUAA: testfor @e[type=player,r=2]

> comparator >

RUNR: entitydata @e[tag=bc0] {Tags:["bgk","bc1"]} # Advance one step towards opening

CUAA: entitydata @e[tag=bc2] {Tags:["bgk","bc3"]}

CUAA: entitydata @e[tag=bc4] {Tags:["bgk","bc5"]}

Detector beneath right end of bookshelves:

RUAA: testfor @e[type=player,r=2]

> comparator >

RUNR: entitydata @e[tag=bc1] {Tags:["bgk","bc2"]} # Advance one step towards opening

CUAA: entitydata @e[tag=bc3] {Tags:["bgk","bc4"]}

CUAA: entitydata @e[tag=bc5] {Tags:["bgk","bc6"]} # When it gets to bc6 the doors will open

Main door-opening activation (this can be anywhere):

RUAA: testfor @e[tag=bc6] # Has the armor stand reached tag bc6?

> comparator >

RUNR: entitydata @e[tag=bc6] {Tags:["bc7"]} # tag doors as open (prevents repeated opening animations)

CUAA: playsound entity.minecart.riding master @p 43 195 80 0.25 2.0

> redstone > repeater >

IUNR: clone 46 195 78 49 196 79 42 195 81 # Animation frame 2

> redstone > repeater >

IUNR: clone 46 195 76 49 196 77 42 195 81 # Animation frame 3

> redstone > repeater >

IUNR: clone 46 195 74 49 196 75 42 195 81 # Animation frame 4

To enter the office from the hidden side, there is a simple button:

button >

IUNR: entitydata @e[tag=bgk] {Tags:["bgk","bc6"]}

When the player walks away, the doors close again (this should be right below the doors):

RUAA: testfor @e[type=player,rm=10] # Player has walked away

CCAA: testfor @e[tag=bc7] # doors are currently open

> comparator >

IUNR: entitydata @e[tag=bc7] {Tags:["bgk","bc0"]} # tag doors as closed (start a new cycle)

CUAA: playsound entity.minecart.riding master @p 43 195 80 0.25 2.0

> redstone > repeater > # %% try two repeaters here

IUNR: clone 46 195 76 49 196 77 42 195 81 # Animation frame 3

> redstone > repeater >

IUNR: clone 46 195 78 49 196 79 42 195 81 # Animation frame 2

> redstone > repeater >

IUNR: clone 46 195 80 49 196 81 42 195 81 # Animation frame 1

In Minecraft Launcher

In Minecraft 1.12:

to fly, double-tap the space bar

to stop flying, drop down (left-shift) until you reach the ground

to be able to go through walls: /gamemode spectator

barrier blocks: have space in your block menu, and give yourname Barrier 64

Commands that do not work:

Robert Munafo's home pages on HostMDS   © 1996-2022 Robert P. Munafo.
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License. Details here.

This page was written in the "embarrassingly readable" markup language RHTF, and was last updated on 2022 Mar 26. s.27