Pages: 1 ... 4 5 [6]
|
|
|
Author
|
Topic: The New Alliance Ships (Read 20068 times)
|
|
|
|
|
Death 999
Global Moderator
Enlightened
Offline
Gender:
Posts: 3874
We did. You did. Yes we can. No.
|
unbegun. I am balancing scientific simulation, work, girlfriend, and Star Control. I have had some ideas, though:
The AI is composed of an array of nodes. Each node has an unsigned int representing an Expression Level, and an array of void functions (taking this AI and the number of the Node as its arguments) Behavior.
Each turn, the behavior of each node with any expression is executed. The degree of effect is always positively affected by greater expression levels, though with various interactions, saturation effects can occur, and sometimes an effect will be overwhelmed by other effects.
Nodes have several interactions - all based on the expression level of the node Promote: the target node's expression level increases. Destroy: the target node's expression level decreases Annihilate: target node's expression level decreases - this node's expression level decreases by the same amount. Block: the target node's expression level does not count fully towards the effect of its behavior _next_turn_ (once it's not blocked, it reactivates) (this will require more implementation detail...) Decay: this node's expression level decreases Convert: stated portion of the expression of this node becomes expression in another node instead maybe a few more, but this suite should be small.
Nodes may also have meta-tags such as Additional Behavior: press (virtual) fire button if expressed above 100 Expression level = enemyShipIsInFrontOfMe ? 100 : 0 Expression level = rangeToEnemyShip > 1/4 playing field ? 100 : 0 Expression level = asteroidOnCollisionCourse ? 100 : 0 These provide I/O. The input questions will be especially varied, as we don't know what questions are the best ones to ask. I imagine that numerical constants in the I/O will be just as subject to evolution as the rest. There are also a LOT of nodes which have no meta-data, but (initially) randomly adjust each other -- and, most importantly, the ship's controls.
|
|
« Last Edit: March 08, 2003, 08:35:54 pm by Death_999 »
|
Logged
|
|
|
|
Pages: 1 ... 4 5 [6]
|
|
|
|
|