Jump to content
IGNORED

Work in Progress: Sky Scraper 2115


Synthpopalooza

Recommended Posts

OK, an update.

 

post-23798-0-08097200-1502339301.png

 

First off ... I have removed the scoring display. I will bring it back once I can get the issues with it sorted. I'd like to keep it in 160B but that may not be possible.

 

Secondly, I have done a little experiment ... 9 colors per character cell + BG in 160A mode! How? Well, a little trickery ...

 

I have made two character sets of the game tiles, and I swap them out every screen cycle. Where two different colors overlap, a third one is apparent. I then do some checkerboard dithering to reduce the flickering. Also, I mainly am relying on the base colors in this mode (here, orange, red, and green) which don't flicker. This makes the display easier to look at, but still gives the impression of extra colors.

 

All of this was using only the first palette of 160A mode. There are 7 left, but I may not even need to use them. This of course frees them up for things like making a palette duplicate of the rocketman with different colors (for 2-player mode) without having to recopy the graphics. This will of course save on ROM space. Also, this saves on precious DMA cycles by not having to use 160B for extra colors.

 

This swapping method could also theoretically be used in 160B mode to get 100+ colors on screen, or a 31 level greyscale picture at 160 pixel resolution ... albeit it would only be useful for still images like titlescreens and such,

 

I am attaching the source png files, so you can see better what I did here ...

 

post-23798-0-31315500-1502339160.png post-23798-0-36663700-1502339172.png

 

I am also attaching the current .a78 of this version. I would greatly appreciate it if someone could have a look at this on real hardware and tell me if it looks ok, since I can't see from here. The emulator seems to say it's ok but I don't want to wear people's eyes out. ;)

 

Screenshot attached too, but it's not accurate. Seems there is no frameblending on these 7800 emulators.

ramcharmap4.bas.a78

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

I would greatly appreciate it if someone could have a look at this on real hardware and tell me if it looks ok, since I can't see from here. The emulator seems to say it's ok but I don't want to wear people's eyes out. ;)

 

Screenshot attached too, but it's not accurate. Seems there is no frameblending on these 7800 emulators.

 

Here is a simulation of what it looks like on 'Live TV':

 

post-18-0-36777400-1502486751.png

 

It's a snapshot from a paused recording of footage from A7800.

 

The image doesn't capture well with my camera directly from the CRT; hence the approach above.

 

Working very good now under real hardware with no more disappearing missile when the player is on the same scanline(s) too.

  • Like 1
Link to comment
Share on other sites

Thanks. I am not sure if I will stick with the 10 color method or go back to the blocks being 3 colors from one palette. The 10 color method I have now will save a palette space for the traps ... I may still end up using a different palette for the coins and other objects too. The color blending looks good in the emulator but I'd need to see it in action on a real TV. And it might end up looking rubbish on a PAL system because of the lower 25Hz frame rate.

 

So I guess the question is, how bad is the flickering on real hardware, NTSC and PAL?

Edited by Synthpopalooza
Link to comment
Share on other sites

So I guess the question is, how bad is the flickering on real hardware, NTSC and PAL?

 

On a NTSC CRT, I need to really focus hard in trying to spot the flickering. If I wasn't made aware of the method previously, it would likely be something I never even noticed.

 

Focusing to notice it around the block edges, it appears distinguishable, but not consistently so.

 

*EDIT: Tried several additional attempts to accurately capture what is seen via 'live NTSC CRT TV'. This is the best I could capture:

 

https://www.youtube.com/watch?v=ca7DVQjnw9Q

 

NOTE: Be sure to maximize display/resolution of the above video, as the smaller shown default is distorting the appearance significantly.

 

Any flickering is much more pronounced in the video capture than what is actually experienced. The prior post provides a clearer depiction. Referencing the video posted in this reply, take special note of the bottom-most row of blocks on the left-hand side, it provides the closest playback of what is actually seen throughout the screen respecting block appearance.

 

Personally, I'm perfectly fine with the technique and retaining it to make more use of colors/palette is a great idea. However, unless a healthy sample set of testing and feedback on various display hardware can me obtained, it may be a risky roll of the dice to retain the technique, as far as aesthetics are concerned for other users.

Link to comment
Share on other sites

OK, new update:

 

I have done all the existing 11 levels using the new palette and flicker technique. I have set the colors on each level. They were optimized for ProSystem emulator, so they will likely look different on the real hardware or on MAME. The levels now will not complete until all the blocks have been changed. Please have a play through and tell me if you think the colors are too harsh on the eyes with this method.

 

I also redesigned the coins, traps, and the teleport blocks as well. I will also redesign the Adrenaline pill which appears on the Lab level (level 10) and see if I can give it a unique color palette.

 

A few cautions:

 

* Due to a bug in the reset code, dying on the Construction Room or the Blind Alley (levels 8 and 9) will result in an infinite loop which requires a reset.

* Some of the traps on the lower level of the Foundation (Level 1) and the Staircase (Level 12) are not navigable without losing a life. This will require a tweak to the flying and falling physics to alleviate this.

* When the blocks are exactly a player height apart, sometimes the hold-and-thrust method doesn't work, the rocketman stays stuck in place. This is especially apparent on The Arena (level 7). Again this will require a tweak to the physics.

* When the missile is behind a block, pointing to 10 o'clock (top left) and the player is thrusting, the missile glitches. Not sure how to fix this yet.

* Also on the Construction Room, going to the bottom of the level will trap your player. You would normally use the teleport to escape, but this isn't active yet.

 

Another important note on the physics: The missile will not harm your man while falling. This is by design, it makes strategy a bit easier when it comes to evading the missile. Get it to chase you up the screen, then fall down through it. This will be a crucial survival skill on the harder levels.

 

Another thing I will fix in the physics, is that the level should not complete if you hit the last block from below, until you have landed safely. If you fall off the structure or land in a trap, you lose a life, and the level completes once your next man appears (if you have one). This will be implemented soon.

ramcharmap4.bas

ramcharmap4.bas.a78

Edited by Synthpopalooza
  • Like 4
Link to comment
Share on other sites

Just for curiosity's sake, here are screenshots of the first 18 levels, from the original Atari 8-bit version of the game. I would really love to be able to keep the unique block design for each level, if possible. We will see ... maybe the banked ROM settings will be enough for this.

 

post-23798-0-25575700-1502683399.png post-23798-0-22357600-1502683411.png

post-23798-0-83500700-1502683424.png post-23798-0-00891400-1502683565.png

post-23798-0-87284900-1502683580.png post-23798-0-06292900-1502683596.png

post-23798-0-72515700-1502683617.png post-23798-0-56826600-1502683630.png

post-23798-0-94658100-1502683643.png post-23798-0-04239600-1502683666.png

post-23798-0-32880700-1502683680.png post-23798-0-83753600-1502683696.png

post-23798-0-43571700-1502683711.png post-23798-0-53253000-1502683723.png

post-23798-0-46448700-1502683734.png post-23798-0-97177600-1502683747.png

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

Some other things I want to do:

 

There is a spare palette #4 that could maybe be used to add some more color. I may try drawing the coins from that palette, or some of the other screen blocks. If I use the same character set, the 10 color effect I use will also transfer here as well. The remaining palettes are for the missile and the rocketman. I will arrange the colors of palettes 1 to 3 to mimic the ones on 5 to 7, so that you can have two rocketmen of different colors. This will save a ton of ram space, and it might be possible to duplicate the missiles as well.

 

There will be other missiles.

 

* Dumb Missile (currently in game) is stopped by blocks

* Smart missile will go around blocks

* Heat seeking missle can follow you through the screen when you wrap around (dumb one will not)

* Smart heat seeking missile is a combination of HSM and the Smart missile

* Sentry missile 1 flies in a circular motion around a platform

* sentry missile 2 flies in a repeated straight line, either vertically or horizontally

 

And the hoverbot ... this nasty guy sits on a platform, can jump to any platform which is 2 characters below and to the left or right of it. If it grabs you, it immobilizes you and pushes you off the platform. If you happen to be over an open space or a trap, you will lose a life.

 

There will be a maximum of 4 enemies on screen at once. I don't think the game can handle much more than this. Plus we don't want things to be TOO difficult. ;)

  • Like 1
Link to comment
Share on other sites

My latest accomplishment:

 

post-23798-0-90553800-1502942208.png

 

I have added "The Temple" level to the game. I have fixed this version to start on that level, because I am trying to test a very crucial part of the game engine: The hold-and-thrust move. This level is full of platforms which are exactly the player's height apart ... by holding your controller in one direction and thrusting, he will simultaneously color both platforms. This is a crucial maneuver which must be mastered to make any progress in the game.

 

This is the level as it originally appeared in my old Atari 8-bit version:

 

post-23798-0-74853200-1502942317.png

 

As you can see I had to alter the level slightly for the game's new aspect ratio, in that the platforms are now two character rows apart, to reflect the new height of the player.

 

 

There are still some glitches ... the player's speed jumps around alot. Please test it out and see if you notice any other glitches.

 

There is another maneuver added ... the release and hold maneuver ... when you are flying over a trap or open space, if you release your button while continuing to hold your controller in the direction of movement, your man will continue to drift a little bit in the first few microseconds as he falls ... allowing you to essentially jump small distances over hazards.

 

Also: Does anyone know how to get MAME emulator to take interlaced shots? I'd really like a better way to do screen captures that don't show the checkerboarding.

 

 

 

 

 

ramcharmap4.bas

ramcharmap4.bas.a78

  • Like 3
Link to comment
Share on other sites

Another update!

 

This time, the first 19 levels (or thereabouts) are in. Pressing the right fire button will scoot you to the next level so you can try it out.

 

I am still having some issues with the Temple level and the variable speeds the rocketman seems to have when doing hold-and-thrust. There is also this level:

 

post-23798-0-88454000-1503452330.png

 

The level as it originally appeared in the Atari 8-bit version:

 

post-23798-0-56067000-1503453273.png

 

 

 

Entitled "The Gymnasium". I have discovered another bug. If your man flies up to any of the left platforms, and tries to walk through to the right side of the screen, he is prevented from doing so. Time to look at the code ...

 

I would appreciate any feedback on my color selections ... do the levels look ok on real hardware?

 

EDIT: Cause of bug found! It's because the platforms on the left don't continue off the right side of the screen. The engine will need some tweaking to fix this. The bottom left platform seems to behave ok.

ramcharmap4a.bas

ramcharmap4a.bas.a78

ramcharmap4a.bas.bin

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

Another further update:

 

I fixed it to where your man cannot hover at the top of the screen if there are any blocks. Hitting any blocks at the top of the screen will make your man fall. If there is a trap at the top of the screen, it will kill your man.

 

Added in the first 27 levels. The last two levels (entitled The Waiting Room and The Forbidden Chamber) are ridiculously hard, one of the classically hard levels in the original game. Maybe in fact too hard, I want to tweak the physics some more ... Here is the problem. Let's say you get a situation like this:

 

post-23798-0-55793900-1503896511_thumb.png

 

Now let's say your man wants to reach the block directly to the left of him. On the original Atari 8-bit version, you could immediately fly to the left, release your button mid flight a split second later, and then drift down to the next block to the left. If you messed it up though, you fall to your death. That technique doesn't exactly work as it should here yet, so it will need more tweaking.

 

As before, the second controller button will page through the levels so you can try them out.

 

I am running out of ROM space, so I am looking into bankswitching. It bears more scrutiny ...

 

 

ramcharmap4a.bas

ramcharmap4a.bas.a78

ramcharmap4a.bas.bin

  • Like 3
Link to comment
Share on other sites

A bit of progress ... your man can now pick up the coins and the adrenaline pill on level 10. I have temporarily taken out all but the first 10 levels, until I can get bankswitching figured out.

 

Some interesting notes:

 

Your man can walk over coins if they are built into the platforms.

 

Your man can pick up coins if he falls on them. You can then hit your fire button and take off, as long as the "500" graphic is still showing. This is an essential skill which must be mastered for the harder levels, including the devious "The Pit" level.

 

These rules also apply to the adernaline pill on "The Lab" (level 10).

 

There is a level in the original game called "The Pit" ... it looks like this:

 

post-23798-0-13316000-1504327858.png

 

I haven't yet done this level in my 7800 version, but the challenge is ... the blocks at the top can only be completed by using the coins as temporary landing platforms. So you fly up, hit the block from below, fall, land on and pick up the coin, and thrust before the "500" graphic vanishes. Failure to do this results in your man falling onto a trap.

 

Also at the bottom left and right are coin bridges which lead to blocks that must be changed. You must land on the coin, walk to the left or right and collapse the coin bridge, change the block, and then hop onto the teleport and be teleported randomly to somewhere on the level (and hope it's not a trap!)

 

My next update will be a conversion of this level for playtesting. ;)

 

Meanwhile ... have a play ... as before, right fire button will page through the levels!

ramcharmap5.bas

ramcharmap5.bas.a78

ramcharmap5.bas.bin

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

One other note, going back to the Waiting Room:

 

post-23798-0-26192900-1504328281_thumb.png

 

I am thinking of setting the second fire button to do a simple thrust and hop which will enable the player, in his current position, to hop two characters to the left. This will enable navigation of these tricky formations in the game. The player will also be able to begin thrusting at any point during the hop maneuver. I will implement this with my next test version.

 

On the immediate to do list after this: Implement the teleports, Adrenaline pill invincibility, and the ? blocks.

Edited by Synthpopalooza
  • Like 2
Link to comment
Share on other sites

Well, another update:

 

post-23798-0-64444500-1504496435.png

 

The scoring display is back, though not yet functioning. It is currently in 160A using the 4th palette (which at this time also corresponds to the player sprite) and an interrupt which changes these colors on the top two lines. It also uses the same 10 color flicker mode which I used on the main screen. This allows you to get a 7-level color gradient in the letters, making them look nice. There is also some nice antialiasing around some of the letters.

 

A limitation is, you can't blend the blue and yellow, because the luminances are too great, it will flicker horribly.

 

Right now, I only have the "0", the first four letters in "PLAYER", and the coin and life icons, in this mode. The coin icon has a really nice 6-color gradient! It may be possible to change this color scheme on a level by level basis, just like the main playing area.

 

Again, the screenshot doesn't really show what is happening. A video capture is needed again (hint, Trebor!) :)

ramcharmap5.bas.bin

ramcharmap5.bas.a78

ramcharmap5.bas

Edited by Synthpopalooza
  • Like 2
Link to comment
Share on other sites

Some other interesting notes about the 160A flicker mode i used hete:

 

You get about 10 colors per character, per palette. You could use all 8 palettes for a total of 73 colors, but palette changes will of course eat into DMA time.

 

If you use 160B mode, you can have a whopping 91 colors per character cell, and 181 colors total between both palettes. This is likely most useful for title screens and game cutscenes.

 

Using 320B should get you 10 colors per character at 320 resolution, but with some limitations on where the background pixels can go.

  • Like 1
Link to comment
Share on other sites

Another little fix:

 

post-23798-0-04973500-1504584092.png

 

This time, the scoring area displays using two different palettes ... there will eventually be a two player mode, and the second rocketman is going to have a gold color motif as opposed to the first player's rocketman. The letters have been fixed up, and there is some nice antialiasing to make the letters appear to be more smooth and less jagged.

 

A good technique for making smooth letters in the 160A flicker mode, is to use a blended pixel a step down in luminance from the neighboring one, to smooth out any jagged edges in the letters.

 

 

 

 

ramcharmap5b.bas.a78

ramcharmap5b.bas.bin

  • Like 2
Link to comment
Share on other sites

Small update:

 

The player and missile starting positions are now unique to each level, and both return to those positions when destroyed.

 

The first level has also been redesigned to fix the infinite loop found earlier.

 

No scoring yet ... working on that next. :)

 

Also working on adding in the color palette for player #2.

 

 

ramcharmap5b.bas

ramcharmap5b.bas.a78

ramcharmap5b.bas.bin

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