Codename: HyperPac

Fiddling around with some ideas for a Pac-Man-like that emphasizes speed. I made a prototype that can handle arbitrary speeds (although once you’re moving past multiple turns in one frame, it becomes impossible to control exactly how you want to).

In the prototype you have speed that slowly ramps up as long as you don’t run into walls. I’m also thinking about implementing a sort of “dash” mechanic that makes you go even faster and can destroy enemies, but only if you hit 2 or more at a time.

Would be willing to hear other ideas you think would be neat in a speed-focused PacMan!

fast
(gif is 30 fps but game is 60)

Try it out and let me know if it’s intuitive to control or you find it does unexpected things. I have an input buffer so tapping the keys shouldn’t cause you to miss turns, and hold directions should work like normal Pac-Man.

https://gate.itch.io/hyperpac
pass: breakfast

7 Likes

Also for you code nerds: I looked and didn’t really find a satisfying Pac-Man control algorithm online, certainly not one that handled arbitrary speeds. My eventual implementation was something like this pseudo code:

moving psuedo code

while speed > 0
	if direction is 90 degrees from turn && can move in turn direction
		if distance from tile center == 0
			direction = turn
		else if distance < buffer from center
			direction = towards center
		end
	else if direction is opposite of turn
		direction = turn
	end

	distance = min(distance to next center,speed)
	speed -= distance
	if can't move in that direction
		speed = 0
	else
		move that distance in that direction
	end
end
2 Likes

Also traveling on lines instead of paths was sort of a convenience thing when implementing it, but it conjures up other arcade games, like Qix.

And I couldn’t help but notice my paths look a lot like Tetris shapes, and I wonder if I couldn’t make this into more of an action puzzle game. It would be rad to be able to outline a shape, and then it disappears and the above shapes fall w/ gravity.

5 Likes

hype to see where this ends up!

Feels fine. If you tap left and right quickly you can build up some speed it seems like. could have a level with an enemy that’s magnetic and you could use that to get out of their suck zone.

Neat! Might be my connection or aging computer but it felt like it ran kind of slow? I played it a couple times and it’s fast at first but then kind of slows down during the the duration.

Oh yeah looks like I accidentally made the min speed lower than the start speed.

1 Like

Alright, I uploaded a new version and added some controls to the page.

If you press X or Z you can turn off the auto-speed and fiddle with it manually. Anything > ~3.5 feels pretty uncontrollable.

1 Like

Alright, another update. Implemented a version of the “dash/boost” mechanic I was talking about. You lose the boost when hit a wall (i.e. don’t do a perfect turn).
wild

4 Likes

Refinement: hitting the wall resets your speed, but pressing the button again during a boost executes a boost cancel, which stops the flashing/invincibility early, but you keep the extra speed, which decays over time.

hyperpac_0

Edit: you can no longer do 180s while boosting. That shit’s OP. You can boost cancel and do them, though, but then you don’t get the invincibility.

5 Likes

hell yeah i love a pacman

be sure to at least casually peruse jamey pittman’s pacman dossier

not that you need Make Pacman entirely ofc, but to me, a Pacman is not a Pacman without accelerated cornering and hit pauses. telegraphing the turn buffer somehow (like the ce games’ wall sparks) is also important, imo

on phone atm so have not managed a real go at what you’ve got, excited to give a try when i have a moment

pacman qix sounds hottt

ok i had a play, some interesting raw material. i think the combined speed, low res, and the high density of yr test maze make it a little difficult for me to make any meaningful qualitative assessments of whatever you intend for this system, but given how excellent & dense heat death was, i’m excited to see where this ends up

1 Like

Yeah, I’m slowly opening up my test level so you can feel the speed a bit more. This is definitely a prototype and I’m trying to figure out what things will be good & fun based off some vague ideas in my head.

hyperpac_2

Gonna add some enemies next to see what kind of game I have, here. Need at least sketches of all the elements before I can start figuring out which mechanics and ideas will work and which won’t.

Definitely adding hit pauses with the enemies and visual cues for the buffer. Hit pauses in particular are really interesting with the speed mechanic, because getting a hit pause might give you more time to input your next turn.

We’ll see about accelerating cornering – since I’m playing with speed might make it feel even less consistent. And when you’re going fast enough, some turns literally only have one or two frames or you miss the input window (e.g. if two turns are right next to each other, you may only have a 1 frame window for the second turn).

1 Like

It could also be that the low resolution of Pico-8 is a limiting factor in this idea, and if that’s the case I might pivot. Or if I like the prototype enough despite it, I might attempt it on another platform.

Even the visual indicator (Pac-Man CE will draw sparks) does a lot to help me know I’m pushing in the right direction, and as reinforcement from the game that it is listening and will use my pre-turn input.

2 Likes

Implemented all 4 original ghost AIs this afternoon(sans the bugs the original had). Gonna implement collision next, and then I can start iterating on things like

  1. how fast should this game be
  2. how should the ai work?
  3. how do you kill ghosts
  4. are there other mechanics that might be fun?

hyperpac_3

4 Likes

So interestingly – without the glitch that blue has in the original game, it and red tend to overlap for longer periods of time. Maybe I should implement the glitch, or implement something that would split them up better when they’re on top of each other.

  • spear through them from behind

  • QIX-complete a segment and anyone on a perimeter line or contained inside gets zorched

3 Likes

this would make the outer circle a no-brainer to hit first though, i wonder what sort of respawn stuff might make that a spicier choice

good point, Qix counters it with the player being much slower than the enemies

1 Like

Yeah there’s already a lot of things to experiment with here. Need a couple more core features and then I can start popping out prototypes for different ideas.