--- title: AVALON description: robots: index, follow lang: en dir: ltr breaks: true --- # AVALON {%hackmd theme-dark %} ###### tags: `metaverse lab` A project log for [Metaverse Lab](https://hackaday.io/project/5077) by [alusion](https://hackaday.io/hacker/46747-alusion) *Experiments with Decentralized VR/AR Infrastructure, Neural Networks, and 3D Internet.* Originally published 04/27/2015 at 01:43 https://hackaday.io/project/5077-metaverse-lab/log/17006-avalon --- <p>Anonymous Virtual/Augmented LOcal Networks</p> <p><strong>AVALON</strong> is a work in progress. I started with a fork PirateBox and turned it into a PirateWorld. Using <a href="http://janusvr.com/">JanusVR</a> as the client, users can explore Oculus Rift enabled content together within a private shared space. </p> <p><a href="http://wiki.openwrt.org/toh/tp-link/tl-wr703n">OpenWRT router</a> running <a href="http://piratebox.cc/">PirateBox</a> with a Raspberry Pi connected with the JanusVR multi-server.</p> <p><img class="lazy" src="https://cdn.hackaday.io/images/2677621430097045960.png"></p> <p><img class="lazy" src="https://cdn.hackaday.io/images/3715691430096777838.png"></p> <p>These two computers are connected to the same PirateBox Wireless Hotspot and can now talk to each other inside a 3D Oculus Rift enabled Ad-Hoc network! </p> <p><img class="lazy" src="https://cdn.hackaday.io/images/4272591430097154519.png">Person A and Person B are able to see each other inside with their own Avatars and can communicate anonymously, collaborate and create worlds, watch streams together on giant screens. It's a pocket universe with endless possibilities.</p> <p><img class="lazy" src="https://cdn.hackaday.io/images/3344591430097366335.png"></p> <p>Your avatar can literally be anything, just upload it to the PirateBox through the WebUI and point the to it for the src in your userid.txt file. (~/.local/share/janusvr/userid.txt for linux; %appdata% for Windows). Edit the &lt;Assets&gt; like so:</p> <pre class="hljs xml"><span class="hljs-tag">&lt;<span class="hljs-title">AssetObject</span> <span class="hljs-attribute">id</span>=<span class="hljs-value">"body"</span> <span class="hljs-attribute">src</span>=<span class="hljs-value">"<a href="http://piratebox.lan/Shared/gen.obj" target="_blank">http://piratebox.lan/Shared/gen.obj</a>"</span> <span class="hljs-attribute">mtl</span>=<span class="hljs-value">"<a href="http://piratebox.lan/Shared/gen.mtl" target="_blank">http://piratebox.lan/Shared/gen.mtl</a>"</span> /&gt;</span></pre> <p>All of the src files for <a href="http://www.dgp.toronto.edu/~mccrae/projects/firebox/notes.html">Firebox</a> rooms and avatars should point to the Shared directory in your PirateBox. You're free to upload files from inside Janus and edit rooms in real time together.<br></p><p><img class="lazy" src="https://cdn.hackaday.io/images/8189361430098231445.png"></p> <p>The second version is entirely self contained within the Raspberry Pi. The USB WiFi Adapter sets up an access point for other people to connect to and the external USB stores the content. Node.js powers the janus-server and allows for a multi-user experience. I've already posted the build instructions for the Pi on the left so that you can create your own.</p> <p>To Do / Future implementations and ideas:</p> <p>Livestreaming / Timelapse photography into AVALON. (Seamless Audio/Visual sensory information upload)<br></p> <p><img class="lazy" src="https://cdn.hackaday.io/images/4880761430098453940.png"></p> <p>Meshnet testing</p> <p>Customizing PirateBox UI / Defaults, creating a downloadable image. <br></p> <p>Android implementation<br></p> <p>Virtual Reality computing environment (Metaverse Hackerspace)<br></p> <p>OpenVPN support / Hardening security<br></p> <p>Virtual Reality Classrooms and Libraries</p> <p><img class="lazy" src="https://cdn.hackaday.io/images/5101971430106394949.png"></p>