JeuWeb - Crée ton jeu par navigateur
Formule de combat simplifié, besoin d'idée - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Gameplay, gamedesign (https://jeuweb.org/forumdisplay.php?fid=48)
+--- Sujet : Formule de combat simplifié, besoin d'idée (/showthread.php?tid=6874)



Formule de combat simplifié, besoin d'idée - nestoyeur - 10-11-2013

Bonjour à tous,

J'aurais besoin d'aide pour mettre en place un system de combat relativement simple. Il se déroule sur le t'chat du site, les joueur connecté ont un level qui augmente de 0 à 100 via un systém séparé.

Le fonctionnement :

Toute les x minutes la barre d'actions des joueurs arrive à 100% et ils peuvent exécuter une action. L'une des actions possible est la commande !fight <joueur> qui résulte par une réponse texte dans le tchat, envoyé par le serveur web et annonçant qui des deux joueurs (l'attaquant et l'attaqué) à gagné le combat.

Les valeurs existantes :

Actuellement il n'y à que le level de 0 à 100 et en prévision d'un future system d'item, je pense ajouter une valeur attaque et défense (qui sera incrémenté par les item). Il faudrait donc trouver une valeur d'attaque et de défense sans item et pour un premier test je propose qu'elle sois égale au level.

Issue du combat (récompense) :

Le joueur qui gagne le combat obtiens un pourcentage d'xp, volé au joueur qu'il à tué. On comprends donc qu'attaquer un joueur haut niveau est plus intéressant.

Qui dois gagner :

Dans la logique, le plus grand level gagne forcément.. malheureusement cela voudrais dire qu'il n'y a aucun intêret à attaquer un joueur plus haut niveau en espérant gagné plus d'xp. Le perdant peux donc être le joueur qui attaque, au quel cas il ne perds pas d'xp.

En conclusion, la formule ?

L'idéal serais de trouver un équilibre convenable, entre la différence de niveau et les chance de gagner. Afin que, sans aucun item, un joueur puisse tenter sa chance en attaquant quelqu'un de plus haut niveau pour tenter d'avoir une meilleur récompense, ou choisir un combat facile et attaquer un joueur plus petit niveau pour être sure d'obtenir la récompense.

Idée de formule :

Jatk = joueur attaquant
Jdef = joueur attaqué

Jatk.puissance = Jatk.level
Jatk.defense = Jatk.level

Jdef.puissance = Jdef.level
Jdef.defense = Jdef.level
(la puissance et la defense, dans cette version de la formule sont en réalité un pourcentage de chance de gagner. Par exemple 1 de puissance = 1% de chance de gagner)

chance.victoire = 50 + Jatk.puissance - Jdef.defense
random.victoire = rand(0,100)
if (random.victoire < chance.victoire+1) victoire = Jatk
else victoire = Jdef

Avec cette formule on considère donc (toujours sans item) :
- En attaquant un joueur ayant 50 level de plus, on à 0% de chance de gagner
- En attaquand un joueur ayant 25 level de plus, on à 25% de chance de gagner
- En attaquant un joueur ayant le même level on à 50% de chance de gagner
- En attaquant un joueur ayant 25 level de moins, on à 75% de chance de gagner
- En attaquant un joueur ayant 50 level de moins, on à 100% de chance de gagner

Avec une valeur de base de 60 sur chance.victoire on obtiens :
- En attaquant un joueur ayant 60 level de plus, on à 0% de chance de gagner
- En attaquand un joueur ayant 35 level de plus, on à 25% de chance de gagner
- En attaquant un joueur ayant le même level on à 60% de chance de gagner
- En attaquant un joueur ayant 15 level de moins, on à 75% de chance de gagner
- En attaquant un joueur ayant 40 level de moins, on à 100% de chance de gagner

Conclusion :

En commençant la rédaction de ce message je n'avais aucune idée de la formule proposé ci-dessus, qui est venu au fur et à mesure que j'écrivais xD comme quoi posé à plat sa aide toujours ! Donc je sollicite vos avis, sur cette formule, sur une tout autre methode que vous connaitriez, sur le choix du réglage ou encore sur toute aspet non abordé qui m'aurais échapé ? J'espère que le message n'est pas trop rebutant à cause de sa longueur Confused et merci pour votre lecture.

Nestoyeur.


RE: Formule de combat simplifié, besoin d'idée - niahoo - 10-11-2013

Hello, en fait c'est un jeu sans gameplay ?


RE: Formule de combat simplifié, besoin d'idée - nestoyeur - 15-11-2013

Exacte, les combat se déroule via des commandes dans le t'chat et la plateforme est un stream sur twitch.tv. Les viewer du stream ont un level et peuvent se combattre tout en regardant le stream.


RE: Formule de combat simplifié, besoin d'idée - Senader - 16-11-2013

Vu que la seule variable du joueur est le niveau, tu ne peux en effet faire que ça (ou quelque chose qui y ressemble).

C'est pas mal, je trouve, pour quelque chose sans gameplay.


RE: Formule de combat simplifié, besoin d'idée - Sn4k - 23-01-2014

Ouais, ça peut être cool Wink


RE: Formule de combat simplifié, besoin d'idée - MadMass - 23-01-2014

C'est cool mais je vois pas de formule qui conditionne le gain d'xp, qui doit lui aussi dépendre du level non ? Smile


RE: Formule de combat simplifié, besoin d'idée - Jagger - 29-01-2014

Je propose une formule ultra-simple :
A et B s'affrontent,

Probadegagner_A = Niveau_A / ( Niveau_A + Niveau_B )
Probadegagner_B = Niveau_B / ( Niveau_A + Niveau_B )

Exemples :

N1 vs N1
50% - 50%

N1 vs N2
33% - 67%

N1 vs N10
9% - 91%

N15 vs N20
43% - 57%


Expérience gagnée = Probabilitédegagner_adversaire


En faisant une échelle de niveau exponentielle :
Exp_niv_supérieur = ((1.1)^niv_actuel * 100) - 10




Avec ce système, le jeu est très juste je trouve. Wink