Restaurando un juego de navegador

redFace
ForoCoches: Miembro
#1

Restaurando un juego de navegador


Hace 11 años jugué a un juego de navegador llamado Racanofeller. Este juego trataba de economía circular. Tu creabas tu empresa en el sector que fuera (primario, secundario, terciario) y comprabas materias primas a las empresas de otros jugadores a fin de fabricar tus productos y venderlos a otros jugadores que los necesitaran.

Aprendías a gestionar los gastos pues tenías que comprar espacio de almacén, transporte y mucho más. Uno de esos juegos en los que te pones a hacer spreadsheets para calcular la forma más óptima de lograr tus objetivos.

Y otra cosa que me hacía mucha gracia era el humor que transmitía mediante sus imágenes:




Pues hace un par de meses su creador anunció que descontinuaba el juego a menos que alguien quisiera tomar el relevo. Y como no, me ofrecí a ello.

Aunque el juego me gustaba, siempre hubo varias cosas que habría querido mejorar:

El diseño



Todas las imágenes del juego han sido dibujadas manualmente. Eso en si no es malo, el problema es que son demasiado “paint” y junto con el diseño de la web le resta mucha “credibilidad” al juego en cuanto a la complejidad que realmente alberga.



Esto para mi provoca 2 cosas:

1. Que sea un juego que no quieras compartir, porque parece que es para niños
2. Que como nuevo jugador echa para atrás, de nuevo, porque parece para niños


La ortografía

Otro detalle que no ayuda nada a la credibilidad del juego. Está lleno de faltas de ortografía.



20 faltas de ortografía en un par de líneas.

Si te atreves a presentar el juego a un amigo diciendo que es un buen simulador económico, la combinación de gráficos+faltas hará que tarde más bien poco en reírse en tu cara.

La gestión de usuarios

Los usuarios inactivos se borran. ¡SE BORRAN!

Imagina montar tu imperio, dejar el juego unos años y al volver encontrarte con que tu usuario ni existe.

Esto es debido (creo) a que sino ocupan espacio en los listados a la hora de comprar material. Algo que se puede evitar haciendo que los listados muestren sólo a los usuarios activos o con stock.

Otro detalle es que durante el registro no se pide email, lo que conlleva varias dificultades:

- ¿Has olvidado tu contraseña? Te jodes
- ¿Otro jugador te envía mensaje privado? Buena suerte enterándote.
- ¿El juego ha recibido una actualización? No hay forma de hacer que te enteres a menos que visites la web cada cierto tiempo.
- Menos seguro: Si se usa el nombre de usuario para acceder, cualquier otro usuario puede probar a acceder a tu cuenta poniendo tu usuario y contraseñas básicas como 123456. Si sólo aceptara email para acceder, necesitarías saber el email de un usuario para empezar a probar contraseñas.
- No puedes hacer login mediante Google/Facebook: Nos interesa que el proceso de registro/login sea lo más fácil/simple posible. Esto es un poco usabilidad too.

Demasiado realista

Si no hay jugadores o stock en el sector previo al que tú estás, no tendrás stock que comprar y por tanto… No podrás jugar. En este juego hasta la electricidad es generada por otros jugadores por lo que si no hay suministro estás jodido.

Siempre que entres en un juego deberías poder jugar. Es su única utilidad.

La solución que veo a este problema es detectar cuando hay rotura de stock y hacer que empresas del estado tomen el relevo, con un precio más elevado y que desaparezca su stock cuando otros jugadores generen el suyo.

La usabilidad

Hoy en día todos tenemos un mínimo de expectativas sobre cómo de fácil debe ser usar una nueva.

En Racanofeller, el juego ni te dice si te equivocas con la contraseña. Después de registrate te tira a la página de inicio sín darte más explicación, en vez de loguearte y llevarte a la pantalla de bienvenida.

Tampoco te guía tu primera vez sobre qué acción deberías realizar primero, y la siguiente a esta.

Mejorarlo implicará ir pantalla por pantalla, para entender qué hace, cómo lo hace y qué debería hacer realmente.

La lista es larga y por desgracia hay bastantes más cosas que hacer antes.

Mejorando la seguridad


Uno de los motivos por los que el juego empezó a caer en desgracia es el tema SSL. Para quién no lo sepa, cuando visitas una web que empieza con https, todo dato que intercambies con la web (ej: tu usuario y contraseña cuando haces login) estará encriptado.

Desde hace unos años es prácticamente obligatorio que las webs sean seguras, porque sino los buscadores como google ni te indexan.

En Racanofeller se llegó a poner HTTPS, pero no se priorizaba, de modo que la web seguía cargando su versión insegura por definición → Google empezó a retirarla de los listados.

Otro problema fue que los navegadores empezaron a limitar algunas funcionalidades si la web no era segura, lo que hizo que el login dejara de funcionar. Así es, durante los últimos meses, los jugadores no podían acceder a su cuenta/jugar.

¡Manos a la obra!

Toca localizar toooodos los sitios donde aún se apunte al protocolo inseguro y reapuntarlos



Mientras hacía esto e investigaba el motivo por el que los usuarios no podían hacer login detecté otro fallo de seguridad:

El juego generaba una segunda cookie en la que se apuntaba el identificador del usuario en crudo y luego la usaba para validar al usuario.

Traducido al castellano: Cualquier persona un poco avispada podría haber accedido a la cuenta del usuario que hubiese querido sin necesidad de saber su contraseña. (Por suerte el sistema no tiene ningún dato personal del usuario, ni email, ni nombre, así que no hay leak posible).

¿Cómo arreglamos algo así? No lo arreglamos, tiramos todo el sistema directamente a la basura.

Para ello lo primero es centralizar el proceso de autenticación del jugador en 1 sólo punto y luego hacemos que use los datos de sesión y retiramos esa segunda cookie.



¡Con esto los usuarios ya deberían poder volver a jugar! O eso pensaba yo...
Tras publicar los cambios seguía habiendo quejas de usuarios que se registraban y luego no podían acceder.
Al volver a mirarlo encontré otro error más:
Resulta que el sistema validaba de manera distinta tu contraseña cuando te registrabas y cuando te logueabas.
Lo que significa que a lo mejor te daba el OK para registrarte pero luego al acceder determinaba que tu contraseña no cumplía las expectativas y te echaba. Ooops.
¡Arreglado este fallo ya no hubo más quejas con el login!

Otro detallito que quiero arreglar cuanto antes son las URLs.

Si te fijas en las urls de las secciones o de las imágenes, verás un patrón:

https://racanofeller.com/index.php/registro
https://racanofeller.com/index.php/portal/tour
https://racanofeller.com/application.../racanotit.png
https://racanofeller.com/application...goracarojo.png

Las secciones siempre empiezan con /index.php/ y las imágenes con /application/public/.

Los que hayan tenido la desgracia de trabajar con código antiguo identificarán rápidamente de qué se trata: son rutas típicas de CodeIgniter, el framework que usa el juego a nivel de código.

El truco recae en qué carpeta indicamos cómo base para responder a las peticiones que hagan los jugadores:

La estructura de code igniter es:

/application/
/core/
index.php

Y lo que se suele hacer es decirle al sistema que esta es la carpeta base. Lo cual es un fail porque significa que los jugadores pueden intentar leer TODOS los ficheros que hay en las carpetas de /application/ y /core/ (y cualquier otra que haya como es el caso pero que no voy a listar).

Para evitar que eso curra, los de CodeIgniter hacen un apaño guarrísimo y es que te obligan a escribir una línea de código en cada fichero que comprueba si el usuario está pidiendo ese fichero directamente o no.



Así si atacas a /core/Loader.php - El sistema lo detectará y no te dejará.

Pero hay una solución más fácil y segura. No indicar esa carpeta como base/pública.

Como ya habéis visto, las imágenes y demás contenido que SÍ se espera que el usuario pueda pedir, se expone desde /application/public, donde sólo hay imágenes y ficheros de estilos.

Por tanto sólo tenemos que decirle al servidor que cargue esa carpeta y luego tenemos que mover el index.php, que es el único fichero php que queremos exponer, a esa carpeta. Lo violamos un poco por dentro para que no llore por el cambio y vualá!

Ya podemos llamar a /registro directamente o pedir una imagen via https://racanofeller.com/images/portal/logoracarojo.png

¡Perfecto! Con esto volvemos a tener la seguridad al día. Hora de revisar el siguiente marrón.


Mejorando el entorno de desarrollo

Como he dicho al principio, el juego es antiguo, muy antiguo y con el tiempo no se ha ido actualizando a las últimos prácticas como tener un repositorio o un entorno de pruebas.

Cualquier cambio sea crear una nueva funcionalidad, arreglar algo o probar una sección, se hace directamente en producción. Todos los cambios que había hecho hasta ahora, se hicieron en vivo. Dado que eran básicos (poder acceder al juego…) consideré más que justificado arreglarlos como fuera.

Tener un repositorio es bastante importante por múltiples motivos: Si trabajas con más gente como va a ser ahora el caso, se necesita una forma de trabajar que no implique pisar los cambios de los demás. Ver qué está tocando cada uno, echar atrás los cambios si resulta que rompen más que arreglan, etc..

Así que una de las primeras cosas que hice fue crearlo para el juego.



Otra cosa esencial es tener un entorno local que replique el de producción, de manera que puedas hacer cambios sín cargarte la web.

Esta parte la vamos cubrir mediante Docker, un sistema que te permite gestionar múltiples máquinas virtuales/contenedores con facilidad.

Ahora tengo la tranquilidad de poder probar cosas y ver que no petan sín que los jugadores se vean afectados.

Tenemos un entorno de pruebas y una web segura. ¡Podemos empezar a atacar los problemas de la lista!

Mejorando el diseño



Uno de los primeros puntos que quiero atacar es el diseño.

Sé lo que quiero: Quiero una web que no parezca infantil, a la vez que conserva el estilo de dibujo que tanto caracteriza el juego, pero de un modo más refinado.

El problema es que no soy diseñador.

Para cubrir mi debilidad recurriré a la IA. ¿Cómo expresaría ella algo “premium”/serio/profesional?

Pues con colores oscuros y dorados.



Con un poco de potrochop lo sacamos:


Para el narizuo he intentado la misma aproximación, pero la IA más que iterar el dibujo, genera abortos raros con colores psicotrópicos. Así que eso lo dejaré en pausa a falta de un diseñador humano.

La IA nos ha dado una buena gama de colores con la que rediseñar la web.

A ver qué ocurre si mantenemos los componentes pero cambiamos los estilos:




fsé. Está mejor que el diseño actual, pero sigue siendo un truño. Le falta algo, a simple vista no me da a entender 100% que es un juego y parece muy cargado de cosas.

Necesitamos algo que te incite a registrarte.

Vamos a probar a tirarlo todo a la basura y hacerlo desde 0, más limpio.





uf, ahora sí. We got something.

Sigue siendo mejorable, pero como primera versión, es un salto de calidad.

- ¿Te da a entender que es un juego? Sí
- ¿Parece un juego serio? Sí
- ¿Se lo enseñarías a un amigo? Joder, sí

El hacer un diseño desde 0 nos permite empezar a atacar otro problema a nivel de desarrollo del juego: No usa ningún framework de diseño como sería Bootstrap, Tailwind o la mierda que esté de moda hoy en día.

Es una putada porque significa que, si por ejemplo quiero cambiar la parte superior de todas las pantallas, tendré que hacerlo manualmente en cada una de ellas == muerte.

O si quiero cambiar el color del botón principal, más de lo mismo, toca buscarlo y cambiarlo manualmente en todos los sitios.

Este es uno de los motivos por los que su creador, Raca, decidió abandonar el desarrollo. A base de crear muchas funcionalidades, la jugabilidad del juego se expandió, pero su mantenimiento se complicó exponencialmente.

Para el diseño he usado Bootstrap de base. Nos garantiza flexibilidad y que cualquiera pueda hacerse cargo de él en un futuro.

¡Ah! Y también nos permite hacer que el juego sea responsive, aka que se vea bien en el móvil.



¡Y de momento hasta aquí llega el blog!

PARTE 2

PARTE 3

PARTE 4
ruttinger
ForoCoches: Miembro
#2
Interesante aporte, shur. El subforo deja de ser una ponzoña con hilos como este. Y, cómo no, hilo interesante creado hace media hora y ni la pole. Luego en otros clickbaits de mala calidad con guerras de consolas y plataformas se llena la primera página en diez minutos.

¿Qué dicen los usuarios boomers de la web respecto a los cambios? ¿La respuesta mayoritaria es un aplauso o un lloro?
Mest
ForoCoches: Miembro
#3
Vaya curada shut, un UP por aquí para seguir lo que haces
mastertag
Block de Notas
#4
Tiene muy buena pinta shur.
Hawk Hollywood
Alquimista Betunero
#5
Qué currada
DonSanta
ForoCoches: Usuario
#6
Me parece muy interesante todo el trabajo que has llevado a cabo, ¿me podrias citar para saber cada vez que actualices este post?. Lo de que si tienes que actualizar el encabezado tengas que tocar 15 ficheros no lo he entendido muy bien, creando un componente o un archivo y haciendo un include seria suficiente para ese problema, por otro lado si no tenias ni idea de bootstrap o tailwind (por lo que parece), te hubiese recomendado tailwind (bootstrap es mas enfocado a sus diseños/componentes prehechos y tailwind son basicamente css en clases a mi parecer)


Por el resto, currada top. La IA te puede ayudar en bastantes imagenes, aunque para ello mantener el diseño de los personajes "paint" actual es complicado.
traskin
ForoCoches: Miembro
#7
Muy interesante la"restauración" jeje

Me quedo por aquí a ver más cambios..

Saludos!!
KazuFC
Why are we still here?
#8
suerte shur

up
furylow
frenar es perder
#9
shurmano menuda currada.
¿que te lleva a hacer todo esto?

me suscribo al tema
polipropileno
ForoCoches: Miembro
#10
Muy interesante. Seguiré tus progresos.
Karllain
ForoCoches: Miembro
#11
Me ha recordado el Civitis que creo que era bastante mas antiguo.
Davidtzer18
ForoCoches: Usuario
#12
Wow, super interesante, shur. Ganas de ver cómo sigue.
Fipilinos
ForoCoches: Supervisor
#13
5 estrellazas!
Empepinao86
Soy un pepino que forea.
#14
Oye, pues ole tu polla por el currazo. Mis dies y te lo upeo.
CapitanCalzones
*AutοBаn Spаm/flood/Trοll*
#15
10/10 shur, buen curro te estás pegando
redFace
ForoCoches: Miembro
#16
No me había enterado de que alguien hubiera respondido al tema, os respondo a todos ahora:

Cita de ruttinger
Interesante aporte, shur. El subforo deja de ser una ponzoña con hilos como este. Y, cómo no, hilo interesante creado hace media hora y ni la pole. Luego en otros clickbaits de mala calidad con guerras de consolas y plataformas se llena la primera página en diez minutos.

¿Qué dicen los usuarios boomers de la web respecto a los cambios? ¿La respuesta mayoritaria es un aplauso o un lloro?
¡Por suerte no! No hay lloros por el diseño. Los hay por bugs que tiene el juego (como es normal).

Cita de DonSanta
Me parece muy interesante todo el trabajo que has llevado a cabo, ¿me podrias citar para saber cada vez que actualices este post?
¡Por supuesto, te citaré en cuanto meta el siguiente update!

Cita de DonSanta
Me parece muy interesante todo el trabajo que has llevado a cabo, ¿me podrias citar para saber cada vez que actualices este post?. Lo de que si tienes que actualizar el encabezado tengas que tocar 15 ficheros no lo he entendido muy bien, creando un componente o un archivo y haciendo un include seria suficiente para ese problema
Es como estaba hecho, yo lo he reconvertido de modo que sólo sea 1 y las secciones extiendan de él

Cita de DonSanta
por otro lado si no tenias ni idea de bootstrap o tailwind (por lo que parece), te hubiese recomendado tailwind (bootstrap es mas enfocado a sus diseños/componentes prehechos y tailwind son basicamente css en clases a mi parecer)
Yo no soy diseñador, ni maquetador y tengo la imaginación en el culo, por esto tiro de bootstrap.
Me da componentes prehechos que lo máximo que me preocupo es en cambiar el color xD


Cita de furylow
shurmano menuda currada.
¿que te lleva a hacer todo esto?

me suscribo al tema
Que me vicié al juego en su momento y no quiero dejarlo caer. Imagina poder restaurar una pedazo de tu pasado.
Sé que en el LATAM hay (o al menos había) profesores usándolo como herramienta de aprendizaje, así que parece que no soy el único que le veo la gracia

Cita de Karllain
Me ha recordado el Civitis que creo que era bastante mas antiguo.
Juraría que Racanofeller apareció en parte porque Civitis cerraba, así que es más antiguo fijo sí : o
(O a lo mejor leí que entraban jugadores de Civitis, no lo sé a ciencia cierta, sólo me suena el nombre)
redFace
ForoCoches: Miembro
#17
@ruttinger , @DonSanta , @furylow , @Empepinao86 , @Davidtzer18 , @Fipilinos , @polipropileno , @traskin , @KazuFC , @Mest , @mastertag , @CapitanCalzones creo que estábais interesados en recibir novedades.

Simplificándome la vida

Otro inconveniente que hay cara mejorar el diseño, es el sistema de templates (o más bien dicho la falta del mismo). Todos los apartados tienen repetidas secciones como la parte superior de la página, con los menús y demás. Lo cual es un infierno si quieres editar nada de manera global.

Mirando la documentación, resulta que en las últimas versiones de Code Igniter sí que hay la posibilidad de crear una plantilla base y que las secciones extiendan de ella.



A fin de cumplir con la ley del mínimo esfuerzo, revisé el repositorio oficial a ver si podía mangar el sistema de vistas moderno con facilidad, pero estaba hecho con más ficheros de los que tengo intención de lidiar:



Así que basándome en los métodos que listaban en la documentación extrapolé la forma más corta de hacer lo mismo y con 4 funciones ya lo tuve listo:



(No uso tipado fuerte porque no sé qué versión de PHP tiene el server pero seguro que no es 8. Otra cosa a cambiar)

Gracias a esta minucia podemos evitar tener miles de líneas duplicadas, lo cual nos facilita el mantenimiento.

Y gracias a todos los cambios hechos, se ha podido rehacer la sección de registro en nada.

Pasando de 108 líneas a tan sólo 35.



Sistema de noticias

Ahora que el juego va a volver a recibir cambios, quiero que los usuarios se enteren de ello, por lo que toca meter una sección de noticias.

Quiero que sea lo más fácil del mundo crear una noticia, ni editores, ni lenguajes intermedios como markdown/bbcode. Cada noticia será un fichero html y una entrada en un listado JSON:





4x1: Rápido, simple, eficiente y flexible.

Ya no hay más excusas, hay que volver al trabajo de restauración.

Migrando las primeras pantallas internas

Hasta ahora sólo había tocado la parte externa del juego. La interna va estar más complicada.

Parte superior está duplicada por cada tipo de empresa.



Unas 9 veces, cada una de ellas con pequeñas variaciones, porque dependiendo del tipo de empresa que tengas, puedes hacer una cosa u otra.

Simplificar esta duplicidad a sólo 1 fichero es tan “fácil” como crear un listado de tipos de empresa y allí indicar la configuración/detalles de cada una:


Luego en el nuevo menú tendremos en cuenta estos datos para incluir o no las pertinentes secciones. Con esto sólo queda hacer el nuevo menú:



Obviamente he aprovechado para quitar cosas como esa sección “vacío” que estaba vacía y no servía para nada, así como he añadido iconos para que quede un poco más cuki.

Ah y es responsive:



Por desgracia no puedo aplicar el nuevo menú a todas las secciones de golpe, porque cada una de ellas está llamando manualmente a los 9 menús antiguos… Conforme rediseñe las secciones, irá saliendo más y más.

Transportes Rácano e hijos, S.L

Lo siguiente ha sido escoger una sección. Debía ser una sencilla, así que se optó por la de transporte:



Quiero que las secciones te cuenten para qué sirven, de modo que sean un poco más fáciles de entender para los nuevos jugadores.

Teniendo esto en cuenta, la primera aproximación ha sido esta:



Ñeh. La caja de información queda muy fuera de lugar ahí abajo. Si es la carta de presentación, debería estar arriba. Pero arriba tampoco quedaba bien por si sola.

Así que he probado a pedirle a nuestra amiga la IA que hiciera una imagen para la sección.



Hay algo que sigue sín convencerme, pero no sé el qué. No sé si son los colores. O a lo mejor que los botones no son dorados.

El Almacén

Vamos a probar a convertir otra sección. La de almacén:



Convertir estas 2 secciones me ha llevado aproximadamente 50 años, porque no sólo las he rediseñado, sino que he simplificado +2.677 líneas de código de la parte de atrás. Y eso ha sido un infierno.



De ahora en adelante voy a optar por hacer únicamente el rediseño, sino tardaré la vida en aplicarlo en todas las secciones.

PARTE 3
Mourinho
.
#18
La hostia shur. Mis dieses y upeo, mucho ánimo y a ver si en algun momento de ml vida lo puedo probar
Raalragd
ForoCoches: Miembro
#19
Increíble el currazo que te has pegado y como juego parece entretenido, le echaré un ojo.
redFace
ForoCoches: Miembro
#20
Cita de Mourinho
La hostia shur. Mis dieses y upeo, mucho ánimo y a ver si en algun momento de ml vida lo puedo probar
¡Gracias!¡Y espero que sí!

Cita de Raalragd
Increíble el currazo que te has pegado y como juego parece entretenido, le echaré un ojo.
Si lo pruebas y hay algún momento en el que te sientas perdido o no entiendas algo, por favor, no dudes en publicarlo aquí así me entero e intento mejorarlo
Raalragd
ForoCoches: Miembro
#21
Cita de redFace
¡Gracias!¡Y espero que sí!



Si lo pruebas y hay algún momento en el que te sientas perdido o no entiendas algo, por favor, no dudes en publicarlo aquí así me entero e intento mejorarlo
Me intento registrar yme sale

Error : El registro no se ha realizado.

EDIT: Ya está solucionado, a la hora de poner el usuario yo lo escribía con un espacio en medio y supongo que por eso daba el error.
ScreamBitch
ForoCoches: Usuario
#22
Buenas, shur. No tengo ni idea de informática. Lo que sí tengo es algo de experiencia (no a nivel profesional, claro) corrigiendo .json a nivel ortográfico y gramatical. Si necesitas cualquier cosa, lemme know
redFace
ForoCoches: Miembro
#23
Cita de Raalragd
Me intento registrar yme sale

Error : El registro no se ha realizado.

EDIT: Ya está solucionado, a la hora de poner el usuario yo lo escribía con un espacio en medio y supongo que por eso daba el error.
Joder, ¿sólo te dice eso?¿Ni si quiera te ha dado la pista de que era problema con el nick?

Cita de ScreamBitch
Buenas, shur. No tengo ni idea de informática. Lo que sí tengo es algo de experiencia (no a nivel profesional, claro) corrigiendo .json a nivel ortográfico y gramatical. Si necesitas cualquier cosa, lemme know
Es una pena que todo el texto esté puesto tal cual en vez de en un json, así se podrían arreglar todas las faltas de golpe e incluso traducirlo. Me temo que queda lejos el tema huh.
Mest
ForoCoches: Miembro
#24
Gracias por la mención! Sigo de cerca el proyecto.

Si necesitas consejo o ayuda acerca de la bbdd, ingesta, modelado de datos o reporting para darle al usuario acerca de su empresa te echo un cable sin problema!
rctm
ForoCoches: Miembro
#25
Me quito el puto sobrero. Oles tu
GuilleX7
ForoCoches: Drifter
#26
Lo siento, he leído el hilo entero y estoy convencido de que es uno de esos casos en los que rehacer el juego utilizando buenas prácticas desde el principio es la mejor opción. Arreglar esa maraña de proyecto lleno de antipatrones va a costarte mucho dolor de cabeza. Además, sospecho que es una aplicación muy insegura.


Un saludo y ánimo.
nagasaki5
ForoCoches: Miembro
#27
No conocía el juego pero mucho ánimo. Me quedo por aquí, es un gustazo ver que queda gente con ilusión a la que no le importa esforzarse por lo que ama.
Project D
ForoCoches: Miembro
#28
Pillo sitio, me gustaria probarlo una vez termines de pulirlo.

Hace cosa de dos años jugaba a uno del estilo, pero no estaba demasiado balanceado y las actualizaciones salían con cuentagotaa.

El problema de este tipo de juegos es que, una vez tienes todo el tinglado montado, solo te queda reinvertir el dinero en subir de nivel la fábrica para producir más para ganar más dinero para reinvertir más. En otros juegos te gastas ese dinero en cosméticos para el personaje, en la vida real te lo gastas en barcos y coches, pero en un juego que imita a la economía real es todo muy monótono.

¿Has pensado en añadir eventos aleatorios que le den algo de miga y que hagan que la producción de ciertas materias suba o baje por X tiempo?
asm
ForoCoches: Miembro
#29
Pillo sitio citame con actualizaciones
redFace
ForoCoches: Miembro
#30
Cita de Mest
Gracias por la mención! Sigo de cerca el proyecto.

Si necesitas consejo o ayuda acerca de la bbdd, ingesta, modelado de datos o reporting para darle al usuario acerca de su empresa te echo un cable sin problema!
Amigo mío, si vieses la base de datos llorarías.

Cita de rctm
Me quito el puto sobrero. Oles tu
¡Gracias!

Cita de GuilleX7
Lo siento, he leído el hilo entero y estoy convencido de que es uno de esos casos en los que rehacer el juego utilizando buenas prácticas desde el principio es la mejor opción. Arreglar esa maraña de proyecto lleno de antipatrones va a costarte mucho dolor de cabeza. Además, sospecho que es una aplicación muy insegura.


Un saludo y ánimo.
La verdad, me empiezo a decantar por esta opción. Ejemplo de error que va a ser mortal de arreglar:
El espacio ocupado del almacén es un campo computado... Así que si en algún sitio no se suma o se quita lo que toca, se descuadra el almacén. Cosa que parece que ocurre desde siempre porque los pobres usuarios tienen una opción de "reparar almacén".
Y claro, ahora ve tu y edita las 2k referencias a ese campo para que hagan el cálculo al momento.
Lo mismo ocurre con el apartado de contabilidad. Muchos campos son computados así que si algo no cuadra, buena suerte encontrando qué lo rompe porque no hay traza de ello.

No quería hacerlo así porque no es lo mismo empezar un proyecto desde 0, que actualizar uno existente.
Cuando lo empiezas desde 0 es altamente probable que lo dejes a medias.
Aquí a lo mejor lo que no terminas es una actualización, pero el juego es al menos jugable enteramente.
Sín contar el impacto: Los cambios que hago en el juego tienen impacto al momento para los jugadores que ya lo están jugando. Si me pongo a hacerlo desde 0, el juego estará parado durante meses.

En cuanto a seguridad, es de lo primero que ataqué. Hasta el momento no he visto nada más para echarse las manos a la cabeza.
Empezar por la parte de UI me está ayudando a ver todas las pantallas y a entender mejor los distintos apartados y opciones. Me permite mejorar el producto existente mientras me planteo si tirarlo todo a la basura.

Cada opción tiene sus ventajas y desventajas, veremos qué hago.


Cita de nagasaki5
No conocía el juego pero mucho ánimo. Me quedo por aquí, es un gustazo ver que queda gente con ilusión a la que no le importa esforzarse por lo que ama.
¡Gracias! Tengo muchas ganas de añadirle cosas nuevas pero aún me queda mucho arreglo por delante antes de hacer nada nuevo.

Cita de Project D
Pillo sitio, me gustaria probarlo una vez termines de pulirlo.

Hace cosa de dos años jugaba a uno del estilo, pero no estaba demasiado balanceado y las actualizaciones salían con cuentagotaa.

El problema de este tipo de juegos es que, una vez tienes todo el tinglado montado, solo te queda reinvertir el dinero en subir de nivel la fábrica para producir más para ganar más dinero para reinvertir más. En otros juegos te gastas ese dinero en cosméticos para el personaje, en la vida real te lo gastas en barcos y coches, pero en un juego que imita a la economía real es todo muy monótono.
Uf, me temo que entonces no lo jugarás este año siquiera xD

El juego en su momento intentó cubrir esto, se podían comprar propiedades y cosas así, pero no lo veo por ninguna parte, y desconozco por qué se quitó.
La duda en esto es qué ofrecer como "end game" que haga que la gente tenga un aliciente más para quedarse.

Me molaría reaprovechar algo que ya empecé hace tiempo:
https://i.imgur.com/9vRN3Mw.mp4
Pero uf, no soy precisamente el bueno pensando mecánicas para videojuegos.


Cita de Project D
¿Has pensado en añadir eventos aleatorios que le den algo de miga y que hagan que la producción de ciertas materias suba o baje por X tiempo?
Pues sí, dado que yo he vivido lo que es tener una empresa, sé que hay eventos ajenos que de vez en cuando vienen y te sueltan una hostia. Desde multas de hacienda hasta incendios que te hacen perder el almacén. Me gustaría tener este tipo de eventos de manera que el crecimiento lineal no esté garantizado.
Así también permite nivelar las cosas con nuevos jugadores vs antiguos que ya lo tienen todo montado.

Cita de asm
Pillo sitio citame con actualizaciones
¡Apuntado!
← A Videojuegos
Amazon
Nuevas ofertas cada día