AI in ChW2
ZXNet echo conference «spbzxnet.games»
From Ivan Mak → To Vyacheslav Mednonogov 30 August 1999
Greetings, Vyacheslav!
On the day Vyacheslav Mednonogov wrote Yuri
Nazarenko:
VM> 2All:
VM> Now AI is stuck in the swamp.. Deeper and deeper.. A month with him
VM> I'm freaking out :( I curse the need to write something in assembler
VM> more or less serious:
VM> a) damn it;
VM> b) you can experiment;
VM> c) damn you will understand the very logic of what was written.
This is where we need to use the strategic matrices that I talked about.
Let's say this example:
Object A attacks object B, what should B do?
Matrix input: Object type A (more likely even impact type)
Object type B
State of object B
Output: Feedback
Let, say, for all these three quantities 3-bit values are used,
it turns out that in order to calculate the answer you just need to take a byte from the table consisting
of 512 bytes.
The type and state of object B can be combined into one field and shortened, say
up to 5 bits.
What do we get?
Input: 3 bits - beat type
5 bit object state
Output: 1 byte - 8 bits
divide it into two fields:
5 bits new state of the object under attack
3 bit reverse effect of an object on an enemy(let's say 000 - no action)
Surely, something is not taken into account here, but the principle should be clear.
Similar matrices can be compiled to calculate attacks, etc. etc.
To change the strategy, you don’t need to tinker with the program, just change
values in matrices.
P.S. Beautiful, cultural, understandable and fast! :-)
Wow! The Protoss are attacking my Zerlings! It's time to get going. Ivan.
- Divorce the circuit, big and small.. [ Sprinter-II ] [ Forth-CPU ] [ ZX ]
From Vyacheslav Mednonogov → To Ivan Mak 30 August 1999
Get Msg, Ivan!
30 Aug 99 05:39, Ivan Mak reported to Vyacheslav Mednonogov about {AI in CV2}:
IM> Similar matrices can be compiled to calculate attacks, etc. etc.
IM> To change the strategy, you don’t need to tinker with the program, just change
IM> values in matrices.
The game is good (I personally took note for the future).. However, in RTS
the first place goes to the collective attack... Its mathematical justification is very
simple (IMHO, this is where the whole escape strategy lies):
Why is it better to attack together rather than singly? Suppose they meet
gyours against gyours (absolutely equal in strength and having the same health Z).
The former collectively attack one enemy, the latter attack each one differently
to the enemy.
After some time t gyour "collectivists" will kill their enemy (they
attack faster) and switch to the second enemy. By this point they
will have health equal to Z/2, a dead enemy will have health equal to 0 (died), and
the remaining enemy is health equal to Z.
After the next period of time t (the same) the remaining one will die
the enemy is a “self-individual”, having taken another “collectivist” to the next world, but another
will live with health equal to Z/2.
It seems that this is the only correct tactic for a squad of any size. And onFirst place comes out to the criterion of searching for a collective goal..
* Crossposted in SPBZXNET.GAMES
* Crossposted in RU.GAME.DESIGN
[I.ZX] Warm greetings, Slava!
[We don’t need the sun - the party is shining for us, we don’t need bread - give us work!]