Sonic and Sega Retro Message Board: Questions about E02 and ProSonic - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Page 1 of 1
    Locked
    Locked Forum

Questions about E02 and ProSonic

#1 User is offline Conan Kudo 

Posted 01 March 2009 - 09:24 AM

  • 「真実はいつも一つ!」工藤新一
  • Posts: 477
  • Joined: 12-January 09
  • Gender:Male
  • Wiki edits:14
I have been reading about E02 and ProSonic and I'm not sure exactly what is going on here. So, I figure the best way to find out is to ask in the forums :colbert:

What is the difference between E02 and ProSonic? My understanding of the two engines is that they are basically rewrites of the Sonic engine for the PC, and that they both boast accuracy to the Sonic Genesis engine. But, the Sonic Genesis engine had three revisions I think, so which revision of the Sonic Genesis engine are these targeting?

I know I read somewhere that Stealth doesn't ever release sources of stuff, so I'm not going to ask that. However, do either of these engines have a fully functional and working Linux port? A Linux port doesn't necessarily mean that it has to be open source. I may be a proponent of (and prefer) FOSS, but I understand that not everything can be FOSS. Do either of these have functional Linux native game development tools in the works or included with the engine package?

Is it possible to port Sonic 1/2/3[&K] and/or Sonic CD to these engines with reasonable accuracy? I was thinking about doing something about the Sonic CD game because it is really annoying having to use those nasty patches to make it work on Windows XP, and on top of it, I don't even use Windows for gaming that much anymore. I prefer Linux native games, or at least Linux native emulators :argh:. I'm not much of a programmer, sadly, and I don't really have a lot of time for learning a function-based language, but I seem to grasp scripting rather well, so I thought about doing something like this using one of these two.

My final question is something that I thought about and I don't know if either engine may do this in the future, but would either engine support working with the compositing window manager, similar to Avant Window Navigator on Linux (Compiz, Kwin4 on Linux, DWM on WinNT6+)?

Two questions of curiosity, why does E02 have a DOS port? I know there are people that may prefer it, but I would honestly like to know why Stealth wrote a DOS version of his engine. And also, what are the types of buildsystems used to compile the two engines?
This post has been edited by King InuYasha: 01 March 2009 - 09:45 AM

#2 User is online jman2050 

Posted 01 March 2009 - 09:48 AM

  • Teh Sonik Haker
  • Posts: 615
  • Joined: 10-December 05
  • Wiki edits:4

View PostKing InuYasha, on Mar 1 2009, 09:24 AM, said:

I have been reading about E02 and ProSonic and I'm not sure exactly what is going on here. So, I figure the best way to find out is to ask in the forums :D

What is the difference between E02 and ProSonic? My understanding of the two engines is that they are basically rewrites of the Sonic engine for the PC, and that they both boast accuracy to the Sonic Genesis engine. But, the Sonic Genesis engine had three revisions I think, so which revision of the Sonic Genesis engine are these targeting?


E02 is sort of its own implementation of the Sonic engine. It's not so much "accurate" in that it uses all the algorithms and data conventions the Genesis games do, but Mettrix looks and plays very similarly to them. Keep in mind that Mettrix != E02. Mettrix is Stealth's Sonic game implementation using E02. E02 itself has morphed into a somewhat more general purpose design for 2D games. Stealth even made a demo of a Mega Man game for it.

ProSonic is still in its infancy, but from the information and demos released so far it seems to be meant to be a faithful facsimile of the Genesis Sonic engines to make it more familiar to the rom hacking audience. This means that, assuming it meets those goals, it would be easier to learn to those who already hack Sonic games, but it would also inherit some of the limitations and drawbacks that the Genesis Sonics had. As for which revision, I'm assuming it's a Sonic 2 facsimile, but I'm not the creator.

Quote

I know I read somewhere that Stealth doesn't ever release sources of stuff, so I'm not going to ask that. However, do either of these engines have a fully functional and working Linux port? A Linux port doesn't necessarily mean that it has to be open source. I may be a proponent of (and prefer) FOSS, but I understand that not everything can be FOSS.


Not sure about ProSonic, but that would be a no for E02. Not directed specifically to you, but it's typically a waste of time to directly request port or features for E02 since, if Stealth did for example port it to Linux, it wouldn't be because anyone asked him to.

Quote

Is it possible to port Sonic 1/2/3[&K] and/or Sonic CD to these engines with reasonable accuracy? I was thinking about doing something about the Sonic CD game because it is really annoying having to use those nasty patches to make it work on Windows XP, and on top of it, I don't even use Windows for gaming that much anymore. I prefer Linux native games, or at least Linux native emulators :colbert:. I'm not much of a programmer, sadly, and I don't really have a lot of time for learning a function-based language, but I seem to grasp scripting rather well, so I thought about doing something like this using one of these two.


It's certainly possible with E02 to remake the Sonic games, but it's not a simple matter. Even if you "grasp scripting", as you say, there's a somewhat steep learning curve for E02, and it's gonna be even steeper for someone who doesn't actually program. THe Mettrix scripts are provided as-is with E02, so you could attempt to build something off it to see hwo comfortable you are, but it definitely won't do the work for you.

I wish I could give a thorough assessment of ProSonic but, as I said, it's still very unfinished and most of its features are still theoretical at this point.

Quote

My final question is something that I thought about and I don't know if either engine may do this in the future, but would either engine support working with the compositing window manager, similar to Avant Window Navigator on Linux (Compiz, Kwin4 on Linux, DWM on WinNT6+)?


I'll let Stealth and/or Saxman handle that one.

Quote

Two questions of curiosity, why does E02 have a DOS port? I know there are people that may prefer it, but I would honestly like to know why Stealth wrote a DOS version of his engine. And also, what are the types of buildsystems used to compile the two engines?


DOS is efficient, what can I say? Not to mention that E02 was started YEARS ago when DOS was still somewhat viable as a platform.

#3 User is offline Techokami 

Posted 01 March 2009 - 10:13 AM

  • For use only on NTSC Genesis systems
  • Posts: 1101
  • Joined: 19-November 05
  • Gender:Male
  • Location:HoleNet!
  • Project:Sonic Edge
  • Wiki edits:63

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

However, do either of these engines have a fully functional and working Linux port?

ProSonic is going to have a Linux port.

#4 User is offline saxman 

Posted 01 March 2009 - 02:34 PM

  • Oldbie
  • Posts: 2625
  • Joined: 08-April 04
  • Gender:Male
  • Location:United States of America
  • Wiki edits:136
I can't answer for Stealth in regards to E02, but I can answer the ProSonic questions.

Quote

What is the difference between E02 and ProSonic? My understanding of the two engines is that they are basically rewrites of the Sonic engine for the PC, and that they both boast accuracy to the Sonic Genesis engine. But, the Sonic Genesis engine had three revisions I think, so which revision of the Sonic Genesis engine are these targeting?


My engine is based heavily on Sonic 2. Though I'd like to do some Sonic 3 stuff, it's not really on my agenda at this point in time. The physics are very close in ProSonic. I use a C port of the Sonic code from the Sonic 2 disassembly, and it's near perfect. If has a couple bugs I've been tracking down one by one. You can see a physics comparison in this video. The video is several months old, and I've fixed a few bugs since then -- it would not get out of sync like that now.

Bug that's the idea, is to be an accurate representation of the Sonic engine with the ability to use it to create games with.

Quote

I know I read somewhere that Stealth doesn't ever release sources of stuff, so I'm not going to ask that. However, do either of these engines have a fully functional and working Linux port? A Linux port doesn't necessarily mean that it has to be open source. I may be a proponent of (and prefer) FOSS, but I understand that not everything can be FOSS. Do either of these have functional Linux native game development tools in the works or included with the engine package?


ProSonic doesn't have a current Linux port, but Techokami has said he would port it to Linux for me. I don't actually know what FOSS is, so I can't answer that part of your question. The game tools are all included with the engine. Some are external tools (because they work best that way), while some (mainly the level editing tools) are built into the engine as seen in this video.

Quote

Is it possible to port Sonic 1/2/3[&K] and/or Sonic CD to these engines with reasonable accuracy? I was thinking about doing something about the Sonic CD game because it is really annoying having to use those nasty patches to make it work on Windows XP, and on top of it, I don't even use Windows for gaming that much anymore. I prefer Linux native games, or at least Linux native emulators . I'm not much of a programmer, sadly, and I don't really have a lot of time for learning a function-based language, but I seem to grasp scripting rather well, so I thought about doing something like this using one of these two.


It should be possible to the extent that it can be given what my engine does so far. I have ported several Sonic 2 levels using one of the tools packaged with the engine. The issue is objects -- those are not easily ported without some on-hands work. My engine runs external object code using a partial implementation of 68000 emulation, but it has no true scripting support yet. That's one of the goals I want to accomplish in the months ahead -- a ClickTeam-like method of scripting objects, involving perhaps some point-and-click. But I haven't even started on that yet, so it's just in the planning stages right now.

Quote

My final question is something that I thought about and I don't know if either engine may do this in the future, but would either engine support working with the compositing window manager, similar to Avant Window Navigator on Linux (Compiz, Kwin4 on Linux, DWM on WinNT6+)?


You lost me on this one. I don't know what any of that is to be honest.

Quote

Two questions of curiosity, why does E02 have a DOS port? I know there are people that may prefer it, but I would honestly like to know why Stealth wrote a DOS version of his engine. And also, what are the types of buildsystems used to compile the two engines?


Although this is about E02, I just want to say that DOS is actually a really good platform to program for. A lot of people don't understand that, but Windows tends to stick it's foot in a bit more in the application running process. DOS allows basically full control of your computer, and you can do anything without getting those slow-downs and limited-precision counters that you have to deal with under the Windows platform. I can almost guarentee that running a program in DOS is probably going to run faster and smoother than in Windows. It's the nature of DOS, being very simple and less-intrusive that allows this. So I think it's awesome that Stealth has a DOS port, even if very few (if any) people will use it.

#5 User is offline nineko 

Posted 01 March 2009 - 02:38 PM

  • I am the Holy Cat
  • Posts: 5341
  • Joined: 17-August 06
  • Gender:Male
  • Location:italy
  • Project:I... don't even know anymore :U
  • Wiki edits:5,251

View Postsaxman, on Mar 1 2009, 08:34 PM, said:

I don't actually know what FOSS is, so I can't answer that part of your question.
Free and Open Source Software.

Also yes, DOS is awesome.

#6 User is offline saxman 

Posted 01 March 2009 - 02:57 PM

  • Oldbie
  • Posts: 2625
  • Joined: 08-April 04
  • Gender:Male
  • Location:United States of America
  • Wiki edits:136

View Postnineko, on Mar 1 2009, 02:38 PM, said:

View Postsaxman, on Mar 1 2009, 08:34 PM, said:

I don't actually know what FOSS is, so I can't answer that part of your question.
Free and Open Source Software.

Also yes, DOS is awesome.

Oh, well then yes, ProSonic will be open source, at least once it is closer to what can be considered complete.

#7 User is offline Conan Kudo 

Posted 02 March 2009 - 09:26 PM

  • 「真実はいつも一つ!」工藤新一
  • Posts: 477
  • Joined: 12-January 09
  • Gender:Male
  • Wiki edits:14

View Postsaxman, on Mar 1 2009, 01:34 PM, said:

I can't answer for Stealth in regards to E02, but I can answer the ProSonic questions.

Quote

My final question is something that I thought about and I don't know if either engine may do this in the future, but would either engine support working with the compositing window manager, similar to Avant Window Navigator on Linux (Compiz, Kwin4 on Linux, DWM on WinNT6+)?


You lost me on this one. I don't know what any of that is to be honest.

Quote

Two questions of curiosity, why does E02 have a DOS port? I know there are people that may prefer it, but I would honestly like to know why Stealth wrote a DOS version of his engine. And also, what are the types of buildsystems used to compile the two engines?


Although this is about E02, I just want to say that DOS is actually a really good platform to program for. A lot of people don't understand that, but Windows tends to stick it's foot in a bit more in the application running process. DOS allows basically full control of your computer, and you can do anything without getting those slow-downs and limited-precision counters that you have to deal with under the Windows platform. I can almost guarentee that running a program in DOS is probably going to run faster and smoother than in Windows. It's the nature of DOS, being very simple and less-intrusive that allows this. So I think it's awesome that Stealth has a DOS port, even if very few (if any) people will use it.


Compositing window manager

I have written a couple of apps for DOS, so I can definitely understand the simplicity of DOS. There is a VERY tiny resurgence in DOS use since FreeDOS was capable of running DPMI server/host for stuff like E02, but in the future, if they want to look towards a still supported DOS, FreeDOS is the answer to that. I believe it is used as a part of the DOSBox application to allow older DOS games to work on Linux and Windows NT as well.

View Postsaxman, on Mar 1 2009, 01:57 PM, said:

View Postnineko, on Mar 1 2009, 02:38 PM, said:

View Postsaxman, on Mar 1 2009, 08:34 PM, said:

I don't actually know what FOSS is, so I can't answer that part of your question.
Free and Open Source Software.

Also yes, DOS is awesome.

Oh, well then yes, ProSonic will be open source, at least once it is closer to what can be considered complete.


That is great! Looking forward to more updates on ProSonic then. Although, it would be nice to hear from Stealth on E02....

#8 User is offline Overlord 

Posted 03 March 2009 - 07:15 PM

  • Cat-herder
  • Posts: 14494
  • Joined: 12-January 03
  • Gender:Male
  • Location:Berkshire, England
  • Project:VGDB
  • Wiki edits:3,204
I can all but 100% guarantee that E02 will never be OSS simply from what Stealth has said in the past about his software.

#9 User is offline Conan Kudo 

Posted 04 March 2009 - 07:25 AM

  • 「真実はいつも一つ!」工藤新一
  • Posts: 477
  • Joined: 12-January 09
  • Gender:Male
  • Wiki edits:14

View PostOverlord, on Mar 3 2009, 06:15 PM, said:

I can all but 100% guarantee that E02 will never be OSS simply from what Stealth has said in the past about his software.


I kind of already knew that. I just want to know the more technical information on E02 like saxman provided for ProSonic.

#10 User is offline Stealth 

Posted 04 March 2009 - 10:15 AM

  • Posts: 546
  • Joined: 31-July 05
  • Gender:Male
  • Project:HCGE, Project HC, Sonic Megamix, SonED2, [...]
  • Wiki edits:19
Sorry I haven't been able to get to this sooner

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

What is the difference between E02 and ProSonic? My understanding of the two engines is that they are basically rewrites of the Sonic engine for the PC

That's the difference. As jman already mentioned, "Mettrix" is my Sonic implementation using E02, while E02 itself is a general system for managing I/O, player characters, objects, levels, etc and interpreting scripts that actually make the game what it is. My understanding is that ProSonic is also supposed to be expansible with external data and scripting, but it has more "Sonic" directly in the program

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

But, the Sonic Genesis engine had three revisions I think, so which revision of the Sonic Genesis engine are these targeting

You'd have to be more specific about that since I can't actually think of any significant differences between the Genesis Sonic games that would be relevant to this discussion at the moment, but I guess you would say that the current Mettrix scripts are based primarily on Sonic 3. Because there's nothing 100% uniquely "Sonic" in E02 itself, though, it doesn't matter a whole lot. Any little nit-picky detail can be changed by modifying the appropriate script (which, in this case, I'm assuming you'd be interested in the player scripts? - Mettrix\chars\ S3Sonic.def S3Tails.def S3Knux.def Common.def)

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

do either of these engines have a fully functional and working Linux port? [...] Do either of these have functional Linux native game development tools in the works or included with the engine package?

The only existing builds of E02 are for Windows and DOS. That's not really any more likely to change now than it's ever been

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

Is it possible to port Sonic 1/2/3[&K] and/or Sonic CD to these engines with reasonable accuracy?

Having a look at the current demo should answer that question sufficiently. I've made every effort to make the current scripts as accurate as possible, and if something is off, there's no reason it can't be corrected given the fact that all game-specific characteristics are script-driven. The Genesis itself has stricter limitations than E02, so there should be no worry there, either

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

I don't really have a lot of time for learning a function-based language, but I seem to grasp scripting rather well, so I thought about doing something like this using one of these two.

That's generalizing things a bit.. there are various brands of "script", and some are looking more and more like C/C++. I guess you may be talking about the level of involvement with the overall program, but, again, some "scripts" are getting more complicated than others. One could say E02 is "function-based" depending on how you look at it; you'd really have to have a look in the Docs folder to get a better idea of where it fits on your scale

Everything you have E02 do needs at least one script routine to do anything significant, and you can go so far as to give any one part of the game near-total control over another. When you already have something like "Mettrix engine" to work from, there's significantly less work to do overall, but you'll still have to get your hands pretty dirty to do anything particularly fancy

Some relevant things I have online right now:
Old functions doc, with old function format and a complete command index
Character def format, with example of new function format
Doc on using the player character management system
List and descriptions of player character control variables

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

My final question is something that I thought about and I don't know if either engine may do this in the future, but would either engine support working with the compositing window manager

That'd be a "no".. there really isn't any need to divert time and resources to do anything really elaborate like that. The built-in tools are pretty much how they're going to stay. They're very simple in design and use

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

Two questions of curiosity, why does E02 have a DOS port? I know there are people that may prefer it, but I would honestly like to know why Stealth wrote a DOS version of his engine.

This, for one. I started working with C/DOS around late 95, and never made a real move to Windows until years later, when Microsoft started having more success in burying DOS by pushing NT. I never wanted to dump the DOS version since it's generally better on a DOS/9X system, there are people still using versions of DOS, and the DOS version generally runs better on Linux under emulation

View PostKing InuYasha, on Mar 1 2009, 06:24 AM, said:

And also, what are the types of buildsystems used to compile the two engines?

I build for DOS with Watcom, and Windows with Borland. That's how I learned, and I've just been doing it forever because I don't see any problem with it. I use command-line compilers, and edit the sources with Crimson Editor. That's about the only way I know to answer that question

#11 User is offline Conan Kudo 

Posted 04 March 2009 - 05:04 PM

  • 「真実はいつも一つ!」工藤新一
  • Posts: 477
  • Joined: 12-January 09
  • Gender:Male
  • Wiki edits:14
Thanks Stealth! I suspected you did use Watcom for building the DOS version, but Borland for the Windows version is a bit of a surprise. Scripts are generally considered a "logic-based" or "conditional event-based" programming system FYI.

Page 1 of 1
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users