Advertisement



Go Back   Zune Boards > Zune Discussions > Zune Games > Development Discussions

New Member?



 
Register Zunecentive FAQ Members List Calendar Search Today's Posts Mark Forums Read

Development Discussions All developers who are coding games may stop by here for any help, suggestions, and everything development related.

Reply
 
LinkBack Thread Tools
Old 06-10-2008, 12:27 PM   #1 (permalink)
Jr. Zuner
 
Join Date: May 2008
Posts: 33
Reputation: 15
$zB: 33
Donate
Default [IN PROGRESS] Pac Man for Zune

All

Very early days, just wanted to something is happening. I know there's at least one other Pac Man dev on the boards but I want to create something *very, very* close to the original.

Cheers.

- Gunston



Gunston is offline   Reply With Quote
Remove Advertisements Sponsored Links
Advertisement
 
Old 06-10-2008, 01:32 PM   #2 (permalink)
Experienced Zuner
 
Join Date: May 2008
Posts: 207
Reputation: 12
$zB: 170
Donate
Default

cool, can you post a download?




cable729 is offline   Reply With Quote
Old 06-10-2008, 02:33 PM   #3 (permalink)
Support Team
Super Zuner
 
Scrapz616's Avatar
 
Join Date: Mar 2007
Location: New York
Posts: 1,629
Reputation: 130
$zB: 1285
Donate
Default

I don't even think he's finished yet, so I don't think he will post a download.
Good luck and keep up the good work, I'm looking forward to playing.
__________________

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.
Throw Ya L's Up
To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.


To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.





Scrapz616 is offline   Reply With Quote
Old 06-10-2008, 03:27 PM   #4 (permalink)
Pending
Support Team
zB Programmer
Super Zuner
 
Marshillboy's Avatar
 
Join Date: Nov 2006
Posts: 1,873
Reputation: 190
$zB: 395
Donate
Default

http://www.zuneboards.com/forums/dev...ss-pacman.html

WTG. This is an a near-exact clone of pacman as well, what's your point?
__________________
Quote:
Originally Posted by Adam Frucci
And you know what? Macs are too hip. Oh, look at me! I do graphic design! I wear women's jeans and hang out in coffee shops! I'm a DJ! Well good for you. My computer is not a fashion statement. It's a computer.

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.



Marshillboy is offline   Reply With Quote
Old 06-10-2008, 03:36 PM   #5 (permalink)
Experienced Zuner
 
Join Date: May 2008
Posts: 207
Reputation: 12
$zB: 170
Donate
Default

so this is the second pacman, is it actually done?




cable729 is offline   Reply With Quote
Old 06-10-2008, 03:36 PM   #6 (permalink)
Support Team
Expert Zuner
 
soccerfreak24's Avatar
 
Join Date: Nov 2007
Posts: 2,902
Reputation: 178
$zB: 52
Donate
Default

Woot another pacman. I guess i'll use whichever comes out first.
__________________

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.


To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.





soccerfreak24 is offline   Reply With Quote
Old 06-10-2008, 03:43 PM   #7 (permalink)
Experienced Zuner
 
Join Date: May 2008
Posts: 207
Reputation: 12
$zB: 170
Donate
Default

Quote:
Originally Posted by soccerfreak24 View Post
Woot another pacman. I guess i'll use whichever comes out first.
agreed




cable729 is offline   Reply With Quote
Old 06-11-2008, 01:28 PM   #8 (permalink)
Jr. Zuner
 
Join Date: May 2008
Posts: 33
Reputation: 15
$zB: 33
Donate
Default

Quote:
Originally Posted by Marshillboy View Post
http://www.zuneboards.com/forums/dev...ss-pacman.html

WTG. This is an a near-exact clone of pacman as well, what's your point?
What does WTG mean?! Anyway, no problem if we're both building Pac Man - just that I'm aiming for a very near approximation to the original, including Ghost personalities, speed, sound fx, attract and preview screens etc.

Maybe you're doing the same thing, I haven't seen any footage or screen shots yet - care to share?

By the way, I'm happy to share all my code and assets if you're interested.

Good luck.

Cheers, Gunston.



Gunston is offline   Reply With Quote
Old 06-11-2008, 01:32 PM   #9 (permalink)
Jr. Zuner
 
Sk8ierBoi's Avatar
 
Join Date: Jun 2008
Posts: 40
Reputation: 10
$zB: 32
Donate
Default

Quote:
Originally Posted by Gunston View Post
What does WTG mean?! Anyway, no problem if we're both building Pac Man - just that I'm aiming for a very near approximation to the original, including Ghost personalities, speed, sound fx, attract and preview screens etc.

Maybe you're doing the same thing, I haven't seen any footage or screen shots yet - care to share?

By the way, I'm happy to share all my code and assets if you're interested.

Good luck.

Cheers, Gunston.
WTG = Way to go lol

But wow, love ITTTTT!!!! =D




Sk8ierBoi is offline   Reply With Quote
Old 06-11-2008, 03:25 PM   #10 (permalink)
Pending
Support Team
zB Programmer
Super Zuner
 
Marshillboy's Avatar
 
Join Date: Nov 2006
Posts: 1,873
Reputation: 190
$zB: 395
Donate
Default

Quote:
Originally Posted by Gunston View Post
What does WTG mean?! Anyway, no problem if we're both building Pac Man - just that I'm aiming for a very near approximation to the original, including Ghost personalities, speed, sound fx, attract and preview screens etc.

Maybe you're doing the same thing, I haven't seen any footage or screen shots yet - care to share?

By the way, I'm happy to share all my code and assets if you're interested.

Good luck.

Cheers, Gunston.
Alright. I can deal with collaboration since umisguy is already helping me out a ton. Right now, Ghost personalities are merely random corner turning, with code to prevent continuously bumping into a wall. Speed is fine, but we haven't payed much attention to sound fx or menus yet. Currently, the big issue is making pacman turn a corner (bigger task than it might sound). I've collision mapped the whole level with rectangles, manually populated the point grid (yes, it took awhile), implemented simple ghost code, etc.
__________________
Quote:
Originally Posted by Adam Frucci
And you know what? Macs are too hip. Oh, look at me! I do graphic design! I wear women's jeans and hang out in coffee shops! I'm a DJ! Well good for you. My computer is not a fashion statement. It's a computer.

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.

Last edited by Marshillboy : 06-11-2008 at 08:11 PM.



Marshillboy is offline   Reply With Quote
Old 06-11-2008, 07:37 PM   #11 (permalink)
Experienced Zuner
 
Join Date: May 2008
Posts: 207
Reputation: 12
$zB: 170
Donate
Default

nice, so you're making progress




cable729 is offline   Reply With Quote
Old 06-11-2008, 07:50 PM   #12 (permalink)
Jr. Member
 
ZGamer's Avatar
 
Join Date: Nov 2007
Posts: 470
Reputation: 21
$zB: 147
Donate
Default

Wow! It looks so great!!!!
__________________

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.

Alright! Here is my new website, about the ZUNE!!! Visit if you like and tell me how it looks!

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.

Supporting DarkZune!
To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.




ZGamer is offline   Reply With Quote
Old 06-11-2008, 08:03 PM   #13 (permalink)
Squirt
 
Join Date: Nov 2007
Posts: 13
Reputation: 10
$zB: 5
Donate
Default

all right can't wait for this one.
good luck man



poseidon_waves is offline   Reply With Quote
Old 06-12-2008, 02:55 AM   #14 (permalink)
Jr. Zuner
 
Join Date: May 2008
Posts: 33
Reputation: 15
$zB: 33
Donate
Default

@Marshillboy

What you're doing re collision rectangles for the maze sounds like a lot of work. If you're using the original Pac Man maze, it's just a grid of 28 columns and 31 rows. Each 'cell' in the grid is 8x8 pixels. This fits neatly on the Zune screen.

Here's my string layout:

XXXXXXXXXXXXXXXXXXXXXXXXXXXX
X000000000000XX000000000000X
X0XXXX0XXXXX0XX0XXXXX0XXXX0X
X*XXXX0XXXXX0XX0XXXXX0XXXX*X
X0XXXX0XXXXX0XX0XXXXX0XXXX0X
X00000000000000000000000000X
X0XXXX0XX0XXXXXXXX0XX0XXXX0X
X0XXXX0XX0XXXXXXXX0XX0XXXX0X
X000000XX0000XX0000XX000000X
XXXXXX0XXXXXVXXVXXXXX0XXXXXX
XXXXXX0XXXXXVXXVXXXXX0XXXXXX
XXXXXX0XXVVVVVVVVVVXX0XXXXXX
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
------0VVVXXXXXXXXVVV0------
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
XXXXXX0XXVVVVVVVVVVXX0XXXXXX
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
XXXXXX0XXVXXXXXXXXVXX0XXXXXX
X000000000000XX000000000000X
X0XXXX0XXXXX0XX0XXXXX0XXXX0X
X0XXXX0XXXXX0XX0XXXXX0XXXX0X
X*00XX0000000VV0000000XX00*X
XXX0XX0XX0XXXXXXXX0XX0XX0XXX
XXX0XX0XX0XXXXXXXX0XX0XX0XXX
X000000XX0000XX0000XX000000X
X0XXXXXXXXXX0XX0XXXXXXXXXX0X
X0XXXXXXXXXX0XX0XXXXXXXXXX0X
X00000000000000000000000000X
XXXXXXXXXXXXXXXXXXXXXXXXXXXX

'X' is a solid block. '-' is causes Ghost slowdown (as they go through tunnels). 'V' is a void cell (nothing going on). '0' is a pacdot. '*' is a power pellet.

I basically read this string layout (from an XML file) and generate a Maze object. I can then use 'if (maze[col, row + 1] is SolidBlock)' to determine whether a Ghost (or Pac Man) can move down).

Simplistic but effective. I used a similar scheme for my Manic Miner game (download at gameprojects.com). Many retro games can be represented in this block fashion.

FWIW, my Ghosts are just moving randomly at the moment with some subtleties around *preferring* to go left or right if they hit a wall when moving up or down (and vice versa).

Cheers.

- Gunston



Gunston is offline   Reply With Quote
Old 06-12-2008, 03:15 AM   #15 (permalink)
zB Programmer
Member
 
Lucifer's Avatar
 
Join Date: Feb 2008
Posts: 509
Reputation: 62
$zB: 438
Donate
Default

Collaboration is preferable. I like the mapping, it goes along with my idea of making pacman run on a track (pacman begins the game moving a specified direction on a specified chunk of track, and +/- roughly 5 pixels in any direction as pacman approaches any track intersections, the game signals the button polling to see if left, right, up, or down is pressed.. and if so, and it's a usable direction change, do it when pacman hits the intersection coordinates.)




Lucifer is offline   Reply With Quote
Old 06-12-2008, 04:11 AM   #16 (permalink)
Jr. Zuner
 
Join Date: May 2008
Posts: 33
Reputation: 15
$zB: 33
Donate
Default

@umisguy

Just to give you more of a flavour, here's my Ghost.Update() method (at end of this post). Code requires some tidying up and is posted as is.

The Ghost object has a Vector2-type Position attribute which is per pixel (Ghosts typically move at 2 pixels per frame [same as Pac Man]).

'Direction' defined as a bitwise enum:


enum Direction
{
None = 0,
Left = 1,
Right = 2,
Up = 4,
Down = 8
}


Here's the code to choose a random direction, given a set of available directions (specified in mask):


private Direction RandomDirection(Direction mask)
{
Direction direction = Direction.None;

while (direction == Direction.None)
{
Direction anyDirection = (Direction)(1 << (Ghost.random.Next(0, 4)));

if ((mask & anyDirection) != 0)
{
direction = anyDirection;
break;
}
}

return direction;
}




public override void Update(GameTime gameTime)
{
IFrame frame = this.Frame;

if (frame.HasRunTimeElapsed(this.LastUpdateTime, Ghost.UpdateInterval))
{
IBlockLayout layout = this.Maze.Layout;

// Is Ghost at a maze intersection?
if (layout.IsWholeCol(this.X) && layout.IsWholeRow(this.Y))
{
int col;
int row;

layout.Translate(this.Position, out col, out row);

Direction directions = Direction.None;

// Left?
if (col > 0)
{
if (!(this.Maze[col - 1, row] is SolidBlock))
{
directions |= Direction.Left;
}
}

// Right?
if (col < layout.Cols - 1)
{
if (!(this.Maze[col + 1, row] is SolidBlock))
{
directions |= Direction.Right;
}
}

// Up?
if (row > 0)
{
if (!(this.Maze[col, row - 1] is SolidBlock))
{
directions |= Direction.Up;
}
}

// Down?
if (row < layout.Rows - 1)
{
if (!(this.Maze[col, row + 1] is SolidBlock))
{
directions |= Direction.Down;
}
}

// CRITICAL: unless the maze is broken, we should have a place to go
ValidationHelper.ValidateAssertion(directions != Direction.None);

if (this.direction == Direction.None)
{
this.direction = this.RandomDirection(directions);
}
else if ((this.direction & (Direction.Up | Direction.Down)) != 0)
{
Direction mask = directions & (Direction.Left | Direction.Right);

if (mask != 0)
{
if (Ghost.random.Next(0, 4) != 0)
{
this.direction = this.RandomDirection(mask);
}
}
}
else if ((this.direction & (Direction.Left | Direction.Right)) != 0)
{
Direction mask = directions & (Direction.Up | Direction.Down);

if (mask != 0)
{
if (Ghost.random.Next(0, 4) != 0)
{
this.direction = this.RandomDirection(mask);
}
}
}

if ((this.direction & directions) == 0)
{
// NOTE: can't continue in current direction but logic above did not
// throw up a 'random' route so just pick a new direction
this.direction = this.RandomDirection(directions);
}
}

switch (this.direction)
{
case Direction.Left:
this.FrameIndex = (this.frameSet * this.Sheet.FrameCols) + this.frameOffset;
this.X -= 2;
break;

case Direction.Right:
this.FrameIndex = (this.frameSet * this.Sheet.FrameCols) + 1 + this.frameOffset;
this.X += 2;
break;

case Direction.Up:
this.FrameIndex = (this.frameSet * this.Sheet.FrameCols) + 2 + this.frameOffset;
this.Y -= 2;
break;

case Direction.Down:
this.FrameIndex = (this.frameSet * this.Sheet.FrameCols) + 3 + this.frameOffset;
this.Y += 2;
break;
}

// this.Screen.Layout.Focus = this.Position + this.Center;
this.LastUpdateTime = frame.RunTime;
}

if (frame.HasRunTimeElapsed(this.lastAnimationTime, Ghost.AnimationInterval))
{
if (this.frameOffset == 0)
{
this.frameOffset = 4;
}
else
{
this.frameOffset = 0;
}

this.lastAnimationTime = frame.RunTime;
}
}


Cheers.

- Gunston



Gunston is offline   Reply With Quote
Old 06-12-2008, 06:59 AM   #17 (permalink)
zB Programmer
Jr. Member
 
Anachostic's Avatar
 
Join Date: Jun 2007
Posts: 407
Reputation: 77
$zB: 87
Donate
Default

Teamwork, FTW!




Anachostic is offline   Reply With Quote
Old 06-12-2008, 07:23 PM   #18 (permalink)
Squirt
 
Join Date: Nov 2007
Posts: 13
Reputation: 10
$zB: 5
Donate
Default

nice, can't wait for this one.



poseidon_waves is offline   Reply With Quote
Old 06-15-2008, 08:13 PM   #19 (permalink)
Zewbie
 
Join Date: Dec 2007
Posts: 1
Reputation: 10
$zB: 1
Donate
Default

You guys should team up and make one awesome Pac-Man game .



Mini Jo is offline   Reply With Quote
Old 06-15-2008, 08:35 PM   #20 (permalink)
Experienced Zuner
 
dabeastofdamusic's Avatar
 
Join Date: May 2008
Location: somewhere in NC my zunetag is username
Posts: 171
Reputation: 11
$zB: 141
Donate
Default

wow amazing. ive been waiting for so long for this.
__________________

To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.


To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.


To view links or images in signatures your post count must be 0 or greater. You currently have 0 posts.

error occered, no keyboard, press (F1) to continue




dabeastofdamusic is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads