Day 1 / Enemies & Movement
Made good progress today! First enemies.
I have one enemy type so far. "Patrollers." They look straight forward + can see adjacent spaces. They move predictably, either turning "right" every time they hit an obstacle or by turning "180" when they hit a wall. Nothing fancy. I'll add more types later.
You can see the patrollers exhibiting the different behaviors. And apparently they can bounce off each other?! I didn't know that. But it makes sense -- they're marked as "impassable" in the level model.
If the player can see a space, they can also see its "lighting" value. Which I'm using to represent enemy vision in red. If you step into a red space, you take a damage. So your goal overall will evading these red vision spaces. I'm proud of the brighter red spaces where vision overlaps.
Now movement. This is the core of the game concept, and it's complicated. So I'm going to start by explaining it in prose and then show you what the UI looks like right now. I'm not totally sure it's good and it may need a lot of work to be fun. Or it may never be fun! But at least it's new!
You have a collection of movement abilities. Each ability has a "path" and potentially some environmental requirements. The most simple is "jump."
With "jump" selected, you can see 'W' and 'D' are options. But you can't move west (there's a wall in the way) or south (destination blocked). Jump has no requirements other than the spaces be passable.
Now lets look at a trickier move -- "running jump."
So you'll notice this looks pretty similar to jump, but has a lot more range. The tradeoff is that you have to move through the other two "blue" spaces on the way to W or D. in game terms this will still occur in one player move. It's quite "fast" in game sense. But you can't do it if you don't have those spaces to "wind up" the move. And of course you can't do this west or south because it's blocked.
Want a more compact jump? That's "wall jump."
This move also jumps two spaces, with no wind-up movement. But it requires you have a wall "behind" you to jump off. So you can only do it to the east.
Finally, "wall run." You can skip THREE spaces, but you have to have a wall to your right (or left) all the way to do it.
This was a bear to build, and it's still got some bugs. I'm really proud of knocking it out in day 1, including some complex modal UI to make it straightforward. It's a little hard to demo it in a video without some fancy keypress visualizer. If you want to poke at it yourself, I think this link will work for my current build. You can use keypad or qwe/asd/zxc to move, and the number keys (not num-PAD) to select the moves from the menu. You do have to use the letter keys to select the directions for the move; I'll fix that later.
I'm not sure yet how to limit these moves. They're obviously VERY powerful. Next up is procgen maps, and then I'll come back to balancing them. An obvious option is a basic cooldown per move system. I'm intrigued to try a combo system, where you can use, say, each move one time as long as it's "back to back." In other words, no adjusting your position with a basic move within the combo. But once you've used your movement system ALL moves go on cooldown for a while. Maybe they even require finding an item in the world to recharge. I like the theming of that; the burst of energy and speed that then dissipates and you become quite "weak."
See you tomorrow!