sIKE23 / Mage-Wars

Mage Wars for OCTGN
7 stars 5 forks source link

Rework Battle Calculator - Replace Expected Damage with Outcome Distribution #317

Open ACG8 opened 8 years ago

ACG8 commented 8 years ago

While the kill chance statistic is fairly useful for players, I am not sure that the expected damage is very useful (since there is significant variance). Shall we drop it for V2?

As a more useful statistic, I could separately compute the probabilities of each amount of damage, but it would take up more space. What I could do is to separate this portion of the battle calculator from the attack selector, so that players can (discreetly) view battle statistics. So basically:

Thoughts?

sIKE23 commented 8 years ago

Sounds interesting, I am not sure of how well it would work with cards that you do not control.

I asked this over on Hangouts but will ask it again here: What are plans for Ready Markers.

Have you done any work or thoughts on how to handle "Friendly" Cards?

//FC

On Sun, Jan 3, 2016 at 5:10 PM, Ananda notifications@github.com wrote:

While the kill chance statistic is fairly useful for players, I am not sure that the expected damage is very useful (since there is significant variance). Shall we drop it for V2?

As a more useful statistic, I could separately compute the probabilities of each amount of damage, but it would take up more space. What I could do is to separate this portion of the battle calculator from the attack selector, so that players can (discreetly) view battle statistics. So basically:

  • When you attack, each attack displays the kill chance, but no other statistics
  • There is a separate action you can do to compute all possible outcomes of an attack against a specific target which also displays the probability of each outcome occurring. When you choose this option, your opponent is not notified in any way (e.g. no arrow appears). This is not integrated into the system for declaring attacks.

Thoughts?

— Reply to this email directly or view it on GitHub https://github.com/sIKE23/Mage-Wars/issues/317.

ACG8 commented 8 years ago

You will be able to check attacks on cards you do control vs ones you do not just fine; I suppose the reverse might require some special thought.

Handling what about ready markers? I'm not sure what plans need to be made.Do you mean checking whether a creature has a marker when determining whether it can attack?

Regarding friendly cards, we should create a global dictionary that associates each player with a team number. If two cards belong to players that have the same team numbers, then they are friendly.

sIKE23 commented 8 years ago

Well right now when a card says: Use a Ready Marker to keep track of this Action. I have a CRLF[ReadyMarker] in the xml and the code then knows to place a ReadyMarker on the card when it is revealed.

So one Global variable to track the teams/players?

On Sun, Jan 3, 2016 at 5:46 PM, Ananda notifications@github.com wrote:

You will be able to check attacks on cards you do control vs ones you do not just fine; I suppose the reverse might require some special thought.

Handling what about ready markers? I'm not sure what plans need to be made.Do you mean checking whether a creature has a marker when determining whether it can attack?

Regarding friendly cards, we should create a global dictionary that associates each player with a team number. If two cards belong to players that have the same team numbers, then they are friendly.

— Reply to this email directly or view it on GitHub https://github.com/sIKE23/Mage-Wars/issues/317#issuecomment-168555842.

ACG8 commented 8 years ago

Oh, I thought you were talking about action markers for some reason. The current method seems fine for now. I suppose we could alternatively add another xml field that specifies all of the markers that the game is supposed to place on the card when revealed; that might be more elegant (and would save quite a bit of code).

Yes, one global variable to track teams is probably the best way to handle things.