JazzJackrabbit Community Forums  

Go Back   JazzJackrabbit Community Forums > Jazz Jackrabbit Forums > Future Jazz Jackrabbit games

Reply
 
Thread Tools
Old June 30th, 2010, 11:10 AM   #1
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
OpenJazz vs. OpenJazz2

There have been many mentions of an OpenJazz2 over the years, but they never seem to have resulted in anything actually being released. Given Neobeo's documentation of the JJ2 file formats, this is a little tragic.

So, anyway. I was toying around with having JJ2 tilesets and layer 4 tiles substituted into JJ1 levels in OpenJazz. Of course, unlike JJ1 levels, not all JJ2 levels are 256 by 64. I decided it would be easier to separate the code out and load JJ2 levels in their own right. The separation was actually quite straightforward to do, following the refactoring I'd already done to support bonus levels.

If you get the latest OpenJazz source from SVN (https://openjazz.svn.sourceforge.net/svnroot/openjazz), you'll find you can load up JJ2 (inc. TSF) levels and have a bit of a run around. There aren't any events, which rather limits what you can do, but it's better than the very first OpenJazz release was for JJ1 levels.

So, what do people think? Instead of trying to recode JJ2 from scratch, how about using the existing OpenJazz infrastructure to fully support JJ2 levels?
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old June 30th, 2010, 11:24 AM   #2
minmay
JCF Member
What?
 
Join Date: Aug 2002
Location: Idaho
Reputation: minmay is immeasurably awesomeminmay is immeasurably awesomeminmay is immeasurably awesomeminmay is immeasurably awesomeminmay is immeasurably awesome
Sound good, except that loading levels is hardly the most difficult part of replacing JJ2's engine.
minmay is offline   Reply With Quote
Old June 30th, 2010, 01:51 PM   #3
Sonyk
JCF Member
SACRED FIRE
 
 
Join Date: Feb 2005
Location: Tin Tower
Reputation: Sonyk is doing well so far
I wouldn't be against the idea. Especially if it eventually culminated in using JJ2's JCS to create playable JJ1 levels.

...eventually.
Sonyk is offline   Reply With Quote
Old July 1st, 2010, 02:30 AM   #4
EvilMike
Moderator
Formerly The SlaYeR
 
 
Join Date: Jun 2001
Location: The Netherlands
Reputation: EvilMike is OFF DA CHARTEvilMike is OFF DA CHARTEvilMike is OFF DA CHART
Send a message via MSN to EvilMike
Quote:
Originally Posted by Alister View Post
So, what do people think? Instead of trying to recode JJ2 from scratch, how about using the existing OpenJazz infrastructure to fully support JJ2 levels?
It's a very interesing idea, but I think if you want to *fully* support JJ2 levels, you'll need to support a lot of other JJ2 features as well. The two games have extremely different styles of movement, and JJ2 levels are often designed around special moves (which the jj1 sprites won't allow for) or general quirks in the game. Basically, some (maybe even most) levels will probably work fine if converted to JJ1, but there will be a number of cases where they are incompatible.

Still, what you have going right now is really good, and a lot easier than recoding JJ2 would be. Plus, it can work as a good starting point for adding more and more compatibility with JJ2 levels, perhaps to the point where there'd be no need for anything like an "OpenJazz2".
EvilMike is offline   Reply With Quote
Old July 1st, 2010, 08:39 AM   #5
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
I've just uploaded a build. Note that if you already have a version of OpenJazz, you'll also need a copy of zlib.dll.

Quote:
Originally Posted by minmay View Post
Sound good, except that loading levels is hardly the most difficult part of replacing JJ2's engine.
That's why I'm asking if people are interested in taking it further.

Quote:
Originally Posted by Sonyk View Post
I wouldn't be against the idea. Especially if it eventually culminated in using JJ2's JCS to create playable JJ1 levels.
If all you want to do is create a JJ1 level using layer 4's tiles, that's actually quite straightforward (but beyond the scope of OpenJazz). JCS won't be able to handle JJ1 events, though. They work in a completely different way.

Quote:
Originally Posted by EvilMike View Post
It's a very interesing idea, but I think if you want to *fully* support JJ2 levels, you'll need to support a lot of other JJ2 features as well. The two games have extremely different styles of movement, and JJ2 levels are often designed around special moves (which the jj1 sprites won't allow for) or general quirks in the game. Basically, some (maybe even most) levels will probably work fine if converted to JJ1, but there will be a number of cases where they are incompatible.
Player movement and animations will eventually be different. OpenJazz currently uses separate code for player movement/appearance for JJ1 and JJ2 levels. Admittedly, the code for JJ2 is just copied and pasted from the code for JJ1, but I will be modifying it.
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old July 3rd, 2010, 01:10 AM   #6
Violet CLM
JCF Éminence Grise
JCF Member
 
 
Join Date: Mar 2001
Location: The Intergalactic Repneck Bar
Send a message via MSN to Violet CLM
Making good progress on Sonyk's wish, which helpfully I was already working on:
__________________
Violet CLM is offline   Reply With Quote
Old July 3rd, 2010, 05:53 AM   #7
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
Awesome! I'm guessing you're taking event settings, animations etc. from the existing level? How are you dealing with the start position?
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old July 3rd, 2010, 10:07 AM   #8
Violet CLM
JCF Éminence Grise
JCF Member
 
 
Join Date: Mar 2001
Location: The Intergalactic Repneck Bar
Send a message via MSN to Violet CLM
Worries about animations and start positions are for a later project. I do want to make another program that'll get you playable JJ2 levels with only a little input (mostly along the lines of confirming its guesses about which events you want to use), but I don't know any GUI code yet, so that's going to be a bit later down the line. This is just for people who would rather edit level layouts (but not events, animations, background effects, etc.) in JCS than J1E, so all I have to be able to port back and forth is layout, tileset, mask, and event names.

ETA: Transparency and layers 5 and 8 are good to go. So is masking but you can't see that here.

I'll stop posting screenshots and let discussion of the actual topic resume now.
__________________

Last edited by Violet CLM; July 3rd, 2010 at 02:14 PM..
Violet CLM is offline   Reply With Quote
Old July 4th, 2010, 05:15 AM   #9
[GpW]Urbs
JCF Member
 
 
Join Date: May 2001
Location: Slovenia
Reputation: [GpW]Urbs is an asset to this forum
Send a message via ICQ to [GpW]Urbs Send a message via AIM to [GpW]Urbs Send a message via MSN to [GpW]Urbs
I'm just amazed at how inventive some people in this community are. That doesn't get said often enough.
I mean, OpenJazz, then there's that whole JJ2plus thing going on and not to mention all the wicked levels and tilesets (although to be fair, with all that you guys are working on things like levels and tilesets have become so unkewl). And I believe there was even some JJ3 thing going on where the jj3 demo was playable online?
I mean... insane. And it's not just that you guys are inventive, all of this takes time!

*bows down and salutes*
__________________
U.R.B.S.
Unit Responsible for Battle and Sabotage

Gamer Pryde Worldwide

[GpW]Urbs is offline   Reply With Quote
Old July 4th, 2010, 10:37 AM   #10
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
*salutes while bowing down, and accidentally topples over*

There's a new version. It no longer messes up flipped tiles, or layers with widths not divisible by 4 (oops). There are also a few events.
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old July 9th, 2010, 11:17 AM   #11
plunK
JCF Member
Banana Realm (c)
 
 
Join Date: Apr 2008
Location: Canada (Igloo)
Reputation: plunK is an asset to this forum
Wow... this is really impressive. Id really love to get onboard the openjazz team, but i have basically no coding knowledge so there aint alot i can do
plunK is offline   Reply With Quote
Old August 1st, 2010, 02:01 PM   #12
Violet CLM
JCF Éminence Grise
JCF Member
 
 
Join Date: Mar 2001
Location: The Intergalactic Repneck Bar
Send a message via MSN to Violet CLM
I did my thing
__________________
Violet CLM is offline   Reply With Quote
Old August 7th, 2010, 07:33 PM   #13
plunK
JCF Member
Banana Realm (c)
 
 
Join Date: Apr 2008
Location: Canada (Igloo)
Reputation: plunK is an asset to this forum
Quote:
Originally Posted by Unknown Rabbit View Post
....And it looks like I need to start trying to make levels.

Excellent job, this is much needed and much easier imo.

Jealous of coding skills...... XD
plunK is offline   Reply With Quote
Old August 14th, 2010, 05:33 AM   #14
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
Awesome!

Unfortunately, now I have to panic about the bugs in Sonic With a Gun.
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old August 14th, 2010, 10:37 AM   #15
Violet CLM
JCF Éminence Grise
JCF Member
 
 
Join Date: Mar 2001
Location: The Intergalactic Repneck Bar
Send a message via MSN to Violet CLM
I have no idea why so many sprites disappear, but it looks like most of the other problems stem from inaccurate calculation of speeds and distances. There's also some inaccurate checking of collision masks, in that the green shooty guys can only fire in OJ when they're on unmasked tiles and the spring plants rarely work (the same problem occurs in the original Jungrock). Looking ahead, the code for the thirty-eighth and thirty-ninth behaviors doesn't allow for reversing the y-axis (to create a downward sucker tube-like event), and the code for fourth behavior doesn't detect pits (it's supposed to be confined to a single platform, as in the third behavior) and doesn't stop just before reaching you.
__________________

Last edited by Violet CLM; August 19th, 2010 at 06:51 PM..
Violet CLM is offline   Reply With Quote
Old September 26th, 2010, 12:04 PM   #16
Alister
JCF Member
Purveyor of pickles
 
 
Join Date: Mar 2001
Location: Edinburgh, Scotchland
Reputation: Alister is doing well so far
Formerly: Toxic Bunny
Send a message via Yahoo to Alister
Sorry it's taken so long to respond. I moved the day after posting that, and I've only had an internet connection since Friday.

The sprite problem has now been fixed - it was caused by conflicting sprites in mainchar.000 and sprites.000. I don't know how JJ1 handles this, but this should probabaly be avoided - it could be causing a memory leak. Still, I'd assume DOSBox cleans up after itself. Either way, OpenJazz now handles this correctly.

Yes, the speeds are inaccurate. I spent ages trying to perfect them back when I first started OpenJazz, but a lot has changed since then. I've been reluctant to spend so long perfecting them again, in case things change radically again. Still, at least the levels are playable now.

Starting positions for bullets have proven difficult to get right. Perhaps I could get them to ignore the mask on their first tile, or the first sequence of mask they encounter when they are generated on a mask.

Would it be possible to get an example of a downward sucker tube?

It sounds like the fourth behaviour should be easy enough to fix.
__________________
<table><tr><td>OpenJazz</td><td><a href="http://alister.eu/jazz/oj/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=14235">Talk</a></td></tr><tr><td>Palette Suite</td><td><a href="http://alister.eu/palsuite/">Site</a> - <a href="http://www.jazz2online.com/jcf/showthread.php?t=17871">Talk</a></td></tr><tr><td>Yours truly</td><td><a href="http://alister.eu/">Site</a></td></tr></table>
Alister is offline   Reply With Quote
Old October 15th, 2010, 06:45 PM   #17
Violet CLM
JCF Éminence Grise
JCF Member
 
 
Join Date: Mar 2001
Location: The Intergalactic Repneck Bar
Send a message via MSN to Violet CLM
Quote:
Originally Posted by Alister View Post
The sprite problem has now been fixed - it was caused by conflicting sprites in mainchar.000 and sprites.000. I don't know how JJ1 handles this, but this should probabaly be avoided - it could be causing a memory leak. Still, I'd assume DOSBox cleans up after itself. Either way, OpenJazz now handles this correctly.
JJ1 handles this by using the sprite from the planet-specific sprite file, rather than the general sprite file, whenever there's a conflict.
Quote:
Would it be possible to get an example of a downward sucker tube?
Behavior: Repel Jazz foreground
Modifier: Pull Jazz
Variable #1: 60
Variable #2: -1
It shoots Jazz up instead of down.
__________________
Violet CLM is offline   Reply With Quote
Old May 22nd, 2016, 10:52 AM
lukaszdamianpiotrrygal
This message has been deleted by Stijn. Reason: unwarranted thread revival
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -8. The time now is 02:40 PM.


Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
JCF © 2001-Infinity Jazz2Online