Publicaciones sobre el desarrollo reunidas en un solo lugar. Hasta disponer de la traducción al español, se muestran las versiones revisadas en inglés con un enlace a la fuente.
A pesar del silencio público, el trabajo está progresando. Capturas de pantalla de la pantalla de navegación del sistema de estrellas. No tendrás problemas para averiguar cuál es viejo y cuáles dos son nuevos.
Aquí hay un pequeño reto: inventar un dispositivo y describirlo, y lo clasificaré. Si a alguien se le ocurre algo que no se ajuste a ninguno de los tipos descritos en el publicación anterior, pensaré en un nuevo tipo y lo añadiré. Obtendrá al menos una línea en los créditos, y tal vez algo más ;)
Una actualización. Se acabó el verano. Los barcos llegarán pronto a tierra, lo que significa que estoy regresando al desarrollo. El descanso me dio tiempo para pensar a través de algunos mecanismos de implementación. En particular, he encontrado una solución para hacer el combate de la nave, y las interacciones de la nave en general, más dinámico y visualmente atractivo. El sistema financiero y económico también ha recibido cierto refinamiento. En general, es alarmante cuántas nuevas ideas han surgido, pero tranquilizador que los caminos y mecanismos para implementarlas en el software son claros. El plan inmediato es el lado de la colonia: población, economía, política, edificios y recursos. Después de eso vendrá la simulación de sistemas de naves, consumibles, soporte vital y elementos relacionados, seguido de un encuentro de combate simulado.
Una actualización: Tuve que cambiar de Python a C#. Durante la semana pasada, me las arreglé para construir y lanzar varios elementos absolutamente clave. En primer lugar, acceso flexible y dinámico a la base de datos. Trabajar con modelos de datos hace que manipular los datos sea muy conveniente. La interfaz web para trabajar con bases de datos también está casi terminada. La conexión está ahí, y los cambios y adiciones de trabajo. En segundo lugar, establecí una conexión cliente-servidor basada en socket desde el motor del juego a la futura base de datos del servidor, sin utilizar las herramientas integradas del motor y todas sus limitaciones. Todavía hay una gran cantidad de trabajo que hacer, pero los bytes ya se están moviendo ))))))
Bien. Se han realizado progresos significativos. El sistema planetario ha comenzado a rotar. Y no se mueve simplemente de acuerdo a un guión: sigue las leyes de Newton. El mecanismo funciona tanto en el cliente como en el servidor, porque los cálculos utilizan coordenadas estándar de tres ejes escaladas para el cliente. Los planetas se mueven en sus órbitas elípticas adecuadas, inclinadas a la eclíptica, con los cambios esperados en la velocidad apogeo y perigeo. La precisión está bastante cerca de los cálculos científicos.
No puedo dejar de verlo. La mitad del sistema solar ha cobrado vida: todo gira y brilla. La rotación aún no está bien; necesito corregir y añadir algunas fórmulas. Pero es confiable y sencillo. Todo funciona con matemáticas en lugar de animaciones. Y gira de una manera que no requiere molestar al servidor cada segundo. El cliente toma la información actual y se encarga de la rotación desde allí.
Durante un día de intenso trabajo, rompí un montón de problemas difíciles. ¡Algunos botones ahora funcionan! Incluyendo un botón con una función muy importante: salir del juego )))) La interfaz también se ha vuelto escalable: tratará de ver lo mismo en cualquier resolución de monitor.
Trasladé el proyecto a la nueva Unidad 5 y enderecé las partes que se rompieron. Estoy aprendiendo cómo evitarlo. He añadido botones a la interfaz. Se mueven, se sienten vivos y responden, aunque todavía no hacen nada. Shaders se calculan mejor ahora. Cambié la nave que pasa volando en la pantalla de inicio, eché un vistazo, y la cambié de nuevo. Mejor es el enemigo del bien.
Una cuestión de tolerancia. ¿Debemos introducir una categoría para personas de orientación sexual no tradicional en los cálculos de la tasa de natalidad y la demografía en general? Ellos son removidos del total de los que producen descendencia. ¿Qué efecto podría tener eso en el juego en su conjunto? No quiero decir matemáticamente, sino públicamente. Matemáticamente, esto ya se explica a través de un factor básico de fertilidad que incluye el ajuste. ¿Debemos calcular y eliminar ese ajuste y convertirlo en un factor separado, o sería mejor no mencionarlo en absoluto? ¿Cuáles son tus ideas?
Por cierto, si alguien conoce a Python o C++, podría ayudar a escribir una conexión de red temporal entre el cliente y el servidor. Algo simple y básico, con acceso directo a MS SQL. Eso haría que fuera mucho más rápido conseguir componentes individuales en pruebas muy tempranas y traerlos a la vida. Por cierto, el entorno básico en Unity, con música y animación, ya está hecho. Cualquier menú y cualquier número de ventanas posteriores se pueden adjuntar a él. En un futuro próximo, me gustaría poner el módulo demográfico en pruebas, para que las acciones de una docena o dos jugadores puedan darle vida. Luego la economía básica, luego la economía más compleja... seguiremos expandiéndola.
Una pregunta: ¿qué factores crees que podrían afectar las tasas de natalidad? En la actualidad, tenemos en cuenta una tasa de fecundidad que incluye características culturales, normas médicas y modificadores de la política de colonias; un pequeño elemento aleatorio; una proporción desigual del sexo; y el número total de personas en edad de procrear. También restamos la mortalidad infantil, que depende de la atención médica.
Tardó mucho tiempo en ponerse en marcha, pero el proyecto finalmente ha ido más allá del diseño en papel, en nuestras cabezas y en hojas de cálculo. Amigos, las primeras líneas de código han sido escritas, no como una prueba, sino para el propio proyecto. Hasta ahora, he conseguido que una base de datos SQL trabaje junto con un módulo de control externo escrito en Python. Este es un gran paso. Un conjunto de programas como este forma el servidor que el cliente del juego pide información para que sepa qué mostrar y dónde. La siguiente etapa es escribir el servidor y la lógica del juego. Ahora mismo estoy trabajando en el módulo demográfico, que se ocupará de las poblaciones de colonias. Más sobre eso más tarde.