widacaro evobas

Nube

sábado, 28 de junio de 2008

Bae Seul Gi- Tomboy

viernes, 27 de junio de 2008

Avísame!!

He integrado un avísame en la web para los interesados olvidadizos que deseen que les avise en la próxima apertura, el día 15 de Julio. La cuenta atrás ha comenzado.


Errores insalvables en Ícaro

La semana ha sido bastante movidita y más si nos centramos en ayer.
Ícaro sufrió un error crítico y tras día y medio de intentar restaurar el el servidor/mundo Ícaro he tenido que desistir. Es imposible restaurar algo cuando las copias de seguridad se han ido a tomar por c*** junto con las originales.

En fin, resignación, ya he tomado cartas en el asunto y como de los errores se aprende esto ya no va a volver a ocurrirme en la vida. (Al menos eso espero)
De ahora en adelante pondré en marcha un nuevo sistema multicopia de diferentes ubicaciones para evitar que vuelva a pasarme.



Hasta pronto Ícaro

Finaliza el mundo Evoba

Cerca de 200 especies se han registrado en la primera pre-alpha de Evoba, cosa nada desdeñable para un novato como yo. Mucho ha llovido desde entonces y grato ha resultado empaparme del conocimiento adquirido.
¡¡Un placer haber jugado con vosotros!!
¡¡Y sobre todo gracias por hacerme saber sus sugerencias!!


Victoria Tecnológica
TABANO
Victoria por Dominación
TABANO


¡¡¡¡¡Congratulations Tabano!!!!!

Nuevo diseño Evobas

Hoy he "terminado" el boceto sobre el que se basa la web principal de Evobas.

Me hacía falta una web para englobar al resto de mundos y aunque en la actualidad no exista ninguno operativo para un futuro será imprescindible organizar todo desde la página principal
Así que he decidido que el tutorial del juego así como el foro, el acerca de, contactar y más adelante el visitador/selector de mundos se encontrarán únicamente en la principal.

Al ser muchísimos los cambios entre versiones he tenido que dejar el tutorial en construcción...


jueves, 26 de junio de 2008

Amaral - Estrella de Mar - Acústico

Crear una tarea programa en el cron de sistemas UNIX

En sistemas tipo UNIX, como Linux, FreeBSD o Darwin (Mac OS X), es posible utilizar tareas cron para realizar tareas periódicas. Pasar el antivirus, realizar copias de seguridad, optimizar bases de datos ... etc ... etc ...

Qué hacer

Nota: La sintaxis puede diferir según la versión de cron en su sistema.

  1. Inicie una sesión shell como root y escriba el siguiente comando para iniciar un editor tipo VI:
    crontab -u root -e
  2. Pulse 'i' para insertar texto.
  3. Una tarea cron requiere cinco entradas indicando la fecha y hora, y el nombre y ruta del programa a ejecutar. Utilice un espacio o una tabulación entre cada entrada:

    minuto(0-59) hora(0-23) día_del_mes(1-31) mes(1-12) día_de_la_semana (0-7) (parámetro opcional que indica la ruta del interprete del script a ejecutar) /ruta/elscript.loquesea

    Puede utilizar el asterisco "*" como carácter comodín. Así "0 10 * * * /ruta/script.sh" equivale a "0 10 1-31 1-12 0-7 /ruta/script.sh". En este caso, el script se ejecutará a las diez de la mañana todos los días.

    Por ejemplo, para realizar un escaneado con Sophos Anti-Virus en el que se borren los elementos infectados de forma automática a las 8 de la noche en Linux (en Darwin no es necesario indicar la ruta a sweep), utilice:
    0 20 * * * /usr/local/bin/sweep /directorio/subdirectorio -remove

    Es posible utilizar nombres, en inglés, para indicar el mes o el día de la semana. Para el domingo puede utilizar Sunday, 0 ó 7.
  4. Una vez especificada la tarea, pulse 'Esc' para dejar el modo de inserción.
  5. Pulse 'ZZ' ('z' mayúsculas dos veces). Se mostrará un mensaje del tipo:
    /crontab.zUcAAFwPVp: 1 lines, 24 characters
    crontab: installing new crontab

La tarea ya se ha guardado y se enviará un mensaje de confirmación a root.

Para más información sobre cron o crontab, lea las páginas man correspondientes. Por ejemplo, para ver las páginas man de crontab:

man crontab


Fuente: www.esp.shopos.com

Realizar copia de seguridad de archivos web

Para realizar copias de seguridad, en linux, de nuestros archivos web cada cierto tiempo, deberemos de crear una tarea en el cron. Si no sabes como crearla pásate por aquí.

Yo suelo utilizar php para realizar dichas tareas:

  1. //ruta archivo de salida  
  2. $C_FILE_ARCHIVO = "/ruta/backups/file_backup_".date("y_m_d_H_i_s").".tar.bz2";  
  3.   
  4. //archivo o directorio a comprimir  
  5. $C_FILE_COMPRIME="eldirectoriodemiweb.com/";  
  6.   
  7. //instrucción de guardado  
  8. system('tar -c "'.$C_FILE_COMPRIME.'" | bzip2 > "'.$C_FILE_ARCHIVO.'"');  


Cualquier duda preguntarla.

martes, 24 de junio de 2008

Pincelando Evobas

Visto que no he logrado encontrar un colaborador grafista para Evobas, he decidido encarar al toro por los cuernos.

Si partimos de que mi talento para el dibujo se encuentra muy verde, cualquier cosa es posible.
Día a día voy aprendiendo e intento defenderme con los diseños que no es poco.

El estilo que voy a seguir todavía no lo tengo muy claro.
Lo mejor será mostrar un pequeño collage de bocetos.


Crear un archivo .htaccess o .loquesea en windows

Bueno, hace tiempo me ví en la tesitura de crear un archivo .htaccess en un entorno windows y encontré dos posibles soluciones:

1º- Descargarme un archivo que ya contenga el punto delante .htaccess y renombrarlo. Descargar .htaccess

2º- Renombrar un archivo mediante la consola de windows.

Pasito a pasito:
2.1- Crea un archivo en blanco .txt y llévalo a c:/ (llámalo mismamente nuevo.txt)
2.2-Ve a Inicio (abajo a la izquierda en XP) luego clicka en Ejecutar... , escribe cmd y se abrirá la consola de windows.
2.3- Para asegurarnos que estamos en c:/ escribimos en la consola cd c:\ (si no lo estamos nos llevará)
2.4- Renombramos el archivo escribiendo rename nuevo.txt .htaccess

Eureka!!

lunes, 23 de junio de 2008

Detector de "LadyBoys"

¿Qué tal funciona tu detector de maromos?

80%

Created by Bangkok Diaries - a Bangkok blog



Fiu he acertado el 80% confundiéndome solamente en dos mujeres por maromos.
Más vale prevenir que curar :X

Tutorial para dibujar un dragón con cuernos

Marchando otro tutorial de como dibujar dragones, en este caso de un dragón cornudo.


Tutrial dibujar un dragón cornudo


Paso 1
Vamos a construir la cabeza del dragón con 4 partes básicas, la mejilla o mandíbula, la cuenca del ojo, el hocico y el cuello. Dibujamos estas formas básicas en un "burbujeo" para tener un punto de vista general del dibujo.

Paso 2
A continuación, dibujando a partir de las "burbujas", creamos la mandíbula diviendo en dos la "burbuja" correspondiente. Dibujamos el montículo ocular y añadimos las fosas nasales.

Paso 3
Dibujamos el cuello del dragón, definimos el rostro aportándole detalle, añadimos pliegues a la piel y "hundimos" los ojos en el cráneo.

Paso 4
Por último añadimos los detalles que hacen único al dragón. En esta ocasión vamos a dibujarle cuernos de carnero, dos orejas y escamas desde la cresta al vientre.



Tutorial Original : Neon Dragon
Traducción : Roberto Herrero


Respeta el C@pyright

Os recuerdo que ya he subido otros tutoriales anteriormente :
- Plantilla para dibujar un lobo
- Plantilla para dibujar un lobo 2
- Plantilla para dibujar un dragón
- Plantilla para dibujar un dragón II

viernes, 20 de junio de 2008

Kil Gun - shake

La verdad es que no entiendo porque estas canciones no se convierten en hits en España.

IVY "OH NUL BAM IL"

domingo, 8 de junio de 2008

Sôber - La Nube

jueves, 5 de junio de 2008

Crear DSN desde vb 6.0 en tiempo de ejecución

Largo ha sido el camino transitado hasta encontrar la solución a uno de mis grandes dilemas.
Ahora que ya he conseguido hacerlo, lo comparto con el mundo.

El crear DSN's de forma dinámica en tiempo de ejecución nos permite configurar y utilizar las conexiones de los controles y data reports sin miedo a futuros cambios.

El código lo he organizado en un módulo.



  1. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  2. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  3. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  4. ''' Autor: Roberto Herrero                       '''''''''''''''''''''''''''''''  
  5. ''' Fecha: 05/Junio/2008                         '''''''''''''''''''''''''''''''  
  6. '''        http://blog-indomita.blogspot.com/    '''''''''''''''''''''''''''''''  
  7. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  8. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  9. ''' Origen : Brian Plano Abad                    '''''''''''''''''''''''''''''''  
  10. ''' Fecha:   20/Dic/2006 (18 Diciembre 2006)     '''''''''''''''''''''''''''''''  
  11. '''          bplano@ solingest.com               '''''''''''''''''''''''''''''''  
  12. '''          http://www.elguille.info/colabora/vb2006/jesus_Ejemplo_Report_Manager2.htm  
  13. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  14. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  15. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  16.   
  17.   
  18. Option Explicit  
  19.   
  20. 'Constantes  
  21. Private Const ODBC_ADD_DSN = 1 ' Nuevo DSN  
  22. Private Const ODBC_CONFIG_DSN = 2 ' Modificar DSN  
  23. Private Const ODBC_REMOVE_DSN = 3 ' Eliminar DSN  
  24. Private Const ODBC_ADD_SYS_DSN = 4 ' Nuevo DSN de sistema  
  25. Private Const ODBC_CONFIG_SYS_DSN = 5 ' Modificar DSN de sistema  
  26. Private Const ODBC_REMOVE_SYS_DSN = 6 ' Eliminar DSN de sistema  
  27. Private Const vbAPINull As Long = 0 ' Null Pointer  
  28. Private Const SQL_SUCCESS As Long = 0  
  29. Private Const SQL_FETCH_NEXT As Long = 1  
  30.   
  31. 'Declaración de funciones de API  
  32. Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" (ByVal hwndParent As LongByVal fRequest As LongByVal lpszDriver As StringByVal lpszAttributes As StringAs Long  
  33. Private Declare Function SQLDataSources Lib "ODBC32.DLL" (ByVal henv As LongByVal fDirection As IntegerByVal szDSN As StringByVal cbDSNMax As Integer, pcbDSN As IntegerByVal szDescription As StringByVal cbDescriptionMax As Integer, pcbDescription As IntegerAs Integer  
  34. Private Declare Function SQLAllocEnv Lib "ODBC32.DLL" (Env As LongAs Integer  
  35.   
  36. 'Constantes  
  37. 'ruta hasta el servidor (ip/nombre/ruta)  
  38. Private Const C_Server = "localhost"  
  39. 'usuario  
  40. Private Const C_User = "usuario"  
  41. 'contraseña  
  42. Private Const C_Pass = "contraseña"  
  43. 'base de datos  
  44. Private Const C_BD = "nombre base de datos"  
  45. 'puerto  
  46. Private Const C_Port = 3306  
  47. 'Nombre ODBC de MySql  
  48. '(si no tienes ninguno instalado http://dev.mysql.com/downloads/connector/odbc/5.1.html)  
  49. Public Const C_MYSQL_ODBC = "MySQL ODBC 5.1 Driver"  
  50.   
  51.   
  52.   
  53. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  54. '''' FUNCIONES  
  55. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  56.   
  57. 'Crea el DSN para las conexiones  
  58. '(utiliza las constantes por defecto para conectarse a un servidor MySql)  
  59. 'Si deseas personalizarlo o dinamizarlo deberás utilizar el resto de funciones  
  60. Public Function IniciaDSN(sDSNname As StringAs Boolean  
  61.     'Comprobamos si existe  
  62.     If ExisteDSN(sDSNname) = True Then  
  63.         'Si existe lo eliminamos previamente.  
  64.         If BorrarDSN(sDSNname, C_MYSQL_ODBC) = False Then  
  65.             IniciaDSN = False  
  66.             Exit Function  
  67.         End If  
  68.     End If  
  69.       
  70.     'Creamos el nuevo DSN.  
  71.     IniciaDSN = MySQLCrearDSN(sDSNname)  
  72. End Function  
  73.    
  74.   
  75. 'Crea un DSN del sistema.  
  76. Public Function CrearDSN(sDSN As String, sDriver As String, sAtributos As StringOptional sHwnd As Long = vbAPINull) As Boolean  
  77.     'Creamos el DSN (En vez de vbAPINull, empleamos el hwnd del formulario)  
  78.     CrearDSN = CBool(SQLConfigDataSource(sHwnd, ODBC_ADD_SYS_DSN, sDriver, sAtributos))  
  79. End Function  
  80.   
  81.   
  82. 'Crea un DSN MySQL con los atributos bien seteados.  
  83. Public Function MySQLCrearDSN(sDSN As String, _  
  84.  Optional sServer As String = C_Server, Optional sBD As String = C_BD, _  
  85.  Optional sUser As String = C_User, Optional sPass As String = C_Pass, _  
  86.  Optional sPort As Integer = C_Port) As Boolean  
  87.    
  88.     Dim sDriver As String  
  89.     Dim sAtributos As String  
  90.       
  91.     sDriver = C_MYSQL_ODBC  
  92.     sAtributos = "DSN=" & sDSN & Chr(0)  
  93.     sAtributos = sAtributos & "SERVER=" & sServer & Chr(0)  
  94.       
  95.     sAtributos = sAtributos & "PORT=" & sPort & Chr(0)  
  96.       
  97.     sAtributos = sAtributos & "DATABASE=" & sBD & Chr(0)  
  98.       
  99.     sAtributos = sAtributos & "USER=" & sUser & Chr(0)  
  100.       
  101.     sAtributos = sAtributos & "PASSWORD=" & sPass & Chr(0)  
  102.       
  103.     sAtributos = sAtributos & "OPTION=3" & Chr(0)  
  104.       
  105.     'Si queremos resetear la conexión de datos, debemos borrarlo antes  
  106.     If ExisteDSN(sDSN) Then  
  107.         Call BorrarDSN(sDSN, sDriver)  
  108.     End If  
  109.       
  110.     MySQLCrearDSN = CrearDSN(sDSN, sDriver, sAtributos)  
  111.   
  112. End Function  
  113.   
  114.   
  115. 'Elimina un DSN del sistema.  
  116. Public Function BorrarDSN(sDSN As String, sDriver As StringOptional sHwnd As Long = vbAPINull) As Boolean  
  117.     Dim sAtributos As String  
  118.     ' Borramos el DSN (En vez de vbAPINull, empleamos el hwnd del formulario)  
  119.     If ExisteDSN(sDSN) Then  
  120.         sAtributos = "DSN=" & sDSN & Chr(0)  
  121.         BorrarDSN = CBool(SQLConfigDataSource(sHwnd, ODBC_REMOVE_SYS_DSN, sDriver, sAtributos))  
  122.     Else  
  123.         MsgBox ExIdioma("ModDSN_Contr1")  
  124.         BorrarDSN = False  
  125.     End If  
  126. End Function  
  127.   
  128.   
  129. 'Comprueba si existe un DSN en el sistema.  
  130. Public Function ExisteDSN(sDSN As StringAs Boolean  
  131.     Dim I As Integer, j As Integer  
  132.     Dim sDSNItem As String * 1024  
  133.     Dim sDRVItem As String * 1024  
  134.     Dim sDSNActual As String  
  135.     Dim sDRV As String  
  136.     Dim iDSNLen As Integer  
  137.     Dim iDRVLen As Integer  
  138.     Dim lHenv As Long 'controlador del entorno  
  139.     Dim DSNLISTA(100)  
  140.     ExisteDSN = False  
  141.     For j = 1 To 52  
  142.         DSNLISTA(j) = ""  
  143.     Next j  
  144.       
  145.     j = 1  
  146.     If SQLAllocEnv(lHenv) <> -1 Then  
  147.         Do Until I <> SQL_SUCCESS  
  148.             sDSNItem = Space(1024)  
  149.             sDRVItem = Space(1024)  
  150.             I = SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem, 1024, iDRVLen)  
  151.             sDSNActual = VBA.Left(sDSNItem, iDSNLen)  
  152.             sDRV = VBA.Left(sDRVItem, iDRVLen)  
  153.             If sDSN <> Space(iDSNLen) Then  
  154.                 DSNLISTA(j) = sDSN  
  155.                 If UCase(sDSN) = UCase(sDSNActual) Then  
  156.                     ExisteDSN = True  
  157.                     Exit Do  
  158.                 End If  
  159.             End If  
  160.         Loop  
  161.     End If  
  162. End Function  

martes, 3 de junio de 2008

El lado oscuro del deseo

Película india ... llena de topicazos y cancioncillas. Demasiado tarde para mi.


Puntos a favor
- Las escenas torridas se encuentran trabajadas.

Puntos en contra
- Diálogos penosos.
- Traducción penosa.
- Topicazo tras topicazo típico de esas películas que emiten por las tardes en la tele.



Batalla en el Cielo

Película, al parecer, de bajo presupuesto bastante subidita de tono con desnudos explícitos.
Es mexicana.


Puntos a favor
- Las escenas son bastante "crudas", muy "naturales".
- Se pasan el día dándole.

Puntos en contra
- Diálogos en mexicano, cuesta entender tanta palabrería barriobajera.
- La trama no tiene mucho misterio.
- No entiendo porque tienen que enfocarle toda la "almeja" a la co-protagonista cuando alcanza el climax la película, con lo bien que estaba quedando la escena.




Isi Disi 2 Alto Voltaje

Parida tras parida y lo peor de todo es que el 95% carece de sentido

Puntos a favor
- Sale Kira Miró.

Puntos en contra
- Creo que es la única película en la que Kira Miró no se desnuda.
- Penosa y cutre hasta la médula.


No es país para viejos

En fin, perro ladrador poco mordedor.


Puntos a favor
- Algunas escenas se encuentran muy elaboradas.
- Algunos diálogos son pasables.


Hoy voy a destripar la película con los puntos en contra así que si te hace ilusión verla no sigas leyendo.

Puntos en contra
- Los personajes tan pronto son muy listos como tan pronto soy idiotas.
- Te pasas la película esperando a que el policía haga algo, cuando termina te preguntas que cojones pintaba.
- La película carece de sentido total, el argumento es una mera distracción para pegar tiros y matar gente sin ton ni son, de hecho se cargan al "protagonista" simplemente para que el asesino mate a su mujer.


lunes, 2 de junio de 2008

Liniers Macanudo