How do videogame devs create bots ranging from beginner level to hardcore depending on your settings choice?

398 viewsOtherTechnology

How do videogame devs create bots ranging from beginner level to hardcore depending on your settings choice?

In: Technology

7 Answers

Anonymous 0 Comments

You start with the most menacing bot first. It’s supernaturally good because it has an aimbot that can snap to your head and has maximum awareness range.

Then you turn it down for the different settings.

The hard bots will still aimbot you 75% of the time, have a large awareness radius, and will push objectives relentlessly.

The medium bots will aimbot you 50% of the time, have a reduced awareness radius, and spend 33% of their time wandering aimlessly.

The beginner bots will aimbot you 25% of the time, are blind, and spend 66% of their time wandering aimlessly.

Anonymous 0 Comments

It depends a great deal on the game, but in many (perhaps most) cases, the AI simply cheats, or gets an invisible penalty for “easy” bots.

In Civilization VI, for example, the highest-difficulty AI settings start with several extra settlers, giving them an enormous head start. I think they may also get bonuses to various yields, meaning they simply produce *more* resources than an equivalent player would, even if nothing else changed.

Making a truly “intelligent” bot is *very, VERY* hard, and even the advent of modern machine learning techniques does not necessarily make this task any easier.

Anonymous 0 Comments

It depends on the game. It could incorporate specific variables that effect / fine tune the performance, “intelligence”, or so on of the bot, and/or use different algorithms or pathways entirely of decision making.

E.g. opponents looking at x steps ahead, or operating completely blind to future odds. Using optimal strategy, suboptimal strategy, or purposely blundering frequently. Having near-100% precision, or random variance around the “correct” value. Tracking the player directly when targeting, or factoring in player movement to fire predictively. Letting the computer “know” player position and status as normal, or force it to choose options as if it didn’t have access to this information (think fog of war, cards in your hand/deck, etc.). And so on.

An important note is that a computer opponent that chooses the optimal strategy isn’t always fun to play against, so often it’s better to purposely make an AI opponent act “dumber”, so players have a better experience. And sometimes that involves making something too smart and working backwards. Or, sometimes it’s building up to a point and leaving it purposely flawed in ways that are more fun to play against. 

Anonymous 0 Comments

Depends on the game.

In a game like civilization, they just straight up get discounts to make the game easier. Like if it costs you 100 production to build an archer, it only costs the AI 50 on super hard mode. 

Then cuz the AI always has a larger army than yours, they’ll always act more aggressively without actually having to change the bot itself. Just have the bot work the same way and give it more power.

For a game like call of duty, they could make it so every single shot the bot fires hits you, they could also make it so the bot reacts to you and starts shooting instantaneously.

To make it fun/realistic, they add delays to how quickly the bot will start shooting at you, and they reduce the % of shots that will hit you. Want to make it harder? Just change the settings.

Or infamously in some older Call of Duty games the game just straight up cheats on very hard difficulties by just spawning grenades in at your feet so you can never just stay behind on piece of cover for too long.

Anonymous 0 Comments

Some give the bot more raw “power”, some make the bot “smarter”.

Think about it like playing tag (one of the simplest games) against a robot, where the robot is trying to stay away from you. The easiest level bot might just move directly away from you if it sees you, but how you increase the difficulty can vary.
One way is to just make the robot faster. It’s always going to be difficult to tag a robot if it jets directly away at 200mph the moment you’re in its line of sight. We could also increase the task difficulty, requiring you to tag the robot several times to win, with the robot teleporting a distance away each time. This is a super simple thing to program, but it also doesn’t make the harder difficulties that much more complex/interesting.

On the other hand, we can make the robot smarter. Maybe instead of waiting until it sees you, we let the robot “cheat” and know where you are at all times. Or we can make it so it not only looks at where you are, but it also accounts for your momentum and where you’re *going* to be or other factors like walls and doors. We could also give it more tools, allowing it to climb walls, lock/unlock doors, or even fly, which gets rid of cheesy strategies like backing it into a corner or in a room. This type of difficulty makes more complex and interesting situations at higher difficulties, but it’s very time-intensive to program and can sometimes make easy and hard difficulties feel like two completely different games.

Anonymous 0 Comments

In RTS games one usual way is for the bots simply take longer between the actions they may perform.

Longer reaction time means harvesting resources starts later, it means I produces units at a reduced speed, it means it reacts less quickly to your actions.

Anonymous 0 Comments

An easy example is aim percentage in shooters. The game always “knows” where you are. It can choose to feed this information to the AI or not. It can use that to make them “wander” in your general direction. A decent amount of shooters AI are always meant to miss the first shot, as to let the player know they’ve been spotted. They could have 100% accuracy and headshot you, before you were even aware they could see you if the game “wanted” it. The difficulty of the enemies aim accuracy, damage values, durability, and quantity are easy things to point out to determine what could change with an “easy” to “hard difficulty change.