Jump'n'Bump WIP

Use this forum to share and discuss Uzebox games and demos.
Post Reply
User avatar
lunatic
Posts: 49
Joined: Sun Jul 28, 2013 12:29 am
Location: Horten, Norway
Contact:

Jump'n'Bump WIP

Post by lunatic »

Hi,

I love the UzeBox consept! I just found out about it a few days ago, so I still don't own a uzebox myself yet.
But I have been testing a lot of games and demos with the uzem emulator :D Loving it :)

I wanted to try to make a game with uzebox, so I found an "old" game (1998) that I wanted to port.

However, because of the memory limitations of the atmega644, I cannot port the whole game. So I'm unsure how this will be in regards of licenses, etc.
Brainchild design released the source code of the game at one point, and it has been ported to several systems, including linux and playstation 2.
But I did not find any good info about what kind of license the source code (and graphics) was released in. Would it mean it is free for all?

Anyways, I have started to create a lite version of jump'n'bump, which will need new levels, sliced in 8x8 tiles, instead of the pixel based levels in the original game.
And the music will have to be manually ported, (via midi or ftm?) as they are .mod's.
And of course, limited to two player.

So far, I have gotten some test graphics up. And two player controls working. And some test gameplay where you can kill each other.

I am having big problems with PCM audio though. I have tried to compare my code to the gorillaz game, and I se no difference. But I think there is some bug with the kernel.
I tried to compile gorillaz with the newest kernel, and it "reboots" the emulator when it tries to play PCM winning sound etc. So it's not just my game.
When I try to trigger my PCM, i get weird noise for a second. And the noise is the same even if I completely change the PCM patch. It doesn't seem to read the PCM patch at all. I have tried just about everything. But I think, since gorillaz does not work with the latest kernel, it must be a bug in it.

The map scrolling is stolen from Mario demo, and is un-touched. I will rewrite this soon to work with the resulting map coordinates.

So here is how far I am at, right now: (this is without the PCM samples)
http://dump.no/files/72fe422a3fa9/JumpNBump.uze
http://dump.no/files/72fe422a3fa9/JumpNBump.hex

I should probably try to contact the original authors to check if they are ok with me making this game.

But I have to say, except for the problems with the PCM audio, I am very very impressed with the uzebox system/kernel. I love it! All the hard work has already been done :)
And the sound engine is just awesome, I wish I was better at music though. So I could have used it for anything useful ;P
User avatar
uze6666
Site Admin
Posts: 4801
Joined: Tue Aug 12, 2008 9:13 pm
Location: Montreal, Canada
Contact:

Re: Jump'n'Bump WIP

Post by uze6666 »

Hi,

Welcome to the Uzebox and glad you like it! :P Your Jump'n'Bump sure looks promising. I would not worry too much about licences, its fan made stuff and not for money after all.

For the PCM part, I made a major update to the sound mixer a couple months ago so it's quite possible it's a bug. I'd need to see the sources to replicate the problem. If you can, send them to me by P, I'll have a look. In the meantime, are you using the -DSOUND_MIXER=1 switch in your make file? If so, the PCM channel works differently than for Gorillas. SOUND_MIXER=1 will use the "inline" mixer, which mixes 5 channels during hsync. PCM is channel 5 for the online mixer and channel 4 for the "old" vsync mixer.
User avatar
D3thAdd3r
Posts: 3222
Joined: Wed Apr 29, 2009 10:00 am
Location: Minneapolis, United States

Re: Jump'n'Bump WIP

Post by D3thAdd3r »

Hey don't worry about that, Jump n Bump has been ported all over the place and even some "premium" port using original graphics/data that cost money and the author was ok with it I remember.
So I finally decided to release the code. Do
whatever you like with it. I've gotten e-mails
saying things like "if I got the source, I could
add multiplayer support over the internet".
Yeah, right! Adding that would probably be
harder than to totally rewrite the game. The
code is poorly designed, making changes to is
hard, if not impossible. Be warned!
I did manage to get the original source code ported to Uzebox, but it is hard to make the graphics look good(like they arent tile based). I messed around with bots and different foreground effects, I can see what I have for source. For the music I spent some time trying to figure out how it could be done. I tried every mod2midi program I could find an none of them made a decent song to work off. If you listen to that music, it is so funky and mod-like I have no idea how to port it. I decided I would have to find another song that fits the game, but I never did find one I thought worked well. Anyways check it out, if nothing else just to see how not to port the graphics :lol: http://uzebox.org/forums/download/file.php?id=888 Are you planning on having scrolling? It seems like you are building the game from scratch instead of porting?
User avatar
lunatic
Posts: 49
Joined: Sun Jul 28, 2013 12:29 am
Location: Horten, Norway
Contact:

Re: Jump'n'Bump WIP

Post by lunatic »

D3thAdd3r wrote:Are you planning on having scrolling? It seems like you are building the game from scratch instead of porting?
Yes, I think I will do scrolling, but it might destroy the gameplay a bit, since you would need both players to "co-operate" to get the scrolling going, and you are in fact enemies. So I must admit that I have not thought it very much through.

I am impressed that you have gotten the code ported to uzebox, I just gave up before even trying, since the game is not based on tiles, as you said. And since the readme said the code was a trainwreck. So I took the authors word for it and gave up.

So I am basically making a "Jump'n'Bump Lite" version, that has tile-levels, and is written from scratch. So that it works as good as possible on the uzebox.
I also love the blood splatter in the game, so that is already in the game ;P I think I will try to just make a (or some) cool levels with tiles, and not care about the levels looking completely like the original. As you can see I have already taken a lot of freedom testing level design.

But scrolling is up for discussion if there is people wanting to discuss this. I think maybe it will be a bit too small resolution to _not_ have scrolling. Maybe do "wrap around edges" gameplay?

Might change the name to Jump'n'Bump Lite, or something. So are you working on your jump'n'bump version, or is that a old project you have abandoned?
User avatar
D3thAdd3r
Posts: 3222
Joined: Wed Apr 29, 2009 10:00 am
Location: Minneapolis, United States

Re: Jump'n'Bump WIP

Post by D3thAdd3r »

I haven't touched it in a long while, and I lost interest so I'm all about you making it happen :lol: And I'll help if I can. I ported the original level, but like you were saying the smaller resolution kind of hurts the gameplay. Maybe something from here would work a little better.

On the PCM problem, did you check out the PCM tutorial? I have a decent PCM version of the jump and spring sound that don't take up very much space.
User avatar
danboid
Posts: 1937
Joined: Sun Jun 14, 2020 12:14 am

Re: Jump'n'Bump WIP

Post by danboid »

How far along did this port get DA? Do you remember?

Has anyone got a .uze for it? I've not had any luck building it from source

https://github.com/haakonnessjoen/uzejumpnbump

Code: Select all

~/src/uzebox/demos/uzejumpnbump/default$ make
avr-gcc -I"../kernel"  -mmcu=atmega644 -mmcu=atmega644 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=28636360UL -Os -fsigned-char -ffunction-sections -fno-inline  -MD -MP -MT uzeboxVideoEngineCore.o -MF dep/uzeboxVideoEngineCore.o.d  -DVIDEO_MODE=3 -DINTRO_LOGO=1 -DSOUND_CHANNEL_4_ENABLE=1 -DSCROLLING=1 -DMAX_SPRITES=32 -DRAM_TILES_COUNT=30 -DSCREEN_TILES_V=27 -DFIRST_RENDER_LINE=24  -DOVERLAY_LINES=4 -DVRAM_TILES_V=24 -x assembler-with-cpp -Wa,-gdwarf2 -c  ../kernel/uzeboxVideoEngineCore.s
avr-gcc -I"../kernel"  -mmcu=atmega644 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=28636360UL -Os -fsigned-char -ffunction-sections -fno-inline  -MD -MP -MT uzeboxCore.o -MF dep/uzeboxCore.o.d  -DVIDEO_MODE=3 -DINTRO_LOGO=1 -DSOUND_CHANNEL_4_ENABLE=1 -DSCROLLING=1 -DMAX_SPRITES=32 -DRAM_TILES_COUNT=30 -DSCREEN_TILES_V=27 -DFIRST_RENDER_LINE=24  -DOVERLAY_LINES=4 -DVRAM_TILES_V=24 -c  ../kernel/uzeboxCore.c
../kernel/uzeboxCore.c:66:4: error: variable ‘eeprom_format_table’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
 u8 eeprom_format_table[] PROGMEM ={(u8)EEPROM_SIGNATURE,  //(u16)
    ^~~~~~~~~~~~~~~~~~~
make: *** [Makefile:70: uzeboxCore.o] Error 1
User avatar
D3thAdd3r
Posts: 3222
Joined: Wed Apr 29, 2009 10:00 am
Location: Minneapolis, United States

Re: Jump'n'Bump WIP

Post by D3thAdd3r »

I don't recall every playing a build of it, but looking at the source he definitely did end up rewriting from scratch(the best idea). Seems a bit light on code lines, so not sure how far that actually moves towards a game.

Sort of wish I had the code for the ported version I attempted, I guess it was even passable as a game really. At least now I don't lose code, and I really don't miss mechanical HDDs at all I will say.
User avatar
danboid
Posts: 1937
Joined: Sun Jun 14, 2020 12:14 am

Re: Jump'n'Bump WIP

Post by danboid »

D3thAdd3r wrote: Tue Feb 06, 2024 9:09 pm I don't recall every playing a build of it, but looking at the source he definitely did end up rewriting from scratch(the best idea). Seems a bit light on code lines, so not sure how far that actually moves towards a game.

Sort of wish I had the code for the ported version I attempted, I guess it was even passable as a game really. At least now I don't lose code, and I really don't miss mechanical HDDs at all I will say.
I should've guessed you'd tried porting this too.

Good to know you're more careful with your code these days. Speaking of which, its time that I mirrored all my github repos onto another code hosting site, preferably one not based in the US.
Post Reply