Trying to become a general computer programmer these days is a bad move. Had you finished your degree 5 years earlier you would have no problem landing a programmer job even with no experience.
But now general programming it's a rat race to the bottom trying to compete with indian and chinese programmers who get paid less than $5 per hour.
I would not advise the games industry either. Although the games industry is specialized, and you won't suffer as much competition, because bellow average programmers cannot get into it,
game studios make programmers work like slaves and low pay. They assume that everyone is a geek who doesn't mind working for peanuts just because of their love of games.
Get a career on something else and develop your own indie social game on your free time.
2 specialized fields where programmers get decent pay is finance and electronics. It's not easy to break into finance. I myself am trying to get into electronics. I wish I had studied electronics or electrical engineering instead of computer science.
I've been working as a professional developer in one form or another for about 12 years now. The first 8 or 9 mostly in C++ and the last few in C#/.net. My last few roles were as a "senior developer".
At the end of last year, I was offered a role as a technical lead. The idea was that I would have the main responsibility in a small company and have more opportunity to make the bigger decisions. The company was redeveloping their legacy MFC app in .net.
My last company, while sometimes frustrating, was a good work environment and I got on well with most of my workmates, so I was reluctant to leave, but it was a pretty decent payrise and more importantly, more responsibility/autonomy. So I took the new job.
I've been here 3 days now and I can't help but feel I've made a huge mistake. The work environment is awful, the existing codebase is worse than anything I've seen and I don't see any of the "technical lead"y stuff happening in the near future at all. In short, i now dread getting up each day.
Do I "tough it out" and hope it gets better? (yes, I'm aware I haven't given it much time, but I've hd enough jobs to get the feel of a place). Or do I cut my losses now and just quit (there are other potential roles I could look at)?
The existing codebase is bad, that's probably why they need you the most. Stay and leave your mark by improving their codebase. If they don't allow you enough room and autonomy to make the changes you would like to see, then let them know that you are unhappy.
2 levels of detail is a good solution. When you search a larger radius of terrain ignore details. If the monster is close to the player then search only a small radius around the monster.
Also sharing expensive computations between the monsters will help. Group monsters who are close to each other and compute only once a path or other low level computation like predicting where the enemy will be, and then share the knowledge of that computation between all monsters.
Then each individual monster can decide to use the path or make any high level decisions based on the low level results.