Jump to content
IGNORED

Mr. Do!


jstrotha0975

Recommended Posts

21 minutes ago, jstrotha0975 said:

The C64 version od the game looks good, could something similar be done?

Of course. 

Mr. Do! has been released on many platforms, there's no reason why the 7800 could not have a port, similar or (arguably) superior to the C64.

 

Matter of fact..

 

 

 

  • Like 5
Link to comment
Share on other sites

52 minutes ago, Goochman said:

The A8 port of the gold standard IMHO - whomever did that really got all the details in.

100% agree. 

 

When it comes to ports between the A8 and C64 there are some titles I prefer one over the other.  IMHO, the sequel, Mr. Do's Castle is better under the C64; however, for the original, Mr. Do! is hands down best on the A8.

Link to comment
Share on other sites

3 hours ago, jstrotha0975 said:

Looks like someone already did it. Where is it available?

Mr. Do is not done and is not available.

 

What you saw was a proof of concept. Darryl did that  to see if Mr. Do is possible for the 7800. Pengo and Kick-Man also were proof of concept when this video was made back in August of 2021.

 

What I can tell you is Darryl had problems with Mr. Do as a proof of concept in terms of programming. It was easier for him to do Kick-Man and Pengo.  Pengo was worked on and appears to be completed as a game unless a glitch/bug is found.

 

I don't know when Darryl is planning to do more work on Mr. Do.

 

 

Edited by 8th lutz
  • Like 2
Link to comment
Share on other sites

  • 1 month later...
On 11/21/2021 at 3:29 PM, 8th lutz said:

Mr. Do is not done and is not available.

**Don't get too excited about the attached files. Nothing new, but I thought I'd share. Yes. I have not worked on this any more. Time is really tight right now for me.

Quote

What you saw was a proof of concept. Darryl did that  to see if Mr. Do is possible for the 7800. Pengo and Kick-Man also were proof of concept when this video was made back in August of 2021.

Why not share the proof of concept? I might as well. It's fun to move Mr. Do around, even if he's not digging properly.

 

Quote

What I can tell you is Darryl had problems with Mr. Do as a proof of concept in terms of programming. It was easier for him to do Kick-Man and Pengo.  Pengo was worked on and appears to be completed as a game unless a glitch/bug is found.

See below...

Quote

I don't know when Darryl is planning to do more work on Mr. Do.

I believe Pengo is pretty much done.

 

As far as Mr. Do, I will need a better way to keep track of digging the dirt. Unlike the arcade, which uses 8x8 tiles, the 7800 needs to use 4x16 tiles. I tried 8x8 tiles, and it's just too much for Maria. The 8-Bit computers are a little more tile based, so they're a great fit for the game.

 

Check out my trial with 8-pixel zones (8-pixel tall tiles):

MrDo(7-29-2021-8pxZone).a78

 

You can see that Maria is running out of draw time, and there isn't any real game logic.

 

One concern is processing time. Once I add intelligence to allow enemies to navigate the paths and dig through the dirt, it will take a toll on processing time. Pengo "reads" the tile map a lot. Pengo, 4 enemies, and a moving ice block need to read the map coordinates. It takes a lot of processing time to "look around" the map. There are other things too, such as hatching eggs, flashing eggs, and crushing ice. One more thing, and Pengo would have slow down. (That can be seen when I tried to enable an extra bottom row, although it's not as apparent until 4 sno-bees are active.)

 

As far as enemies, Mr. Do can have up to 6 main enemies, one Alpha Monster, and 3 Munchers. The ball also has to constantly read the tile screen, in order to follow paths. The apples also need to be self-aware. There are at least 6 of them. New apples should appear when Munchers and Alpha Monsters are killed. (Some of that was omitted from the A8 & C-64 versions.)

 

As for digging, the dirt left behind by Mr. Do is dependent on what tile was there and which direction Mr. Do is traveling. One vertical column is the width of 3 tiles. So each digging creature needs to clear or alter 3 tiles vertically. Checking the board will eat up some processing time. If that's not already a lot of map checking, the enemies need to read the map to navigate the paths. They need to check 4 directions when they get to an intersection.  Additionally, there could be two or three enemies also digging. That's a different kind of check. They will need to share or mimic Mr. Do's dirt logic. That's more processing time.

 

The apples are sprites, which will also need to be kept track of, because Mr. Do interacts with those. The apples need to check for other apple collisions, because Mr. Do (or the enemies) can push a line of apples. (Apples push apples.) The apples need to also "look around" the tile map as they move. They eat through single lines of dirt. Most map checks are below them. They shift on half of a dirt tile, and they stop if it it's solid. There's a lot of collision detection going on, as well as checking collision with other sprites, including other apples. It's an insane amount of collision checks and logic, based on 4x16 tiles.

 

Not only might Mr. Do be pushing a line of apples, but the enemies could also do that. Later, alpha monsters eat the applies and have to navigate the dirt. There's a lot going on here.

 

I didn't complete the dirt digging within the proof of concept, because it would require me to start over with some proper lookup tables. Once that is successful, I would need to see how all of those other issues above would play out. It's not something I want to write off, but I will need to pace myself and figure out little bits at a time.

 

As for now, life has been very busy. I had a great time writing Pengo, but it was also extremely stressful. It seems like there isn't enough time in a day, and I ended getting caught up and getting behind in real life. It's just a rough time to find time right now. I know that I have trouble pacing myself once I get started. Working on games becomes compulsive. I am hoping to work on chipping away at little things here and there. I might try to chip away at the dirt task, but it might require stripping out the proof of concept some.

 

Sorry this isn't more and so late, but here's the proof-of-concept from ZPH. I find it especially satisfying to view on real hardware, with a proper CRT. The pixels tend to look a little thinner, and the scanlines add to the overall look of the game. Even though Mr. Do can't die, I find it fun to just run around, collect stuff, and hit the enemies. It reminds me of having to use my memory when I'd play 2600 games back in the day. I hope you enjoy.

 

MrDo(8-24-2021_TIA).a78

  • Like 7
Link to comment
Share on other sites

Nice work, Darryl :-D  Sure, it's an early build, but shows a lot of promise.

 

And I'll admit that I'd like to see all four Mr. Do! games on the 7800 - as well as Jumping Jack, which seems like one that could have been part of the series if a few characters had been changed around.  There's just something about the Universal hardware of that time that feels like it'd be perfect for 7800 ports.

  • Like 2
Link to comment
Share on other sites

3 hours ago, darryl1970 said:

Sorry this isn't more and so late, but here's the proof-of-concept from ZPH. I find it especially satisfying to view on real hardware, with a proper CRT.

Thank you for sharing the POC file(s), Darryl!

Nothing beats hardware under a CRT, but this capture is not too shabby when clicked on, expanding to its full size:

 

Capture.thumb.PNG.9fcfdee121e1fc230c58cc25ce4203d2.PNG

 

If it may provide any ideas, the source code to 7800 Dig Dug is available, albeit in Assembly.

  • Like 1
Link to comment
Share on other sites

2 minutes ago, Trebor said:

Thank you for sharing the POC file(s), Darryl!

Nothing beats hardware under a CRT, but this capture is not too shabby when clicked on, expanding to its full size:

 

Capture.thumb.PNG.9fcfdee121e1fc230c58cc25ce4203d2.PNG

 

If it may provide any ideas, the source code to 7800 Dig Dug is available, albeit in Assembly.

Thank you. I am assuming you mean for the digging routine. As for almost every other issue I mentioned above, Dig Dug is WAY WAY simpler. Rocks aren't able to be pushed, and Rocks don't push other rocks. Enemies just float through the dirt on Dig Dug. They don't need to read and alter the map too. Enemies can even collect cherries!

 

That screenshot looks pretty sharp. Are you using some type of filter? What emulator is that?

Link to comment
Share on other sites

33 minutes ago, darryl1970 said:

Thank you. I am assuming you mean for the digging routine. As for almost every other issue I mentioned above, Dig Dug is WAY WAY simpler. Rocks aren't able to be pushed, and Rocks don't push other rocks. Enemies just float through the dirt on Dig Dug. They don't need to read and alter the map too. Enemies can even collect cherries!

Indeed, the mention was for the digging routine.  Hoping some thing may be gleamed from it, though definitely know and appreciate the differences between the games.  The 7800 Dig Dug port, I have played to 200,000+ and even 300,000+ scored games at times.  Completely agree that the 8-bit is the gold standard among the classic systems for Mr. Do!  Love playing that one too.  ;)

 

33 minutes ago, darryl1970 said:

That screenshot looks pretty sharp. Are you using some type of filter? What emulator is that?

A7800 emulator.  Leveraging bgfx video option and tweaking to taste.  Here's one with the screen less sharp:

 

Capture2.thumb.PNG.cde4ff4b9edf1a7f461bfff318edbc2e.PNG

 

:)

  • Like 3
Link to comment
Share on other sites

In order to enable and modify the advance video bgfx effects fully, both the artwork and bgfx folders should be present.  If they are not, download the full version of the A7800 emulator from its homepage:

 

Under 7800.ini, ensure the following adjustment is in place:

#
# OSD VIDEO OPTIONS
#
video                     bgfx
numscreens                1
window                    1

The default for "video" may show "auto" instead of "bgfx".

 

Once auto --> bgfx is performed and save, when running the emulator now, a whole slew of new options will open up under "Video & Audio Controls", as shown below, while pressing left and right under the "Windows 0, Screen 0 Effect:" option:

 

image.thumb.png.e3b99e6d24e4d4f7751c1bbc334ad19c.png

 

After pressing 'Tab', to toggle seeing the entire list of options...

 

Untitled.png.8b73c25c0d7827952b3b8ec8be1def3e.png

 

...and focus on (the effect of modifying) just one option...

 

UntitledOne.png.a01f8d0080236a83fc99f454718a296a.png

 

...press the '~' key.  Left and right arrows will modify the option.  Press '~' again to go back to the full list.

 

Once you have the tweaks that you prefer in place, be sure to capture them either screenshot or write them down, as the emulator unfortunately, does not save the advanced video changes permanent.  That has to be done manually to the respective files.

 

There are two spots to manually and permanently change advance video settings.

 

First, back to 7800.ini:

# BGFX POST-PROCESSING OPTIONS
#
bgfx_path                 bgfx
bgfx_backend              auto
bgfx_debug                0
#bgfx_screen_chains	  crt-geom-deluxe-trebor
bgfx_screen_chains        hlsl
#bgfx_shadow_mask         slot-mask.png
bgfx_shadow_mask	  white.png
bgfx_avi_name             auto

The field while running the emulator, "Windows 0, Screen 0 Effect", is manipulated externally and saved as default via the a7800.ini line: 

"bgfx_screen_chains".

 

Note, I placed a "#" before a couple of the aforementioned lines as that stores what I had previously there (crt-geom-deluxe-trebor), while providing and utilizing a new value (hlsl).

 

Running the emulator and pressing left and right arrows among for the various values that are several software filter shaders to select from:

 

image.thumb.png.7ded7b8837dccc4f6ccd6302fc0039c7.png

 

The possible options are located in the '%emulator root%\bgfx\chains' folder.

 

image.png.14e8c6ff3a11d42478c36e602c7276ba.png

 

 

The field while running the emulator, "Windows 0, Screen 0 Shadow Mask" is manipulated externally and saved as default by the a7800.ini line "bgfx_shadow_mask".   

 

While inside the emulator, press left and right arrows for the various values. 

 

image.thumb.png.ba63d952ab270283ddd5300facf5f464.png

 

The possible options for it are located in the '%emulator root%\artwork' folder.

 

image.png.847180dea545cd4c55d5aa1962e5e767.png

 

All the other listed values are stored inside the respective *.json file that correlates to the selected "Windows 0, Screen 0 Effect"/"bgfx_screen_chains" option selected in the aforementioned '%emulator root%\bgfx\chains' folder. 

 

I typically edit the respective *.json file with Visual Studio for clarity and ease:

 

image.thumb.png.9da2b506522f7d169bbc7a59f3fa8a1e.png

 

However, something as simple as Notepad can be leveraged as well - just make sure the 'Format --> Word Wrap' option is not checked:

 

image.thumb.png.cf0d0c721e18d7d238cdd023f8ac9ae1.png

 

It takes some time to tweak advance video settings, but once in place, it is quite nice and satisfying with the above noted modifications keeping it permanent:

 

CaptureP.thumb.PNG.38eba267b04052a664a443a3cb483a03.PNG

 

;)

  • Like 1
  • Thanks 1
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...