LavaLit

Mugen => Discussions => Topic started by: erifpiR on March 28, 2012, 06:31:24 pm

Title: OpenBOR + Mugen = The Dolmexica Engine
Post by: erifpiR on March 28, 2012, 06:31:24 pm
Captain Dreamcast:

"Today is the day I present to you my newest pet project, the Dolmexica engine (http://dolmexicaengine.sourceforge.net/). As I may have leaked on multiple occasions, it is a moddable game engine, similar in style to Senile Team's Beats of Rage, allowing people without any programming experience to create their own game. Since I am a huge fan of 2D fighters like Street Fighter III, it was clear from the very beginning that it was going to be a moddable fighter engine, probably best compared to Elecbyte's M.U.G.E.N. Of course this genre definition is the only similarity shared by these engines, as the Dolmexica engine has been written from scratch (using KallistiOS) by Josh Tari (that would be me) and I can safely say that neither Mugen nor BoR were much of an influence for me.

Now you must be puzzled:
Why announce the engine at this point in time? Some of you might remember the über-troll Maid Fight pulled off on the Dreamcast scene and doubt the engine's existence.
As a matter of fact, this project was supposed to be unveiled after its completion, but now that the the engine's basic functions are working, yet are also still in a state where they can be altered with relative ease, I've come to the conclusion that it is the best time to share how the engine works and hopefully get some constructive feedback.

Without further ado, here is how creating a new character works:

Okay, so you've gone through the process of ripping/drawing the sprites.
The Dolmexica Engine uses two semi-independent files for new characters: One .CHR file, which stores all the media related to the characters and one .MVT, which is best compared to a manual which tells the game what the character is supposed to do, more on that later.

First you have to create a .CHR file. Since the engine is optimized for use with the Sega Dreamcast, the individual frames are stored in the RGBA 4444 KMG format, compressed with the QuickLZ compression archive, resulting in a file format called .PKG (Portable KallistiOS Graphic). Currently I employ 128x128 PNG textures (which are then converted and compressed before using them with the game). You might wonder why someone would want a texture with a width of 128 pixels, the thought behind that one is that the all close combat moves take place in this box, so even long-range attacks like Dhalsim's stretching attacks fit in there. Just in case you wonder, those 128 pixels may look a bit small at first, but it's enough to contain even the detailed Street Fighter III: 3rd Strike characters. Also keep in mind that they are stretched to 256x256 pixels on the screen, which is a lot comparing it to the overall screen size of 640x480. One thing that I am still unsure about is wether the engine should use RGBA4444, RGBA5551 or both, with RGBA4444 being my current favorite.

After you have successfully converted your PNGs to PKG, it is time to work on the hit detection. The Dolmexica Engine uses a fifth image layer for that one, colloquially dubbed the Crash Layer and is stored in a .CRA file, which is nothing more than a 128x128 array of ones, zeros and other funky numbers, afterwards compressed with QuickLZ. Since writing 16384 numbers is nothing but a pain, I have also written a tool which converts a normal (24bpp) .BMP image to the .CRA format. White (0) is nothing, Black (1) is vulnerable, Red (3) is the area which HURTS, Blue (2) is blocking. In case you haven't noticed, this hit detection is pixel perfect.

Regarding Sound effects and other small sounds, I am currently evaluating the possibility of using some ADPCM format. Or just the normal .WAV one, the most important thing aspect is that the sound effects will be streamed.

Those three filetypes will be merged into the aforementioned .CHR archive. It probably sounds very confusing right now, but believe me, thanks to the automatic tools I have written, a new attack or animation can be added in less than five minutes.

The .MVT file is a tad more complex. As mentioned before, it serves as a manual to the game, which tells the game which moves are available. First we have to differ between two different types of manuals: The one used by the CPU and the one used when the character is controlled by a human player.
Should the character be controlled by the evil CPU, the .MVT is ordered by the type of Attack, whereas the Humanoid .MVT is ordered by the input buttons which trigger the animation.
Both types are being "compiled" from a readable .TXT file. For normal attacks, values which have to be declared are the overall amount of frames, the speed of the animation, the strength (attacks only), the Enemy Acceleration, how much the enemy gets knocked back (attacks only), sound effects and the AnimationType (attack, throw, blocking...).
Then there are also special attacks like throws, combos and so on, which have values declared for each individual frame, including some new variables: How much the Enemy's or the own Char's Position change, how much damage each individiual frame does and others. This is the stuff I'm working on right now, so expect a lot to change in the special moves department, but this is how I am expecting things to work.

Naturally you can also fiddle with things like the character's jumping height and speed. The physics are something I really put a lot of emphasis on and a lot of work into. My primary goal is to make it feel like Street Fighter III, which in my opinion is the very best 2D fighter on the DC.

Anyway, when you are done with creating the .TXT and converting it to .MVT, you have everything you need to have a new working character. My two testing characters right now are Sagat (Street Fighter II ver.) and Johnny Cage (Mortal Kombat ver.), replacing my previous test char, Stickler (The Best Game Ever).

Since releasing the engine just by itself would be pretty uninteresting, I am currently thinking about using it to create a Street Fighter vs. Mortal Kombat game, because it is the only Street Fighter crossover that has yet to happen and the Dolmexica engine is probably able to fix some of Mortal Kombat's grave gameplay issues (such as the hit detection). In addition to this all-star cast, it will also feature two original characters from The Rad Adventures of Captain DC, a full-fledged 2D fighter which will utilize a modified version of the Dolmexica engine. Don't hold too much of your breath for TRAOCDC though, unlike the Dolmexica engine it might go the Maid Fight way and never become a reality.

Of course modifying the source code will be possible too, since the Dolmexica engine will be released under the GPL. As a matter of fact, I have to release it under the GPL, since that is a requirement for using QuickLZ for free. Fair trade if you ask me.

During the next few weeks I will put up a site and a forum dedicated to modding for and improving the engine (not for DC things in general; DC-Talk is way better for that!), until that one is finished, feel free to ask any question in this thread. Like I mentioned before, I also appreciate feedback and constructive criticism! Oh, and thanks for reading this wall of text!"


Source: Dreamcast Talk (http://dreamcast-talk.com/forum/viewtopic.php?f=5&t=3320&sid=7c2f97b8eabeb4bba9cdf5dc521eb3d6)
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: Vibrant on March 29, 2012, 09:07:19 am
Better than Mugen?  I'd have to see it to believe it.
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: BurnKing on March 29, 2012, 11:02:43 am
i was gonna say, the openbor engine is much more advanced than most people beleive it to be. what does this engine do that openbor doesnt already do?
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: BeasTie on March 29, 2012, 08:59:16 pm
I've read about this project before over at senile team forums, I believe it's designed with Dreamcast in mind.
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: NickyP on March 29, 2012, 09:36:06 pm
Everything I've seen for it was a 1v1 fighting game... are you sure it can make BOR style games?

I admire the ambition and effort, but I have to be honest: for Dolmexica to really shine, it'd have to offer at least the same features+useability as OpenBOR and Mugen. I only say this because OpenBOR and Mugen are established engines with PLENTY of content to explore and enjoy. As a seasoned BOR modder myself, I'd take a good look at Dolmexica and ask; "Why should I learn a new beat em up engine, when BOR does everything I need? What will Dolmexica offer me in return for all that trouble?"

Not trying to dissuade the Dolmexica devs. I'm just putting it out there that they'll have to bring a little more meat to the table than "it's BOR+Mugen, guys!"
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: Bloodbane on March 29, 2012, 11:36:41 pm
 IMO the title is very premature, sorry erifpiR, but please show us some proofs before posting something like this.
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: NickyP on March 29, 2012, 11:53:40 pm
IMO the title is very premature, sorry erifpiR, but please show us some proofs before posting something like this.

http://www.youtube.com/watch?v=UfHXQ2aYGTc

That video is obviously a little old, but I'm going to presume that it's a good enough example of the engine at work. And so far, it doesn't look too special. I hope I'm wrong, of course. It's great to see a new engine that works on consoles like the Dreamcast.
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: Crimefighters2 on March 30, 2012, 06:46:10 am
If this thing is limited to the capabilities of the Dreamcast how is it going to be able to run(or compete) with OBOR intensive games like mixmasters and Rocket Viper 2 Final etc?
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: Roel on March 30, 2012, 11:00:50 am
If this thing is limited to the capabilities of the Dreamcast how is it going to be able to run(or compete) with OBOR intensive games like mixmasters and Rocket Viper 2 Final etc?

It's not meant to. It's a 1 vs 1 fighting engine.

I don't believe erifpiR meant to say that Dolmexica does everything Mugen does plus everything OpenBOR does. The way I interpret this thread's title, is that Dolmexica is like (Open)BOR in some ways; specifically, it's open source, modifiable and available for Dreamcast.

Perhaps some of you are a little too defensive?
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: BeasTie on March 30, 2012, 07:45:51 pm
@Roel - Captain Dreamcast is hard to follow at the best of times, this has been posted here with no background information, very random.  I don't think anyone is getting defensive, rather getting confused.

@Crimefighters2 - Really un-constructive post dude, no ones competing with anyone.



Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: erifpiR on May 01, 2012, 08:31:30 pm
Dolmexica Engine v1.0.0 Progress:

New Videos for Mortal Vs. Fighter (http://www.youtube.com/watch?v=B-_xutulSvM) / Street Vs. Kombat (http://www.youtube.com/watch?feature=player_embedded&v=1xC38SV5g0M)

 :wow!:
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: pong_666 on May 01, 2012, 10:04:58 pm
After watching the videos I mean no offense in any shaper format but.......it seems kind of lame really doesn't seem to have what you call....charm or appeal can't really describe the what I'm getting best way I can put it is that openbor and mugen have a special appeal and charm that keeps me entertained and always wanting more this doesn't again I'm sorry if this comes off offensive
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: erifpiR on May 02, 2012, 12:28:19 am
After watching the videos I mean no offense in any shaper format but.......it seems kind of lame really doesn't seem to have what you call....charm or appeal can't really describe the what I'm getting best way I can put it is that openbor and mugen have a special appeal and charm that keeps me entertained and always wanting more this doesn't again I'm sorry if this comes off offensive

Source: HERE (http://dreamcast-talk.com/forum/viewtopic.php?f=5&t=3320&sid=43a357c666c714a8f1c48f4ef70162a8&start=100)
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: kungpow12345 on May 02, 2012, 04:00:10 am
I am extremely impressed by what I've seen so far. People might think that the engine itself isn't all that impressive but come on, this is for the Dreamcast! Of course, it's going to be hard to bring it off the ground to get it up to the likes of Mugen, but I can definitely see the appeal of the engine for sure.

Keep up the great work!
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: pong_666 on May 05, 2012, 02:42:23 am
Different strokes for different folks
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: vision on August 23, 2012, 06:18:47 pm
the Bor engine was pretty simple when it started but interesting.  the imagination and determination of Senile team made the simple yet very impressive and promising B.O.R. The fans took that and built it onto what it is now.

What im trying to say is, this may become very very good as time goes on, and more people take notice.

But with MUGEN and BOR as great as it is, do we need another clone mod-able game engine that does the same thing. remember that other fight game engine kof91  :bored:
Title: Re: OpenBOR + Mugen = The Dolmexica Engine
Post by: Die_In_Fire on August 23, 2012, 09:47:35 pm
But with MUGEN and BOR as great as it is, do we need another clone mod-able game engine that does the same thing. remember that other fight game engine kof91  :bored:

MUGEN doesn't allow to make mods for Dreamcast. Dolmexica does.
SimplePortal 2.3.3 © 2008-2010, SimplePortal