Python & Draenor
Hey Python, I've been studying how a simple algorithm can predict enemy movements, kind of like a hunt. Got any code that can model that?
Here’s a minimal moving‑average predictor you can try. It stores the last few positions and assumes the enemy will keep moving roughly the same way.
```
class EnemyPredictor:
def __init__(self, window=3):
self.window = window
self.positions = [] # list of (x, y) tuples
def add_position(self, pos):
self.positions.append(pos)
if len(self.positions) > self.window:
self.positions.pop(0)
def predict_next(self):
if len(self.positions) < 2:
return self.positions[-1] if self.positions else None
dx = self.positions[-1][0] - self.positions[-2][0]
dy = self.positions[-1][1] - self.positions[-2][1]
last_x, last_y = self.positions[-1]
return (last_x + dx, last_y + dy)
```
Use it like this:
```
pred = EnemyPredictor()
pred.add_position((10, 5))
pred.add_position((12, 6))
pred.add_position((15, 8))
next_pos = pred.predict_next() # returns (17, 10)
```
It’s not perfect, but it gives a simple linear extrapolation that’s easy to tweak. Adjust `window` or add more sophisticated smoothing if you need better accuracy.
Sounds solid, the moving average keeps things simple, but watch out for quick turns—add a check for big jumps and maybe clamp the step size so you don’t miss a sudden change. Keep the window small when the enemy is erratic, bigger when they’re steady. Good work.