Jump to content
IGNORED

The hamburger experiment


Recommended Posts

17 hours ago, atari2600land said:

Here's the setup of the sprites

sprite 0 - burger (bun)

sprite 1 - burger (patty)

sprites 2 - fry

sprites 3-5 - score

sprite 6 - (eventually) enemy

sprite 7 - (eventually) life counter

 

It took a horribly long time to figure out how to make the sprites numbers. I was going to have sprite 7 be the enemy's missile, but I decided that showing the amount of lives is more important than having enemy missiles.

herts3.gif.e0aa2eb7f455723e05ae204cebd19f35.gif

I think game play is more important.  You can show score/lives with background tiles when the background is not moving.

Link to comment
Share on other sites

I had an idea last night before I went to bed, which was show the lives counter only when the player died. This freed up a sprite which I could use for a enemy missile.

 

I would like to at the least display the score because it will be an indicator of how far along in the level you are. I finally got the disc and button working in tandem, but in order to do it, I had to make this ugly code:


    f=cont
    if f=DISC_NORTH THEN burgery=burgery-1
    if f=$A4 THEN burgery=burgery-1
    
    if f=DISC_NORTH_EAST THEN burgery=burgery-1 : burgerx=burgerx+1
    if f=$B6 THEN burgery=burgery-1 : burgerx=burgerx+1
    if f=DISC_NORTH_WEST THEN burgery=burgery-1 : burgerx=burgerx-1
    if f=$BC THEN burgery=burgery-1 : burgerx=burgerx-1

    if f=DISC_SOUTH THEN burgery=burgery+1
    if f=$A1 THEN burgery=burgery+1
    
    if f=DISC_SOUTH_EAST THEN burgery=burgery+1 : burgerx=burgerx+1
    if f=$B3 THEN burgery=burgery+1 : burgerx=burgerx+1    
    
    if f=DISC_SOUTH_WEST THEN burgery=burgery+1 : burgerx=burgerx-1
    if f=$B9 THEN burgery=burgery+1 : burgerx=burgerx-1
    
    if f=DISC_WEST THEN burgerx=burgerx-1
    if f=$A8 THEN burgerx=burgerx-1    
    
    if f=DISC_EAST THEN burgerx=burgerx+1
    if f=$A2 THEN burgerx=burgerx+1   

 

Link to comment
Share on other sites

Is the patty currently drawn as a 8x2 pixel segment with vertical multiple 1? In that case you could make it a 8x16 sprite with vertical multiple 0.5, draw the patty as 8x4 pixels and include a miniature digit 2x5 pixels above the patty so the life counter turns into a serial number on the hamburger, perhaps count upwards so first you have Hamburger 1, then Hamburger 2 and finally Hamburger 3.

 

........ ........ ........
....o... ...oo... ...oo...
....o... ....o... ....o...
....o... ...oo... ...oo...
....o... ...o.... ....o...
....o... ...oo... ...oo...
........ ........ ........
oooooooo oooooooo oooooooo
oooooooo oooooooo oooooooo
oooooooo oooooooo oooooooo
oooooooo oooooooo oooooooo
........ ........ ........
........ ........ ........
........ ........ ........
........ ........ ........
........ ........ ........
Edited by carlsson
Link to comment
Share on other sites

1 minute ago, atari2600land said:

I had an idea last night before I went to bed, which was show the lives counter only when the player died. This freed up a sprite which I could use for a enemy missile.

Yeah, showing the life counter when you die is sufficiently good.

 

1 minute ago, atari2600land said:

I would like to at the least display the score because it will be an indicator of how far along in the level you are.

Why is the score a progress indicator for a level?

 

Seeing a score while you are playing is always part of the fun, but if you want a progress bar then use a progress bar

Link to comment
Share on other sites

The code a couple posts ago has been simplified:


    if cont.up THEN burgery=burgery-1
    if cont.down THEN burgery=burgery+1
    if cont.right THEN burgerx=burgerx+1
    if cont.left THEN burgerx=burgerx-1

 

I was thinking for some reason the left CTRL and SHIFT buttons in jzintv controlled player 1 when in fact they were controlling player 2. The right CTRL and SHIFT buttons and arrow buttons are controlling player 1.

 

Link to comment
Share on other sites

Try my game out.

The score will increase when you shoot. I will change this to once you hit an enemy the score will increase when I put some enemies in. I took some time to compose and add in music and a shooting sound effect.

The enemies will be heads of lettuce shooting peas at you. In the original game it was milkshakes, but I don't think I can draw a milkshake with just one color.

herts5.zip

Link to comment
Share on other sites

On 1/11/2021 at 3:03 PM, atari2600land said:

Just now realized I need to make music for the game! It's already at 5kb!


Remember that when people talk about "K"s in the Intellivision world, they mean"Kilo Words" or "Kilo Decles," which is the typical 16-bit word on the platform; and not "Kilo Bytes."

 

So, a ROM file of 5KB is still about 2.5 "Kilo Decles," which is considerably less than the common cap on the ROM map of 42K (again, Kilo Decles).

 

    dZ.

Link to comment
Share on other sites

5 hours ago, atari2600land said:

Is there a way to read both the button and the dpad at the same time, so that the user can press the button to fire the fry and move at the same time?

Think of the Intellivision controller as two controllers in one:  a data entry key pad(for menus and object commands, etc.), and a disc and action buttons (for running and shooting).  Those are the use cases for which the controller was design.

 

As others mentioned, the signals for the keypad overlap somewhat with those of the disc and action buttons, making them ambiguous to discern which one was pressed if used simultaneously.

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

Just now, atari2600land said:

But it's my computer telling me it was 5kb. Is my computer meaning kilowords?

The computer is correct.  It's just that 5 KB is equal to 2.5 "K" in Intellivision parlance.  I was just pointing this out in case you were concerned that 5KB is too much for an Intellivision ROM, it is not.

 

What I am trying to say is, when you hear that so-and-so game is "4K" or "8K" or "42K" in the Intellivision world, that "K" is not "Kilo Bytes," but "Kilo Words."  There are two bytes per word.  Thus, an 8K Intellivision game (like those from the Mattel) will report about 16KB file size.

 

Does that make sense?

    -dZ.

Link to comment
Share on other sites

27 minutes ago, atari2600land said:

OK. That makes sense.

And just to clarify, the "K" for "Kilo Words" is used in the Intellivision because the ROM is 16-bits wide, as opposed to most other consoles and video game platforms out there, where 8-bit Bytes are the counting measure.

 

    -dZ.

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

I believe that atari2600land has been working a lot on Atari 2600, Odyssey^2 and other systems where games still in the year 2021 preferably should be below 4 kilobytes, sometimes an absolute max of 8 kilobytes. Given there are no "simple" cartridge designs for Intellivision games, if you get as far as making a physical release, from what I understand you don't really have to worry about making the games really tiny to fit on a long obsoleted EPROM size so worry less about ROM size than you otherwise would do. At least in the beginning.

Link to comment
Share on other sites

Play with the food.

Pea shooting added - pea shoots randomly.

Death also added - so it's technically a game now.

I also added/changed a bunch of little things.

It says I only have 20 or so 8-bit variables left. I'm not using very many of them. Is it compiling wrong or is it just me?

herts7.zip

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...