Ir al contenido principal

Entradas

Mostrando entradas de 2017

Un scroll area decente

Al fin logré resolver el problema del área de scroll aparentemente infinita que venía persiguiéndome desde hace tiempo.
Antes que nada, debo decirles que ignoren por completo el tutorial oficial de Unity que muestra cómo crear una área de scroll. Al final, no funciona. Sin embargo, Unity ofrece un ScrollView ya armado que sí funciona y es el que deberías utilizar en tus proyectos. Pero, el gran problema aquí es lograr qque ese scroll se vea infinito.
La solución consiste en agregar un componente Content Size Fitter al elemento Content, y ajustar su parámetro Vertical Fit a Preferred Size. Por lo general, los tutoriales usan un componente Text en el Content, pero en mi caso yo agregué un layout horizontal y fui adjuntando elementos creados a partir de un prefab, lo cual me permite conseguir efectos como que una línea de texto se resalte en otro color. El Size Fitter ajusta el tamaño de forma que puedes agregar cosas, lo que no he comprobado aún es el límite.
Este era un problema viejo…

Si necesitas partículas en Unity, Duc Vu es tu hombre

Es posible que algún día te veas en la situación de que necesitas hacer un sistema de partículas en Unity y eres un total inepto en ese y otros temas artísticos. En ese caso, los mejores tutoriales sobre efectos y sistemas de partículas que he visto hasta ahora son los del canal de Duc Vu.
Estos tutoriales son muy prácticos, van directo al grano y además, el autor no habla. Muchas veces, la gente se empeña en describirnos lo que están haciendo cuando no es necesario, y lo que consiguen es divagar y alargar el tutorial sin necesidad. Con los videos de Duc Vu no te convertirás en un experto en efectos y partículas de Unity en 24 horas, pero sí podrás hacer algo que más o menos cubra el hueco.

War is boring cree que COD WWII es un pésimo juego

War is Boring es uno de los pocos blogs sobre temas militares que sigo (no hay tiempo para más). No suelen hablar sobre juegos a menudo, pero al parecer, Call of Duty: WWII se ha ganado un artículo donde lo ponen a parir.
Según el autor, todo, desde el guión lleno de clichés hasta la jugabilidad, es una mierda total y una ofensa a la historia, los veteranos de la contienda y a los jugadores que pagan $60 por este título.
Es lo que suele suceder cuando explotas una franquicia como si fuera la vaca de los huevos de oro, año tras año. Aunque justo es decirlo, Call of Duty tampoco se caracterizaba por su originalidad, su excelente trama y su buena mecánica de juego en las entregas anteriores. Pero mientras haya ingenuos que aflojen los $60, seguirán habiendo más y peores COD.

Divinity: Original Sin 2 es noticia otra vez, un millón de copias vendidas

Hoy nos despertamos con esta gran noticia: DOS 2 ha alcanzado el millón de copias vendidas, nada mal para un RPG isométrico. Larian ha conseguido un juego que tiene todos los méritos para ganarse el título de clásico.
Lo más sorprendente es que haya alcanzado esta cifra siendo un juego RPG de la vieja escuela, bastante complicado, y solo para PC. Esto prueba que el género goza de muy buena salud y que hay espacio para triunfar con proyectos aunque éstos no se acojan a la moda de deslumbrar con gráficos más que con jugabilidad e historia.
Solo queda felicitarlos y desearles que el éxito se repita en su próximo título.

Y ya está en fase beta El Laberinto del Saber

El primer beta del Laberinto del Saber está terminado. Creí que nunca llegaría a concluirlo, pero a pesar de las dificultades y de que aún faltan algunos gráficos, el juego como tal puede ser sometido a pruebas más serias.
De momento, tengo pocos probadores, así que si alguien se anima, puede dejarme un comentario y le proporciono el apk o un build para Windows/Linux.

Y al fin, solucionado el problema

Una de las cosas que más echo en falta en Unity cuando trabajo en el proyecto 2d es que no tiene búsqueda de caminos. Supongo que sea imposible o muy difícil incluir un A* que funcione con todas las posibles variantes de juegos 2d. En mi proyecto tuve que inventarme un método simple para mover los fantasmas hacia el jugador, pero tenía un montón de problemas. Ayer logré mejorarlo un poco con unos simples cambios, aunque aún dista de ser un sistema de pathfinding efectivo.
Lo que hago es mover el fantasma directamente hacia la posición del jugador con Vector2.MoveTowards(), actualizando constantemente la posición de destino. Esto también me permite conservar la "falta de inteligencia" del fantasma, y que resulte fácil evadirlo poniendo una pared de por medio. Sí, porque la idea no es que te persigan por todo el laberinto, sino solo hasta que los pierdes de vista. Con eso ya estoy más cerca de lograr un beta medio decente que pueda ser presentado a más personas.
Queda por def…

Nueva fuente

Gracias al apoyo de un amigo, al fin he podido salir de una actualización pendiente desde hace más de un año. Sabía que tenía que hacerlo, pero solo hace un mes me dispuse en serio a ahorrar para comprar una nueva fuente de alimentación, y resultó que no tuve que esperar mucho: como mi amigo no podía traerla, me envió el dinero para que la comprar aquí. Lamentablemente, es mucho más caro que comprar en USA y no hay la misma variedad de opciones, así que tuve que conformarme con una EVGA de 500W y 40A, cuando mi elección hubiese sido una Antec de 550W que habría costado casi la mitad que esta.
Pero bueno, acá las cosas son como son, y tengo que agradecer que ya está dado el primer paso y ahora puedo pensar en actualizar otras cosas. Mi objetivo para el año próximo es mejorar la tarjeta de video, que ya se está quedando desfasada. De nuevo, lo ideal sería poder comprar en USA y traerlo, pero de no ser así... ajo y agua. Según mis cálculos, contaría con un presupuesto de unos $150 USD, …

Lo que podemos aprender del diseño de misiones de Divinity: OS 2

Hace unos días mencionaba que Divinity: Original Sin 2 no es un juego de mundo abierto, sin embargo, eso no quiere decir que no sea un excelente RPG. En especial, han logrado evitar con éxito caer en el facilismo de las misiones repetitivas, clonadas y re-clonadas hasta la saciedad en aras de inflar unas horas de juego más.
Si algo ofrece D: OS 2 es montones de misiones. Tantas, que precisamente puede volverse aburrido en ocasiones, porque algunas de ellas más que misiones, son enigmas muy difíciles de resolver. Sin embargo, hay gente para todo, y no dudo que sus jugadores habrá que disfruten ese reto.
En mi opinión, el diseño de misiones de este juego se merece un premio, por su variedad. Claro que es inevitable el clásico esquema tú necesitas X información de mí, así que haz Y tarea para mí, pero esto es un mecanismo que bien empleado, no se vuelve monótono y que además creo que es necesario. Pienso que ellos lo han empleado muy bien y en contadas ocasiones, no es como si la misión…

Cierra Runic Games

Me entero con unos días de atraso que Runic Games, el estudio creador de esa joyita que fue Torchlight, ha tenido que cerrar. Lamentable, pero considerando que Runic Games produjo muy pocos títulos durante sus nueve años, era de esperarse. Por mi parte, solo llegué a conocer Torchlight 1 y 2, pero veo en las noticias que también lanzaron Hob, una especie de aventura con puzzles.
Solo queda esperar que sus empleados continúen en la industria, y desearles suerte.

Sistema de IA básico terminado

En los últimos días parece que no tengo otro tema. De hecho, me duermo pensando en esto, y entre IA y Divinity, mi sueño es bastante incómodo. Pero el resultado es que el sistema de inteligencia artificial funciona bastante bien a nivel básico. O sea, que como prueba de concepto está bien, y ahora es que las cosas empiezan a  complicarse.
Para continuar, tengo que implementar un mini-sistema RPG: habilidades e items utilizables por las entidades, incluyendo al jugador; que aunque sea mini, no es trivial. De paso, eso me permitirá probar otro enfoque en la implementación de habilidades y objetos usando ScriptableObjects. Sí, otra obsesión reciente, quizás debería consultar un médico. Y ya que hablamos del tema, este video ofrece un buen punto de partida:

Al principio me pareció que no sacaría nada útil, pero resultó que estaba equivocado. Hay algunos trucos, como el de instanciar los ScriptableObjects que no sabía con exactitud cómo hacerlo, y el de usar Resource.LoadAll para cargar t…

Usando ScriptableObjects para IA

Hace unos meses el canal de Unity publicó una serie de videos, basados mayormente en esta conferencia:


Hasta hace poco no había tenido tiempo de estudiar los tutoriales y comenzar a adaptar el código, o incluso decidir si era mejor que mi anterior intento. Y recién hace dos días fue que pude mirar un poco más lo que había hecho y cambiar algunas cosas.
En esencia, el sistema me parece bastante bueno. Por lo menos resuelve el problema de la modularidad de la IA, algo que no había logrado resolver en mi aproximación anterior. Confieso que últimamente he dudado de los ScriptableObjects, pero creo que en este caso sí son muy útiles. Para un RPG, poder definir comportamientos específicos para cada entidad es esencial. Por ejemplo, un mago no pelea de la misma forma que un guerrero de largo alcance, que a su vez es muy distinto a un guerrero cuerpo a cuerpo, y así sucesivamente, según las clases o el equipo de cada NPC.
Los tutoriales muestran de forma relativamente sencilla cómo armar una…

Divinity: Original Sin 2 no es de mundo abierto

Un poco decepcionante, la verdad, aunque hay que admitir que no está tan mal. Luego de varios días uno se percata de que este RPG en realidad no es de mundo abierto, sino más bien lineal. Me recuerda un poco The Witcher 2, donde tenías que ir de ubicación en ubicación y resolver todo antes de pasar a la siguiente. Lo que se queda atrás se pierde.
Las ventajas de este enfoque son que la línea temporal de la historia es más fácil de controlar, y la trama en sí es más simple. No hay tantas bifurcaciones, salvo las que se desprenden de las decisiones del jugador. En un mundo abierto no hay mucho orden, un jugador puede ir primero a un lugar y luego a otro, y otras personas podrían hacerlo a la inversa. Todo un reguero.
Esta es una situación que he experimentado escribiendo mis intentos de guión para RPGs abiertos. ¿Cuándo se dispara un evento importante, por ejemplo, un mensaje para realizar una misión? ¿Y si el jugador nunca viene a determinado lugar? ¿Y si liquida a X NPC antes de que …

Documental sobre CDPRED/Unity 2017.2

Dos breves antes del fin de semana: si no han estado siguiendo la serie de documentales de Noclip sobre CDPRED/The Witcher, deberían hacerlo. Incluso Marcin Iwinski, uno de los fundadores de CD Projekt, es entrevistado (en el documental anterior dedicado a la primera entrega de la saga no aparecía), y los siguientes capítulos abarcan hasta la tercera parte del juego.
En mi opinión, un excelente material sobre la historia de esta compañía desarrolladora de videojuegos y su buque insignia, que no deben perderse. En serio. Hay algunas perlas de sabiduría perdidas por ahí si sabes prestar atención, como suele suceder cuando una docena de personas te hablan acerca de cómo construyeron algo.
Lo otro es que ayer salió Unity3d 2017.2. La lista de cambios solo trae algo interesante: soporte para tilemaps. Al fin, carajo. También hay que mencionar otra cosita como Cinemachine 2D. La lista de mejoras, por supuesto, es más grande, pero no vi nada que me resultara interesante o extremadamente nec…

Jugar, cuando eres zurdo

No soy zurdo, por suerte. Pero un pequeño problema, que espero que sea temporal, me ha obligado desde hace varios meses a darle un poco de reposo a la mano derecha. Revisando un antiguo proyecto que uso para experimentar ideas, descubrí que, aparte de tener el código de la cámara isométrica desactualizado, no me había preocupado en verificar qué tan factible es jugar cuando tienes que manejar el mouse con la mano izquierda y desplazar la cámara con la derecha. Sobre todo, si no has implementado los controles adecuados del lado derecho del teclado.
Sí, era un código puesto a toda prisa, ni siquiera mi última versión  de la cámara isométrica. Ese es el problema de la accesibilidad: no nos percatamos de que falta hasta que nos afecta directamente. Es muy difícil valorar lo que necesita alguien que es zurdo, carece de una mano, no ve los colores o simplemente no ve nada, si nosotros mismos no sufrimos esas carencias.
En mi caso, ha sido necesario pasar varios meses volviéndome zurdo poco…

A partir de mañana se extiende el servicio de Internet en Cuba

Quizás no podamos decir que el 29 de septiembre es el día que arrancó el servicio de Internet en los hogares cubanos, porque el mismo ha estado dando vueltas de una forma u otra (pruebas piloto, comercialización limitada), pero sí es una fecha significativa. A partir de mañana, 17 consejos populares (o barrios) en 7 municipios del país, podrán contratar Nauta Hogar, siempre y cuando dispongan ya de teléfono fijo en casa.
La oferta, esperada desde hace años, ha sido mejorada en base a las críticas de los participantes en la prueba piloto, pero aún así adolece de carencias y no está al alcance del bolsillo trabajador, a menos que aprendas a vivir sin comer y no te moleste andar desnudo y descalzo. La anterior oferta arrancaba en 128kbps a $10 CUC (pueden asumirlo como $10 USD), que fue casi de inmediato subida a 256kbps, siendo la siguiente velocidad 512 a $30 o $40, hasta llegar a 2mbps a $115 mensual. Ahora la velocidad mínima es 1mbps, algo un poco más decente y acorde con los reque…

Documental: La historia de The Witcher

Un poco tarde, pero no podía dejar de mencionar este genial documental sobre la historia del videojuego The Witcher, que abarca desde un primer proyecto cancelado, hasta la fallida versión para consolas. Todo ello narrado por los protagonistas de la historia, con arte conceptual y videos de los prototipos.En polaco, pero subtitulado en inglés.


ScriptableObjects

Los ScriptableObjects son unmecanismo de Unity que solemos descubrir más o menos a nivel medio. Son una forma de serializar y almacenar información, ya que las estrucutras de datos normales no guardan los valores que les pones en el editor o entre corridas del proyecto.
Casi todo el mundo empieza utilizando XML o JSON hasta que descubre los SriptableObjects. No voy a entrar en detalles técnicos, porque los tutoriales sobran por ahí. Mejor hablaré de cómo me ha ido con ellos.
Nuestra relación ha tenido altas y bajas, y probablemente las seguirá teniendo. XML fue mi primera opción para guardar definiciones de personajes, objetos y habilidades: es flexible y todos lo conocemos a fondo. En cambio, los ScriptableObjects son clases, por tanto tienen una estructura fija. Como ventaja, ofrecen que son más "naturales" para Unity: pueden ser asignados desde el editor y utilizados como cualquier otro asset. Otro detalle que puede causar problemas es que un ScriptableObject retiene los…

Configuración de gráficos

Y como les decía ayer, dediqué un rato a jugar con al configuración gráfica del proyecto, más que nada para probar cosas y ver qué funciona. Unity por defecto trae varios niveles de calidad con un montón de parámetros, pero por supuesto, nadie los usa directamente. Lo más adecuado es ofrecer al jugador la posibilidad de ajustar a gusto cada parámetro, en vez de darle niveles predefinidos.
El gran problema aquí es que son una docena de cosas que se pueden cambiar, y quizás algunas no sean relevantes según el tipo de juego. Al respecto no he logrado encontrar información concreta, por lo que supongo que tendré que aplicar el método de ensayo y error.
Por lo pronto, los resultados que he obtenido son un poco confusos. En casa, la diferencia entre la calidad máxima y la mínima es de 20 cuadros por segundo o más. Sin embargo, en un hardware más limitado, no conseguí ganar en rendimiento ni siquiera con la calidad reducida. Lo cual es muy jodido, porque en esencia, la idea es que puedas tu…

Y al fin, solución para el Unity 2017 y su raro problema offline

El Unity 2017.1 tiene un raro problema al trabajar en modo offline: en realidad, no funciona si estás totalmente desconectado. En la oficina, donde hay internet (aunque limitada), tengo que desconectar el cable, activar el modo offline, cerrar, y volver a abrir el editor, esta vez con el cable conectado. En casa, de ninguna manera.
Sin embargo, ayer un amigo me dio una solución que solucionó todos mis problemas, y valga la redundancia. El truco consiste en abrir una escena del proyecto desde el explorador de Windows, en vez de ejecutar el editor mediante el acceso directo. Ya he comprobado que funciona en casa y he logrado al fin pasarme por completo a la nueva versión, que trae algunas cosas que me interesaban. Por ejemplo, ya puedo descartar el Visual Studio 2017, pues el Monodevelop funciona (desde la 5.3, si no recuerdo mal, me daba problemas el autocompletado). Sí, algunos dicen que el VS es mucho mejor, pero yo siempre he preferido las herramientas simples y funcionales. Visual…

Divinity Original Sin 2, Larian da el paletazo

Leí ayer que Larian Studios ha conseguido vender 500k copias de Divinity Original Sin 2 en apenas cuatro días, toda una proeza (sin mencionar que alcanzaron los $500000 solicitados en su campaña en un lapso muy breve). Yo aún no he podido echarle mano al juego, ya saben que aquí estamos fuera de... todo, aunque sí pude probar un demo hace un tiempito. Un buen RPG, que prometía mucho, y por lo que veo, ha cumplido con creces.
Si aún no sabes de qué va el juego, pues aquí está el trailer para que te pongas al día:

Yo, como desarrollador, me alegro muchísimo de su éxito, y como jugador también. Espero que eso les garantice seguir en el negocio para que puedan darnos otros buenos títulos como este.

Instalar net 3.5 offline en Windows 8/10

No sé por qué aún me sorprenden las cosas de Microsoft, luego de 20 años de lidiar con sistemas Windows. Quizás sea por su creatividad para producir las estupideces más ilógicas en el campo de los sistemas operativos, digna de mejores empeños.
Hace poco tuve una desagradable experiencia cuando el instalador de Windows y luego el Administrador de Discos destruyeron mis partitiones Linux sin preguntar (ni siquiera las veían). Y ayer, me vi otra vez enfrentado a un problema clásico: el framework .NET 3.5 era imprescindible para instalar algo. Los que usen Windows 8 y 10 seguro han visto esto: el sistema incluye el .NET 4, sin embargo, las aplicaciones que requieren el 3 no funcionan con ese. La solución oficial de Microsoft es que lo instales a través de Windows Update, ni siquiera dan un instalador offline, porque el que dan hace lo mismo: descargar el framework de Windows Update. Esto no es un problema si tienes internet sin limitaciones, pero si estás desconectado o en una red que de…

Sobreviviendo otro huracán

Que no será el último, seguramente. Esta vez, como la anterior, Santiago de Cuba escapó a los peores efectos del ciclón Irma, un categoría 5 con vientos de 280 km/h. Ni siquiera la lluvia fue particularmente intensa y no ha marcado una diferencia para los embalses de la región, casi vacíos.  Sin embargo, el centro del país sí fue golpeado con severidad.
Así vivimos acá, esquivando huracanes de año en año, sabiendo que algún día nos tocará el número ganador en esta lotería. Y en Santiago además, tenemos el exclusivo privilegio de padecer también temblores, con probabilidades de sufrir uno destructivo de verdad en algún momento.
De momento, solo queda esprar que la temporada ciclónica actual termine sin que nada suceda y nos llegue la breve tregua hasta el año próximo.

Volviendo a escribir cuentos

O mejor dicho, terminando un cuento. La verdad, no esperaba escribir más cuentos, porque creo que se me dan fatal, pero una amiga escuchó una idea que tenía abandonada y me animó a concluirla. El resultado lo analizamos ayer en el taller literario y el consenso general es que funciona bastante bien.
Aún me queda pulir y mejorar, porque lo que revisamos fue una versión preliminar terminada en media hora. El cuento es un engendro diabólico, mitad fantasía y mitad ciencia ficción, porque se desarrolla en dos mundos diferentes.
Como decía, la idea surgió hace varios años, pero la dejé inconclusa, y luego de mis malas experiencias con mis cuentos en el taller literario Espacio Abierto, decidí no incursionar mucho en los relatos. El año pasado lo intenté, para presentarme a dos concursos, pero como no obtuve nada, descarté definitivamente escribir historias cortas.
Sin embargo, algunos colegas acá han revisado mis trabajos y creen que no están tan malos, incluso hasta he valorado la idea d…

Armas cuerpo a cuerpo vs armas de fuego

Parece que una de las reglas para ser superhéroe es utilizar el arma más inútil posible. Aunque el mundo ha evolucionado y se inventaron las armas de fuego, es más guay que vayas por ahí peleando con una espada, un par de palos o incluso con un arco. Supongo que algunos me dirán: "pero un artista marcial ágil y bien entrenado puede enfrentarse a un atacante armado con pistola", obviando el nimio detalle de que sí, puede conseguirlo, si la distancia es corta y su oponente no está igualmente entrenado, no es rápido de reflejos o está pensando en la próxima temporada de Juego de Tronos.
Como bien demostraron los cazadores de mitos, es imposible evadir disparos a varios metros de distancia, aún contando con la ventaja de saber en qué dirección aproximada irán los proyectiles:


¿Alguien se anima a intentarlo contra un arma en modo automático? ¿Con balas que viajan a 700 m/s?
La verdad es que cuando el equipamiento de un oponente te supera, hay muy poco que hacer, salvo buscar cóm…

Mini-reseña de Nade

Hace tiempo que no hablo sobre lo que estoy leyendo por acá. El caso es que hay montones de personas hablando de libros, en blogs, en youtube, en todas partes, y todas hacen más o menos lo mismo: promocionar grandes autores que no necesitan más promoción. No me malinterpreten, soy un fan a muerte de Brandon Sanderson, Joe Abercrombie y compañía, pero ellos ya son famosos y tienen detrás una maquinaria de publicidad. No critico a quienes los recomiendan y reseñan sus libros, de hecho, yo los recomiendo y los seguiré recomendando, pero nada que no queda en unas breves palabras.
Hoy les daré mi opinión sobre el trabajo de una amiga que igual que yo, ya  diferencia de Sanderson y compañía, no tiene detrás esa maquinaria publicitaria. Ambos estamos incluidos en el catálogo de la Editorial Guantanamera, más que incluidos, tirados en la parte de atrás, olvidados. Una pena, porque Nade, de Malena Salazar, es un librito que merece mucho más. Incluso, recibió el Premio David en el 2015 y ha re…

Novela concluida y otras noticias

El trabajo inicial en mi quinta novela ha concluido. Esta es la segunda parte de Despertar: Séptimo, que sigue acumulando buenas opiniones entre los lectores. El post promocional ya ha sido actualizado con la reseña de Raúl Aguiar que mencioné hace unos días.
Ahora empieza el proceso de pulir, dejar reposar, y volver a pulir, en el que intervienen los lectores cero. Esta vez se han sumado algunos más. También espero contar con un poco más de tiempo, la primera parte salió algo prematura, sin retoques y sin una revisión profesional.
Además, les aviso que está disponible un nuevo número de la revista Korad, que les recomiendo que no se pierdan. Ese cuento de Umberto Eco incluido es una delicia.

Qué rayos es la espada de Brienne y otras divagaciones tácticas

Spoilers ahead! Vamos a hablar del episodio 4 de la 7ma temporada de GoT. Primero, un detalle curioso: ¿qué rayos es la espada de Brienne Tarth? A primera vista, parece una espada de hoja ancha (broadsword). Utilizada entre los vikingos, por ejemplo, la espada de hoja ancha es la típica de los caballeros. Es para una sola mano y se usa como arma de corte, mayormente.
La espada que emplea Brienne mientras entrena es más o menos así, salvo que su pomo es el de una espada larga, o casi. Es tan alargado que puede empuñarla con las dos manos, lo cual es raro. Y es raro porque los caballeros casi siempre llevan escudo, y es muy difícil dar mandobles cuando tienes la mano torpe enredada en un escudo. En fin, que mejor dejamos el tema.
Vamos a analizar la batalla siguiente, que al fin le da algo de vida al capítulo (y a Daenerys). A diferencia del despropósito que fue La Batalla de los Bastardos, en esta ocasión los guionistas se han redimido un poco (solo un poco).
Empecemos. Daenerys deci…

Primera reseña de la novela

Hace dos días recibí de Raúl Aguiar la reseña de la novela, que le había solicitado hace un tiempo. Raúl, uno de los escritores más destacados de la CF cubana, y además profesor del Centro Onelio (que forma a las nuevas generaciones de escritores cubanos), accedió gentilmente a leerse mi libro, y al fin tengo sus opiniones. Las mismas serán publicadas en la revista Korad, supongo que en el próximo número.
De momento les diré que Raúl tiene una opinión favorable del libro, lo cual me ha alegrado mucho. Sí echó de menos un mapa, algo que yo también quisiera tener y veré si puedo solucionar para la segunda parte. Si es que se acepta su publicación, pues aún no tengo confirmación al respecto.

Vacaciones

Llega agosto, con vacaciones bien necesarias. Estaré ausente unos quince días a  partir del lunes, período que aprovecharé para holgazanear en casa. Y de vez en cuando, para trabajar en mis proyectos.
Es muy posible que a la vuelta, quizás antes, venga ya con la beta pública del Laberinto del Saber.

Larga vida a los desarrolladores de Windows 10

De todo corazón les deseo a los desarrolladores de Windows 10, que no sabe diferenciar una partición Linux del espacio libre del disco, o que no puede formatear una partición propia sin eliminar las particiones Linux,  una larguísima vida. También les deseo, de todo corazón, que durante el resto de esa larguísima vida, padezcan de sarna incurable en la entrepierna.
Me ha tomado dos días encontrar la combinación correcta para instalar Windows 10 y Linux, porque siempre que lo hacía, Windows eliminaba las particiones de Linux ya instalado. En teoría, basta con instalar Windows, y luego Linux. El gran problema está en que debes crear y dar formato a cualquier partición Windows adicional desde el instalador de Linux. Si intentas hacerlo con el Administrador de Discos de Microsoft, éste destruirá cualquier cosa que no reconozca. Como les decía, solamente formatear una partición ya creada en FAT32 elimina las particiones Linux.  Menuda mierda.

Al fin, acabé Mass Effect

Gracias a un mando prestado, pude terminarlo sin perder la mano derecha. En fin, nada que decir que no haya dicho ya, aún así lo repito: decepcionante, inflado a la fuerza, y una historia que podría haber sido mejor de no diluirse más que un preparado homeopático.
Una vez concluido ese asunto pendiente, es hora de pasar a otras cosas, como por ejemplo terminar la segunda parte de la novela. no es que no haya escrito muchísimo en estos días, sino que lo he estado haciendo en mi sexto libro. Y depués me quejo de Rothfuss...
Y la buena noticia es que alguien me ha donado un mando de Xbox viejo y roto. Quizás no sea tan buena noticia cuando descubra que no puede ser reparado, pero de momento toca tener mente positiva. Jugar con el mando no es tan incómodo cuando uno se acostumbra y además me permite adaptar los proyectos para su uso. En estos días aprendí mucho al respecto jugando Mass Effect, y lamenté no tener otro título a mano para experimentar otros enfoques.
De todas formas, ahora …

Unity 2017.1 y adiós a DirectX 9 en Unity 2017.3

Acaba de ser lanzada la versión 2017.1 del motor de juegos Unity3D, la primera bajo el nuevo esquema de denominación.
Aunque la lista de funcionalidades es enorme, en primer lugar el anuncio se centra en hablarnos de las ventajas de Timeline y Cinemachina, que a pesar de ser tan importantes no son parte del motor, sino que hay que instalarlos desde el Asset Store.Timeline y Cinemachina permitirán la creación de cinemáticas y zarandajas similares, y a juzgar por el peso de la propaganda que le hacen, no podremos vivir sin ellos y son lo mejor que se ha inventado desde el sexo oral. En tercer lugar, el nuevo stack de efectos de post-procesado de imágenes, que es como los que teníamos de toda la vida (Bloom, SSAO, etc) pero ahora mejorado y con nombres más chulos compatibles con la terminología del cine. Podrás trolear a tus amigos hablándoles de Aberración Cromática, "full-HDR color pipeline with Academy Color Encoding System  (ACES) support, and an LDR pipeline", aunque no …

Proyecto actualizado

Luego de un largo período de abandono, he decidido actualizar mi viejo proyecto The Key of the World. La última versión de Unity que utilicé fue la 5.2, y los cambios introducidos durante el desarrollo hicieron que el proyecto fuese incompatible con la 5.6. Luego de un breve trabajo de migración, conseguí que funcionara y los cambios ya están en el repo.
The Key of the World, para los que no lo sepan, es un RPG isométrico en 3D, y además es software libre. Aunque a algunos no les guste que esté hecho con Unity, lamentablemente fue decisión que tomo el equipo en conjunto, en aras de buscar más calidad, eficiencia y adquirir conocimientos con vistas a desarrollar un juego comercial más adelante. De ahí que descartáramos Urho3D, algo que en su momento me dolió, pero que considero que fue acertado.
En dependencia de cómo está mi tiempo en los próximos días, pienso integrar mejoras y corregir errores de diseño, aprovechando la experiencia conseguida durante los últimos meses de trabajo. A…

Menú con soporte para mando

El asunto no resultó tan fácil como esperaba, pero anoche logré adaptar el menú principal que tenía hecho. Ahora es posible desplazarse por los botones usando el mando de Xbox.
La dificultad estriba en que lo usual es utilizar la cruceta (DPad), que no es un botón , sino un eje (igual que los triggers). O sea, que no es un valor verdadero o falso, y tienes que agenciarte una vía de interpretarlo como tal. No solo eso, también debes dar tiempo a que el botón de la cruceta sea liberado antes de volver a identificar el valor del eje como un nuevo evento, con unos 150 milisegundos basta. Esto último podría ser un error mío, pero fue la única forma que encontré de hacerlo funcionar correctamente. Y la cosa, en código, quedaría así:

int selected = 0;
bool DpadUp = false;
bool DpadDown = false;
float EventTimer = 0;


void Update () {
        if (EventTimer>0)
            EventTimer -= Time.deltaTime;
        float y =  Input.GetAxis("DPadY");
        if (y > 0 && !DpadU…

Al fin, un poco de luz en el control de los mandos

Tengo que decir que el asunto de dar soporte a múltiples mandos es muy jodido. El caso es que Unity no ofrece un mapeo estándar uniforme para todos los dispositivos, o al menos para los más comunes (variantes de Xbox/PS). En fin, que en el proyecto (en cada proyecto) hay que mapear a mano los botones/ejes con su correspondiente nombre, o comprarse Rewire en la Asset Store, un paquete que te ahorra esa locura. Así que lo siento, nada de soportar mandos exóticos por el momento. Escogí Xbox 360 que es lo que tengo a mano, temporalmente.
Para configurar el mando de Xbox 360 me auxilié de dos excelentes tuturiales que les dejo aquí:



El segundo es un poco largo, pero aporta un método diferente para el mapeo de los triggers, que aunque no lo crean, no se manejan como botones, sino como ejes. En esencia, la configuración no es complicada, solo un poco trabajosa en caso de que necesites usar todos los ejes y botones del mando, que son unos cuantos. Si nunca has usado uno, te puedo adelantar q…

Probando un mando de Xbox 360

Siempre he sido un jugador de teclado y mouse, excepto los simuladores de vuelo, para los que tengo un joystick. Acá en Cuba los joysticks no se ven mucho, nadie los usa. Tampoco es que los jugadores de PC usen mucho los mandos, aún cuando además tengan la suerte de ser dueños de una consola.
Mis experiencias con consolas son pocas y breves, creo haberlo mencionado antes. Y soy de la opinión de que es muy difícil emular la versatilidad de la combinación teclado/mouse. Sin embargo, tenía pendiente dedicarle tiempo a los mandos, para saber de primera mano acerca de cómo implementar su uso en mis propios proyectos.
Ayer me prestaron al fin un mando de Xbox 360. Nuevo de paquete, aún el plástico brilla. Tan nuevo, que me da pena usarlo. Solo tenía a mano Mass Effect: Andromeda para probarlo y darme cuenta de mi tremenda torpeza, creo que necesitaré semanas para habituarme a mover la cámara con el stick. Mi prioridad era ponerlo a prueba con Dragon Age: Inquisition, que es lo más parecido…

Lamento decirte esto, pero esa armadura de cuero... no existe

Sé que puede ser doloroso para algunos desarrolladores de juegos, pero tengo que decirles que la studded leather armor no existe.


El término surgió en D&D, aunque los gamers de PC probablemente la recuerden más de Diablo o algún otro CRPG. El equivalente real es la brigantina, de la cual hay montones de variantes (de hecho, los resultados en Google para studded leather armor son brigantinas), o también la armadura lamelar. Pueden verlas en Google Images, yo, por si acaso, no las pondré aquí.
Al parecer, los creadores de juegos, que solemos copiar de otros juegos sin preguntarnos a veces si lo copiado es fiel a la realidad o no, hemos ido pasando el término de un título a otro, perpetuando el error.
Estas armaduras usaban cuero endurecido, que si vamos a comparar con algún material conocido, sería plástico. O sea, que no es para nada flexible, como el cuero suave que vemos en algunas armaduras de utilería en filmes modernos, que en la vida real no ofrecerían ninguna protección co…

Concurso Indie de Amazon

Ya está en marcha el Concurso Indie de Amazon, en su cuarta edición. Y les advierto que básicamente es un negociazo de los grandes, probablemente el mejor invento para hacer que los escritores se esfuercen el doble el producir dinero (para Amazon, claro).
El concurso no tiene un jurado como es tradicional en los certámenes literarios (lo tradicional está sobrevalorado, así que vamos a innovar) y cuyo nivel le da credibilidad y prestigio al torneo (no lo necesitamos, somos Amazon), sino que gana el que más copias venda, así de sencillo. Supongo que en Amazon, todos unos genios, piensan que qué mejor jurado que el respetable público lector, que ha encumbrado obras de probada calidad literaria como 50 sombras de Grey, El corredor del laberinto, o Crepúsculo.
Y ojo, no digo que las obras en concurso no sean buenas, algo que te va a conseguir buenas valoraciones, que a su vez redundan en más ventas. Pero básicamente, más que de escribir una historia decente, el concurso va de gastarte un …

Y a veces...

Aún queda espacio para sorpresas en esta ciudad dejada de la mano de Google. Ayer conocí a un estudiante con ciertas habilidades en modelado y dibujo, y cuando digo habilidades quiero decir que va más allá de garabatear monos con estilo manga. Mucho más allá. De hecho, solo recuerdo haber visto algo así una vez. El manejo de los colores, degradados y detalles es sorprendente, y para más inri, aplicado a golpe de dedo en un celular.
Me quedé medio lelo, vaya. Todo eso acompañado con un toque de conocimientos sobre juegos: qué es un mapa normal, lo habitual que debería saber un artista. Y además, no está solo, son varios. Hemos quedado en hablar con más calma y ver si podemos ayudarnos mutuamente, que nos vendría muy bien.
Y yo que ya había dado por imposible encontrar personas con las habilidades adecuadas... parece que estaba equivocado.

Mis opiniones sobre el E3 de este año

No sé si se me habrá olvidado alguna conferencia, pero creo haberlas visto todas. Bethesda, EA, Microsoft, Sony, Ubisoft y Nintendo. Si bien considero este evento mejor que el del año pasado, tampoco es una maravilla.
Y empecemos con mis modestas conclusiones. Bethesda quiere apostar fuerte por la Realidad Virtual, pero aparte de eso, solo cuenta con las franquicias de Id para mostrar algo nuevo, en este caso, Wolfenstein: The New Colossus. Como cada año, traen Elder Scrolls Online con su correspondiente expansión.
EA se reafirma como la reina de los juegos deportivos, la competitividad y el multijugador. Aparte de eso, tiene poco más que mostrar, y si no lo creen noten que 40 minutos de su conferencia estuvieron dedicados exclusivamente al multiplayer de Star Wars Battlefront.
Microsoft presentó una avalancha de títulos para la nueva Xbox One X, casi todos iguales. Pero todos en 4K, como si eso le aportase algún valor diferente. La apuesta de Microsoft parece ser 4K, prescinden por …

Regreso al pasado: MS Access

Aún sigo con problemas en la mano, pero he tenido que retomar un poco mi ritmo de trabajo. He vuelto a escribir, que hace una semana casi no podía hacerlo, y sobre todo, estoy tratando de ponerme al día con tareas atrasadas en la oficina.
Así que me he dedicado a implementar una base de datos relativamente sencilla que se me pidió hace un mes, y digo relativamente sencilla porque al final se ha enredado la cosa. Mi enfoque inicial era usar PHP+PostgreSQL, pero resultó que por muchas razones sería un problema. No me esta permitido alojar páginas en el servidor de la institución, y crear un sistema conlleva un papeleo adicional para certificarlo, aprobarlo, etc. En fin, que me dijeron que me olvidara por completo de eso y que usara MS Access.
Access... una herramienta que usé muy poco y hace ya más de diez años, esa sí era fea. Bueno, qué remedio. Y ya que toca joderse, mejor joderse en grande, vamos a usar Access como interface, pero la base de datos vamos a ponerla en PostgreSQL. Y …

Aprendiendo de Fallout 4: decisiones

Post muy breve porque tengo la mano derecha con tendinitis y casi no puedo escribir.
Fallout 4 es un juego bastante mierdero, para qué negarlo. El rediseño del SPECIAL, sus misiones repetitivas... hay muy poco bueno que decir de él. Sin embargo, lo que sí tiene a veces es una narrativa aceptable. Quiero decir, que no las he visto peores porque en realidad juego poco, pero tampoco es como para echrla a la basura.
Sin embargo, hay un pequeño detalle que recién me vino a la mente hoy: al final del juego enfrentas algo que supuestamente es "una decisión difícil". Una de esas en que tienes que decidir si dejas atrás a X o a Z, o cuando Z se pone malcriado y tienes que darle un tiro para conservar el control. En este caso (alerta de spoiler) tienes que decidir si apoyas a tu hijo, ahora convertido en líder del Instituto, o si te opones a él.
Hasta ahí todo bien, salvo por el hecho de que la decisión en esencia te importa una mierda, porque tu personaje y el de tu hijo han tenido…

Un año, un casi prototipo

Más o menos para estas fechas, el año pasado, estaba haciendo las primeras pruebas que luego se convertirían en un proyecto de RPG en tercera persona. Primero con cámara libre, como el Witcher (pueden verlo aquí) y luego más bien tirando a Dragon Age, sin que me acuerde ahora de la razón exacta del cambio. La historia: una distopía ambientada en la Habana del futuro.
Por el proyecto han pasado varias personas, aunque nadie ha dejado una contribución realmente significativa. La idea era formar un equipo completamente cubano e ir sentando las bases para enfrentar un juego complejo en cuanto las condiciones lo permitieran. Luego de un año las condiciones no existen, es obvio que fui demasiado optimista al valorar las promesas de que habría internet en las casas, etc. A pesar de eso, no he dejado de trabajar. O por lo menos, no por períodos muy largos.
Tengo que decir que estoy sorprendido de que un año después tenga un prototipo que hace muchas cosas, a pesar de que me enfrenté a una s…

¿Qué podemos aprender con Mass Effect: Andromeda?

Llevo más de 15 días enfrascado en terminar este juego, que ha resultado ser extremadamente largo. Cada ubicación presenta decenas de pequeñas misiones secundarias que nos obligan a movernos de un extremo al otro del mapa. Hay otras que abarcan varias locaciones, y esas son las peores, porque nos obligan a movernos por toda la galaxia. Nada nuevo, es un truco habitual para inflar el tiempo de juego.
Qué puedo decir, de tan largo, resulta casi aburrido. El gran problema aquí es que las misiones por lo general son variaciones de lo mismo. Por ejemplo, el caso de los monolitos. En cada planeta debemos activar tres monolitos que afectan la habitabilidad del mismo, y además ir a una ubicación y activar el proceso. Después de dos planetas, la tarea de activar monolitos resulta bastante odiosa y lo jodido del caso es que esto no hay forma de evitarlo, porque en cierta forma, es parte de la misiójn principal.
Tampoco escapan a la monotonía las misiones secundarias. Como les decía, hay decena…

Diálogos

No voy a hablar de diálogos en la escritura, sino de diálogos en RPGs, que tiene su complicación. Y empezaré con una pregunta: ¿para qué sirve un diálogo en un RPG?
En mi opinión (y aquí cada cual puede tener la suya, discrepar o abstenerse) los diálogos nos transmiten información relevante a la narrativa del juego, nos permiten conocer acerca de los personajes, y un detalle adicional: podemos tomar decisiones, algo que no puedes hacer en un libro. Se dice fácil, pero como todo, no es tan sencillo de implementar.
El problema es que un diálogo en un juego se debe ajustar a una insignificante restricción: no debe extenderse ilimitadamente. En una novela es perdonable que el diálogo se extienda. Yo mismo soy un escritor de largos diálogos, que modestia, apártate, a veces se me dan muy bien. Un diálogo largo en un RPG es una receta segura para el aburrimiento. Y por largo, me refiero no solo a uno con ingentes cantidades de textos y opciones (Torment: Tides of Numenera es un caso de estu…

Los primeros pasos en un mundo abierto

Luego de un breve paseo por Unreal, he tenido que regresar a Unity. Para empezar, implementé otra misión en el mapa de prueba, lo cual me llevó a evaluar esas primeras misiones, que son, como dice el título de esta anotación, los primeros pasos del jugador en un RPG de mundo abierto.

No fue solo eso lo que me hizo pensar al respecto, también dediqué un par de horas a probar el demo de ATOM, un RPG que recién inicia su campaña en Kickstarter, luego de unos cuantos años en desarrollo. Los invito a que lo prueben.

En fin, vayamos al tema. Me resultó evidente que tendría que establecer unas reglas para las 3-4 primeras misiones del juego, que podrán encontrarse en el mapa inicial, antes de entrar de lleno en la misión principal de la historia. Estas misiones deben cumplir estos requisitos:

Darle a conocer el entorno al jugador, mostrarle un poco cómo se mueven las cosas y qué puede esperar en el futuro.Familiarizarlo con las mecánicas de juego, como el uso de objetos, comercio, y el comba…

La mejor serie de la temporada es...

Tengo un conocido que sin dudar dirá que es Designated survivor. La verdad es que durante un tiempo pensé que era una maravilla, aunque al final solo resulta ser una serie bastante llamativa con los trucos habituales para hacerla divertida.
Pero si juzgamos otros elementos como la calidad de la historia, yo me quedo con The Expanse. Se nota que está basada en un buen libro de ciencia ficción. Es que si nos ponemos a revisar, todo lo bueno que está saliendo en los últimos tiempos es basado en algún buen libro. No me fío de los guionistas de cine y TV norteamericanos a la hora de crear contenido original. Mucha morralla descartable, demasiado estirar y darle vueltas a una trama aún cuando no da para más. Sí, yo sé que de algo hay que vivir, pero sin llegar a extremos que rozan la estafa al televidente y la falta de respeto a nuestra inteligencia (para los que aún tenemos un poco).  En The Expanse las cosas duran lo necesario y la trama se mueve hacia adelante como debe ser.
Al menos pa…

¡Compra mi novela!

¿Aún no has comprado la novela? Pues esta entrada se quedará aquí arriba para recordártelo, junto con los enlaces de compra en Amazon.com y Amazon.es (incluye versión ebook). Acá en El Corte Inglés está en versión ebook, y también en Casa del Libro, Google Play y Kobo.


Me encantaría prometerles que las ganancias serán donadas para una buena causa, pero eso sería una mentira. La verdad es que probablemente si hay alguna ganancia será desperdiciada en comida, bebida, damas de afecto negociable y piezas para mi computadora. Después no digan que no se los advertí.
Ya me han llegado un par de opiniones: Yoss al fin ha terminado su lectura y sus opiniones son favorables. Por su parte, Víctor Hugo también está en proceso de leer, pero hasta el momento dice que le ha gustado. A ver si se animan a hacer una reseña como debe ser. Tú también puedes sumar tu opinión a la de estos ilustres señores, ¡consigue tu ejemplar hoy mismo y deja tus 5 estrellitas en Amazon! ¡No dejes de recomendársela a t…

Star Wars: Rogue One

En la saga original nos habían contado que la información acerca de la vulnerabilidad de la Estrella de la Muerte había costado al vida de "muchos bothan". Pero los bothan son feos con recojones y lleva mucho presupuesto hacerlos con CGI, así que en Rogue One se han inventado una historia diferente. En fin, si ya George Lucas inauguró eso de decirse y desdecirse como si nada (si no, recuerden aquello de que "entrenarás con Yoda, el Maestro que me enseñó a mí").
Y ojo, que no digo que les quede mal. Ojalá todos los guionistas de Hollywood dieran en el clavo como sucedió con esta peli.
La cosa va más o menos de lo siguiente: hay un científico imperial, diseñador de armas, al cual por alguna razón le ha crecido una conciencia de repente y se esconde. Sin embargo, un tío insistente lo encuentra y le pide amablemente que deje de holgazanear y regrese al trabajo. El tío listo no quiere, pero para salvar a su hija, y después que un stormtrooper le pegue un tiro a su muje…

Las últimas páginas: las más difíciles

Me restan una docena o más de páginas para terminar la segunda parte de la novela y cerrar definitivamente el universo de Despertar. Sin embargo, estoy en ese punto desde hace casi un mes. Entre tiempo dedicado a la programación, luego al Numenera y ahora con el Unreal, el que me sobra no me apetece dedicarlo a escribir. Todo tiene sus ciclos, y este en concreto no era mi ciclo literario.
La buena noticia es que realmente no estoy tan atrasado en mi calendario, porque no esperaba concluir antes de abril. Y salvo el par de semanas dedicado al Numenera (vale aclarar que no fue 100% dedicado a eso), el resto del tiempo avancé mucho en el prototipo e incluso encontré tiempo para trabajar en el guión. En fin, que no tiene que cundir el pánico, el libro se terminará, más temprano que tarde, preferiblemente temprano, por supuesto. Sobre todo, porque la próxima idea ya está ahí, empujando para salir. Sí, la verdad es que no escarmiento...

Mi primer día con Unreal

Bueno, si vamos a ser precisos, lo he intentado antes y ayer tampoco es que fuese muy diferente a las ocasiones anteriores. Me senté, un poco soñoliento, puse un tutorial de los recomendados en Reddit, y creé mi proyecto de prueba. Un rato después, estaba soñoliento igual, pero había conseguido un cilindro que se elevaba (introduje una pequeña variación al tuto). Eso, desde C++.
A ver si consigo mantenerme despierto hoy el tiempo suficiente para hacer algo más en C++ y también echarle un vistazo a los Blueprints. Quizás hasta consiga que el Unreal desbanque a Unity en el #1 de mi lista de motores favoritos.

Nauta Hogar, este es el internet para los cubanos

Al fin ETECSA, la empresa que controla las comunicaciones en Cuba, ha presentado los planes de acceso a internet desde las casas. Todo coincide casi a la perfección con un documento filtrado hace unos tres años, que se apresuraron a  desmentir, diciendo que era solo un material de estudio o algo así.
Se circuló una infografía, que luego fue corregida, pues el plan más barato ofrecía ADLS a 128 kbps. Por suerte, una oportuna marcha atrás corrió los precios y velocidades,  ahora el mínimo es 256 kbps, aproximadamente a $15 dólares mensuales, 512 por $30 (o 50, no me queda claro), 1 mbps por $50 o $70 y 2 mbps por $115. Hay que esperar  a que definan con precisión los precios, porque ahora misme me he hecho un lío. Lo más patético no son las velocidades prehistóricas, sino que los planes son de 30 horas mensuales. Las horas adicionales hay que comprarlas a $1.50.
Para darles una idea de lo que se puede hacer con esas velocidades, les diré que 256kbps es lo que tengo ahora en la oficina …