tell me if its true - Page 1
Forum section: electronics / general

author: justin66
author_rank: Regular Contributor
timestamp: February 24, 2015, 06:55:40 am
content: i came to this video and i was chatting with video creator and he desperatelly say its not fake i think its super fake that he runs minecraft server on mycrocontrollerand that mycro controller has under 1kB of ram tell me if its possible including saving world in it and so on

author: Psi
author_rank: Super Contributor
timestamp: February 24, 2015, 07:01:19 am
content: i dunno how the minecraft server protocol works, but if most of the calculations are done client side and the server only 'hosts' the map for all clients then it's probably possible.

author: miguelvp
author_rank: Super Contributor
timestamp: February 24, 2015, 07:06:57 am
content: Looks legit for a small map with just some switches, he never mentions you can build things, as I can see it's limited to flipping the switches.

author: hans
author_rank: Super Contributor
timestamp: February 24, 2015, 03:38:29 pm
content: The ATMEGA is running a USB stack + virtual ethernet stack + minecraft server.Probably the major consumers are the USB buffers, ethernet buffers and server connections.The protocols are all implemented in FLASH, and 32kB sounds plenty to do simple USB + TCP/IP + own TCP/IP protocol.The server may be limited to only 1 client, so he doesn't have to share other players coordinates. So that could simplify implementation.He isn't building anything, so that world is probably loaded from FLASH and, except from switch levels, doesn't have to change ever.My estimations of RAM usage:USB is probably 2x8 for USB endpoint 0 (enumeration & setup), and 2x64 for endpoint 1 (assuming you only need 1 for a virtual USB ethernet device). That's 144 bytes of RAM.TCP/IP could require 1560 bytes for a full frame according to spec. But if the minecraft protocol is very simple, there is little necessity for that big of a buffer. He may very well be getting away with 512 bytes of buffer. Sure the packets will be dropped/controller will crap itself if you send more than 512 bytes per packet.. but that's not the point of his video.On a 1kB chip that leaves 368bytes for other stuff. You may need a few bytes for a TCP/IP client, but I'm sure it doesn't have to be more than 64 bytes for a very simple implementation.So it sounds very reasonably that it can be done.In fact:https://github.com/cnlohr/avrcraft

author: justin66
author_rank: Regular Contributor
timestamp: February 24, 2015, 06:40:37 pm
content: thanks. i thought i know something about electronics but now i feel dumb lol anyways can you explain me how on the world its possible i mean what does that controller even do it cant has all the data for minecraft server is it? is it doing processing for it only or what?

author: miguelvp
author_rank: Super Contributor
timestamp: February 24, 2015, 06:46:50 pm
content: It's not a full minecraft server. It only has a small map that you probably can't change with switches that turn the light colors on the led strip.I will doubt you can even dig a hole or add anything in that map.

author: katzohki
author_rank: Frequent Contributor
timestamp: February 25, 2015, 09:08:46 pm
content: I understand your skepticism, since the minecraft server usually requires ~2GB to run on a PC. As others have mentioned, it might be possible, but the server will be EXTREMELY limited in its capabilities. Since the minecraft chunk data is formatted to save only blocks that exist, I think you are limited to a very small area, which is what he has. I kind of wonder about how he is able to send / update world data fast enough.

author: JSTFLK
author_rank: Newbie
timestamp: February 27, 2015, 07:34:22 pm
content: He explains that the MCU isn't running a full server, but is running a simple stack that can "send the correct bits" so that the client sees a server.You should watch his other videos. He is a very clever guy and has built some very neat stuff.Also,https://github.com/cnlohr/avrcraftThe code he wrote definitely works as described. Whether that counts as a "real" server is up for interpretation.

author: justin66
author_rank: Regular Contributor
timestamp: March 03, 2015, 11:08:15 am
content: Quote from: JSTFLK on February 27, 2015, 07:34:22 pmthanks