Quiero hacer un juego y tengo dudas

Vedrfolnir

Buenas a todos!

Pues eso, "he empezado" a hacer un juego y tenía un par de dudas y me gustaría saber qué opináis por aquí.
Pongo que he empezado entre comillas porque estoy en la fase de análisis aún, nada de programar todavía, solo hojas y hojas de ideas que vienen y van y que por ahora me emocionan y pienso que promete, pero bueno xD
Lo primero, es que cuando me ponga a programar, quiero hacer el juego en Javascript y CSS, me manejo bien ahí y creo que lo puedo sacar, así que la primera duda es si conocéis librerías js que puedan ayudar, al estilo de JQuery o tal pero algo más orientadas al desarrollo de juegos. Por cierto, es 2D, que se me olvidaba ponerlo.

Y lo segundo, estoy teniendo algunos problemas con la fórmula para el cálculo del daño. Me gustaría que tuviese en cuenta, además del típico ataque y defensa, la diferencia de niveles entre ambos (para que si es similar, no pase nada, si el atacante le saca muchos niveles que pegue aún más fuerte, y si es al contrario, le haga muy poco daño), el cansancio del atacante (a más cansancio menos daño), y una última variable que se activaría al entrar en un modo "berserker" que podría multiplicar todo el daño hasta por tres.
Pero ni idea de como mezclarlo todo xD
Me viene también la duda de que, siendo los valores de ataque y defensa iguales (atk=def), como hacer que si ambos (atacante y defensor) están a nivel 5 se hagan por ejemplo 10 de daño, pero si están a nivel 25, se hagan 100...
Estoy muy perdido con las mates ahí x.x

B

En lo primero no te puedo ayudar, javascript y css sólo lo he tocado para webs. Ni idea de juegos.

Para lo segundo. Lo mejor es que separes la formula en pequeños cachos y quieras ver como es la progresión. Para esto hay ejemplos de gráficas.

Un ejemplo es está para ganar vida por nivel

Valor Fijo de vida + (Level * 0.8) + (Stat de vida * 1.8)

 10 + (1 * 0.8) + (5 * 1.8) = 20

Si le subimos el nivel a 5, pero no añadimos puntos a su stat de vida

 10 + (5 * 0.8) + (5 * 1.8) = 23

Le añadimos 1 punto extra

 10 + (5 * 0.8) + (6 * 1.8) = 25

En definitiva, que para ello lo mejor es buscar cual es la formula que quieres realizar si eres novel en ella. Y ya luego buscar una que se adapte a la que desea. O incluso modificarlas.

1 respuesta
Camp1

Simples constantes que añadas al daño final. Por ejemplo supon que tu daño es 10 y que tu constante de daño por nivel 1, pues tu daño final será 10+1*nivel.

Para el cansancio pues lo mismo una constante de cansancio y un contador que lleve el tiempo de batalla ( ya sea en una medida temporal directa o en turnos o como lo tengas pensado ).

Para la vida, el manda, la armadura, etc. Si va a ser por niveles pues usa constantes para todos que multipliquen al nivel. También puedes tener tipos de constantes diferentes para distinguir roles, un guerrero tendrá una constante de daño mayor que un tanque.

Wasd

En cuanto al framework de desarrollo, yo estoy empezando con Phaser.js y te lo recomiendo por varios motivos:

  • Tiene soporte para Canvas y WebGL (CSS no pinta nada, nunca mejor dicho)
  • Lo puedes usar gratis en proyectos comerciales
  • La documentación es muy decente
  • Tiene mucha comunidad
1 1 respuesta
Jastro

#1 Engines para videojuegos en js:

  • Phaser.js

  • Impactjs

  • EaselJS

  • pixi.js

  • Cocos2D

y hay mas aun, pero digamos que esos son los mas "conocidos"

2 2 respuestas
Vedrfolnir

#4 #5 Tomo nota, antes de ponerme a programar le echaré un buen vistazo, muchas gracias!

#2 Me mola la que has puesto para la vida, no se me habría ocurrido, luego le daré unas vueltas y haré algunas progresiones como dices, gracias!

1 respuesta
Wasd

#5 #6 Pixi.js es más bien una librería de renderizado (más allá de cómo se identifiquen ellos). De hecho es la que utiliza PhaserJS.

Todas las otras son totalmente válidas.

3 años después
Sokar92

Se que está feo revivir posts, y posiblemente me gane algo tipo ban o a saber, pero no puedo aguantarme preguntar que pasó con esto @Vedrfolnir? Cómo es que no lo sabía? XDD

Voy poniendo el pecho!

EDITO: Es el juego aquel del hielo???

1 respuesta
Vedrfolnir

#8 No serás tú un nigromante? xD

Na, fue una idea que tuve y nunca llegué ni a empezarla, pero empecé a trastear con phaser because of @Jastro y fue cuando empecé con el de hielo. Pero como no, acabó abandonado xD
(Eso me capacita como gamedev?)

1

Usuarios habituales