Saved games #36
Replies: 7 comments 1 reply
-
|
Thanks for the proposal! I created a feature request from it and will implement it "soon" :-) |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the idea! I create a feature request and will hopefully add this
new feature soon.
…_____
Von: kriggleman42 ***@***.***
Gesendet: Sonntag, 30. November 2025 23:22
An: armin-reichert/pacman-javafx
Cc: Subscribed
Betreff: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
I really like the authenticity of pacman games you have created. Very
playable and enjoyable. To get the most enjoyment it would be ideal if it
was possible to save a game at the conclusion of a level. So, you save the
score and number of lives left and level you are at. I'm not sure what else
would be relevant. Then have the ability to use a function key to start
there again in the future instead of at the beginning. While not authentic
to pacman arcade game, if you want it to be playable and enjoyable, the
first levels get boring after a while. I'd like to resume multiple times
from a given saved point and practice playing more at the upper levels
without having to go back through the early levels. So, not a case of just
wanting to pause and resume later. Obviously, I can use Alt-N to skip a
level, but that's not the same as picking up from what you have already
achieved. Also I can simply add lives to play at upper levels but that
doesn't I'm not sure I follow all the code well enough to put such a feature
in place quickly. Is that a difficult enhancement? So, key sequence to save
a game and a different one to resume.
-
Reply to this email directly, view it on
<#36> GitHub, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYNHYZQIPJJKXFMKBXHUUL37
NU2HAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZZGE4TGNZXG4> .
You are receiving this because you are subscribed to this thread.
<https://github.com/notifications/beacon/ABYNHY3WGXMTUUMMXZLEPX337NU2HA5CNFS
M6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNKIRUXGY3VONZWS33OVJRW63LNMVXHIX3JMTHABDC
JGE.gif> Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the idea! its so helpful |
Beta Was this translation helpful? Give feedback.
-
|
Merry Christmas! Thanks for making the Christmas season more nostalgic by enabling me to play pacman again!
I pulled down your latest updates on Christmas Eve and then added this to the CollisionStrategy.java code since I was still seeing missed collisions without anything showing up in the logs.
if (dist < COLLISION_SENSITIVITY_PIXELS) {
Logger.info("Collision detected (dist={}): {} collides with {}", dist, either, other);
return true;
}
else if (dist <= COLLISION_SENSITIVITY_PIXELS*2) {
Logger.info("NEAR Collision detected (dist={}): {} collides with {}", dist, either, other);
}
As you can see in my bolded added code, I don't return true so it doesn't impact anything except for an extra log entry.
The first set of near collisions may have been just that, I'm not 100% sure but I did experience one actual missed collision which is the last group of 3 starting at 17:05:10.867 and then I paused play soon after. I'm including the first set for reference in case this collection of data helps inform you of what is happening. Let me know if any of this is helpful or if you have reproduced enough yourself that you don't need examples like these. Note that I was running the code in IntelliJ debugger at the time I reproduced this so I could certainly set a break point on the "Near Collision" line that I added in case I needed to gather any additional data. At that point I could also readily capture a screen shot so that you could see a picture of current screen to match with what you see in logs.
17:05:08.894 INFO: SimulationStep Step #1780931: [JavaFX Application Thread]
17:05:08.894 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.911 INFO: CollisionStrategy Collision detected (dist=1.875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=31, visible=true, position=(192.00,211.88), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,213.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=true, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep Step #1780932: [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.927 INFO: CollisionStrategy NEAR Collision detected (dist=2.6875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=32, visible=true, position=(192.00,213.06), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,215.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.944 INFO: CollisionStrategy NEAR Collision detected (dist=3.5): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=33, visible=true, position=(192.00,214.25), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,217.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.145 INFO: CollisionStrategy NEAR Collision detected (dist=3.520032): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=105, visible=true, position=(147.50,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,208.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.162 INFO: CollisionStrategy NEAR Collision detected (dist=2.5449092): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=106, visible=true, position=(146.31,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.179 INFO: CollisionStrategy NEAR Collision detected (dist=2.0804145): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=107, visible=true, position=(145.13,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.75), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.193 INFO: CollisionStrategy NEAR Collision detected (dist=2.438301): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=108, visible=true, position=(143.94,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,210.44), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.211 INFO: CollisionStrategy NEAR Collision detected (dist=3.365728): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=109, visible=true, position=(142.75,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,211.13), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: CollisionStrategy NEAR Collision detected (dist=3.0317333): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=148, visible=true, position=(96.44,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.00), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep Step #1781049: [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep - Pac starts losing power [JavaFX Application Thread]
17:05:10.867 INFO: CollisionStrategy NEAR Collision detected (dist=2.4310813): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=149, visible=true, position=(95.25,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.69), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.893 INFO: CollisionStrategy NEAR Collision detected (dist=2.5287411): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=150, visible=true, position=(94.06,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,206.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.911 INFO: CollisionStrategy NEAR Collision detected (dist=3.262596): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=151, visible=true, position=(92.88,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,207.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep Step #1781064: [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep - Inky unlocked: Inky's individual dot counter reached limit (0) [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep Step #1781200: [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep - Pac lost power [JavaFX Application Thread]
17:05:14.553 INFO: CommonGameActions Game (PACMAN) paused [JavaFX Application Thread]
Let me know what would be helpful. If you did learn anything from the above, please share as that may help me provide better examples in the future. I'm definitely enjoying playing pacman at the same time I'm looking to reproduce what is happening!
Merry Christmas,
Ken
…________________________________
From: Armin Reichert ***@***.***>
Sent: Monday, December 1, 2025 4:47 AM
To: armin-reichert/pacman-javafx ***@***.***>
Cc: kriggleman42 ***@***.***>; Author ***@***.***>
Subject: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Thanks for the idea! I create a feature request and will hopefully add this
new feature soon.
_____
Von: kriggleman42 ***@***.***
Gesendet: Sonntag, 30. November 2025 23:22
An: armin-reichert/pacman-javafx
Cc: Subscribed
Betreff: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
I really like the authenticity of pacman games you have created. Very
playable and enjoyable. To get the most enjoyment it would be ideal if it
was possible to save a game at the conclusion of a level. So, you save the
score and number of lives left and level you are at. I'm not sure what else
would be relevant. Then have the ability to use a function key to start
there again in the future instead of at the beginning. While not authentic
to pacman arcade game, if you want it to be playable and enjoyable, the
first levels get boring after a while. I'd like to resume multiple times
from a given saved point and practice playing more at the upper levels
without having to go back through the early levels. So, not a case of just
wanting to pause and resume later. Obviously, I can use Alt-N to skip a
level, but that's not the same as picking up from what you have already
achieved. Also I can simply add lives to play at upper levels but that
doesn't I'm not sure I follow all the code well enough to put such a feature
in place quickly. Is that a difficult enhancement? So, key sequence to save
a game and a different one to resume.
-
Reply to this email directly, view it on
<#36> GitHub, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYNHYZQIPJJKXFMKBXHUUL37
NU2HAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZZGE4TGNZXG4> .
You are receiving this because you are subscribed to this thread.
<https://github.com/notifications/beacon/ABYNHY3WGXMTUUMMXZLEPX337NU2HA5CNFS
M6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNKIRUXGY3VONZWS33OVJRW63LNMVXHIX3JMTHABDC
JGE.gif> Message ID:
***@***.***>
—
Reply to this email directly, view it on GitHub<#36 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ANWBVYXOAG7WBNPQSK5L27T37QFE5AVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMJSGI2TIOI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
Hello Ken,
thank you so much! Alle the best to you and your family too!
Here is a little present for you: The latest release from today (2025-12-25) has a new flag for controlling if collisions between Pac-Man and ghosts are checked twice per simulation step. The first check occurs after Pac-Man has been updated (moved etc.) and the second one after the ghosts have been updated. This should (hopefully) detect all collisions. You can change this setting (per game-variant) in the dashboard: Press F1 or Alt+B to open the dashboard and there, open the "Game Control" section.
If you are satisfied with the double-checking behavior, I can make it the default.
Happy gaming!
Best regards from EU-hell Germany
Armin
…_____
Von: kriggleman42 ***@***.***
Gesendet: Donnerstag, 25. Dezember 2025 23:47
An: armin-reichert/pacman-javafx
Cc: Armin Reichert; Comment
Betreff: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Merry Christmas! Thanks for making the Christmas season more nostalgic by enabling me to play pacman again!
I pulled down your latest updates on Christmas Eve and then added this to the CollisionStrategy.java code since I was still seeing missed collisions without anything showing up in the logs.
if (dist < COLLISION_SENSITIVITY_PIXELS) {
Logger.info("Collision detected (dist={}): {} collides with {}", dist, either, other);
return true;
}
else if (dist <= COLLISION_SENSITIVITY_PIXELS*2) {
Logger.info("NEAR Collision detected (dist={}): {} collides with {}", dist, either, other);
}
As you can see in my bolded added code, I don't return true so it doesn't impact anything except for an extra log entry.
The first set of near collisions may have been just that, I'm not 100% sure but I did experience one actual missed collision which is the last group of 3 starting at 17:05:10.867 and then I paused play soon after. I'm including the first set for reference in case this collection of data helps inform you of what is happening. Let me know if any of this is helpful or if you have reproduced enough yourself that you don't need examples like these. Note that I was running the code in IntelliJ debugger at the time I reproduced this so I could certainly set a break point on the "Near Collision" line that I added in case I needed to gather any additional data. At that point I could also readily capture a screen shot so that you could see a picture of current screen to match with what you see in logs.
17:05:08.894 INFO: SimulationStep Step #1780931: [JavaFX Application Thread]
17:05:08.894 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.911 INFO: CollisionStrategy Collision detected (dist=1.875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=31, visible=true, position=(192.00,211.88), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,213.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=true, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep Step #1780932: [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.927 INFO: CollisionStrategy NEAR Collision detected (dist=2.6875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=32, visible=true, position=(192.00,213.06), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,215.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.944 INFO: CollisionStrategy NEAR Collision detected (dist=3.5): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=33, visible=true, position=(192.00,214.25), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,217.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.145 INFO: CollisionStrategy NEAR Collision detected (dist=3.520032): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=105, visible=true, position=(147.50,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,208.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.162 INFO: CollisionStrategy NEAR Collision detected (dist=2.5449092): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=106, visible=true, position=(146.31,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.179 INFO: CollisionStrategy NEAR Collision detected (dist=2.0804145): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=107, visible=true, position=(145.13,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.75), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.193 INFO: CollisionStrategy NEAR Collision detected (dist=2.438301): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=108, visible=true, position=(143.94,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,210.44), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.211 INFO: CollisionStrategy NEAR Collision detected (dist=3.365728): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=109, visible=true, position=(142.75,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,211.13), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: CollisionStrategy NEAR Collision detected (dist=3.0317333): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=148, visible=true, position=(96.44,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.00), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep Step #1781049: [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep - Pac starts losing power [JavaFX Application Thread]
17:05:10.867 INFO: CollisionStrategy NEAR Collision detected (dist=2.4310813): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=149, visible=true, position=(95.25,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.69), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.893 INFO: CollisionStrategy NEAR Collision detected (dist=2.5287411): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=150, visible=true, position=(94.06,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,206.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.911 INFO: CollisionStrategy NEAR Collision detected (dist=3.262596): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=151, visible=true, position=(92.88,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,207.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep Step #1781064: [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep - Inky unlocked: Inky's individual dot counter reached limit (0) [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep Step #1781200: [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep - Pac lost power [JavaFX Application Thread]
17:05:14.553 INFO: CommonGameActions Game (PACMAN) paused [JavaFX Application Thread]
Let me know what would be helpful. If you did learn anything from the above, please share as that may help me provide better examples in the future. I'm definitely enjoying playing pacman at the same time I'm looking to reproduce what is happening!
Merry Christmas,
Ken
________________________________
From: Armin Reichert ***@***.***>
Sent: Monday, December 1, 2025 4:47 AM
To: armin-reichert/pacman-javafx ***@***.***>
Cc: kriggleman42 ***@***.***>; Author ***@***.***>
Subject: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Thanks for the idea! I create a feature request and will hopefully add this
new feature soon.
_____
Von: kriggleman42 ***@***.***
Gesendet: Sonntag, 30. November 2025 23:22
An: armin-reichert/pacman-javafx
Cc: Subscribed
Betreff: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
I really like the authenticity of pacman games you have created. Very
playable and enjoyable. To get the most enjoyment it would be ideal if it
was possible to save a game at the conclusion of a level. So, you save the
score and number of lives left and level you are at. I'm not sure what else
would be relevant. Then have the ability to use a function key to start
there again in the future instead of at the beginning. While not authentic
to pacman arcade game, if you want it to be playable and enjoyable, the
first levels get boring after a while. I'd like to resume multiple times
from a given saved point and practice playing more at the upper levels
without having to go back through the early levels. So, not a case of just
wanting to pause and resume later. Obviously, I can use Alt-N to skip a
level, but that's not the same as picking up from what you have already
achieved. Also I can simply add lives to play at upper levels but that
doesn't I'm not sure I follow all the code well enough to put such a feature
in place quickly. Is that a difficult enhancement? So, key sequence to save
a game and a different one to resume.
-
Reply to this email directly, view it on
<#36> GitHub, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYNHYZQIPJJKXFMKBXHUUL37
NU2HAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZZGE4TGNZXG4> .
You are receiving this because you are subscribed to this thread.
<https://github.com/notifications/beacon/ABYNHY3WGXMTUUMMXZLEPX337NU2HA5CNFS
M6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNKIRUXGY3VONZWS33OVJRW63LNMVXHIX3JMTHABDC
JGE.gif> Message ID:
***@***.***>
—
Reply to this email directly, view it on GitHub<#36 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ANWBVYXOAG7WBNPQSK5L27T37QFE5AVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMJSGI2TIOI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
—
Reply to this email directly, view <#36 (comment)> it on GitHub, or unsubscribe <https://github.com/notifications/unsubscribe-auth/ABYNHY5BMVHYNV3DB7BCCAT4DRSNXAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMZUGMYDINI> .
You are receiving this because you commented. <https://github.com/notifications/beacon/ABYNHY24FALITQQ4FEBA4ED4DRSNXA5CNFSM6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNRIRUXGY3VONZWS33OINXW23LFNZ2KUY3PNVWWK3TUL5UWJTQA5IO4K.gif> Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the present! I've been a bit slow to respond because I'm struggling with the right response. Here is what I've found.
It's difficult to know for sure because the nature of missed collisions was sporadic and you have to play quite a bit before being confident that the nature of play has changed. What I have found is even with checking the box for "double-checking" missed collisions still occur, perhaps at a lower frequency, that's unclear. After experiencing the first missed collisions with normal collision strategy, I switch to alternate center distance strategy with double-checking still enabled. I experience one additional missed collision under those conditions. I have played a fair amount and only experienced 2 missed collisions but again difficult to know how many if any collisions that were now detected with double check that previously would have been missed.
I was already thinking before and still need to research and if you are willing to help you could likely do much more expertly.
What I attempted to add to the code but so far have not successfully, was to add a section that detected and reported on missed collisions. It wouldn't change the behavior at all of what happens, but merely log it and provide a line of code that debugger could stop on. If I merely looked for close collisions that wasn't helpful since I'm not wanting to break on a close collision that may result in a collision on the next cycle, but only on a just missed collision where pacman and ghost/monster just switched positions on same row or column and a collision was not detected. Then I could at least study better in the debugger the nature of what happened. These are generally but not always head on collisions that are missed and more frequently in the tunnels so the speed at which each are moving likely impacts probability of it occurring. So, it does seem to happen more frequently at higher levels when speeds are more different but that means I need to play more at higher levels which generally for me means adding more lives which I can do.
So all of above is just food for thought.
Looks like I'm about to be tied up in a new volunteer project so it may be some time until I have dedicated time to revisit this.
Best regards,
Ken Riggleman
…________________________________
From: Armin Reichert ***@***.***>
Sent: Friday, December 26, 2025 7:06 AM
To: armin-reichert/pacman-javafx ***@***.***>
Cc: kriggleman42 ***@***.***>; Author ***@***.***>
Subject: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Hello Ken,
thank you so much! Alle the best to you and your family too!
Here is a little present for you: The latest release from today (2025-12-25) has a new flag for controlling if collisions between Pac-Man and ghosts are checked twice per simulation step. The first check occurs after Pac-Man has been updated (moved etc.) and the second one after the ghosts have been updated. This should (hopefully) detect all collisions. You can change this setting (per game-variant) in the dashboard: Press F1 or Alt+B to open the dashboard and there, open the "Game Control" section.
If you are satisfied with the double-checking behavior, I can make it the default.
Happy gaming!
Best regards from EU-hell Germany
Armin
_____
Von: kriggleman42 ***@***.***
Gesendet: Donnerstag, 25. Dezember 2025 23:47
An: armin-reichert/pacman-javafx
Cc: Armin Reichert; Comment
Betreff: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Merry Christmas! Thanks for making the Christmas season more nostalgic by enabling me to play pacman again!
I pulled down your latest updates on Christmas Eve and then added this to the CollisionStrategy.java code since I was still seeing missed collisions without anything showing up in the logs.
if (dist < COLLISION_SENSITIVITY_PIXELS) {
Logger.info("Collision detected (dist={}): {} collides with {}", dist, either, other);
return true;
}
else if (dist <= COLLISION_SENSITIVITY_PIXELS*2) {
Logger.info("NEAR Collision detected (dist={}): {} collides with {}", dist, either, other);
}
As you can see in my bolded added code, I don't return true so it doesn't impact anything except for an extra log entry.
The first set of near collisions may have been just that, I'm not 100% sure but I did experience one actual missed collision which is the last group of 3 starting at 17:05:10.867 and then I paused play soon after. I'm including the first set for reference in case this collection of data helps inform you of what is happening. Let me know if any of this is helpful or if you have reproduced enough yourself that you don't need examples like these. Note that I was running the code in IntelliJ debugger at the time I reproduced this so I could certainly set a break point on the "Near Collision" line that I added in case I needed to gather any additional data. At that point I could also readily capture a screen shot so that you could see a picture of current screen to match with what you see in logs.
17:05:08.894 INFO: SimulationStep Step #1780931: [JavaFX Application Thread]
17:05:08.894 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.911 INFO: CollisionStrategy Collision detected (dist=1.875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=31, visible=true, position=(192.00,211.88), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,213.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=true, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep Step #1780932: [JavaFX Application Thread]
17:05:08.912 INFO: SimulationStep - Inky collided with Pac at tile (24,27), state after collision: RETURNING_HOME [JavaFX Application Thread]
17:05:08.927 INFO: CollisionStrategy NEAR Collision detected (dist=2.6875): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=32, visible=true, position=(192.00,213.06), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,215.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:08.944 INFO: CollisionStrategy NEAR Collision detected (dist=3.5): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=33, visible=true, position=(192.00,214.25), velocity=(0.00,1.19), acceleration=(0.00,0.00)} collides with Ghost{name=Inky, state=RETURNING_HOME, visible=true, position=(192.00,217.75), velocity=(0.00,2.00), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(13,15), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.145 INFO: CollisionStrategy NEAR Collision detected (dist=3.520032): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=105, visible=true, position=(147.50,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,208.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.162 INFO: CollisionStrategy NEAR Collision detected (dist=2.5449092): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=106, visible=true, position=(146.31,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.179 INFO: CollisionStrategy NEAR Collision detected (dist=2.0804145): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=107, visible=true, position=(145.13,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,209.75), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.193 INFO: CollisionStrategy NEAR Collision detected (dist=2.438301): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=108, visible=true, position=(143.94,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,210.44), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.211 INFO: CollisionStrategy NEAR Collision detected (dist=3.365728): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=109, visible=true, position=(142.75,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Blinky, state=FRIGHTENED, visible=true, position=(144.00,211.13), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=DOWN, targetTile=(26,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: CollisionStrategy NEAR Collision detected (dist=3.0317333): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=148, visible=true, position=(96.44,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.00), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep Step #1781049: [JavaFX Application Thread]
17:05:10.852 INFO: SimulationStep - Pac starts losing power [JavaFX Application Thread]
17:05:10.867 INFO: CollisionStrategy NEAR Collision detected (dist=2.4310813): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=149, visible=true, position=(95.25,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,205.69), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.893 INFO: CollisionStrategy NEAR Collision detected (dist=2.5287411): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=150, visible=true, position=(94.06,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,206.38), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:10.911 INFO: CollisionStrategy NEAR Collision detected (dist=3.262596): Pac{immune=false, autopilot=false, dead=false, restingTime=0, starvingTime=151, visible=true, position=(92.88,208.00), velocity=(-1.19,0.00), acceleration=(0.00,0.00)} collides with Ghost{name=Pinky, state=FRIGHTENED, visible=true, position=(96.00,207.06), velocity=(0.00,0.69), acceleration=(0.00,0.00), moveDir=DOWN, wishDir=LEFT, targetTile=(30,26), newTileEntered=false, turnBackRequested=false, canTeleport=true, corneringSpeedUp-1.0} [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep Step #1781064: [JavaFX Application Thread]
17:05:11.107 INFO: SimulationStep - Inky unlocked: Inky's individual dot counter reached limit (0) [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep Step #1781200: [JavaFX Application Thread]
17:05:13.421 INFO: SimulationStep - Pac lost power [JavaFX Application Thread]
17:05:14.553 INFO: CommonGameActions Game (PACMAN) paused [JavaFX Application Thread]
Let me know what would be helpful. If you did learn anything from the above, please share as that may help me provide better examples in the future. I'm definitely enjoying playing pacman at the same time I'm looking to reproduce what is happening!
Merry Christmas,
Ken
________________________________
From: Armin Reichert ***@***.***>
Sent: Monday, December 1, 2025 4:47 AM
To: armin-reichert/pacman-javafx ***@***.***>
Cc: kriggleman42 ***@***.***>; Author ***@***.***>
Subject: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Thanks for the idea! I create a feature request and will hopefully add this
new feature soon.
_____
Von: kriggleman42 ***@***.***
Gesendet: Sonntag, 30. November 2025 23:22
An: armin-reichert/pacman-javafx
Cc: Subscribed
Betreff: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
I really like the authenticity of pacman games you have created. Very
playable and enjoyable. To get the most enjoyment it would be ideal if it
was possible to save a game at the conclusion of a level. So, you save the
score and number of lives left and level you are at. I'm not sure what else
would be relevant. Then have the ability to use a function key to start
there again in the future instead of at the beginning. While not authentic
to pacman arcade game, if you want it to be playable and enjoyable, the
first levels get boring after a while. I'd like to resume multiple times
from a given saved point and practice playing more at the upper levels
without having to go back through the early levels. So, not a case of just
wanting to pause and resume later. Obviously, I can use Alt-N to skip a
level, but that's not the same as picking up from what you have already
achieved. Also I can simply add lives to play at upper levels but that
doesn't I'm not sure I follow all the code well enough to put such a feature
in place quickly. Is that a difficult enhancement? So, key sequence to save
a game and a different one to resume.
-
Reply to this email directly, view it on
<#36> GitHub, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYNHYZQIPJJKXFMKBXHUUL37
NU2HAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZZGE4TGNZXG4> .
You are receiving this because you are subscribed to this thread.
<https://github.com/notifications/beacon/ABYNHY3WGXMTUUMMXZLEPX337NU2HA5CNFS
M6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNKIRUXGY3VONZWS33OVJRW63LNMVXHIX3JMTHABDC
JGE.gif> Message ID:
***@***.***>
—
Reply to this email directly, view it on GitHub<#36 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ANWBVYXOAG7WBNPQSK5L27T37QFE5AVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMJSGI2TIOI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
—
Reply to this email directly, view <#36 (comment)> it on GitHub, or unsubscribe <https://github.com/notifications/unsubscribe-auth/ABYNHY5BMVHYNV3DB7BCCAT4DRSNXAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMZUGMYDINI> .
You are receiving this because you commented. <https://github.com/notifications/beacon/ABYNHY24FALITQQ4FEBA4ED4DRSNXA5CNFSM6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNRIRUXGY3VONZWS33OINXW23LFNZ2KUY3PNVWWK3TUL5UWJTQA5IO4K.gif> Message ID: ***@***.***>
—
Reply to this email directly, view it on GitHub<#36 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ANWBVYVPH6UD2QBI4B54C4L4DUQCZAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMZUGY3DKNY>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
Hello Ken,
glad to hear that you have fun with the games. The behavior in the tunnel is
the "state of the art". I do not yet know for sure how the original game
behaves in the tunnel so I don't check for any collisions there (which is
obviously not correct). My "problem" is where I should display Pac-Man when
a collision inside the tunnel appears, probably just at the exit tile where
he would re-appear. That is not really a "problem", I just have to implement
it.
In the meantime I made the double-checked collision behavior the default
because in the single-check mode I get more missed collision than I would
expect. I have to create a new release to publish that.
In the last weeks I was more focussed on fixing some bugs and improving the
code by doing heavy refactoring. You know it is my leisure project so I am
not always in the mood to dd new features but just to rewrite parts that I
do not find as pretty as they could be. That's also the reason I did not yet
start the "save/restore game state" feature. Sorry for that.
All the best from Germany
Armin Reichert
…_____
Von: kriggleman42 ***@***.***
Gesendet: Samstag, 31. Januar 2026 00:49
An: armin-reichert/pacman-javafx
Cc: Armin Reichert; Comment
Betreff: Re: [armin-reichert/pacman-javafx] Saved games (Discussion #36)
Yes, I'm back to playing again and I do believe checking twice per
simulation step has cut down on number of missed collisions. Since I've
checked the box about a month ago, I've experienced just 3 missed collisions
and at least 2 of them were in the tunnel. I would say it is a worthwhile
default even if it hasn't completely eliminated missed collisions.
As an aside I actually played enough that I experience "Scored 12000 points
for killing all ghosts in level 1" for the first time! I wasn't aware that
bonus was available so now I have to try and repeat it! Now I have a bigger
reason for wanting to save games at end of a level.
-
Reply to this email directly, view
<#36 (comment)
mment-15655759> it on GitHub, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYNHY2U4YRJVSWECMT5XOL4J
PUWJAVCNFSM6AAAAACNTVKMY2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTK
NRVGU3TKOI> .
You are receiving this because you commented.
<https://github.com/notifications/beacon/ABYNHY6F3ZXF24XN2MHSPDT4JPUWJA5CNFS
M6AAAAACNTVKMY2WGG33NNVSW45C7OR4XAZNRIRUXGY3VONZWS33OINXW23LFNZ2KUY3PNVWWK3T
UL5UWJTQA53RU6.gif> Message ID:
***@***.***
om>
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I really like the authenticity of pacman games you have created. Very playable and enjoyable. To get the most enjoyment it would be ideal if it was possible to save a game at the conclusion of a level. So, you save the score and number of lives left and level you are at. I'm not sure what else would be relevant. Then have the ability to use a function key to start there again in the future instead of at the beginning. While not authentic to pacman arcade game, if you want it to be playable and enjoyable, the first levels get boring after a while. I'd like to resume multiple times from a given saved point and practice playing more at the upper levels without having to go back through the early levels. So, not a case of just wanting to pause and resume later. Obviously, I can use Alt-N to skip a level, but that's not the same as picking up from what you have already achieved. While I can add lives to play at upper levels, that doesn't skip need to play from beginning. I'm not sure I follow all the code well enough to put such a feature in place quickly. Is that a difficult enhancement? So, key sequence to save a game and a different one to resume.
Beta Was this translation helpful? Give feedback.
All reactions