Jump to content

RELEASED! "PacDude Hero IV 110% Turbo" - Open-Source!


JeZxLee
 Share

Recommended Posts

Just now, mattstyles said:

Gave it a go, its mega framey, makes turning almost impossible.

Using Chrome.

It requires a dedicated 2+GB GDDR5 graphic card to play well...

Just kidding!

What are the Frames Per Second (FPS) on top-right?

Link to comment
Share on other sites

57-58, but I did some digging to try and isolate it for you

I get a lot of errors from various places in your code (this is from screen but there were more from interface, and some others I think), e.g.

screens.js:1654 Uncaught TypeError: Cannot set property 'x' of undefined
    at DisplayPlayingGameScreen (screens.js:1654)
    at DisplayScreen (screens.js:143)
    at play (screens.js:122)
    at gameLoop (index.html:62)

At first I thought that was the issue, it might be related, but I've managed to isolated a more repeatable test case for you:

Head left then right then left, alternating keypresses every second or so. If you really quickly tap the keys then all is ok, but, if you dwell on the key for anything more than a nanosecond then no rendering occurs so you get a jump, sometimes a pretty big one.

So, I'd say you've got some issues with your key registering/pressing code that is somehow connected to your rendering and causing real bad stuttering.

Link to comment
Share on other sites

Hi,

Game is about finished...
We are trying to perfect the player to ghost collision detection now.
Our current code which is not 100% perfect is below:

var playerGhostCollision = -1;
var index;
for (index = 0; index < 8; index++)
{
	if (GhostActive[index] == true)
	{
		var pFieldY;
		var pFieldX;
				
		for ( pFieldY = (PlayerPlayfieldY-1); pFieldY < (PlayerPlayfieldY+2); pFieldY++)
		{
			for ( pFieldX = (PlayerPlayfieldX-1); pFieldX < (PlayerPlayfieldX+2); pFieldX++)
			{
				if (playerGhostCollision == -1)
				{
					if (pFieldX == GhostPlayfieldX[index] && pFieldY == GhostPlayfieldY[index])
					{
						if (PlayerPlayfieldY < GhostPlayfieldY[index] && PlayerPlayfieldX == GhostPlayfieldX[index])
						{
							for ( var inbetweenY = PlayerYInBetweenTiles; inbetweenY > (PlayerYInBetweenTiles-32); inbetweenY-=2 )
							{
								if ( PlayerPlayfieldX == GhostPlayfieldX[index] && inbetweenY == (GhostYInBetweenTiles[index]+32) && inbetweenY > -64 )
											playerGhostCollision = index;
							}
						}
						else if (PlayerPlayfieldY > GhostPlayfieldY[index] && PlayerPlayfieldX == GhostPlayfieldX[index])
						{
							for ( var inbetweenY = PlayerYInBetweenTiles; inbetweenY < (PlayerYInBetweenTiles+32); inbetweenY+=2 )
							{
								if ( PlayerPlayfieldX == GhostPlayfieldX[index] && inbetweenY == (GhostYInBetweenTiles[index]-32) && inbetweenY < 64 )
											playerGhostCollision = index;
							}
						}
						else if (PlayerPlayfieldX < GhostPlayfieldX[index] && PlayerPlayfieldY == GhostPlayfieldY[index])
						{
							for ( var inbetweenX = PlayerXInBetweenTiles; inbetweenX > (PlayerXInBetweenTiles-32); inbetweenX-=2 )
							{
								if ( PlayerPlayfieldY == GhostPlayfieldY[index] && inbetweenX == (GhostXInBetweenTiles[index]+32) && inbetweenX > -64 )
											playerGhostCollision = index;
							}
						}
						else if (PlayerPlayfieldX > GhostPlayfieldX[index] && PlayerPlayfieldY == GhostPlayfieldY[index])
						{
							for ( var inbetweenX = PlayerXInBetweenTiles; inbetweenX < (PlayerXInBetweenTiles+32); inbetweenX+=2 )
							{
								if ( PlayerPlayfieldY == GhostPlayfieldY[index] && inbetweenX == (GhostXInBetweenTiles[index]-32) && inbetweenX < 64 )
											playerGhostCollision = index;
							}
						}
					}
				}
			}
		}
	}
}

We have updated the URL link for current version.
We hope to have everything sorted out sometime on Thursday, thanks!

JeZxLee

Link to comment
Share on other sites

I don't see any input lag anymore, great work fixing that, but, one of the absolute key elements for PacMan (and similar 'maze' games) is that you don't need to hit the turn keys absolutely precisely, i.e. currently I must press up when there is a space to move up, if I don't press exactly at the right movement it won't work, this means I have to hold the key down a little before the turn to ensure I turn, these types of games should implement a little shield mechanism that remembers the last keypress (at least for a small amount of time) so that if I hit the up key a few frames before the turn it will remember it and execute the turn when the time is right (I hope I've explained this right, it's a super-critical bit of UX that makes games like this so much more playable, any impedence in interacting with a game/app can be a killer and whilst this sounds like a tiny change in implementation the UX impact is large).

Link to comment
Share on other sites

  • 2 weeks later...

Small suggestion: it would be nice if the arrows could have some memory so that one doesn't have to keep holding them the whole time. Example: the Pac dude is going to left and there is an up turn ahead. If I press (and don't hold) the up arrow some milliseconds before he reaches the up turn he should go up even if I didn't hold the up arrow long enough. It would make the mobile experience more fun.

Link to comment
Share on other sites

Hi,

Thanks for playing our game...
If you check [Options] screen you will see: "Control Scheme" option.
(change that to "Cue Next Move" to have what you want)

People complained about it so it's off by default...

JeZxLee

Link to comment
Share on other sites

We released last night "Beta3 110% Final"...
Took over a week, but we finally have mobile Internet browser multi-touch working...

We will be starting our next game project in a few days...

Thanks!

JeZxLee

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...