|
Post by contributor on May 27, 2015 3:29:52 GMT -5
I was thinking about skitterers and ants this morning. In the first level, especially, the skitterers are pouring in and I was thinking about the role they could play in "mapping" a potential target. The xenos are sending the weak ones in first, knowing they will be slaughtered, but using them to get a picture of what they are attacking. The skitterers are essentially "feelers" put out by the swarm. That got me thinking about how skitterers could be used in the AI routines. If a skitterer makes it to your tact point via a certain path, the hive assumes that this is a good attack path. If a skitterer makes it to an engineer, the hive decides it has found a chink in your armor and sends more mobs down the same path. If a skitterer encounters a lone scout, you can now assume that he has been discovered and the xeno will respond to him now. On the other hand, quick killing of lots of skitterers will tell the alien to avoid that path spot for awhile. I suppose there's lots of potential here, but also lots of complicated coding. Take it for what it's worth. I was even trying to think of a scenario where a skitterer would return to the hive carrying information, so you would want to make sure that you killed it before it got back. Maybe that would be a totally different unit though. Perhaps a mission where you are on a sneak attack and the xeno won't start responding to your presence until a skitterer is able to return to their base and report you? The closer you make it to objective without alerting them, the fewer waves of real bad guys you will have to deal with.
|
|
|
Post by johndramey on May 27, 2015 3:44:50 GMT -5
That's.... actually a pretty good idea. Especially the, for lack of a better term, stealth mission idea. Curious to what fallen and Cory will say regarding skitterers from a lore standpoint.
|
|
|
Post by fallen on May 27, 2015 9:06:03 GMT -5
contributor - interesting idea! Not something I can see adding to BF, but the Scout Stealth system is interesting along these lines. We'll share more information on it once you are able to get Stealth buffs.
|
|
|
Post by Cory Trese on May 27, 2015 9:25:07 GMT -5
AI design is always so interesting. Storing the absolutely minimum computed state value, as highly compressed as possible but still capable of carrying forward the structural elements of the AI's goal and workset.
The game uses a heat mapping system that provides a multidimensional data source that is still zero added state, and if lost can be recomputed as a side effect of building the first rendering pass for the graphics. That last one is a big one, and will always make things interesting with game design.
We want something like the proposed solution, however are limits are that we cannot store any information about where an AI Unit is going, or where it was, or what has happened to it recently. That is why a heat map is so ideal for mapping the swarms "feelers" -- it gives you they best features of the list with survivable overall cost.
|
|
|
Post by dayan on May 27, 2015 15:57:06 GMT -5
Just looked up Heat Map to try not to seem quite as uneducated as I actually am and ran into this definition:
"A heat map is a graphical representation of data where the individual values contained in a matrix are represented as colors. Fractal maps and tree maps both often use a similar system of color-coding to represent the values taken by a variable in a hierarchy. The term is also used to mean its thematic application as a choropleth map."
I give up and once more assume the role of a proper troglodyte.
|
|
|
Post by Cory Trese on May 27, 2015 18:32:06 GMT -5
Here is a thread with some visuals that show how two teams might generate a heat map.
|
|
|
Post by En1gma on May 27, 2015 19:10:24 GMT -5
|
|
|
Post by Cory Trese on May 27, 2015 19:20:38 GMT -5
|
|
|
Post by En1gma on May 27, 2015 19:30:12 GMT -5
My head hurts now.
|
|
|
Post by Cory Trese on May 27, 2015 19:39:54 GMT -5
The AI I've designed for TA2 uses several different maps like this, computed off the map base on player units, AI units, player bases (TP) and Xeno bases (TP and spawning zones.) This lets the AI have variable behaviors -- for example, knowing where it is safe to mass troops vs. where to attack the player's weakest TP. By using matrix math on the different maps (multiplying, subtracting, adding, inverting) you can get some very interesting information.
|
|
|
Post by contributor on May 28, 2015 2:00:43 GMT -5
Yeah, I can see the challenge of building truly intelligent but lightweight IA. I read and article a long time ago about how swarms and large flocks are often controlled by very simple choices, applied on a large scale. I could be an interesting thing to research in all of your extra free time I was thinking about Spawn Point Intelligence, instead of pathing intelligence. If we assume xeno's coming from the same spawn point will take similar paths then it might be possible to make the Spawn points more intelligent instead of using paths. If the mobs it spawns are tagged so they can feed intel back to it. Spawn points who's mobs succeed in attacking TPs will generate more mobs. Whereas Spawn Points whose mobs die without attacking could generate less. Likewise Spawn Points who's mobs die by fire attacks could start spawning fire resistant mobs etc. I don't know if that's helpful, or if it could be incorporated into the current heat map model or not, but it was just a random thing I thought of.
|
|
|
Post by Cory Trese on May 28, 2015 8:37:25 GMT -5
A very interesting idea. The sub-compartmentalization routines of the AI's attack group system uses many of the concepts you consider and would probably benefit from some of the suggestions (attacks/turns alive would be an interesting metric.)
There is a lot of cool research in the neurobiology and neuropsychology fields about cognitive systems -- I've had the luck of meeting a few in California who research involved computer simulations of insect swarms. Cool stuff.
|
|