I'm my own Army

BingoBob

New Member
Jul 27, 2016
9
7
3
#1
Read my other post to see how I would make classes.
So here is an AI implementation I'd like to see.
There are quite a few games out there that let you hire mercenaries. What if you could create your own Mercs that played exactly how you would play them? Here's how you do it. first you allow the ability to create multiple characters on one account. Then right after character creation you run through a level designed to calibrate the AI for that character. Each room of the level will be designed to profile how you react in certain situations. The first room will send an increasing number of enemies at you to determine at what point you decide to take cover. as soon as you take cover, the profiler will log how many enemies are in the room and how much damage you have taken.

i.e. lets say you create a Controller Tank class. you may choose to stand in the face of danger all the way until you have a sliver of health left. or until you die. Then it even takes into account what enemies you target. the closest, the one doing the most damage to you, only ranged enemies. and it will log what abilities you use at each target. basic attack or controller ability. it will also log your accuracy. if you only hit 50% of the time in this calibration room then when anyone in your army chooses this character to tank for them. he will be terrible at his abilities but at least they can count on him to stay in the fight to the end.

Then once you have all your garage slots filled up with Characters, you can go into a team calibration level to ensure your healer is always healing your tank or your damage doer, or whoever has the least health. you decide.

anyway I know this would be a nightmare on the programming side of things but as a player potentially alone on some distant planet this would be an easy way to make friends. ... just like my IRL friends... imaginary...
 
Jul 27, 2016
22
25
13
29
US
#5
Honestly a system where a player could program a series of bots solely based on their actions in a level would be pretty amazing and revolutionary.

The thing that's tricky about designing a system like this is scope. Scope grows exponentially once you start thinking about the space outside of a single encounter, or multiple different types of encounters. It's probably hard enough already to write a learning AI that can teach itself to play Pacman or something.
 

BingoBob

New Member
Jul 27, 2016
9
7
3
#6
I know it's complicated but not impossible. a lot of these type systems exist in public asset stores it just a matter of combining them correctly.
Here's how I think I would do it.
First define a list of Action that can be taken by the AI. Run, Jump, Reload, Hide, Hover, Target enemy type with Weapon, target enemy type with ability type, target Allie type with ability type, move to melee range of target, move to objective. and so on.
you can even link these actions to commands your character can yell out like 'Fall Back!' and for the next 15 seconds or so all AI allies within range prioritize that objective over their others. and if no other triggering factors come into play they continue to fall back. So 'Fall back' could mean something like run in the direction of the most recently updated fog of war until you are out of attack range of enemies, and wait. things that might interrupt this prime objective after the initial 15 seconds would be if a new enemy ambushes, then he would revert back to his original objectives weather it is to fight back when he is a attacked a so on.
But i digress...
next I would setup the 'Fog of war' or awareness distance. That would act exactly how FoW works in most RTS games. you have your primary view radius. then when you leave an area it is marked as a safe location for a certain amount of time. any undiscovered areas or oldest updated areas are considered dangerous because new enemies may have spawned there. This data is used for pathing.
Then you setup Triggers like Health >= 75%, or <= 25%. allies health percentages also. Agroed enemy distance. < 10m, >50m. Ammo Clip > 10%. Enemies in range >= allies in range. It's not hard to imagine a list of these parameters. These triggers will initiate the actions.

Have you ever played League and tried to lain with a Bot. Many times I have been in the situation where the Bot takes a tiny amount of damage and they decide its time to retreat back to the tower then teleport back to base to heal. even when you are a support class and you heal them to full health their parameter doesn't update and they decide continue to port back instead of get back in the fight.

also it's important to define action types like move action and attack actions. because these can both be use at the same time. lets go back to the 'Fall Back!' scenario. Even though you've asked them to run back and hide. they should be able to run backwards and keep the enemy targeted while executing the move action.

Then you need some type of ELO rating system, that not only rates you as a player but how effective you are with each ability or weapon. Then when that Character is being used as AI it uses those stats to determine accuracy and effectiveness of abilities/weapons. now you get a more horizontal progression. Where your motivation isn't to level up but to keep doing thumper missions in hope to improve your Elo for that character. neat part of that is that your score can go down. thus making it a continuous goal to be more skilled. and not just grinding for gear or levels. ...

... holly cupcake! I just blew my own mind. I gotta say that a again so it sinks in.

Your skills for each ability and weapon are always being rated. and the score can go up or down. thus making the Prime motivator of the game to be actually skillful and not just grinding for levels and gear. Bam! horizontal progression achieved!


Oh! there's a Pikachu outside! I gotta go!