Realmente quiero saber cuántos diseñadores de juegos prefieren trabajar con una mesa enorme para todos los artículos, otra mesa para todas las habilidades e incluso otra mesa para todos los mobs en un MMORPG. Y estas tablas pueden crecer hasta varios cientos de MB con miles de registros, pero la mayoría de los registros solo usan unos pocos campos en una tabla.
Sé que algunos diseñadores de juegos funcionan de esta manera. ¿Hay algún método mejor?
game-design
tools
mmo
data
Huang F. Lei
fuente
fuente
Respuestas:
No quería responder aquí, pero cuando vi otra respuesta / comentarios cambié de opinión. SQL no es una muy buena solución para esto. SQL define tablas e inserta muchos datos en esas tablas. Este no es ese caso. Al crear / probar el diseño del juego, en su mayoría desea verificar si el gran sistema está equilibrado. Eso significa muchas tablas que se afectan entre sí. No hay nada bueno para SQL realmente, o lo es, pero no es fácil de manejar, porque tienes que hacer una programación que no es necesaria. Y el diseñador de juegos no tiene que saberlo.
Como programadores / desarrolladores de juegos, podemos despreciar Excel y su uso para cualquier cosa, pero es una herramienta bastante buena para este caso, especialmente cuando el diseñador de juegos puede usarlo bien y el documento está bien creado.
No puedo recomendar ninguna otra herramienta, pero puedo decir que conozco diseñadores de juegos profesionales que también usan Excel. Así que supongo que es una herramienta común.
fuente
Estoy de acuerdo con la mayoría de los que responden que a veces las hojas de cálculo pueden ser herramientas de desarrollo decentes, especialmente para los diseñadores.
Si está interesado en llevar este enfoque más allá, el programa de hoja de cálculo Resolver One usa python para la creación de secuencias de comandos, lo que facilita la configuración de una hoja de cálculo para diseñadores que realiza modelados complejos y exporta a un formato de datos amigable para el juego. Me resulta mucho más fácil trabajar con VBScript de Excel.
fuente
Excel es una excelente solución.Me había estado preguntando cómo debería hacerse esto. Pero pensando en ello, Excelesuna herramienta muy popular y bastante adecuada para esta tarea, no recomendaría esta práctica. Además, la base de datos real, como sugiere @notabene, trae una gran cantidad de sobrecarga adicional que realmente no es necesario. Veo un par de opciones, una de las cuales es similar a usar Excel:... de cualquier manera, gratis y tienes el control completo.
Personalmente, me inclinaría por los datos binarios serializados y cifrados . Dos razones:
¿Existe la necesidad de una biblioteca de datos dedicada y orientada al juego ? Tal vez ... a menos que alguien sepa de tal biblioteca que ya existe.
En cuanto a la pregunta del OP, mire cada archivo csv de la
páginacomo una tabla de datos única, similar a una tabla en una base de datos. Cada archivo depáginadebe contener datos relacionados:Esto te ayuda a mantener un alto nivel de organización, lo cual será muy importante a medida que el contenido de datos crezca, el contenido del juego se expanda, etc.
Editar
Después realidad de intentar utilizar .ods (archivo Calc OpenOffice) y la conexión desde una aplicación, que es en realidad no es posible como mensajes iniciales en el sitio OO implícita. No pude encontrar nada que muestre específicamente el codez en la implementación.
Además, el uso de archivos de Excel puede estar bien mientras se desarrolla un juego para que los datos se puedan modificar sin sobrecarga de una base de datos. Sin embargo, y esto es importante, si planea hacerlo, debe tener instalado MS Office para poder hacer referencia a Microsoft Excel Interop COM. Esto puede ser beneficioso al principio, pero no me gustaría eliminar o cambiar un montón de código para tener una aplicación lista para Alpha, Beta o RC. Una biblioteca muy simplificada requeriría más esfuerzo del que podría ver útil.
Voy a usar archivos .CSV para el almacenamiento de datos en una etapa temprana. Hay algunos inconvenientes, pero en general creo que esta es una opción mucho mejor. Todo está contenido en mis bibliotecas. .Net tiene clases muy útiles para leer estos archivos de texto. Además, como archivos .CSV, los datos se manipulan fácilmente; y, para las etapas posteriores del desarrollo, todo lo que necesito hacer es tener mis archivos de datos serializados a XML, luego más tarde a binarios cifrados serializados.
fuente
Siempre que la naturaleza de sus datos permita que se almacenen en una hoja de cálculo sin saltar demasiados aros, tendrá un formato muy bueno, especialmente para el trabajo de desarrollo. Al final, es posible que desee almacenarlo en otros formatos para su uso, pero la hoja de cálculo le brinda un editor muy potente que puede ser MUY agradable si decide cambiar la forma en que maneja algo.
Si está usando Excel, obtenga una copia de las utilidades ASAP: convierte la hoja de cálculo en un editor aún mejor.
fuente
Bueno, para mí, creo que los programas de hoja de cálculo no pueden manejar esas cosas de manera correcta y efectiva. RDB fue diseñado, en realidad, para manejar grandes datos y tablas. Los RDB modernos fueron diseñados para manejar el tipo de cosas 'enormes' y lo están haciendo muy bien.
El punto es que, para obtener la mejor salida del RDB, necesita diseñar su base de datos de la manera correcta. Si su esquema de datos era deficiente o no cubría todos los datos de su proyecto, terminará con muy malos resultados, rendimiento y resultados.
La idea de RDB es dividir una tabla enorme en otras más pequeñas para que pueda mejorar el rendimiento y la legibilidad. Si tiene una tabla muy grande (atributos sabios o incluso registros sabios) o muchas reparticiones, y no usa la mayoría de ellas, eso significa que su diseño de la base de datos tiene algunos errores.
En su pregunta Huang F. Lei, si me pidieran que diseñara una base de datos MMORPG, no agregaría todas las habilidades en una tabla y todos los mobs en una tabla. Dividiré las habilidades de acuerdo a sus clases y uso en múltiples tablas. Cada tipo de habilidad tendrá su propia tabla o incluso tablas. Para las turbas, las dividiré según sus tipos o según su ubicación en diferentes mundos. Y así.
De esta forma, puedo reducir el tamaño de las tablas, facilitarme el seguimiento de los datos y mejorar el rendimiento de la base de datos.
En Excel, por otro lado, todos los datos se 'desmenuzarán' en un solo lugar. y encontrar una pieza de datos es casi intransitable, épicamente cuando tienes datos repetidos. Además, a medida que los datos crecen en tamaño, el tiempo de apertura del archivo aumentará.
Al final, Excel, en mi opinión, es una forma muy pobre de manejar grandes datos relacionados.
fuente