In this chapter, you will learn different techniques for:
Handling random numbers better
Building an air-hockey rival
Devising a table-football competitor
Creating a tennis rival
Creating mazes procedurally
Implementing a self-driving car
Managing race difficulty using a rubber-banding system