Minecraft es un juego escrito en el lenguaje de programación Java que permite la construcción de mundos en tercera dimensión donde todo esta hecho a partir de pequeños bloques de diferentes tipos los cuales se pueden obtener del mismo mundo en una actividad de minería.
Instalaremos un servidor de Minecraft en su versión Beta 1.6.6 como un servicio dentro de un servidor Ubuntu 11.04 de tal modo que quede como servicio y se ejecute con su propio usuario, en próximas entradas estaremos personalizando la configuración de nuestro mundo virtual.
Para conectarse a este servidor se debe tener una cuenta de Minecraft y comprar el juego
Instalación :
Instalación Java Puede instalarse el JDK de Oracle o el OpenJDK (no probado aun)
Instalacion JDK Oracle
echo deb http://archive.canonical.com natty partner | sudo tee /etc/apt/sources.list.d/java.list
sudo apt-get update
sudo apt-get install sun-java6-jdk
Instalación del OpenJDK (no probado aun) :
Abra una consola
Actualice la lista de paquetes
sudo apt-get update
Instalar el OpenJDK
sudo apt-get install openjdk-6-jdk
Instalación de Minecraft :
Adicionar el usuario minecraft
sudo adduser minecraft
Conectarse como el usuario minecraft y suministrar la clave
su -l minecraft
Crear el directorio para el servidor y pasarse a este
mkdir server
cd server
Buscar la distribución en formato jar minecraft_server.jar
descargarla y copiarla en el directorio de minecraft
O usar el siguiente comando para descargarla directamente
wget http://www.minecraft.net/download/minecraft_server.jar?v=1308806372045 -O minecraft_server.jar
Ejecutar el servidor por primera vez para que cree los archivos de configuracion :
java -Xmx1024M -Xms1024M -jar minecraft_server.jar
Para detener el servicio escriba el comando
stop <ENTER>
Instalar Script del Servicio :
Conectarse como superusuario
Descargar el script de inicio oficial para minecraft
sudo wget -O /etc/init.d/minecraft "http://www.minecraftwiki.net/Server_startup_script/Script?action=raw"
Editar el archivo /etc/init.d/minecraft y cambiar la linea :
MCPATH='/home/minecraft/minecraft'
por
MCPATH='/home/minecraft/server'
Si se quieren cambiar los valores de memoria RAM, por ejemplo si se quiere colocar 512MB
Cambiar los valores en la linea : java -Xmx1024M -Xms1024M
a java -Xmx512M -Xms512M
Cambiar los permisos de ejecucion :
chmod 755 /etc/init.d/minecraft
Activar los servicios en los diferentes modos :
sudo update-rc.d minecraft defaults
Inciar el servicio
sudo service minecraft start
Lista de Administradores :
En el archivo ops.txt se puede especificar la lista de usuarios que tienen permiso de administrador dentro del servidor, lo que permite ejecutar ciertos comandos
Abrir el archivo ops.txt
Escribir el nombre de usuario
Probando el Acceso :
Ir a la pagina del cliente en :
http://www.minecraft.net/game
Acceder o Registrarse (recuerde que se debe comprar el juego)
Existe un repositorio de módulos adicionales para Open Wonderland los cuales pueden descargarse su código fuente e instalarse dentro de nuestro servidor, para realizar esta tarea primero debemos compilar la distribución de fuentes del servidor y después adicionar los módulos que queremos.
Los modulos vienen en un repositorio de estables e inestables, he aqui una lista de ellos :
Abrir una terminal o conectarse remotamente como administradores del servidor
En el mismo directorio donde se descargo el Open Wonderland, descargar los módulos
Descargar los módulos
svn checkout http://openwonderland-modules.googlecode.com/svn/trunk/0.5 wonderland-modules
Compilar :
Para compilar un modulo, simplemente vaya a su directorio y ejecute ant
por ejemplo para compilar el beanshell-plugin
cd unstable/beanshell-plugin/
ant
Instalar :
Para instalar un modulo simplemente ejecute el comando
ant deploy
Probar :
Entrar como usuario y buscar en el menú Tools el acceso a la herramienta
OpenWonderland es una aplicación que permite la creación de mundos virtuales sobre la plataforma Java, su desarrollo comenzó desde Sun Microsystems y después de la compra por Oracle, el proyecto paso al mundo del software libre soportado por una comunidad muy activa que lo ha mantenido en continuo desarrollo.
Algunas veces queremos probar las versiones en desarrollo del software, en esta ocasión compilaremos el código fuente mas reciente de OpenWonderland bajo un servidor con una instalación mínima de Ubuntu.
Prerequisitos :
Servidor
Maquina real o virtual donde tengamos instalado Ubuntu 10.10 en su version servidor o escritorio
Cliente
Maquina real o virtual donde tengamos instalado un sistema operativo con un navegador y el JRE de Java
Conexión a Internet
Pasos :
Abrir una terminal o conectarse remotamente como administradores del servidor
Instalar una versión de Java si no se tiene :
Instalar JDK de Oracle
echo deb http://archive.canonical.com maverick partner | sudo tee /etc/apt/sources.list.d/java.list
sudo apt-get update
sudo apt-get install sun-java6-jdk
Aceptar la licencia
Instalar Ant para la compilación automática del proyecto
sudo apt-get install ant
Instalar Subversion para obtener las versiones mas actuales
sudo apt-get install subversion
Descargar la version mas actual de OpenWonderland,
esto puede tomar algún tiempo
svn checkout http://openwonderland.googlecode.com/svn/trunk wonderland
Compilacion
cd wonderland
ant
Ejecutar el servidor
ant run-server
Abrir un navegador con la siguiente direccion
http://<nombre servidor>:8080
Desde esta pagina se puede ejecutar el cliente o entrar al administrador del servidor
Pagina Web Servidor de Wonderland
Pulsar el botón Launch
El servidor envía un archivo que se debe abrir con el Sun Java 6 Web Start
Se abre una caja de dialogo para solicitar permiso para ejecutar la aplicacion
Cliente de Open Wonderland
Se abre la ventana principal y se abre una caja de dialogo para suministrar el usuario, nombre completo y servidor
Suministre los datos y pulse el botón login
Espere unos momentos mientras se carga el mundo.
Avatar en Open Wonderland
Notas :
Si el servidor y el cliente están en diferentes maquinas y el servidor no tiene un nombre dentro de la red o no lo toma el servidor, se debe indicar la ip asi :
Crear un archivo de propiedades
vi my.run.properties
Adicionar las propiedades del url y direccion del servidor :
wonderland.web.server.url=http://<IpServidor>:8080
Se realizo lo anterior pero el servidor no fue capaz de lanzar el modulo de autenticacion y por ende fallaba al momento de tratar de conectarse el cliente.
Para facilitar el acceso de un cliente desde otra maquina se adiciono el nombre del servidor al archivo /etc/hosts
Se trato de ejecutar el cliente desde una maquina virtual con Ubuntu Desktop 10.10 sobre VirtualBox 4 con el soporte de 3D activado y aunque los efectos de compiz funcionaron el cliente lanzaba una excepción al momento de verificar el soporte de OpenGL
Teniendo en cuenta las características del Servidor de Desarrolla a utilizar en Pulsar Project que fueron brevemente descritas en anteriores entradas (Pulsar Project : Servidor Desarrollo) se procedió a realizar la instalación básica del servidor que cumpliera con la mayoría de estas.
Seleccionar el tipo de sistema operativo Linux ya l version Ubuntu
Se puede dejar los 512 MB de memoria RAM (se recomienda aumentarlo a 1024)
Crear un disco virtual con la información por defecto (8 GB de espacio)
Finalizar la creación de la maquina virtual
Cambios en la Configuración Inicial :
Presionar el botón Settings
Habilitar el PAE/NX en la sección Processor de System
Ir a Settings -> Storage
Remover el disco duro del arbol de dispositivos, seleccionarlo y utilizar el boton con el menos
Remover el controlador SATA dando click sobre el Storage Controller ya que este no se utilizara
Adicionar el disco duro como IDE haciendo click sobre el controlador y adicionando un nuevo disco
Montar CD de instalación :
Seleccionar en la pantalla el CD Empty
Adicionar el archivo iso al manejador de medios virtuales
Enlazarlo al CD
Iniciar la Maquina
Instalación de Ubuntu Server
Seleccionar el idioma
Presionar la tecla F4 y seleccionar minimal virtual machine
Seleccionar la opción Install Ubuntu Server
Seleccionar el idioma de instalación
Seleccionar el Pais
Detectar la distribución del teclado
Suministrar el nombre del servidor : pulsarproject
Configurar la zona horaria
Particionar el disco utilizando la opción guiada
Se realiza la instalación base del sistema
Suministrar información del usuario
Nombre de usuario : pulsar
Clave : pulsar2010
No encriptar directorio home
No realizar actualizaciones automáticas
Seleccionar el Software a Instalar :
Basic Ubuntu Server
LAMP Server
Mail Server
OpenSSH Server
Suministrar la clave de administrador de MySQL
Configurar servidor de correo como Internet Site con el nombre pulsarproject
Instalar el GRUB
Terminar la instalación
Reiniciar (Recuerde quitar el archivo ISO como archivo del CD)
La imagen de disco creado por VirtualBox es de 845 MB para esta maquina virtual.
Esta guía cubre los pasos de una forma breve y sencilla, para mayor información acerca de la instalación del servidor de desarrollo se realizo un vídeo el cual contiene imágenes de todos los pasos realizados durante la instalación.
El servidor de desarrollo para el Pulsar Project esta destinado como plataforma para el desarrollo de las herramientas y aplicaciones para el apoyo a la educación en los mundos virtuales, este debe contar con el software necesario para permitir el desarrollo, así como tambien para realizar pruebas de las mismas, por este motivo el servidor debe contar con las siguientes caracteristicas :
Poderse mover de una maquina a otra para no depender de una maquina o una única instalación
Servir de linea base para la documentación de instalación y configuración de servicios
Permitir volver a versiones anteriores del estado del servidor
Facilitar el proceso de pruebas de las herramientas desarrolladas, permitiendo el cambio de configuraciones y componentes instalados
Permitir a otros usuarios la descarga desde Internet del servidor para que estos prueben las herramientas desarrolladas
Ser muy liviano para ejecutarse en maquinas con pocos recursos
Tener un tamaño pequeño para permitir la descarga rápida desde Internet o su copia entre maquinas
Ser software libre lo que permita su utilización sin requerimientos de licencia por parte de los usuarios.
Al analizar todas las características del servidor se tomaron las siguientes decisiones :
Crear un maquina virtual lo cual permite mover y ejecutar la maquina virtual en diferentes computadores de una forma fácil y rápida, como también permite volver a estados previamente almacenados y puede ser distribuida para que otros usuarios la puedan utilizar,
Instalar en la maquina virtual con un Servidor Linux para lo cual se selecciono la plataforma Ubuntu Server 10.04 gracias a la gran experiencia que se tiene en el uso de esta plataforma y a que provee todas las herramientas necesarias para desarrollar el proyecto.
Realizar una instalación mínima de maquina virtual la cual permite crear una maquina virtual que ocupa poco espacio en disco gracias a que solo instala los componentes necesarios para su ejecucion, ademas de tener un núcleo diseñado especialmente para ejecutarse en ambientes virtualizados.
Se selecciono VirtualBox como plataforma de virtualizacion por su fácil, rápida y liviana instalación, ademas de ser multiplataforma lo que permite utilizar cualquier computadora como potencial servidor de pruebas.
En cuanto a la plataforma de desarrollo el servidor debe contar con los siguientes servicios y plataformas de desarrollo :
Servidor Web para la publicación de la aplicación web de soporte a las herramientas de los mundos virtuales y aplicaciones de terceros que se comunicaran con las herramientas en los mundos virtuales.
Servidor de base de datos para la aplicación web y las aplicaciones de terceros.
Servidor de correo para permitir el envió local de mensajes entre aplicaciones.
Se han seleccionado las siguientes herramientas básicas para comenzar el desarrollo del proyecto, las cuales cumplen con las características necesarias para el desarrollo de proyecto.
Servidor de Terminal Segura OpenSSH, el cual permite realizar conexiones seguras para la administración remota del servidor y el envió de archivos.
Servidor de Base de Datos MySQL muy popular en el mundo del software libre y el cual utilizan muchas de las herramientas a utilizar dentro del proyecto.
Servidor Web Apache2 con soporte para PHP, el cual permite desarrollar e instalar aplicaciones muy populares en el mundo del software libre.
Servidor de Correo Postfix para el envío y recepción de correo.
Hasta el momento se han seleccionado las herramientas tecnológicas que responden en su mayoría a herramientas de software libre que pueden ser usadas y modificadas, así como también herramientas sencillas de manejar y ampliamente utilizadas en el mundo del desarrollo de software.
Hace ya algún tiempo trate de probar una version de desarrollo del software para la creación de mundos virtuales de Sun Microsytems Wonderland, hace poco entre de nuevo al sitio y me encontré que había salido el release 3 de la version 0.5, asi que lo descargue y probé su funcionamiento con Ubuntu 8.10
Requermientos :
Tener el JDK instalado en Ubuntu
Tener el Ant instalado en Ubuntu
Pasos :
Abrir una consola
Ir al directorio donde se almacenara el software, por ejemplo sw
cd sw
Descargar utilizando subversion la version 0.5 release 3,
reemplazar <username> por el usuario de java.net :
svn checkout https://wonderland.dev.java.net/svn/wonderland/tags/0.5-dev3 wonderland --username <username>
Esperar un tiempo relativamente largo mientras se descarga todo el software
Cambiar al directorio donde se almaceno el wonderland
cd wonderland
Compilar la aplicacion
ant
Iniciar el servidor
ant run-server
Luego de iniciarse el servidor aparece la dirección web donde se debe entrar para iniciar el cliente, por ejemplo :
http://192.168.122.1:8080/
Abrir el navegador y entrar a la dirección web
Pulsar el botón Launch Wonderland 0.5
El servidor envía un archivo que se debe abrir con el Sun Java 6 Web Start
Se abre una caja de dialogo para solicitar permiso para ejecutar la aplicacion
Se abre la ventana principal y se abre una caja de dialogo para suministrar el usuario, nombre completo y servidor
Suministre los datos y pulse el botón login
Espere unos momentos mientras se carga el mundo.
Problemas :
Al momento de tratar de mover el avatar las teclas del cursor no funcionaron.
La aplicación inexplicablemente dejo de funcionar y el avatar no se movió mas.
Continuando con las pruebas de transmisión de vídeo en vivo desde una cámara web, utilizando mp4live para la transmisión, ahora el turno es para la combinación con Darwing Streaming Server que permite crear urls basados en RTSP para el acceso al vídeo, el cual puede ser accedido por medio de muchos reproductores y como casos especiales los cuales me interesan Second Life y clientes Java en teléfonos móviles.
Ahora podemos acceder a través del url rtsp://<ipServidor>/default.sdp el cual puede ser utilizado en teléfonos móviles, Second Life o OpenSimulator para acceder al vídeo en vivo.
Para comenzar a trabajar con Sloodle dentro de Second Life, debemos obtener una copia de los objetos que nos permiten comunicar nuestro sitio de Moodle con el aula de clase virtual basada en Second Life.
Requisitos :
Tener una cuenta en
Second Life
Tener instalado el visor de Second Life
Pasos :
Crear controlador de Sloodle dentro de un curso
Obtener los objetos de Sloodle dentro de Second Life
Configurar los objetos para acceder al curso de Moodle
Crear un directorio de trabajo :
mkdir modulo
cd modulo
Descargar el modulo de ejemplo :
wget http://wonderland.dev.java.net/wiki/modules/example-module.tar.gz
Descomprimir el archivo :
tar -zxvf example-module.tar.gz
Cambiar al directorio recien creado :
cd example-module
Configuracion :
Abrir el archivo de configuracion del modulo :
vi my.module.properties
Buscar la propiedad wonderland.dir y cambiar por el directorio donde tenemos instalado el wonderland, por ejemplo :
wonderland.dir=/home/<usuario>/projects/wonderland
Modificar los Fuentes : Al parecer por cambios en la version se deben modificar los fuentes
Abrir el archivo del servidor :
vi src/classes/org/jdesktop/wonderland/modules/example/server/ExampleCellMO.java
Buscar la linea
import com.sun.sgs.app.ClientSession;
Reemplazar por
import org.jdesktop.wonderland.server.comms.WonderlandClientID;
Buscar (aparece dos veces)
ClientSession clientSession
Reemplazar por
WonderlandClientID clientID
Compilacion y Emplazamiento :
Compilamos utilizando ANT :
ant
Ejecutar el servidor una vez
ant run-server
Verifique que el siguiente directorio exista :
/home/<usuario>/.wonderland-server/0.5-dev/wfs/worlds/default-wfs
Si no existe crearlo
Crear el archivo para alojar la celda
vi /home/marlonj/.wonderland-server/0.5-dev/wfs/wordls/default-wfs/cell1-wlc.xml
Abrir el administrador de modulos web
http://192.168.1.3:8080/wonderland-web-front/admin?pageURL=/wonderland-web-modules
Instalar el modulo, buscando el archivo example.jar en el directorio dist del modulo
Reiniciar el servidor utilizando la interface web, seleccionar Restart All
http://192.168.1.3:8080/wonderland-web-front/admin?pageURL=/wonderland-web-runner
Abrir la pagina principal y lanzar el cliente
http://192.168.1.3:8080/wonderland-web-front/
o lanzarlo desde linea de comando
javaws http://192.168.1.3:8080/wonderland-web-front/app/Wonderland.jnlp
Despues de conocer que Intel estaba creando un mundo virtual llamado ScienceSim basado en OpenSimulator, ni corto ni perezoso trate de bajar e instalar sus servidores pero todavia no estan disponibles al publico en general, entonces opte por solicitar una cuenta para echarle un vistazo y mirar en que estan trabajando. Hoy me llego un correo con mi usuario y utilizando HippoViewer entre a pasear un rato.
Comence entonces entrando a la pagina web del simulador la cual esta desarrollada en PHP que permite solicitar una cuenta, actualizar los datos de la cuenta, visualizar las ultimas noticias, listado de regiones, estado de las regiones y mapas de estas. En el wiki encontre como acceder a las regiones utilizando el HippoViewer que hace poco descargue.
Lo primero que hice al llegar a las islas fue personalizar mi avatar (para luego darme cuenta que una seccion de bienvenida existen avatars gratis), luego me fui por los diferentes sitios donde encontre una zona de bienvenida donde existen imagenes con datos acerca de como moverse, usar la camara, modificar la apariencia y demas, en otro lugar hay edificios administrativos y al parecer algunas oficinas, tambien encontre un edificio como un observatorio y debajo del agua una cupula transparente a la cual no pude entrar. Tambien a los lados de un puente encontre unas pantallas donde se pueden observar varios tutoriales de Torley acerca de Second Life.
Las islas estan en construccion pero ya tengo mi usuario.