¿Hay reglas dedicadas / bibliotecas de puntuación / frameworks / motores? [cerrado]

8

Tenga en cuenta que esto no se trata de gráficos / física / 2D / 3D / etc. Más bien me gustaría saber si hay soluciones dedicadas disponibles para implementar reglas / puntajes personalizados sobre un marco existente, idealmente abordando los conceptos más comunes ya, por ejemplo, jugadores, partidos, variaciones de reglas, selección de juegos, preferencias, puntajes altos y ¿similares?

¿O esta funcionalidad generalmente se incluye en todas esas bibliotecas / frameworks / motores orientados a gráficos? Si es así, ¿hay alguno que se destaque a este respecto y permita reutilizar las reglas / componentes de puntuación fácilmente sin utilizar la parte gráfica del motor, por ejemplo?

Alternativamente, ¿consideraría que este tema sería mejor abordado por un motor de reglas comerciales estándar , como se sugiere en Java Rule Engine para Game AI ?

Steffen Opel
fuente

Respuestas:

4

Dependiendo de tu idioma, escribiría el mío. Las reglas típicas del juego son generalmente tan sencillas (hacer que el número de personas que has matado sea mayor que el número de personas que han matado, mantener este elemento durante más tiempo del que lo tienen, etc.) que el mantenimiento de un motor de reglas puede ser mayor que simplemente codificar las reglas.

tenpn
fuente
1
Lo que creo que sería bueno si hubiera un depósito de ejemplos que mostraran cómo las estructuras de datos y algoritmos comunes pueden usarse para la lógica del juego. Uno de los más complicados suele ser los juegos de rol de mesa y los juegos de guerra, por ejemplo, Warhammer 40K. Ciertas unidades tienen la capacidad de cambiar la tirada de dados o cambiar el resultado dependiendo de la entrada del jugador.
Extrakun
3

Creo que tendrás que escribir tu propio motor.

¿Alguna vez has visto Zillions of Games ? Es una aplicación comercial que ejecuta juegos abstractos escritos en un lenguaje de script llamado ZRF.

Puedes inspirarte mirando las especificaciones del lenguaje ZRF. La mejor documentación que he encontrado está aquí . Por supuesto, puedes echar un vistazo a la implementación de otros juegos aquí y aquí .

jpbochi
fuente
Este es un punto de partida interesante para explorar el concepto de una solución personalizada, ¡gracias por desenterrarlo!
Steffen Opel
2

Las soluciones de red a veces incluyen sistemas sofisticados de reglas de emparejamiento. No puedo pensar en otra cosa.

Los juegos tienen muchos conceptos comunes, desafortunadamente no todos pueden ser compatibles con una tecnología de complemento o middleware. Algunos motores de juegos o herramientas de juegos ofrecen sistemas prefabricados para hacer menús y puntuaciones altas, pero no hay soluciones de propósito general para implementar pantallas específicas como Preferencias, Selección de nivel y demás. Estos son específicos del juego.

Incluso los sistemas de reglas muy bien documentados como AD&D no tienen una implementación estándar. Hay demasiadas variaciones posibles, y cada juego requiere su propio conjunto de reglas o necesita ajustarlas para fines de juego.

LearnCocos2D
fuente
2

Me gustaría saber si hay soluciones dedicadas disponibles para implementar reglas personalizadas

Sí, se llaman lenguajes de programación. :)

Sin embargo, para crear una lógica verdaderamente personalizada, normalmente se necesita un sistema que permita condiciones y acciones arbitrarias, que es más o menos lo que hace un lenguaje de programación. O mirarlo desde la otra dirección, sería difícil imaginar un sistema que pudiera encapsular una gran variedad de reglas de juego que no terminaran pareciéndose a un lenguaje de programación completo de algún tipo.

En general, no existe ningún tipo de estandarización en las reglas del juego o los mecanismos de puntuación en los juegos en general, por lo que no hay muchas funciones comunes que puedas extraer de manera significativa en esta área.

Kylotan
fuente
Bueno, a pesar de que usted y todos los demás carteles afirman esto de manera bastante uniforme, todavía no estoy completamente convencido de que no haya puntos en común aquí y allá (pero es posible que deba reconsiderarlo, por supuesto;) - tal vez esto se deba a que pienso más en 'mayores juegos 'y / o' más pequeños 'como juegos de cartas y juegos de mesa que títulos comerciales totalmente habilitados en 3D más o menos; específicamente, con respecto a la analogía de su lenguaje de programación, esperaba más enfoques a través de DSL, por ejemplo (como el ejemplo señalado por @jpbochi ). De todos modos, ¡gracias por tu comprensión!
Steffen Opel
Ciertamente puedes encontrar un terreno común en los juegos más abstractos, como en la respuesta de jpbochi. Pero para los juegos de computadora en general, que a menudo se parecen más a las simulaciones que a los rompecabezas, los sistemas son mucho más arbitrarios y a menudo se basan en medidas continuas de estado en lugar de discretas.
Kylotan