Uploaded January 2012 | Updated September 2026, 3 weeks ago
This is a Barcode Generator I have made in Minecraft. This will create a fully functioning UPC barcode from the numbers you input, that then can then easily be decoded with a smart phone or an online decoder. It uses pistons to push snow and black wool into positions then a third set of pistons pushes that 1 tall barcode up, and it will continue to push up new layers till the barcode is 12 blocks tall. I know that this isn't very practical and will take forever to reset, unless MCEdit or WorldEdit is used, but I think it is an interesting concept. I got the idea of a barcode generator in beta 1.8.1, but got very little done until 1.0 and 1.1, so this design should work with any version after beta 1.8.1 (but the super-flat worlds only work after 1.1). If you want to download the schematic for this project and import it in your world, you should try to keep the orientation the same because I think some of my timings rely on the North/South quirk, and it may not work at all if you re-orientate it, although I'm not too sure if it will break, just be careful. This will cause lag to most all people, especially when it generates, you probably want to set the particles setting to "Minimal" when near it. You probably shouldn't use this on a server because it will probably kick people out for connection (when generating), and if not it will likely cause a lot of lag. Using some area restore Bukkit plugins or Single Player Commands it should be easy to use a button to restore the area after generation. Also, this may not work at all if your using a lower render distance, I don't know how Minecraft handles redstone out of the viewing area. When inputting you must input a barcode that has a valid check digit, see below on how to calculate a check digit. This uses a lot of the concepts I use in some of my other projects, such as my 2D printer, but this project was the first major project I did that has needed to be build without a 1-wide gap between wires/pistons, which made it all the more fun!
How to encode:
1. Make sure that Bank #1 is selected, if it is not then input digits until it is.
2. (Optional) Hit the "Force Clear Memory" button, this is not necessary since writing to Bank #1 automatically clears the prior memory.
3. Figure out what 11 digits you want to input and calculate the check digit (which is the 12th digit), you must have a valid check digit or the decoder will not read it. See below on how to calculate the check digit.
4. Input the 12 digits in sequence (be sure to include the check digit), making sure the next bank in line gets selected before inputting the next digit, inputting them too fast could double write on the same memory bank and result in a malformed barcode.
5. Make sure that Bank #1 is selected, this means you have already wrote to Banks #1-12 then hit "Generate" and prepare for lag.
6. Your barcode should be generated and you should be able to decode it now.
How to Calculate Check Digit:
1. Add all the digits in the odd positions, multiply that result by 3, and assign that final result the variable "A."
2. Add all the digits in the even positions (excluding the 12th digit since that is the check digit) and assign that value the variable "B."
3. Add "A" and "B" to get "C"
4. The check digit is the value that needs to be added to "C" to reach the next multiple of 10.
5. If you don't understand download the Barcode HowTo document.
Example Check Digit Calculation:
We want to input 0 1 2 3 4 5 6 7 8 9 0 _ where the "_" is the unknown check digit.
1: (0 + 2 + 4 + 6 + 8 + 0) * 3 = 20 * 3 = 60 = A
2: 1 + 3 + 5 + 7 + 9 = 25 = B
3: A + B = 60 + 25 = 85 = C
4: The next multiple of 10 is 90, and 90 - C = 90 - 85 = 5 = Check Digit
5: So our final barcode is 0 1 2 3 4 5 6 7 8 9 0 5
How to Decode:
1. After the barcode has been generated, go to the viewing area.
2. Shut off the HUD (F1) and take a screenshot (F2)
3. Go to: zxing.org/w/decode.jspx and upload the screenshot (screenshots are saved in %appdata%/.minecraft/screenshots).
4. The number that appears should be the number you inputted.
If you have any issues with this please feel free to tell me about them in the description and please suggest ideas for future projects that I can build, I have a lot of fun making and figuring out things like this. I am sorry I haven't been uploading too much lately, I can't get my videos to have a small size and good quality.
Thanks for Watching.
World Download (With HowTo Signs): goo.gl/tKQqe
World Downalod (Without HowTo Signs): goo.gl/WP8I5
MCEdit Schematic (Without HowTo Signs): goo.gl/bkxzS
MCEdit Schematic (With HowTo Signs): goo.gl/jrFD8
Barcode Decoder: zxing.org/w/decode.jspx
Barcode HowTo: http://www.utm.edu/staff/lholder/csci201/barcode_howto.doc
Music By: Kevin MacLeod (incompetech.com/m/c/royalty-free/)
This is a Barcode Generator I have made in Minecraft. This will create a fully functioning UPC barcode from the numbers you input, that then can then easily be decoded with a smart phone or an online decoder. It uses pistons to push snow and black wool into positions then a third set of pistons pushes that 1 tall barcode up, and it will continue to push up new layers till the barcode is 12 blocks tall. I know that this isn't very practical and will take forever to reset, unless MCEdit or WorldEdit is used, but I think it is an interesting concept. I got the idea of a barcode generator in beta 1.8.1, but got very little done until 1.0 and 1.1, so this design should work with any version after beta 1.8.1 (but the super-flat worlds only work after 1.1). If you want to download the schematic for this project and import it in your world, you should try to keep the orientation the same because I think some of my timings rely on the North/South quirk, and it may not work at all if you re-orientate it, although I'm not too sure if it will break, just be careful. This will cause lag to most all people, especially when it generates, you probably want to set the particles setting to "Minimal" when near it. You probably shouldn't use this on a server because it will probably kick people out for connection (when generating), and if not it will likely cause a lot of lag. Using some area restore Bukkit plugins or Single Player Commands it should be easy to use a button to restore the area after generation. Also, this may not work at all if your using a lower render distance, I don't know how Minecraft handles redstone out of the viewing area. When inputting you must input a barcode that has a valid check digit, see below on how to calculate a check digit. This uses a lot of the concepts I use in some of my other projects, such as my 2D printer, but this project was the first major project I did that has needed to be build without a 1-wide gap between wires/pistons, which made it all the more fun!
How to encode:
1. Make sure that Bank #1 is selected, if it is not then input digits until it is.
2. (Optional) Hit the "Force Clear Memory" button, this is not necessary since writing to Bank #1 automatically clears the prior memory.
3. Figure out what 11 digits you want to input and calculate the check digit (which is the 12th digit), you must have a valid check digit or the decoder will not read it. See below on how to calculate the check digit.
4. Input the 12 digits in sequence (be sure to include the check digit), making sure the next bank in line gets selected before inputting the next digit, inputting them too fast could double write on the same memory bank and result in a malformed barcode.
5. Make sure that Bank #1 is selected, this means you have already wrote to Banks #1-12 then hit "Generate" and prepare for lag.
6. Your barcode should be generated and you should be able to decode it now.
How to Calculate Check Digit:
1. Add all the digits in the odd positions, multiply that result by 3, and assign that final result the variable "A."
2. Add all the digits in the even positions (excluding the 12th digit since that is the check digit) and assign that value the variable "B."
3. Add "A" and "B" to get "C"
4. The check digit is the value that needs to be added to "C" to reach the next multiple of 10.
5. If you don't understand download the Barcode HowTo document.
Example Check Digit Calculation:
We want to input 0 1 2 3 4 5 6 7 8 9 0 _ where the "_" is the unknown check digit.
1: (0 + 2 + 4 + 6 + 8 + 0) * 3 = 20 * 3 = 60 = A
2: 1 + 3 + 5 + 7 + 9 = 25 = B
3: A + B = 60 + 25 = 85 = C
4: The next multiple of 10 is 90, and 90 - C = 90 - 85 = 5 = Check Digit
5: So our final barcode is 0 1 2 3 4 5 6 7 8 9 0 5
How to Decode:
1. After the barcode has been generated, go to the viewing area.
2. Shut off the HUD (F1) and take a screenshot (F2)
3. Go to: zxing.org/w/decode.jspx and upload the screenshot (screenshots are saved in %appdata%/.minecraft/screenshots).
4. The number that appears should be the number you inputted.
If you have any issues with this please feel free to tell me about them in the description and please suggest ideas for future projects that I can build, I have a lot of fun making and figuring out things like this. I am sorry I haven't been uploading too much lately, I can't get my videos to have a small size and good quality.
Thanks for Watching.
World Download (With HowTo Signs): goo.gl/tKQqe
World Downalod (Without HowTo Signs): goo.gl/WP8I5
MCEdit Schematic (Without HowTo Signs): goo.gl/bkxzS
MCEdit Schematic (With HowTo Signs): goo.gl/jrFD8
Barcode Decoder: zxing.org/w/decode.jspx
Barcode HowTo: http://www.utm.edu/staff/lholder/csci201/barcode_howto.doc
Music By: Kevin MacLeod (incompetech.com/m/c/royalty-free/)








