Alpha Pac-Man: Race Against Time



Pac-Man: Race Against Time
alpha v0.45a (July 28, 2016)

A freeware win32 Pac-Man clone made with GM8. Not a single line of source code is used from the existing games, it's all made with "watch, try, code, repeat" method.

The level size 31x28 tiles which is based to the 16-bit release by Williams Entertainment. The overall look and feel is also based on that release. However, the level format is custom and non-compatible with the other Pac-Man games. The objects in this release move in perfect sync even 8 or 16 pixels per a step cycle, instead moving with a free speed.

Main features
- Time mode that challenges the player complete a level under a time limit
- Continuous mode that allow/disallow the objects active movement
- 4 difficulty levels: Easy, Normal, Hard, Insane
- A room editor with 32 editable rooms + a test room option
- 32 customable wall sprite sheets (.png)
- An customable basic sprite sheet (.png)
- Customable sounds (.wav)
- Wandering fruits
- Supports keyboard and gamepad​


Arrow Keys to move player / menu select
Key Z to confirm select / proceed for the next level
Key Enter to start game
Key Escape to exit / quit game

Left thumbstick to move player / menu select
Button A to confirm select / proceed to next level
Button Start to start game
Button Back to exit / quit game

Room editor:
Arrow keys to move the view
Mouse to move the tool
Left MB to select object / place object / confirm
Right MB to destroy object
Key Space to proceed for Test Room

Editor shortcut keys:
Key "S" to Save
Key "L" to Load
Key "N" to Clear
Key "C" to Copy
Key "P" to Paste
Key "," to Load Prev Room
Key "." to Load Next Room

Main Menu

1. Time mode: Yes/No
- If allowed, the player needs to complete a level under limited time limit.
- Base time: Easy 450, Normal 400, Hard 350, Insane 300
- Each completed level reduce the time by 5, the absolute limit is 250.

2. Continuous mode: Yes/No
- If allowed: all the objects keep moving.
- If not allowed: the objects move only when the player move.

3. Game difficulty: Easy/Normal/Hard/Insane
- Easy: the ghosts have more scatter time and less attack time
- Normal: balanced
- Hard: the ghosts have less scatter time and more attack time
- Insane: the ghosts always attack

4. Room editor

Each time when the player collects a power pellet the ghosts change to the frightened
state for a limited time. Eating the ghosts consecutive will grant bonus as follow:

The 1st ghost, 200 points, Time +5
The 2nd ghost, 400 points, Time +10
The 3rd ghost, 800 points, Time +20
The 4th ghost, 1600 points, Time +40

- Collecting a clock
grants Time +50

- Collecting the fruits
grants a Time +30 bonus and points as follow:

Apple, 100 points
Pineapple, 300 points
Orange, 500 points
Cherry, 700 points
Strawberry, 1000 points

- Collecting three identical fruits grants also with an extra life. This has a side of the card; a grey
ghost will appear which cannot be frightened.

- If time mode is enabled, the time remaining is added to the player score after level completion, giving a potential chance to get an extralife.

- The player gains an extra life on each 10,000 units of points reached.

The ghosts


Blinky is targetting to the position of the player. When Blinky comes to crossroads it will compare line A and line B lengths next to him and choose the shortest line direction. If the line lenghts are equal, the order of direction chosen is north, west, south, east.


Pinky tries to block the player by targetting to the position in front of the player.


Inky's target position depends of Pinky's target position. Basically it's double length to Pinky's target position. Imagine drawing a line from Inky to it's target position and double it. Inky can be a serious threat if it's near to Pinky, and if Pinky is near to the player. Otherwise it may seem just wander around because the target position can be far outside the room area. It will not exit the ghost base until at least 30 pellets have been eaten.


Clyde is using two different target methods depending it's distance to the player. If the distance is equal or more than 96 pixels, he will try to catch the player the same method as Blinky. If the distance is less than 96 pixels, he will target the tile under the player's start position (the bottom T-shaped wall in a classic Pac-Manl), patrolling the clock. It will not exit the ghost base until at least 30% pellets have been eaten.

No install required. Extract the zip file to a directory and go for playing.
Win32 (2.6MB)

Pac-Man (c) 1980 Bandai Namco Entertainment
Ms. Pac-Man (c) 1982 Bandai Namco Entertainment
Ms. Pac-Man (c) 1996 Williams Entertainment
Last edited by a moderator:


This looks pretty cool, but I fail to see how it's turn based. It seems to be a slow motion pac-man game that pauses automatically when you stop moving.

I understand that you move, then they move, etc, but this doesnt affect rhe strategy of Pac-Man like turnbased controls should.

I'd like to see this control more like Fire Emblem or Shining Force. When its your turn, you select an area on the grid within a certain radius that you can move to (say, 5 or 6 spaces) and you move all the way there, collecting dots along the way. Then, each ghost takes their turn moving 6 spaces before you can continue.

This would open the door for new design possibilities like multiplayer and bonus fruits that give you abilities like bonus turns or a larger movement radius.


So you would call it stop-motion? Basically it's also turn-based, you make a move and the ghosts makes their moves.. :)

There's an idea turning the game more strategic when you and the ghosts have certain amounts of movements to do on a turn. That would be too boring bacuse a single level completion could take very long time. Should add more RPG elements, or other random elements and collectables, an option to save game.. maybe.

Multiplayer could be nice, optional to challenge or co-op. Or a multiplayer on a same keyboard.. the player switch to another if you fail or complete a level.
Last edited by a moderator:


While the code is technically taking turns, I wouldn't call it a turn based game, because the way you play the game doesn't change due to the fact that the turns exists. This is more like a 5 FPS PacMan, which is an addition to the game that doesn't add anything to the experience.

While RPG's do tend to take a bit longer to complete levels than traditional action games, it's up to you to keep the experience engaging, by making the decisions you make in each turn meaningful. Even the multiplayer you mentioned is exactly how multiplayer works in traditional Pac-Man games. You need to find a way to differentiate this game from the others, other than it being a slow-motion version of the original.

Try making it so the player gets 5 or so turns, before the ghosts gain control and take their 5 turns. I really think a change as simple as that would make the game more engaging.


Without keyboard wait the game would run as the original game does, except you move 8 pixels per step. I like the original Pac-Man concept and i would not like to add anything more for this concept, except possible multiplayer. I'm pretty satisfied how does it work for now, if you like it i would be grateful. Keeping it simple, keeping it clean, loyal to the original concept is the main priors on this project. The ghosts have a short random state on a spawn before they turn into their own states, leaving a room for player to plan it's moves. Replacing the fruits with a clock is enough in this concept, making the time to play main part of this game.

Naming the game for more exact how does it work is not so simple. It's not a slow-motion, neither a 5 FPS. Basically the game just waits for player move and then makes it's own move.. Chess Pacman?
Last edited by a moderator:


The problem is, the stuttering makes the game a pain play. There's not a lot wrong with it, it's well made, and is visually appealing. At this point, it's either not faithful enough, or not different enough.

Imagine if I were to make Mario more like Sonic, and I increased his speed to Sonic's speed. Then imagine I never added the ramps or loops to keep me running smoothly. I would be stopped abruptly at every pipe and block in the level.


The game is still alpha (moved down from beta) and has a common movement bug when you hold down the arrow key; at first it moves one step, at second it waits a moment, at third it finally starts repeatly to move into a direction. I'm working on it. Another known bug is when a ghost change to grey ghost and back, there's one step lag between the movement. There may be also other bugs, any report would be worthy. The game is enough faithful, you collect the pellets and the powers, the ghosts acts much like the original game ghosts does.
Last edited by a moderator:


I played this last night, and thought is was pretty ace.
Perhaps you could let the game start on any key press? I didn't see the need to switch keys to start and stop the action.
What did you use fro the enemy AI? Did you just use the grid multipathing built into Game Maker?


Yeah, I want to know, did you use this as a guide (it's an interesting read, anyway)?
Not using pathfinding at all :D The ghost just compare own position to player's position and decide which directon to move next, that's why the ghosts sometimes takes stupid routes while trying to catch player. Thanks for the link, it is actually very interesting and helps me to do more accurate and clever ai. As a side i changed to movement to timer based, which allows instant, seamless and stable movement. Before it was based to keyboard_wait which made the movement stuttering. Still working for next version.


GMC Elder
You're welcome! I figured if you weren't already using it, it might come in handy if you want to make the AI as close to the original as possible. :)


Version 0.41 is here!

Made major changes to the ghost movement and how do they choose ther states. Also fixed the player movement which is now less stutteting. The game got also more nessy like look with color theme changes. The game has still a small but relevant difference to the original game; the ghosts won't change direction after the state changes.

Thanks to FredFredrickson, really helpful site which i was reading over and over while doing this new version. Helps alot to understand logic behind the ghosts.

Have fun.

Scatter / State mode waves
In a room start each ghost go towards their come corner. Clyde and Inky waits 30 steps before stepping out of the home base. After reaching the corner the mode wave starts to count, setting to mode 1. The mode counter doesn't increase when the ghost is in a straightened state or heading back to the home base. The mode is reset when level is completed or player dies. The state depends of the ghost, can be either "catch" or "wander".

If ghost was get into straightened state or got eaten before reaching it's home corner, mode is set to 1 when turning back to it's own.

Mode 0: Scatter - Last as long as ghost reach it's corner
Mode 1: State - 48 steps

Mode 2: Scatter - 16 steps
Mode 3: State - 48 steps

Mode 4: Scatter - 16 steps
Mode 5: State - 64 steps

Mode 6: Scatter - 8 steps
Mode 7: State - Forever

Blinky (Red)
Targetting to the position of the player. When Blinky comes to crossroads it will compare line A and line B lengths and choose the shotest line direction. Universal to all ghosts; if the line lenghts are equal, the order of direction is north, west, south, east.

Pinky (Pink)
Pinky tries to block player by targetting to the position in front of the player. Target position is 24 pixels in front of the player depending the player's facing direction.

Inky (Cyan)
Inky's target position is double length of of Pinky's target position. Inky can be a serious threat if he's enough near to Pinky. Otherwise it may seem to just wander around because the target position can be outside the room area. It'll be wandering if there is no Pinky.

Clyde (Orange)
Clyde got random mood. He may be wandering or trying to catch the player using Blinky's targetting. Chance to change state is 1:11 on each step.
Last edited by a moderator:

Paolo Mazzon

Graphics are kind of weird, but quite well made an enjoyable. Just as a little tip, never disable the close window button.


Good point... It wasn't actually disabled, i changed the way how Esc key works and that seem to disable the close button action as aside. Ninjafixed.


v0.42b and some nightly fixes:

- The close button functioning.

- Inky will not exit the base until 30 -floor(level/2) of pellets have been eaten.

- Clyde will not exit the base until 30% -(floor(level/2) *0.01) of pellets have been eaten.

- Eating ghost consecutively gives you also time bonus! 1st +5 time, 2nd +10 time, 3rd +20 time, 4th +40 time. This will be very pleasant and gives you more free time to wander in the maze. In most of cases the time is your worst enemy which may just run out before completing the level.

- Clyde is using two different states depending it's distance to player. If the distance is equal or more than 48 pixels, it will try to catch the player same way as Blinky does. If the distance is less than 48 pixels, it will target the bottom T shaped wall next to it's home corner patrolling the clock.

- Power timer fixed to 32-(floor(level/2)) steps. Fixed to 5 if the result is lower.

- Time +30 on collect, instaed +20.

- Fixed a bug; sometimes ghost did move through the base wall after respawn.
Last edited by a moderator:


Looks and plays well. Well done!

But I agree with the others, it's definitely NOT turn-based. Then it would be based on each player/AI taking their turn after each other. Which is where I was hoping this was going :-(

Keep it up though!

But please, do call it something different than "turn based" Pacman, as it's very misleading (sorry!)

EDIT: You could go with the phrase you used yourself, and call the game "Stop Motion Pacman", as that is a selling point that makes sense, as it's not a turn based game. It's a Pacman game, which when fully operational and faithful to the logic of the original, you can put down at any given moment. Imagine being in line playing Pacman, or on the bus, going up an elevator, whatever, you play the game for a few moments, and can always resume from where you left off.
Last edited by a moderator:


For me turn-based sounds correct, but it's 2 vs 1. Stop motion doesn't also sound correct. It could be called Crawler, but the name is connected to RPG style game. Let it be then Press 'n' Go.
Last edited by a moderator:


I can see that you were inspired by the article in relation to ghost behavior. I had no idea the ghosts had their own complex behavior! Your rendition also seems to give the ghosts unique behavior that characterizes them. Very cool. As for the turn-based vs not argument: I wonder if sort of reskinning this game but keeping the mechanics would give a different impression. Not suggesting you do this, but I'm wondering if people are having trouble separating Pacman and fast gameplay.
This is a cool idea, and it was pretty fun! I disagree with the people saying it isn't turn-based. You move, and then the enemies make their move. If you changed the way it was presented, where you moved, and then it said "enemy turn!" on the screen, and each ghost made their move one by one, nobody would say that it wasn't turn based, even though the gameplay would be functionally exactly the same. Because of that, I have to say it's a turn based game, hahah! The turns are just very fast if you want them to be! X'D

Anyway, good work. It was cool to see that I still suck at pacman, even when reflexes don't come into play, hahah! X'D


This is a cool idea, and it was pretty fun!
I agree with you there.

I disagree with the people saying it isn't turn-based. You move, and then the enemies make their move.
No, they don't. In this game, the player and AI make their move at the same time, which is not the definition of "turn-based".
Turn-based means that each entity takes their turn, one after the other.

Try playing Monopoly, Ludo, or Katan with all players going at the same time. It simply oesn't work. That's why those games are turn-based.

Edit. I see the OP changed the name of the game to "Press'n'Go". Thank you for taking our input into consideration. I look forward to continue watching how this game progresses :)
Last edited by a moderator:
No, it LOOKS like they all move at the same time, because of the way he presents it, but obviously the enemies are moving AFTER the player, whenever the player moves. Read my last post again. He could keep the same exact gameplay, functionally, just adding a one second delay between each ghost movement, and people would say "oh wow, it's turn based!"

If people played monopoly so quickly that their movements were milliseconds apart, it would ALSO look real time. That wouldn't mean it was, or that any of the rules had changed.

If you played a computer chess game where the ai made a move instantly after every time you made a move, would that *blow your mind?* would you think "holy ****, im playing REAL TIME CHESS!!"? :p
Last edited:


Man this is so fun played this way! I have to admit it is even more fun now that I understand the AI a little better. It helps me cheat.
Still perfectly challenging! I think you could actually sell this on the mobile platform or at least on online if you could get away from the Pac Man name.

Such a perfect way to play this game!


Working on a new release.. big changes, currently added:

- New main menu screen + instructions screen.
- Room editor & Test room.
- 32 editable rooms (256 levels in total).
- 8 editable wall sprite sets.
- Horizontal & vertical direction teleport.
- Wandering fruits. Reset after 3 fruits have been collected, won't reset on death/room complete. Collect 3 of the same fruit for bonus. Who knows is there hidden extra if you collect the fruits in a special order..
- Collecting 3 fruits has also a bad side effect; a grey ghost called Death will appear. It's moving slow, targetting to the player position as Blinky does. Cannot be turn to frightened or eaten. Think twice when you're about to collect the third fruit.

Last edited by a moderator:


The current high score system will come worthless, because users can make custom levels. I have an idea the game has for example 8 slots for users, and each user has it's own game progress. Basically when user complete a level he/she can try the next level and the progress is saved on that point. Similair system is used on Emerald Mine game (Boulder Dash clone), original made for Amiga and C64 platforms.

An option is to close this Pacman project, leave as it is and make new thread for the incoming release. As for now this Pacman has most the basics what the original game has. The fruits i should add for this release some day. Most of users would like how the game works as now and it's challenging as sh*t, even if you know the logic behind the ghosts how they work and know where they move next step. On my best run i made to level 42, the power time and room time is ruthless on higher levels, needs a good strategy and ofcourse some good luck to complete a level.
Last edited by a moderator:


Here was video footage of the forthcoming release..
Last edited by a moderator:


I don't know if you've fixed this in the upcoming version, but to me, the gameplay feels less like a turn based and more like the game 'Super Hot'. Whenever you stop moving, everything else stops. It makes for some REALLY tense moments, but it doesn't feel like a turn based game to me. Which by all means, this shouldn't be a bad thing, I love the 'Super Hot' vibes this game is bringing, just don't brand it as a turn based if it isn't one.


Something changes have been made during the progress..

- Level size and wall sprite set changed to match more with real Pac format. Room size is 28x31 tiles which is based to Ms Pac-Man 16-bit arcade level size. The wall sprite set has different sprites for surrounding walls, inner walls, the ghost base walls, and for pellet and power.

- Player can set the game run continuous, instead holding down the arrow key all the time. Anyway the game still runs synchronized; the other objects move either 8 or 16 pixels when player move. Another option is if the mode is continuous, the other objects still move if player is standing.

- Time mode is optional, adding an extra challenge for the game. In this case player needs to complete level under the time limit. Player gain more time by collecting the clock, the fruits and eating the ghosts.
Last edited by a moderator:


Freelancer artists wanted. The new release is just behind a corner, but it could still need a personal overall style instead using graphics and sounds from the existing games. I just suck a big time creating the both, maybe you could blow a new personal style for the game that also satisfy the end users.

- Game init screen, up to 512x448 pixel.
- Main screen logo, around 384x168 pixel
- Generic font 8x8 pixel, alternative 16x16 pixel
- Generic 16x16 pixel sprite set including player, ghosts, clock and fruits.
- Generic 16x16 pixel wall sprite set, including pellet and power.
- Generic sound effects, around 19 at all + possible musics.
Last edited by a moderator:


v0.45a finally here,

New main features:
- New menu style and a new name "Pac-Man: Race Against Time"
- New menu options: Time mode, Continuous mode, Game difficulty and Room editor
- 32 editable rooms
- 32 editable wall sprite sheets (png)
- An editable basic sprite sheet (png)
- Customable sound files (wav)
- Wandering fruits
- Supports keyboard and gamepad
- 3 gfx & level sets included; default, classic and 16-bit ms. pac-man (arcade levels)

Last edited by a moderator:


Hey, is there going to be an update soon? The Mediafire links don't work.