New levels for Monster Bash and Cosmo's Cosmic Adventure

Discuss classic PC games
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

Hello.

Those interested in these two games may want to check out the new levels I have made for them.

See:

http://www.poetsoftware.no/mods/monster_bash/index.html

and

http://www.poetsoftware.no/mods/cosmo/index.html

To play these mods (new levels) you need the registered versions of the orginal games.
Remember to keep backups of original game files.


Best regards, Poet.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

Wow I've only had a chance to look at the Monster Bash one so far and it's great! I think this is the first released mod for Monster Bash. Finding the hidden extra pet on level 1 was fun, but the new levels were way too hard for my poor skills! You really like having a bunch of enemies attack you the moment the level begins :)
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

Thanks for the comments. And thanks for the Camoto editor. I've always wanted to mod Monster Bash and Camoto made it possible.

I hope you get to play the new levels. Yes the enemies come from everywhere. :-) But the levels shouldn't be too difficult I hope, once you start getting to know your way around in them.


PS. And be prepared for a big surprise in level 7. :-)
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

Thanks too for publishing a link to my Monster Bash mod at the Modding Wiki.

Maybe you could add links to my Cosmo's Cosmic Adventure mods too. :-)
I have made three mods for Cosmo.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

It's a wiki, that means everyone contributes, so please feel free to add your own mods! I only add things when nobody else will :)

Have you considered reordering the levels in your Monster Bash mod so that they appear as levels 1, 2, 3, etc. instead?

You might also want to announce your mods over at the PCKF in The Classics subform, as there are a few Cosmo and Bash fans over there who I'm sure would like to hear about your mods too.
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

Thanks for the tip about PCKF.

As for reordering the levels, some game features only work in certain levels. Many features seem to be coded for specific levels. For instance if you import the foreground graphics and bonus tiles from one level to another, and flag them as interactive, they will show in the level but not work as expected.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

That's really interesting that some of the item behaviours are hard-coded based on the levels. The file formats seem to be designed to put as much functionality as possible into the files themselves, so interesting that they still ended up hard coding things in the end.

Although, how did you import the tiles? Did you use the Camoto UI or did you rename the files in the .DAT file itself? As well as the tile graphics there is also a file that contains the tile properties (e.g. which tiles are shootable), which Camoto does not do anything with. If you used the graphical import/export then this tile property file was probably left unchanged which could explain the issue?
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

I used a functionality in Camoto to import a different set (that is from another level) of either background graphics, foreground graphics or bonus tiles into a level. There is only one interactive flag to be put on bonus items, dangerous items and shootable items. The game's exe obviously reads what position in the tile set (that is what type of graphic) the flag is put on so that the different interactive objects act correctly even if there is only one type of flag. But this means the program will not understand it if for instance a dangerous item in an imported graphic set is not in a position where there was a dangerous item in the original set.

Both foreground graphics and bonus tiles are in fact foreground graphics but there is no telling (except through experimenting) which foreground tiles will hide the Johnny Dash sprite and other sprites. What graphics are found in which of the three sets is a bit strange since the interactive flag can be put on specific tiles from all three sets (there are some background tiles one would have thought would be foreground tiles since they are actually shootable or animated), and most of the actual bonus items are found among the foreground graphics and not the bonus tiles. But this last thing is no problem when you design levels because your editor lists foreground tiles and bonus tiles together in the window you use for choosing them.

The different attribute tiles can be put on any tile in the map.
Last edited by Poet on January 12th, 2019, 7:08 pm, edited 1 time in total.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

It seems you're right. I tried swapping "bk1.pbg" and "bk8.pbg" inside bash1.dat as these files indicate which tiles are shootable, climbable, etc., however this had no effect in the game. It seems these files are meant to be used by level editors and not the game itself!

I suppose the idea is the level editor reads the interactive flags from this file so that you do not have to set them manually.

Interesting that some foreground/bonus tiles appear in front of Johnny and some behind. I wonder whether this is controlled by some of the unknown tile attributes?
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

I have now noticed (and maybe I should have noticed it before :-) ) that the tiles found in the foreground graphics tile set are in fact all in front of the sprites, while the tiles found in the bonus tile set are foreground tiles in as much as they are on top pf the background graphics but still behind the sprites. The bonus tiles and the background tiles are listed in the same editor window, the bonus tiles before the foreground tiles. Almost all of the bonus tiles are in fact not bonus items, and like I said before most of the actual bonus items are found among the foreground graphics set and not the bonus tile set.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

Interesting. That makes a bit more sense. I always assumed the bonus tiles were not for in-game bonuses, but they were bonus tiles, as in extra tiles you, the level editor, got to use. But the term "bonus tiles" is just made up by myself. The game refers to the tilesets as "bk", "fg" and "bon", which I assumed were Background, Foreground and Bonus. But I could be wrong, and they might mean something different!

The Foreground and Bonus tiles ended up together in the tile selection window because that is based on the map layer, and the map's foreground layer is where both the Foreground and Bonus tiles go. If these two tilesets behave differently then it probably makes sense to somehow show them differently to make it clearer.
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

About the tile sets. It really is no problem that the bonus and foreground tiles show in the same window since the bonus tiles come before the foreground tiles in the window. The bonus tile sets always end with the blinking skull so it's really easy to tell the sets apart.

I have now made another completely new level replacing level 3. For this level I wanted to combine graphics and themes from different levels. I made three new graphic sets in photoshop by combining tiles from different other graphic sets. Some features were not supported in level 3 or did not work correctly but I avoided this causing any problems. The hanged skeleton, a feature from level 2, did not work flawlessly, the skeleton became invisible (this also happened if I tried to edit level 2), I used them but had to deactivate them in my new level 3, they just hang there. The skeleton enemy itself can not be put in any new/edited level without the game crashing. I will do some more testing and upload NewBash1 v3.0 (with my latest level included) during the weekend.
Malvineous
8-bit mega nerd
Posts: 292
Joined: March 17th, 2007, 6:40 pm
Location: Brisbane, Australia
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Malvineous »

Enemies becoming invisible can be due to missing entries in the sprite list. The game engine requires each level to have a list of all sprites used in the level, and if any entries are needed but missing, they will be blank or could possibly cause a crash. I wonder whether some entries are missing for these skeletons?

Did you only have hanging skeletons in the level? If so, have you tried placing a live skeleton in the level as well? This will add the necessary sprites to the level's sprite list. If that works, then the list on the wiki (and internally in Camoto) will need to be updated so the hanging skeleton sprites include the entries for the walking skeletons too.

Although you said adding live skeletons crashes the game, which seems a bit odd. I thought I had tested them in the first level? Since you can add that unused enemy in episode 1 to any level, adding skeletons should be possible too, I don't think they are level-specific. Maybe there are more missing entries in the sprite list?

If you can use the Camoto command line tools and a hex editor, you can try extracting the sprite file (*.sgl) from the main .dat file and editing it with a hex editor. If the skeletons work in level 2, then maybe you can look at the game's original .sgl file for level 2, and see if there are entries in that you have to add to your custom level to get the skeletons to work.
Poet
4-bit nibble
Posts: 20
Joined: January 9th, 2019, 1:33 pm

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by Poet »

I have uploaded the latest version, v3.0, of NewBash1 which includes my new level 3.
See the included txt file for special notes.

http://www.poetsoftware.no/mods/monster_bash/index.html

I tried to put a living skeleton in level 3 but I'm afraid the game crashed when it tried to load the level.
The same happened when I put one in level 1.
I also had to remove the existing skeletons from my edited version of level 7.

So there seem to be a problem with that particular enemy/sprite. When I open an original level with skeletons (e.g. level 4) in Camoto the skeletons show in the level window, but when I save the level back to the dat file (even without making any changes) the game will crash when trying to load the level. But they still show in the level window when I reopen the level in Camoto.
If I avoid saving an unedited level (by not having an unedited level opened in Camoto when clicking save project) the skeletons work perfectly in the level.

Otherwise it seems that all the enemy sprites I find in the sprite window can be used in any level.
(Only exception is the orange demon which in episode 1 is only used in the end sequence.)
So you are right about the sprites/enemies not being level specific.

It took me some time to realize that when you put enemies into levels they must always face left or else they won't be there when you play the levels. The only exception is the rocking horse (which is only found facing right in the sprite window).
The above does not apply to a static enemy like the knife thrower.

What enemy are you referring to as an unused enemy in episode 1?

I'm afraid I have no experience with hex editing so I think it best not to attempt to do it. :-)
User avatar
K1n9_Duk3
4-bit nibble
Posts: 31
Joined: March 26th, 2013, 8:12 am
Contact:

Re: New levels for Monster Bash and Cosmo's Cosmic Adventure

Post by K1n9_Duk3 »

About those "unused enemies": I'm not sure how this is displayed in Camoto, but there are many levels in episode 1 that have unusable enemies placed inside them. For example, "lev4" has "gorgon_l", "witch_l" and "troll_l" placed in a black room with three skeletons and the exit in the top left corner of the level. The sprites for these enemies are missing in episode 1's DAT file (at least my own level viewer doesn't show me any sprites in that level), but the level can still be played without crashing the game.

Another thing to consider is that if adding an additional type of enemy causes the game to crash, that could also be caused by the game running out of memory while loading the sprites for that enemy. If you haven't already, you might want to create a version of the level that has no other objects except the player and the skeleton, just to make sure that the skeletons are in fact the main issue here.
Post Reply