Jump to content
IGNORED

Chaotic Grill (BurgerTime remake) in progress


splendidnut

Recommended Posts

Good job! As a veteran Burger Time player, here are the things that occured to me when playing your latest version:

- The background music is missing (OK, maybe the 2600 wouldn't be able to do a good job at it anyway)

- The pepper is missing (obviously)

- Screens 5 and 6 are missing completely

- In screens 3 and 4, the chef's starting position is wrong... it should spawn at the bottom of the screen, not at the top

- There was a bug in screen 4 where a green burger part was stuck on its platform and didn't fall when I tried to get it loose.At the same time, multiple enemies were running left and right in the air between two platforms. However, after placing all parts below it, the level was won.

- The enemy AI is still wonky at times, quite often they just stop in their tracks and don't know where to go. You can trigger this by being at the same scanline as an enemy, which quite often will stun that enemy (out of whatever reason).

- The flickering is pretty bad. Does it have to be THAT bad? Or is that because the players are also getting used to display the burger parts?

- The winning animation doesn't look quite right... in the original version, the chef raises and lowers its arms completely.

 

Sorry for being so critical with your game...

 

No worries. :) It's good to have a critique. And a rebuttal:

 

  • Background music is there, the volume is currently set at 0... If you grab 2017-03-06 version (mainly just a music/graphics demo) in the first post, you can hear it. I turned the volume off because it's really annoying to hear it all the time while testing. I was planning on tying it into one of the console switches for switching it on and off... but I never got around to doing it.
  • Some time in the future, pepper will be implemented. Not really sure when yet.
  • Screens 5 and 6 are missing... need to rearrange some data to make room for the graphics data for them. All the animations from NostAlgae37 stole their space. :)
  • Starting positions were mainly set to the top for ease of testing while implementing the burger dropping logic.
  • Burgers are still getting stuck on Level 4? I would need quite a bit of detail on the screen state like what burgers were set in motion, which enemies were riding down, etc.
  • Yup, enemy AI is still wonky because I haven't touched it. The enemies generally get stuck when you pass them on a parallel ladder going the opposite direction and they are in the middle of a ladder in line with a parallel platform. Which makes test runs thru a level easier in a way.
  • Cimmerian pretty much nailed the details of the current flicker algorithm. Better flicker management is planned, I already have quite a bit of code written for it. I just haven't gotten around to finishing it yet. And that partially ties into why you don't see Items or Pepper yet :)
  • I've tweaked the winning animation to include another frame with his arms down... You'll see it in the next build. This is one area where I didn't consult with NostAlgae37 first before releasing.

 

I probably should give a bit of a TODO list (items are in no particular order):

  • Flicker management
  • Fix enemy logic
  • Pepper implementation
  • Lives and Pepper counter
  • Scoring -- will probably be quite a hefty task, but relatively easy to implement. Will be a pain to test.
  • Title Screen
  • More/better sounds and music

Let me know if I missed anything.

  • Like 2
Link to comment
Share on other sites

Splendidnut,

Everything seems to be coming along great!...so glad you're seeing this through.

I would like to chime-in on Inky's suggestion, if possible, about making getting on/off the ladders easier "...bit more leeway...".

The Intellivision version of Burgertime is a good example of this.

 

Thanks,

Stephen

  • Like 1
Link to comment
Share on other sites

Yeah, that's a good point I forgot to mention with... I think in the arcade version it works such that the screen is made up of character cells (8x8 pixels each) and the chef can get onto a ladder or platform as soon as he's in the correct character, which gives 3-4 pixels of room each way. Translated to the Atari 2600's proportions, there should maybe 3 pixels of room at the top and bottom of a platform, and 2 pixels left and right to a ladder.

 

Sorry, I can't give you more details about the Level 4 bug since I don't remember what exactly happened... I only remember that before it happened I had multiple enemies (at least 2) pretty much in the same spot riding down the same burger part, and then they ended up being stuck in the air.

Edited by Kurt_Woloch
Link to comment
Share on other sites

Splendidnut,

Everything seems to be coming along great!...so glad you're seeing this through.

I would like to chime-in on Inky's suggestion, if possible, about making getting on/off the ladders easier "...bit more leeway...".

The Intellivision version of Burgertime is a good example of this.

 

Thanks,

Stephen

 

I agree with Stephen's suggestion of the easy ladders. A bad example of this is Intellivision's Donkey Kong. Seriously though, play Intellivisions Burger Time for an example of a great port! Keep up the good work!

Link to comment
Share on other sites

I have another build ready to share.

 

Earlier this week, an idea hit me for how to implement pepper without waiting for better flicker management. It's not perfect (it doesn't get drawn right at the top of the screen), but it seems to work nicely. Also, the enemy peppered animation sequences are not quite right yet, but they're in there. And there are a few other things too.

 

To summarize:

* Initial pepper implementation - mostly working

* Enemy peppered animations - sequence needs tweaking

* Partial score tracking - Scoring of falling burgers

* Ability to turn music on/off - Right Difficulty Switch

* Tweaked player victory animation

 

I think that's everything.

 

Enjoy.

 

chaoticGrill-2018-10-10.bin

  • Like 6
Link to comment
Share on other sites

That's a nice update... there are now all six screens present as well. Also the starting position of the player is now correct. You probably didn't work on the enemy AI, but this time around I noticed that Mr. Pickle tends to turn around on a platform even if there's no intersection if it finds it's going the opposite direction it needs to go to reach the player. However, this sometimes means that Mr. Pickle never reaches the ladder that would lead to the platform the player is on (I noticed this at the 5th screen with its long platforms). With the scoring, I noticed that it's resetting at the start of each level... I tihink it's not supposed to do that.

Link to comment
Share on other sites

Wow, great update splendidnut! All the major things are in place for the game now. :-)

 

I can't wait to show the game off on ZeroPage Homebrew again soon, probably when the flicker management comes into play.

 

I have another build ready to share.


attachicon.gifchaoticGrill-2018-10-10.bin

 

Link to comment
Share on other sites

That's a nice update... there are now all six screens present as well. Also the starting position of the player is now correct. You probably didn't work on the enemy AI, but this time around I noticed that Mr. Pickle tends to turn around on a platform even if there's no intersection if it finds it's going the opposite direction it needs to go to reach the player. However, this sometimes means that Mr. Pickle never reaches the ladder that would lead to the platform the player is on (I noticed this at the 5th screen with its long platforms). With the scoring, I noticed that it's resetting at the start of each level... I tihink it's not supposed to do that.

 

Yeah, I noticed that score bug, and I'm not sure why it's resetting. I'm thinking there's some rogue code somewhere doing it.

Link to comment
Share on other sites

Wow, great update splendidnut! All the major things are in place for the game now. :-)

 

I can't wait to show the game off on ZeroPage Homebrew again soon, probably when the flicker management comes into play.

 

 

 

Yeah, I think that's going to be next thing I'm going to work on... Ignoring the flicker management issue and instead focusing on the game play elements has been the big thing that's allowed me to make so much progress over the last couple of months. Now that I'm far enough so that the game is somewhat playable, it's probably a good time to work on it.

  • Like 3
Link to comment
Share on other sites

With the right flicker management the character flicker could be reduced to zero (60Hz) when they don't occupy the same vertical space. For a very similar style of character size and screen layout Mappy by Champ Games should be looked at for it's incredible flicker management.

Hi Philip,

 

Great job on CG - it's coming out great!

 

Let me know if I can help with the flicker management; I'd be happy to share the method I use for Mappy and my other games! My algorithm was derived from the one that Spiceware uses in his games. It's written in C, but could easily be ported over to ASM (assuming you have enough RAM). The key is also being able to reposition sprites on specific lines. For Mappy, I can reposition on 3 lines on each floor since there are no PF or BK color changes (the lines with the doors and trampolines cannot be repositioned on). This still works pretty well since you can reposition both players and the ball once per floor. Looking at Chactic Grill, it looks like you should be able to reposition on every line except the ones where you have the condiments being drawn since you have an asymmetrical PF with up to 4 color changes per line.

 

Thanks,

John

  • Like 2
Link to comment
Share on other sites

Hmmm... Have you guys tried using the diagonals? The code is written to favor turning at intersections while moving.

Hi Splendidnut,

The code consistently allows for smooth turns, when the joystick is in a diagonal position...and that's great!

However, The problem happens when you attempt to go down/up a ladder, from a platform, and you forget to use a diagonal. At that point, you have to be in the exact center of the ladder to make the move.

 

BTW, I showed my daughter and her friend a comparison of the graphics and animation from the original and your remake. They both said in unison "...OMG!!..."

 

Thanks,

StephenJ

Edited by StephenJ
  • Like 1
Link to comment
Share on other sites

Hi Splendidnut,

The code consistently allows for smooth turns, when the joystick is in a diagonal position...and that's great!

However, The problem happens when you attempt to go down/up a ladder, from a platform, and you forget to use a diagonal. At that point, you have to be in the exact center of the ladder to make the move.

 

BTW, I showed my daughter and her friend a comparison of the graphics and animation from the original and your remake. They both said in unison "...OMG!!..."

 

Thanks,

StephenJ

Nice!

 

So a couple of days ago I did attempt to fix the player movement problem by trying to add a wider tolerance when moving from a stand still. But I screwed something up and the chef became glued in certain spots. So I commented out that code before releasing the last build... but I'll definitely revisit it at some point.

  • Like 1
Link to comment
Share on other sites

Hi Philip,

 

Great job on CG - it's coming out great!

 

Let me know if I can help with the flicker management; I'd be happy to share the method I use for Mappy and my other games! My algorithm was derived from the one that Spiceware uses in his games. It's written in C, but could easily be ported over to ASM (assuming you have enough RAM). The key is also being able to reposition sprites on specific lines. For Mappy, I can reposition on 3 lines on each floor since there are no PF or BK color changes (the lines with the doors and trampolines cannot be repositioned on). This still works pretty well since you can reposition both players and the ball once per floor. Looking at Chactic Grill, it looks like you should be able to reposition on every line except the ones where you have the condiments being drawn since you have an asymmetrical PF with up to 4 color changes per line.

 

Thanks,

John

 

Sure, that would definitely be helpful to see. Although I have a lot of the pieces I need right now, it would still be nice to see what others have done.

 

This is definitely going to take a lot of finagling to get working.

Link to comment
Share on other sites

  • 2 weeks later...

Spendidnut; phenomenal work! The colours, the level and feel is very very good. I just tried it and it's pretty much everything I'd hope to see in an Atari 2600 version for Burger Time. Years of playing Pac-Man and Spider Kong have made me immune to flickering.

 

Some feedback:

- as mentioned the score gets reset every time you die.

- If I'm moving up while the enemies are going down a ladder, they will freeze once I go higher vertically than their position. As soon as I move to the same vertical coordinate or lower they will move again. The ones going up aren't affected by me going up or down.

- It would be good if you be a bit more forgiving going up/down or off stairs; it has to be pixel perfect to work. Perhaps give it a bit of leeway by 2 or 3 pixels? You can check if the players position is in the vicinty and then just snap him to the position to move off or onto the ladder?

- I was using Stella, and I noticed a couple times when I got to the 2nd and 3rd level, the score bar was shifted. May just be a Stella thing. Here's an example.

chaotic

Link to comment
Share on other sites

Spendidnut; phenomenal work! The colours, the level and feel is very very good. I just tried it and it's pretty much everything I'd hope to see in an Atari 2600 version for Burger Time. Years of playing Pac-Man and Spider Kong have made me immune to flickering.

 

Some feedback:

- as mentioned the score gets reset every time you die.

- If I'm moving up while the enemies are going down a ladder, they will freeze once I go higher vertically than their position. As soon as I move to the same vertical coordinate or lower they will move again. The ones going up aren't affected by me going up or down.

- It would be good if you be a bit more forgiving going up/down or off stairs; it has to be pixel perfect to work. Perhaps give it a bit of leeway by 2 or 3 pixels? You can check if the players position is in the vicinty and then just snap him to the position to move off or onto the ladder?

- I was using Stella, and I noticed a couple times when I got to the 2nd and 3rd level, the score bar was shifted. May just be a Stella thing. Here's an example.

 

Thanks!

 

The things you mention are definitely issues I'm aware of. The enemy logic is an issue with them not properly identifying intersections, And your suggestion for player movement is something I've had in mind and not quite implemented yet (well, partially implemented, but didn't have the time to debug properly between releases)

 

As for the score bar shifting... I'm guessing that all depends on which version of Stella you are using (I'm using 5.1.3). I do know there is an issue with scanline counts when a player dies/switches level

 

As for a GENERAL UPDATE for everyone else:

I'm currently knee deep in rewriting drawing kernels (18 of them) for the flicker management stuff. Things seem to be going well so far... but there are a few issues that are cropping up. Timing is becoming a major issue... but I think i might be able to massage the code a bit to fix this; I believe I still have time available somewhere. The other minor issue is I'm going to need to stop using the hardware for sprite reflection and add the extra sprite patterns..

 

For the next update, I'm guessing it's going to be another week or two before either (A) I manage to implement flicker management or (B) I give up and work on game play issues.

Link to comment
Share on other sites

 

Thanks!

 

The things you mention are definitely issues I'm aware of. The enemy logic is an issue with them not properly identifying intersections, And your suggestion for player movement is something I've had in mind and not quite implemented yet (well, partially implemented, but didn't have the time to debug properly between releases)

 

As for the score bar shifting... I'm guessing that all depends on which version of Stella you are using (I'm using 5.1.3). I do know there is an issue with scanline counts when a player dies/switches level

 

 

I wanted to add that I'm blown away how you managed to put in all six levels into the game. I've quite enjoyed the game as it stands and it's fun to play.

 

I'll install a newer version of Stella and see if that takes care of that visual issue.

  • Like 1
Link to comment
Share on other sites

You should always install the latest available version of Stella. In version 5+ in particular, many TIA emulation improvements have been made, that could potentially be related to this issue. Likewise, in the upcoming 6.0 release, the TIA sound generation will be greatly improved.

  • Like 3
Link to comment
Share on other sites

Speaking of levels, I just noticed that there are some differences between the level layout in your version and the arcade version:

Level 1: The order of ingredients is wrong on some of the burgers. In the arcade, all four burgers go Top bun - Salad - Patty - Bottom bun.

Level 2: The order of ingredients is wrong again, on all of the burgers the salad needs to be switched with the cheese. Also the chef's starting position is one platform higher than it should be.

Level 3: There's one letter in your version that shouldn't be there... it's in the middle of the bottom row going up from the chef's starting position.

Level 4: There's a ladder missing from your version, it's in the middle of the screen going from the 4th to the 5th platform counted from the bottom.

Level 5: No visible errors. I just noticed that there are some scanlines on the bottom where the foreground is displayed in blue instead of white although there are no platforms on that scanline, only ladders.

Level 6: No visible errors.

 

I've also noticed that on starting a new screen, the screen seems to jump for a frame, I suppose it takes too much time for initialization so it's some scanlines late with drawing the screen. Maybe if you need that much time for initialization, it would be better to blank the screen for a frame.

Also, I noticed that if multiple parts of one burger fall down at once due to enemies riding them, those parts seem to be too close together in your version. In the arcade version, they seem to be about one platform away from each other, falling onto the completed burger at a rate of about 47 frames apart from each other.

  • Like 1
Link to comment
Share on other sites

The designers of the Tron arcade cabinet had a solution to hunting the exact pixel perfect gaps between playfield blocks in the tank mini game that might work for ladders as well, but I already see some posters in the thread that may complain.

 

If you can't implement wider zones for the ladders, I dislike the idea of "snapping" the player to the ladder, because that creates an incentive for players to gain an advantage by always trying to climb early. "Snapping" to a grid also gives games a sloppy, jumpy, and inconsistent feel.

 

Perhaps if there isn't a ladder available, the player could continue to go the last known good direction that was pressed? That would allow players to press up or down before a ladder and "pixel perfect" ladder detection is no longer an issue.

Edited by orange808
Link to comment
Share on other sites

Speaking of levels, I just noticed that there are some differences between the level layout in your version and the arcade version:

Level 1: The order of ingredients is wrong on some of the burgers. In the arcade, all four burgers go Top bun - Salad - Patty - Bottom bun.

Level 2: The order of ingredients is wrong again, on all of the burgers the salad needs to be switched with the cheese. Also the chef's starting position is one platform higher than it should be.

Level 3: There's one letter in your version that shouldn't be there... it's in the middle of the bottom row going up from the chef's starting position.

Level 4: There's a ladder missing from your version, it's in the middle of the screen going from the 4th to the 5th platform counted from the bottom.

Level 5: No visible errors. I just noticed that there are some scanlines on the bottom where the foreground is displayed in blue instead of white although there are no platforms on that scanline, only ladders.

Level 6: No visible errors.

 

Fixed all these except for Level 1... might keep that one how it is now since that makes for a nice and colorful intro to the game (and doesn't affect gameplay/scoring since all burger pieces are scored the same) :)

 

 

I've also noticed that on starting a new screen, the screen seems to jump for a frame, I suppose it takes too much time for initialization so it's some scanlines late with drawing the screen. Maybe if you need that much time for initialization, it would be better to blank the screen for a frame.

 

The code is already setup to blank the screen for 15 frames. BUT yes, I did need to fix level initialization so that it was spread over two frames (not one frame which is how the Oct 10 build does it). I didn't see this issue at first since my working build was set to show the debugging info bar under the scoreboard. But this is fixed now.

 

 

Also, I noticed that if multiple parts of one burger fall down at once due to enemies riding them, those parts seem to be too close together in your version. In the arcade version, they seem to be about one platform away from each other, falling onto the completed burger at a rate of about 47 frames apart from each other.

 

The burger pieces are a tricky, complicated beast.

 

Speeding up the burger pieces would make them jerky... currently they can only run at 30fps. The burger movement code is spread over two frames due to time constraints.

 

Making them bounce up more also causes issues, mainly when the platforms are close together (i.e. level 4). The vertical compression of the levels probably comes into play here as well. (portrait vs landscape)

 

I did spend quite a lot of time playing around with these things in the past and ultimately arrived at this point. So, I really have no plans to change how the burger pieces work, since they seem to be working relatively well now... I'd much rather fix the remaining issue(s) with them and call it good.

 

I might do a write up on their inner workings at some point.

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