hito
Ronin Warlock
Posts: 5
|
Post by hito on Nov 8, 2009 13:26:56 GMT -5
I've been doing a lot of thinking about warlocks, and one thing I want to know is how many possible states there are. This is a very rough copy. In particular, a significant lowering factor is that you can't be double enchanted, but there's also the fear that more of these relationships should be exponential than I thought. I'm putting down my rough thoughts so you guys can help check my math and hopefully come up with more accurate modeling than my versions. Warlocks States Assumptions: No gestures more than ten turns ago are relevant No more than ten monsters summoned ParaFC Maladroit 1v1 The Basic Conditions
Enemy HP- 15 Your HP - 15 Your last 10 LH gestures - 9^10 (eight gestures + no gesture against a time stopped/hasted opponent, times ten turns) Your last 10 RH gestures - 9^10 Opponents last 10 LH gestures - 10^10 (? is a gesture for your opponent) Opponents last 10 RH gestures - 10^10 Contribution to the range: (15*15*9^20*10^20) Length Independent ConditionsThese are the conditions that are either yes or no. The range is 4 (yes-yes,yes-no,no-yes,no-no). Note that it's actually 2 for time stop, because this is a model for making a decision at the start of each turn so your opponent will never be time stopped from this perspective. Clap of Lightning Used Time Stopped Heat Resistant Cold Resistant Their contribution to the range is (4^3 * 2)Length Dependent ConditionsSame as the bionmials, but the length is relevant. Pemenancy is a length condition. The range is the square of the possible lengths. (e.g protection can be [not applied,1,2,3,or P] so the total range is 25). **Note that charm monster is not here. That is because the monster owner is a factor in the section on monsters.** Blindness (25) Disease (36) Poison (36) Invisibility (25) Haste (25) Permenancy (16) Delay Effect (16) Protection (25) Fear (9) Charm Person (9) Paralyze (9) Amenisa (9) Maladroit (9) Their contribution to the range is (9^5 * 16^2 * 25^4 * 36^2)MonstersAgain, remember the previous caveat that there are up to ten monsters. Monster+HP Probability (Goblin * 1hp) = 1 (Ogre * 2 hp) = 2 (Ice Elemental * 3hp) = 3 (Fire Elemental * 3hp) = 3 (Troll * 3 hp) = 3 (Giant * 4 hp) = 4 Total Possible Monsters: 16 * 2 owners Possible Conditions: Maladroit (3) Fear (3) Paralyze (3) Amenisa (3) Is attacking: No one, enemy, you, or one of the other nine monsters (12) With ten monsters, the total monster contribution to the range is (32*(3^4)*12) Banked Effects There are 43 bankable spells. With this and "no banked spell", applied to you and your opponent, targeted at you, your opponent, no one, or one of the other nine monsters the total contribution to the range is ((44*12)^2 ).That leaves us with a tentative starting figure of 64 unvigintillion. Of course, if even one of these should be exponential that I did as straight multiplication this will change a lot.
|
|
|
Post by Slartucker on Nov 8, 2009 14:09:26 GMT -5
Quite an ambitious undertaking. Oh, hi everybody. :-) Note that it's actually 2 for time stop, because this is a model for making a decision at the start of each turn so your opponent will never be time stopped from this perspective. No, it needs to be 4 for time stop. If both players are time stopped, the environment is very different since enchantments, shields, monsters, etc don't have their normal effect. Presumably these can be combined into a single variable, since none of them can overlap in their non-nonapplied states. That would be 121 instead of 9^5, quite a savings. First off, note that monsters can reach +1 their normal max HP. Actually, that goes for warlocks too. Some of these can be combined for monsters since they are 100% identical once applied. I think the ones that can't affect elementals, can't get slapped on elementals in the first place (will still bounce, just not stick), so really you can just have Disabled (3). The "is attacking" category really shouldn't exist for your analysis since it can be changed every turn. Even in-game it really only exists for convenience.
|
|
|
Post by nawglan on Nov 8, 2009 14:14:44 GMT -5
I would limit monsters to:
Number of each type owned, and lowest health of each type.
That cuts down on the number of inputs greatly. Then on logic: do you target ((yourself, weakest owned, or healthy) * each type of monster owned).
|
|
hito
Ronin Warlock
Posts: 5
|
Post by hito on Nov 8, 2009 14:54:22 GMT -5
The main things you have left out are banked spells -- a complicated one since the target is banked along with the spell. I actually did include that one, it's hidden right at the bottom of the post. Fair enough, hadn't thought of that. Yes! This is the operator to cut down on the enchantments I was looking for. Thanks. It's actually counted for warlocks - this is an analysis when a warlock is waiting to input their moves, so neither player will be zero, so the range is 16 - 1 = 15. Hadn't done it for monsters, though. Ah, that's right! So I need to set up monsters and elementals as sub-categories, and then use "disabled". Gotcha That was me hedging my bets. If I time-stop a friendly ogre, does it make a difference whether it attacked a goblin it killed or the other warlock on the turn I cast time-stop? I'll proceed assuming that has no effect. And naw, I just want to cut down on impossible states. I'm aiming for completeness more than efficiency, so while your logic system definitely has it's place I don't think it's here. So, rough draft MK II: --- The Basic Conditions
Enemy HP- 15 Your HP - 15 Your last 10 LH gestures - 9^10 (eight gestures + no gesture against a time stopped/hasted opponent, times ten turns) Your last 10 RH gestures - 9^10 Opponents last 10 LH gestures - 10^10 (? is a gesture for your opponent) Opponents last 10 RH gestures - 10^10 Contribution to the range: (15*15*9^20*10^20) Length Independent ConditionsClap of Lightning Used Time Stopped Heat Resistant Cold Resistant Their contribution to the range is (4^4) = 256 Length Dependent, Overlapping ConditionsBlindness (25) Disease (36) Poison (36) Invisibility (25) Haste (25) Permanency (16) Delay Effect (16) Protection (25) Their contribution to the range is (16^2 * 25^4 * 36^2)Length Independent, Non-Overlapping ConditionsFear Charm Person Paralyze Amnesia Maladroit A warlock can be affected by one of these one-off or permanent, or none ((5*2)+1). With the square, their contribution to the range is (121). MonstersAgain, remember the previous caveat that there are up to ten monsters. Monster + HP Range (Goblin * 2hp) = 2 (Ogre * 3hp) = 3 (Troll * 4hp) = 4 (Giant * 5hp) =5 All of these monsters can be non-disabled, one-off disabled, or permanently disabled, with either player being the owner. So the monster probability is (14*6) = 84. Elemental + HP Range (Fire Elemental * 4 hp) = 4 (Ice Elemental * 4hp) =4 These monsters cannot be disabled and 'ownership' doesn't actually matter. So the elemental state total is 16. (84 + 16 = 100 - that's pretty neat!) The total monster contribution to the range is ((100)^10).Banked EffectsThere are 43 bankable spells. With this and "no banked spell", applied to you and your opponent, targeted at you, your opponent, no one, or one of the other nine monsters the total contribution to the range is ((44*12)^2 ).Our second guess is 850 quinvigintillion, a number that is unfortunately HIGHER than both our last estimate and 8.5 times the atoms in the visible universe.
|
|
|
Post by mikeEB on Nov 8, 2009 15:16:46 GMT -5
Paralysis and Charm Person have more state than you give them credit for, since it matters who's doing the charming/paralyzing. If you are paralyzed, there are four distinct possible states - left hand paralyzed, right hand paralyzed, your choice of hand paralyzed, opponent's choice of hand paralyzed.
Charm Person is simpler because a self-charm is equivalent to uncharmed; however, permanent charm self is different from permanently charmed by opponent.
Speaking of which, you are ignoring permanent conditions. You can be affected by any one of permanent blindness, invisibility, delay, haste, permanency or protection in addition to any mind-spell. You can also be affected by permanent mind-spells, but that's mutually exclusive with the affects of normal mind-spells. Finally, you can't be affected by both a permanent mind-spell and a permanent other spell.
EDIT: There can only be one elemental on the field at a time. Monster contribution to the range should be (100*(84)^9)
Further EDIT:In the rare case of permanent haste, you need to keep track of up to 14 back gestures with your current scheme. But those blanked gestures don't actually matter as far as your current and future casting options go. You only need to pay attention to the last 7 existing gestures.
|
|
|
Post by Slartucker on Nov 8, 2009 15:28:32 GMT -5
He covered the permanent conditions, but that's a good point about paralysis owner and perm charm owner.
Also, I assume you mean that you CAN be affected by both a perm mindspell and a perm other spell. Because unless my memory is playing really wild tricks on me, there are no limitations on # of enchantments affecting you, and # of perm enchantments, other than mindspells bouncing.
Re monster targets, the Time Stop and Haste conditions work very differently for monsters. Monsters never get time stopped or hasted turns. Instead, they get a bonus attack at the end of the turn, BEFORE player death and surrender are checked and before any players get time stopped or hasted turns. In the case of time stop it's a (mostly) unblockable attack.
|
|
|
Post by nawglan on Nov 8, 2009 16:24:42 GMT -5
Reason I brought it up is I'm looking at using Fann to set up a neural net (yes, I know... been through that discussion here many times). I had considered using a large array allowing up to 50 total monsters, but to save space and input neurons I thought that reducing it to just keeping track of 8 values for each player would make more sense. (numgob numogre numtroll numgiant / corresponding min health of each).
I see your point though about the state. Each monster would need to know it's state... may have to go back to keeping track of N monsters / player.
Assuming my wife gives me some time, I'll be on the warpath to get a site set up for simulating games (mainly to build up a good set of training files). Though, I also would like to introduce team based play, scheduled tournaments (inter-guild, server wide, variety of supported formats), custom spell books, guilds/factions, sandboxes so that guilds can develop spell books for submittal to the whole server (these will be reviewed...).
I've already got a framework up, just need to start adding logic.
|
|
|
Post by deleted on Nov 9, 2009 19:28:20 GMT -5
I'd be eager to play against it no matter what the state of advancement is.
|
|
|
Post by mikeEB on Nov 9, 2009 19:38:34 GMT -5
I'd be eager to play against it no matter what the state of advancement is. Even if it's something along the lines of "Always stab with left hand for offense, throw a bunch of Ws and Ps with right hand for defense?"
|
|
|
Post by deleted on Nov 9, 2009 20:04:34 GMT -5
yup, I've messed around with neural nets before so I know how long they take to get anything interesting.
|
|
|
Post by ourjake on Nov 9, 2009 20:11:24 GMT -5
actually stabbing a bunch of times in a row usually will get me for a decent chunk o damage. i always think: surely not again?
|
|
|
Post by Dubber on Nov 9, 2009 21:48:14 GMT -5
actually stabbing a bunch of times in a row usually will get me for a decent chunk o damage. i always think: surely not again? *Makes note to self*
|
|
|
Post by succat on Nov 10, 2009 23:37:57 GMT -5
What the heck is this stuff?!?
|
|
|
Post by deleted on Nov 11, 2009 1:37:33 GMT -5
I'd be eager to play against it no matter what the state of advancement is. Even if it's something along the lines of "Always stab with left hand for offense, throw a bunch of Ws and Ps with right hand for defense?" You might get to interesting places faster if you use spells rather than letters as the basic level decisions it can make. Also it would be a good idea to have it automatically trim the spell history down to only the things that matter before you let it think about anything.
|
|
taliesin
Ronin Warlock
Grand Master
Posts: 156
|
Post by taliesin on Nov 23, 2009 5:43:22 GMT -5
If I may help pare things down a bit again...
The actual statespace of the hands will be much, much lower as you only need to take account of ten gestures if the spellflow is PWPFSSS, and this cannot apply to both hands at once. Any other gesture string will decompose to something simpler. Because the longer strings are so specific, the exponential nature is heavily curtailed at the higher end.
|
|