Jump to content
IGNORED

Pellets and Ghosts - WIP Intellivision game


5-11under

Recommended Posts

Hi all,

 

Attached is a very early version of a game I am working on very occasionally, starting a couple of months ago. Feel free to download it and give it a try. There are at least a few key things missing from the game, such as an ending, levels, sound. The current level is also very "busy", with probably too many ceilings to bump into. Anyway, feel free to reply with suggestions or comments.

 

I'm also wondering if the title and characters should stay the same or if I should change them. I'm not the type of person to get things like sprites and sounds exactly as some would expect or want with these characters, so maybe it'd be best to create something original.

 

Thanks and have fun!

pac01.rom

 

  • Like 8
Link to comment
Share on other sites

I forgot to add... there is no planned release date yet. It's just a "Lazy Sunday afternoon" programming effort

Also, the ghosts are very predictable at this early stage. I haven't thought too far ahead on that, so I don't have any ideas yet on if/how to change that.

Link to comment
Share on other sites

Very neat!

 

I played it a bit and here's my feedback:

  • The Pac-Man should continue animating his mouth for as long as he is moving, even when there is no food to eat.
  • The pellets are much too big for the scale of Pac-Man. I suggest making them a single pixel. You also can get away by fitting two in each card, but you'll have to keep track of the state of each pellet within a card. This is not too hard (it is what I do in my Pac-Man clone and in Christmas Carol). I just use two of the unused bits on each BACKTAB card and a different GRAM card for each.
  • The jumping seems a bit too fast.
  • The bouncing when Pac-Man lands is definitely much too fast. It looks odd, and appears more like twitching than actual physical response to falling. Perhaps making it less pronounced would work too.
  • Colliding with the Ghosts should have a penalty, otherwise there is no challenge.
  • If the challenge is not eating the Ghosts, then perhaps you could get a bonus for each Ghost left alive after completing the level. I guess you would need additional elements to add to the challenge.
  • I can't find a way to lose a life! (it may not be implemented yet.)
  • I see that you lose a life for every Ghost you eat, but gain one for each one that survives the level. However, there is still no penalty for losing all your lives.
  • Needs sound effects! (Of course.)
  • Perhaps change the platform configurations from level to level.
  • Should there be "tunnels" for Pac-Man on at least some levels? ;)

 

That's it for now. I look forward to seeing the progress of this game. Remember, that if you start a thread in the Programming forum, there are plenty of people there to help. :)

 

-dZ.

Edited by DZ-Jay
  • Like 1
Link to comment
Share on other sites

Hi all,

 

Attached is a very early version of a game I am working on very occasionally, starting a couple of months ago. Feel free to download it and give it a try. There are at least a few key things missing from the game, such as an ending, levels, sound. The current level is also very "busy", with probably too many ceilings to bump into. Anyway, feel free to reply with suggestions or comments.

 

I'm also wondering if the title and characters should stay the same or if I should change them. I'm not the type of person to get things like sprites and sounds exactly as some would expect or want with these characters, so maybe it'd be best to create something original.

 

Thanks and have fun!

attachicon.gifpac01.rom

 

 

I forgot to add a few more comments in response to your post:

  • I don't think the current level is too "busy." I think it doesn't have enough pellets! :)
  • It is always better to create something original.
  • Although it is cute to reuse Pac-Man and put him in an unfamiliar setting like a platform game, I much rather see new characters and game mechanics come out of this. Take a look at "Stay Frosty" and "Stay Frosty 2" for the Atari 2600 for inspiration. It's a very simple game, but with very effective use of simple mechanics of jumping and colliding with stuff -- just like yours is.
Link to comment
Share on other sites

Thanks for the feedback, DZ!...

  • Agree with the chomping animation. We'll see what character this ends up being. Definitely for Pac-Man, it looks a bit weird.
  • I'll investigate the jumping and bouncing. For me, though, I find all the action/movement to be fairly fast.
  • Yes, the platforms will change for each level. I find it busy because there's few places where you can jump and not hit a ceiling (and you can't jump over the ghosts when there's a ceiling above). I think I'll design a second testing level that is more open, and see how that works.
  • At this point, it's the ghosts that are eating you. I know it doesn't make much sense right now. I just didn't want them to keep getting you, so I made them disappear after hurting you once.
  • Regarding all your other comments, I'll definitely keep them in mind, and revisit this thread over time.

At the moment, you should lose a life every time a ghost touches you (and the game continues forever even if your lives are at zero). That took a bit of work... it seems like the sprite-to-sprite collisions are active for a few frames... .

Link to comment
Share on other sites

Thanks for the feedback, DZ!...

  • Agree with the chomping animation. We'll see what character this ends up being. Definitely for Pac-Man, it looks a bit weird.
  • I'll investigate the jumping and bouncing. For me, though, I find all the action/movement to be fairly fast.
  • Yes, the platforms will change for each level. I find it busy because there's few places where you can jump and not hit a ceiling (and you can't jump over the ghosts when there's a ceiling above). I think I'll design a second testing level that is more open, and see how that works.
  • At this point, it's the ghosts that are eating you. I know it doesn't make much sense right now. I just didn't want them to keep getting you, so I made them disappear after hurting you once.
  • Regarding all your other comments, I'll definitely keep them in mind, and revisit this thread over time.

At the moment, you should lose a life every time a ghost touches you (and the game continues forever even if your lives are at zero). That took a bit of work... it seems like the sprite-to-sprite collisions are active for a few frames... .

 

I'm glad to be able to help. As for the collision detection, Pac-Man solves that problem by avoiding pixel collisions between sprites. Instead, it divides the play-area into "tiles" that are half the size of a sprite (in the arcade, sprites are 16x16, and the tiles are 8x8. In my replica and in Christmas Carol, sprites are 8x8 and tiles are 4x4.). The game tracks the specific tile in which the center of a sprite is at any given time, and collisions are triggered when two sprites share the same tile.

 

In this way, you only check collisions *once*, when the sprite either enters or leaves a tile. (Coincidentally, that is the point when other decisions are made, like path finding.)

 

You could use a similar technique in your game. Otherwise, you'll have to implement a more complex algorithm in which you keep the state of collisions and clear it only after some additional event, say, when the sprites move far enough away to stop the collision.

 

-dZ.

Link to comment
Share on other sites

I'm glad to be able to help. As for the collision detection, Pac-Man solves that problem by avoiding pixel collisions between sprites. Instead, it divides the play-area into "tiles" that are half the size of a sprite (in the arcade, sprites are 16x16, and the tiles are 8x8. In my replica and in Christmas Carol, sprites are 8x8 and tiles are 4x4.). The game tracks the specific tile in which the center of a sprite is at any given time, and collisions are triggered when two sprites share the same tile.

 

In this way, you only check collisions *once*, when the sprite either enters or leaves a tile. (Coincidentally, that is the point when other decisions are made, like path finding.)

 

You could use a similar technique in your game. Otherwise, you'll have to implement a more complex algorithm in which you keep the state of collisions and clear it only after some additional event, say, when the sprites move far enough away to stop the collision.

 

-dZ.

 

I haven't thoroughly tested the collision system yet. Is that part of the Intellivision system, or just Intybasic? Is it looking for pixel-to-pixel collisions, or simple 8x16 area collisions?

 

So far I'm using a counter where you only lose a life if you're in contact with another sprite for two consecutive frames. I may tweak that, but in the least, I don't usually like it when a (bad) hit is registered for "just a flesh wound".

Link to comment
Share on other sites

The pixel-wise collision detection in IntyBASIC uses a hardware feature. Each MOB has a "collision register" where each bit represents a collision event with another object, or the background.

 

IntyBASIC gives you access to these collision registers.

 

However, you should know that the collision registers can only be accessed for a brief time during VBLANK period, so IntyBASIC reads and clears them at the very top of the Interrupt Service Routine (ISR).

 

Consequently, if a MOB moves in frame "N", its collisions will be detected on frame "N + 1", so you are always one frame behind.

 

Therefore, it is almost always better to implement your own collision detection in software, using bounding boxes or similar techniques. This is especially so in an arcade action game, where twitchy reflexes drive the pace.

Edited by DZ-Jay
  • Like 2
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...
  • Recently Browsing   0 members

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