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.
Latest Answers