22/09/2011, 11:05
|
| | | Fecha de Ingreso: septiembre-2011 Ubicación: Buenos Aires
Mensajes: 308
Antigüedad: 13 años, 3 meses Puntos: 87 | |
Respuesta: Duda sorbe estructura mysql para juego online La segunda opción es infinitamente más versátil. Por la temática que tienen tus ejemplos, estoy seguro de que tarde o temprano vas a querer implementar items complejos.
Por ejemplo, vas a querer implementar un sistema de crafting donde cada item lleve el nombre del personaje que lo forjó (Espada Larga de xxLegolasxx), o un sistema de equipo mejorable (Armadura Completa ---> Armadura Completa +1 de Fuego), o un sistema de durabilidad y ruptura de items, etcétera. Y tener los objetos en una tabla aparte, cada uno de ellos con su respectivo set de propiedades únicas, te va a facilitar muchísimo la vida.
Además, es un paradigma más fácil desde un punto de vista del mantenimiento. Por ejemplo, el día en que un jugador encuentre la forma de multiplicar items (SIEMPRE encuentran la forma), va a ser más fácil darse cuenta de que en la tabla de items aparecieron 7000 armaduras +9, que encontrar una ID en el inventario de uno de los personajes.
Respecto a qué columna utilizar como índice, yo tampoco soy un experto en el tema, pero tené en cuenta lo siguiente. Al mostrar el inventario sin duda vas a buscar la ID del usuario en la lista de items. Pero a partir de entonces, cada vez que el juego necesite conocer o modificar algo de un item en particular, va a utilizar la ID del item. Creo que lo segundo va a suceder más frecuentemente que lo primero.
Te convendría utilizar la ID del item como clave primaria (que por cierto siempre debería ser única), y la ID del usuario como índice.
__________________ Desarrollador web profesional
Última edición por DrFaust; 22/09/2011 a las 11:15 |