@ agnasg

agnasg


De la diversión y otros placeres medievales

11-02-2018 3:24 PM

Me he estado preguntando todo el día si khpx va a tener una audiencia. Algo así como un grupo de fans. Estoy viendo videos de Dark Soul, de Cupcake, otros, y obvio, tienen fans porque son divertidos, en su forma particular de ser divertidos. ¿Es khpx divertido? Es claro que hay una demanda para un space game. Stark Citizen y otros juegos similares (por no mencionar “No man sky”) revelan un apetito por el perfecto space game, que, al parecer, no ha llegado. O, quizás, los jugadores piensan que tiene que ser posible, aunque todavía no se ha visto un space game definitivamente exitoso, tiene que ser posible, un space game con el tipo de juego que ha habido en otros géneros. En el cine, sucede que las películas han tratado de emular éxitos como el de 2001 o Alien.  Pero eso no sucedió hasta Gravity o, quizás, Interstellar. Eso no ha pasado con los space games. Sí, claro, Eve, etc, etc, pero todavía parece haber un territorio no 100% explorado como ha sucedido en otros tipos de juegos. En otras palabras, sí, khpx tiene un interesante segmento del mercado, y sí van a haber jugadores interesados, a pesar de sus características nerdianas. ¿Eso lo hace per se, divertido? No necesariamente pero si te gusta el estilo, el género, las características, es un buen primer paso. Nadie se divierte con algo que no le gusta: la diversión viene después de la degustación, cuando el acto es consumado nuestro cerebro transforma lo que estamos haciendo en una reacción: ¡Que divertido! Esto sucede después, no antes. Por ello antes de la diversión tiene haber una aproximación debido al agrado: esto me gusta, deseo probarlo. No podemos divertirnos con algo que no experimentamos, y nunca vamos a experimentar algo que nos causa repulsión. Por ello, la existencia del mercado para los space games es tan importante.

Pero eso no importa. A mi solamente me interesa un jugador: yo.

Se ha dicho que si un juego al menos tiene un jugador, ya ha dado el primer paso en la dirección correcta (no se quién dijo eso, y si nadie lo ha dicho, bueno, ya lo dije). Ya en otros sitios he mencionado las bondades de khpx, todavía si me permiten mencionaré una más: khpx es simple en su interfase, simple en los efectos especiales, tiene las cosas básicas que debe tener todo space game (exploración, uso de recursos, progresión a través de la dominación de planetas, recursos y tecnologías, y otras populares características), y además ofrece múltiples sistemas de progresión: misiones, piratería, penetración tipo ninja, venta de armas, alianzas.

Nota 22-02-2023: si Ud. está curioso por qué el enlace de este post es micronosis.com/de-la-diversion-y-otros-placeres-medi3vales con ese 3 en vez de medieval, es porque el archivo que resuelve los URLs en Apache web server el archivo htaccess no acepta que el url incluya “eval” o “ftp”, y como medieval incluye “eval”, bueno eso es la razón. “eval” es una instrucción de PHP que permite la ejecución de código. Utilizado por hackers alrededor del mundo.

Yo lo que quiero es un space game

18-01-2018 5:24 AM

Mi cerebro trabajando a las 3am

Mi cerebro trabajando a las 3 de la mañana es una máquina prodigiosa. Ayer estaba resolviendo una complicada formula trigonométrica, que involucraba modificaciones en al menos 3 funciones en mi juego espacial khpx, sin mucho éxito. Creo que le dediqué 1-2 horas al tema, y parte de mis pensamientos durante los 40 minutos de Lost (voy por la última temporada, Locke realmente me tiene molesto). Hoy, en 2 minutos resolví el problema, agregando un término en la ecuación (algo así como a=b+c => a=b+c-d. Ese término ‘d’ me consumió sin éxito 2 horas ayer).

Los programadores sabemos la potencia que tenemos en las horas de la mañana, y por eso no la desaprovechamos nunca. Usualmente dejo las más complicadas actividades para estas horas, y las cosas rutinarias o que puedo hacer en piloto automático para el resto del día.

“Irrelevante es una término legal”

Esta pregunta en stackoverflow es una maravilla. ¿Puede “a== 1 && a ==2 && a==3” evaluar a TRUE (verdadero) en alguna situación, en javascript?

El preguntón recibió esta pregunta en una entrevista de trabajo y su respuesta fue “imposible”. Ouch… craso error. En computación, como explico más adelante, no existe tal cosa: todo es posible.

Las respuestas son brillantes. Yo por mi parte respondí  a la primera parte de la pregunta ( ¿Puede “a== 1 && a ==2 && a==3” evaluar a TRUE?) con un “Sí, en cualquier lenguaje de programación” y a continuación muestro la versión en C/C++:

[code]

#define a (b++)
int b = 1;
if (a ==1 && a== 2 && a==3) {
printf ("Yes, it’s possible!\n");
} else {
printf ("it’s impossible!\n");
}
[/code]

Por supuesto, hubo respondones que adujeron que la pregunta es en relación a javascript, y que C/C++ es irrelevante. Mi querido amigo, mi apreciado lector, irrelevante es una término legal, usado en los tribunales, en programación todo es relevante, incluyendo los comentarios que te hizo tu mamá cuando te despertaba para que te fueras a la escuela. Si insistes en usar el término “irrelevante”, la próxima vez que te persiga un bug, te va a torturar durante días, hasta que digas “nada es irrelevante en programación, nada es irrelevante en programación. Lo juro.” Imposible, irrelevante, nunca, siempre,”no puede ser”, son términos inexistentes en la jerga de cualquier programador profesional.

Star citizen ha recaudado más dinero que la deuda externa de Venezuela

Este artículo. Aquí están los comentarios en reddit.  Por si has estado debajo de una piedra en la redoma de Petare en los últimos 3 años, Star citizen, un juego ambientado en el espacio (space game) inició un Kickstarter  hace tres años, y lleva recaudado casi 100 millones de dólares. Todavía parece que no hay una fecha oficial del lanzamiento. La gente ya no se acuerda del juego, y sigue recaudando dinero, hoy en día. ¿Hay algo positivo en todo esto? ¿Podemos aprender algo? La primera lección es que un Kickstarter aguanta lo que sea (en este momento hay 15 millones de patrocinadores en  kickstarter.com , casi 140 mil proyectos financiados). Lo segundo es que la búsqueda por el perfecto space game no se detiene. Toda la decepción de “No Man’s Sky” no desanimó a los jugadores.

¿Mi respuesta? khpx…

“poder jugar con un comerciante, un artesano o un diplomático, establecer mis rutas comerciales, impactar al mundo en alguna manera… ¡o hacer lo que quiera!” (“to be able to play a trader or a crafter or as a diplomat, set my trade routes, impact the world this way… or do whatever I want!”)

Objetivo del juego: abierto, libre

26-12-2017 8:42 AM

“Ningún precio es demasiado alto por el privilegio de ser el dueño de sí mismo”

– Friedrich Nietzsche

Leo con cinismo invertido (algo que acabo de inventar) una interesante descripción rápida de Minecraft:

“El juego, un sandbox tridimensional sin objetivos particulares, permite a los jugadores construir mundos enteros mediante la “minería” y la construcción con bloques pixelados tipo dibujos animados.” (“The game, a three-dimensional sandbox with no particular goals, allows players to construct entire worlds by “mining” and building with cartoonish pixelated blocks.”). La descripción aparece en un artículo en wired magazine sobre el botnet Mirai (un malware que infecta cámaras de seguridad y routers para generar ataques DDOS). Altamente recomendable su lectura.

El contexto en el que se menciona Minecraft dice también que es un juego de $27, con 55 millones de jugadores mensuales (que lo juegan en algún momento en el mes) y que hay un millón de jugadores en línea todo el tiempo. Y todo eso con un juego donde el objetivo es armar “cosas” con cajitas que lucen como de dibujos animados. O como ha sido llamado con frecuencia, con un lego digital. Lo cual resulta peyorativo y todo un logro al mismo tiempo.

En el otro lado del universo, en /r/IndieDev, 99 de cada 100 juegos apenas alcanza 100 jugadores los primeros 100 días. Y los hay con descripciones tan tontas como las de Minecraft, tan inteligentes y sofisticadas como las de Eve, tan incomprensibles como las de Limbo. Las descripciones no importan. De hecho, el juego tampoco importa. Lo que importa al final es lo que los jugadores hacen con el juego. Al escribir sobre khpx que es “un juego ambientado en el espacio” (o un juego espacial) donde puedes explorar y conquistar, pero con mínimas limitaciones, lo que busco es que sea un juego donde el jugador es el que decide cuál es y dónde está el juego, donde el límite es su imaginación, lo cual suena un lugar común, pero sigue siendo igual de apetecible. Es un juego abierto, en el sentido de que su objetivo le pertenece al jugador.

Una grúa telescópica de las que usan en los puertos

Pero hay jugadores que encuentran un juego sin un objetivo definido similar a un cuadro de Picasso: algo que no tiene sentido. Y huyen despavoridos ante la posibilidad de verse abrumados por “el sin sentido”. Un ejemplo de esto son las personas que ante un conjunto de piezas genéricas de lego son incapaces de hacer algo discernible con ellas. O los que encuentran absurdo un cubo de rubik: esto no se puede hacer. Para ellos mi recomendación: huyan, huyan sin ver para atrás, khpx no es para todo el mundo. Siempre queda farmville.

Dora Maar

O lo puedes intentar. Todo se hace simple si lo intentas. Por ejemplo, yo pasé dos semanas escribiendo este post, buscando básicamente la mejor forma de expresar estas ideas. Una vez escrito luce obvio, claro, simple. Pero ante la hoja de papel en blanco (o la pantalla en blanco) las cosas no lucen tan fáciles. Como quiera que sea khpx incluye:

  • Tecnología de scanners, telemetría, analizadores de espectro y más.
  • Mapas
  • Detector de formas de vida
  • Múltiples tipos de armas con diversos niveles de desarrollo
  • Manejo de flota
  • Manejo de múltiples sitios en diferentes planetas con explotación de diversos recursos

Con todo esto, y algo de imaginación es mucho lo que se puede hacer. Creo.

El mensaje en este post ya está escrito y descrito: khpx es libertad de ser dueño del juego, nada más, nada menos. ¿Será posible?
 

NOTA: Fecha de inicio:09-12-17. Última edición: 26-12-17

khpx

09-12-2017 8:03 AM

Actualización 09-01-2023: para la primera versión, khpx va a ser standalone, un solo jugador. No va a ser un MMO.

Resumen de cambios en el codebase:

changes 2018: 58
changes 2019: 36
changes 2020: 278
changes 2021 199
changes 2022 5
changes 2023 23 (so far)

A pesar de que en el 2022 aparecen registrados solamente 5 cambios, la bitácora indica 288 horas trabajadas. En compración, en 2021 aparecen registradas 540 horas. Comenzando este mes, voy a utilizar una herramienta de control de horas, o time tracking para llevar un mejor control y auditar el tiempo en forma más precisa. Como a mi me encanta reinventar la rueda, hice mi propia herramienta de time tracking, llamada timet, está publicada aquí: macronosis.com/timet

Actualización 06-06-2020: A medida que el juego avanza ligeras modificaciones se van apilando y generando en conjunto variaciones que vistas en conjunto crean cambios tan grandes que el diseño original termina desapareciendo: khpx es un juego en desarrollo, así que lo que viene a continuación puede cambiar en cualquier momento.

Descripción extremadamente rápida

khpx es: “Un juego de exploración, explotación y conquista”

Presentación rápida (“Elevator pitch“)

khpx es un juego ambientado en el espacio que mezcla nuevos elementos de diseño con la tradicional exploración y combate con comandos de texto para crear una experiencia única.

“khpx is a space game that blends new design elements with classic terminal-based exploration and combat to create a unique experience.”

¿Algo más de detalle?

En este momento, khpx es “a hard core low level full featured pixel art solo dev mmo space game” (traducción aproximada al español: “un juego de bajo nivel, características avanzadas, con diseño gráfico tipo pixel, desarrollado por un solo programador, multijugador ambientado en el espacio

hard core porque no es para jugadores ocasionales sino para jugadores de más de 80 horas a la semana, por ejemplo, hay un selector de dificultad (ese menú donde puedes seleccionar “fácil“, “normal“, “difícil“, por ejemplo, en wow es”normal“, “heroico” y “mítico“). En khpx los niveles de dificultad son “difícil“, “suicida” e “imposible“.
Es “bajo nivel” porque no hay soporte de ratón, sino “comandos de consola” con opciones muy parecido a comandos de linux o de los MUDs.
Características avanzadas porque puedes explorar, progresar, es orientado a la búsqueda, construir tecnología/cultivo/granja/mina/ciencia/psíquico, el final del juego es un imperio de 1000 planetas
(debes derrotar a la actual familia del imperio, 50+ jefes estilo Lich King).
Pixel art, no 3d, no hay gráficos de fantasía, sólo ascii e imágenes de baja resolución,16×16.
Es un juego espacial ambientado en el espacio, cientos de planetas, cada planeta 2+ horas de diversión y pesadilla.

Sigue el blog de desarrollo aquí.

A continuación el Post original de 2017 (actualizado)

Este zombie (he desarrollado varias versiones, desde 2012) es un juego de estrategia con elementos del género 4x (eXploración, eXpansión, eXplotación, eXterminio) (pero definitivamente no es un juego 4x), donde el jugador puede practicar la minería, la cosecha, desarrollo de tecnología, y en general desarrollo y dominio de recursos. Sin embargo, mi concepción es que khpx es un juego ambientado en el espacio. El resto son etiquetas inútiles que dicen mucho y explican poco.

El jugador comienza con una nave espacial tan pequeña que en realidad es un satélite modificado y armado que puede trasladarse de un sistema a otro. A través de diversas estrategias puede ir adquiriendo nuevas armas, equipos, naves, minas, territorios agrícolas y teóricamente el control de diversas tecnologías que le permitirá expandir su dominio.

No hay profesiones ni especialización, el jugador puede ejecutar cualquier actividad sin entrenamiento o sin necesidad de usar puntos o dinero. La actividad sube de nivel y de efectividad con su uso. Todas las actividades están disponibles desde el día 1, así que depende del jugador cuáles desarrollar (pero debe ejecutar una serie de misiones, a veces cadenas de hasta 30 misiones para activar algunas de estas actividades).

Desde el punto técnico es un descanso para mí porque está hecho en DirectX, sin engines ni librerías adicionales, sin gráficos sofisticados, meshes y texturas, solamente con dibujos en modo pixel art. El juego no pretende ni es una simulación: vive en un universo con reglas diferentes, no necesariamente completas. Es decir, es posible que no estén implementadas ciertas reglas físicas/químicas comunes en nuestro universo. Los sonidos y los efectos están reducidos al mínimo. Esto, al menos en la primera versión. Su enfoque, en fin, es minimalista, estilo años 90, pero actualizado desde el punto de vista de las interfases.

Todas las acciones se realizan desde una cónsola, reminiscencia de la consola de Unix. Voy a agregar hypertext (textos clicklables) en los listados para activar el panel de manejo de los elementos, pero estos paneles se podrán acceder igualmente a través de comandos. En estos casos estoy agregando el uso del mouse porque asumo que los jugadores van a protestar la interfase y van a exigir algo más amigable, sobretodo porque algunas personas seguramente encontrarán el uso extensivo de la cónsola como algo aburrido/tedioso/repetitivo, sobretodo a la luz de los juegos actuales. Para mi, esta es una de las principales motivaciones: un juego donde toda la interfase es a través de comandos de texto. Constituyen unas vacaciones del mouse, si se quiere, y me recuerdan  los juegos de los años 80s.

Nota 09-01-23: en l primera versión el uso del mouse estará reducido al mínimo.

La economía es un dolor de cabeza para cualquier diseñador de juegos, y  khpx no es la excepción. Inicialmente (porque imagino que esto va a evolucionar si alguna vez khpx llega a tener > 10 jugadores) la economía funcionará con el comercio directo entre jugadores a través de un sistema universal de comunicaciones: no hay casa de subastas, no hay vendedores npc. Los artefactos (naves, robots, equipos de comunicación y análisis) son producidos por los jugadores juntando las partes producidas por las fábricas que el jugador posea. Los planos (blueprint) los tienen los ingenieros que estén en la nómina del jugador: por eso es importante dominar planetas y/o ciudades con alto potencial tecnológico. La consecuencia lógica de esto puede ser que se desarrolle un comercio alrededor de las ciudades con potencial tecnológico o posiblemente con los ingenieros. Me refiero a que sea posible vender una ciudad (o el control de una ciudad para ser más exactos) o el control sobre un ingeniero. Esto resulta retorcido desde el punto de vista de los juegos actuales pero no desde el punto de vista pragmático: si a mi me dan un blueprint para construir un scanner que me permite detectar formas de vida en un planeta, más allá de usarlo como decoración en mi oficina no sabría que más hacer con él: necesito a un ingeniero y una fábrica para construirlo. En algunos juegos con tener el blueprint mágicamente el jugador se hace un experto en tecnología de scanners planetarios. khpx no es uno de esos juegos.

Mi intención es que eventualmente los jugadores orientados a la economía y al pvp (“economy focused player” and pvp players)  huyan lejos porque khpx hace énfasis en las 3 primeras X de eXploración, eXpansión, eXplotación, eXterminio. Exterminio tiene más que ver con pvp y jugadores depredadores, quienes usualmente se divierten mucho, pero lamentablemente se divierten solos. Los demás jugadores quedan como peones o presas, lo cual no es divertido, en general. En los juegos que involucran expansión y control de recursos, los primeros jugadores tienden a ganar rápidamente demasiado control. La prohibición de pvp es mi intento para evitar  el problema de tribalwars.net, donde eventualmente, un jugador con demasiada fuerza aplasta a sus vecinos. Yo no soy Rubrius Gallus (Masada), así que tendré que disponer de las ideas que tengo a la mano, como han hechos todos los diseñadores hasta hoy. khpx es una interesante oportunidad para probar el concepto y, quizás, desarrollar uno nuevo, si todo sale bien.

¿permadeath? pm en khpx significa que si no estás alerta, si no actúas con astucia, si no piensas en la mejor estrategia para cumplir con tus objetivos eres historia. pm en khpx significa ¡despierta!, ya no estás en farmville. El último objetivo de permadeath en khpx es que descubras (bien sea tarde o temprano) que es mejor “tratar de escurrirte en el territorio controlado por el enemigo, investigar el sitio, y  agarrar el botín sin que nadie te detecte (“trying to sneak into enemy controlled space, track down a complex, and grab the loot without anyone detecting you“). La confrontación directa, o estar descuidado en khpx es mortal.

Presentación rápida (“Elevator pitch“)

khpx es un juego ambientado en el espacio que mezcla nuevos elementos de diseño con la tradicional exploración y combate con comandos de texto para crear una experiencia única.

“khpx is a space game that blends new design elements with classic terminal-based exploration and combat to create a unique experience.”