Basic tools/source code now available for Dune support
Moderator: ScummVM Team
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
Basic tools/source code now available for Dune support
Hi all,
Just to let you know that most of the basic toolbox required to add support for Cryo's Dune 1 is now available. We know how to extract and render graphics (including palettes), how to extract dialogs, and how to extract OPL music (can't remember how advanced we are about playing it, though).
More details and even a tiny tech demo here : http://forum.dune2k.com/index.php?app=c ... ach_id=652
HELP WANTED
If there's some bold guy around here that feels comfortable enough to convert our uber-simple code into something more "ScummVM-like" (e.g. a Visual Studio or Code::Blocks project), then please feel free to experiment and to contact me.
You don't need to do anything fancy. Just create an empty project that follows ScummVM projects' naming conventions and can be compiled within the ScummVM solution.
It's to give us a short-term goal
Just to let you know that most of the basic toolbox required to add support for Cryo's Dune 1 is now available. We know how to extract and render graphics (including palettes), how to extract dialogs, and how to extract OPL music (can't remember how advanced we are about playing it, though).
More details and even a tiny tech demo here : http://forum.dune2k.com/index.php?app=c ... ach_id=652
HELP WANTED
If there's some bold guy around here that feels comfortable enough to convert our uber-simple code into something more "ScummVM-like" (e.g. a Visual Studio or Code::Blocks project), then please feel free to experiment and to contact me.
You don't need to do anything fancy. Just create an empty project that follows ScummVM projects' naming conventions and can be compiled within the ScummVM solution.
It's to give us a short-term goal
Last edited by monsieurouxx on Tue Jan 04, 2011 12:15 pm, edited 1 time in total.
I am not completely sure what you are asking for, but if your goal is to develop an engine for ScummVM which allows playing a new game (Dune in your case), then I recommend taking a look at the Engines HOWTO in our Wiki; it describes all required steps. After one has done these, one can use the "create_project" tool to generate an update project file for Visual Studio.
However, I am not quite sure whether it is possible to build and run create_project using Visual Studio -- but it does seem to contain project files... The source code for this tool is bundled with the ScummVM sources, by the way. Look in the tools/ directory of the ScummVM sources (and *not* in the tools SVN module resp. the ScummVM tools package).
However, I am not quite sure whether it is possible to build and run create_project using Visual Studio -- but it does seem to contain project files... The source code for this tool is bundled with the ScummVM sources, by the way. Look in the tools/ directory of the ScummVM sources (and *not* in the tools SVN module resp. the ScummVM tools package).
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
That's a mistake. I forgot to delete them before zipping. I even provide instruction in the README explaining how to install them back...md5 wrote:Just to mention: the zip file with the source code etc contains the full version of the game in it.
That's just part of the primitive Voxel that's in the tech-demo. I didn't do it myself... I'm not even sure if they're used. That's not the point of this demo.md5 wrote: Why do you have huge bmp/png pictures of the earth in that archive?
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
That's what I did several years ago, and after unsuccessful attempts at starting something, someone told me on the ScummVM IRC channel that the tutorial was obsolete anyway... That kind of put me off.fingolfin wrote:I am not completely sure what you are asking for, but if your goal is to develop an engine for ScummVM which allows playing a new game (Dune in your case), then I recommend taking a look at the Engines HOWTO in our Wiki
So, what I'm asking here, is IF someone wants to volunteer to create an "empty project" to host our primitive Dune engine, then he'd be welcome,as some knowledge of ScummVM is needed for that, despite the Wiki.
He could simply have this project display a sprite from Dune, or even less, that would still be enough for us while we work on "our" Dune-related technologies at the same time.
That empty ScummVM project would be a basis for us to expand our project, instead of keeping our crappy and random tech-demos with no clean structure and no standard libraries.
If you are talking about that the game is linked/bundled with the source code you talk about, then this is a clear violation of forum rule #0monsieurouxx wrote:You should just read what has been said above.einar wrote: I see no place to get ahold of the game
[b]Forum Rules. READ BEFORE POST.[/b] wrote: 0) No Warez. No Abandonware discussions. Links to content of a questionable nature, asking for, offering, or asking for help/helping to process such content in any way or form is not tolerated. No, it's not okay to request parts of a game either, even if you already own another version of it, or to replace damaged media. Consider Copyright FAQ.
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
Warez is forbidden? No kidding? I know, I'm working on it. As I said it was a mistake. th elink above targets another honest forum like yours anyway, which doesn't host the bundle itself. It should be fixed in 5 minutes.LordHoto wrote:If you are talking about that the game is linked/bundled with the source code you talk about, then this is a clear violation of forum rule #0
EDIT: Done.
Here is a direct link to the tech-demo, that contains ONLY open-source material.
EDIT: see the first post of this thread for download links.
so, the offer is still standing: If someone wants to turn that into a ScummVM-like project, he'll be cool. If he doesn't want to, he'll still be cool The only non-cool one will be the one who'll post something offensive starting from... Now!
Last edited by monsieurouxx on Tue Jan 04, 2011 12:30 pm, edited 1 time in total.
I guess that'll be me.monsieurouxx wrote:The only non-cool one will be the one who'll post something offensive starting from... Now!
From readme included in your link above:
I'm afraid that's still violation of rule #0 (also this sentence contradicts itself - original files from Abandoware website is something like legal stolen car radio)Installation instructions
=========================
- Find the original Dune files (game by Cryo interactive) on any Abandonware website
Gee, now that puts *me* off... Look, the HOWTO is meant to be up-to-date. Of course we sometimes change things and forget to update the HOWTO, and then it need fixes. Bad!monsieurouxx wrote:That's what I did several years ago, and after unsuccessful attempts at starting something, someone told me on the ScummVM IRC channel that the tutorial was obsolete anyway... That kind of put me off.fingolfin wrote:I am not completely sure what you are asking for, but if your goal is to develop an engine for ScummVM which allows playing a new game (Dune in your case), then I recommend taking a look at the Engines HOWTO in our Wiki
But we are happy to fix it if we are told about it. In fact we rely on people telling us about it, as we are short on volunteers and can't always watch all these things.
You see, in general, the ScummVM community is very helpful -- but only if you show that you are willing to work, too. I.e. if you come in and say "I tried the HOWTO but got stuck at XYZ because error ABC showed up", we'll be happy to help you *and* fix the HOWTO at the same time.
But if you just appear and say "some guy told me the HOWTO is outdated, so I ignored it. Plz write my code for me so that I can do my l33t super cool engine", then that won't really motivate anybody to help you...
I have no idea who told you that the HOWTO was outdated, or when. But if somebody knows anything in it that is outdated, I would hope that they would *tell us* about it, so we can fix it. Instead of silently discarding it as "doesn't work". But if they do so, well, tough luck, we can't help you if you don't talk to us. :/
Sure, the HOWTO in the Wiki of course only provides the bare basics. But teaching somebody all this stuff also requires a lot of time. Maybe we could write a more full featured tutorial... but hearing that even the basic HOWTO is ignored doesn't really motivate anybody to work on more documentation, I'd say .monsieurouxx wrote:So, what I'm asking here, is IF someone wants to volunteer to create an "empty project" to host our primitive Dune engine, then he'd be welcome,as some knowledge of ScummVM is needed for that, despite the Wiki.
Anyway, good luck with finding volunteers .
What would that random mysterious volunteer gain from writing code that is meant to give you a kick start?monsieurouxx wrote: He could simply have this project display a sprite from Dune, or even less, that would still be enough for us while we work on "our" Dune-related technologies at the same time.
That empty ScummVM project would be a basis for us to expand our project, instead of keeping our crappy and random tech-demos with no clean structure and no standard libraries.
P.S.: I just went through the tutorial and had a "working" quux engine in about 15 minutes of work (including compiling). Granted, a newbie will take a bit longer, but I didn't spot anything that seemed to be outdated... So if it is, or if there is not information on something, then it would be helpful to let us know.
-
- Posts: 80
- Joined: Fri Oct 19, 2007 5:48 pm
Hey, you truncated the sentence! It was "from an Abandonware website OR from your original copy". However, I understand your intentions and the forum's rule. I'll change that. I thought Dune had fallen into "tolerated abandonware". No need to argue on that, I'll change it.Seldon wrote:I'm afraid that's still violation of rule #0monsieurouxx wrote: Installation instructions : Find the original Dune files (game by Cryo interactive) on any Abandonware website
=========================================================================
Alright, I'll give it a new try! No problem.fingolfin wrote:P.S.: I just went through the tutorial and had a "working" quux engine in about 15 minutes of work (including compiling)
Relax, man, I know all that! At the time it happened, I described the problem I encountered. I might even be the source of the current accuracy of the tutorial! (just kidding). I also know that the ScummVM community is very alive. In fact, I thought it was so big and busy that it didn't really "need" me to contribute in any sort of way -- seriously, and said without sarcasm.fingolfin wrote:Look, the HOWTO is meant to be up-to-date. Of course we sometimes change things and forget to update the HOWTO, and then it need fixes. Bad!
But we are happy to fix it if we are told about it. (...)
You see, in general, the ScummVM community is very helpful -- but only if you show that you are willing to work, too.
After I do my new attempt, I'll ask for some help if I don't succeed.
Once again, considering how active the community is, I thought some Dune fan boy (like me) would feel happy to do it, just for glory's sake. That's what I would do. As you said, for someone experienced, it takes only 15 minutes.fingolfin wrote: What would that random mysterious volunteer gain from writing code that is meant to give you a kick start?
However after your updates I'll do a new attempt myself.
=========================================================================
One last question : Of all the engines implemented in ScummVM, which one is the most recent and uses the most recent ScummVM conventions, implementations and technologies? If I recall, my issue was that I tried to copy the Goblins engine, and it was obsolete in its way of using ScummVM, and that was the cause of my issues -- or something like that, please don't take my words for absolute truth, it doesn't matter anymore anyway. I'm just wondering if you have a recommendation for an engine to get my inspiraiton from.
What do you mean "recent"? Each engine is different, as it does what it's supposed to do in a different way, since each game was designed in a different manner. I suggest you look at a small and easy to understand engine, e.g. MADE. The quux example is really straightforward, so it's a good starting point.monsieurouxx wrote:One last question : Of all the engines implemented in ScummVM, which one is the most recent and uses the most recent ScummVM conventions, implementations and technologies? If I recall, my issue was that I tried to copy the Goblins engine, and it was obsolete in its way of using ScummVM, and that was the cause of my issues -- or something like that, please don't take my words for absolute truth, it doesn't matter anymore anyway. I'm just wondering if you have a recommendation for an engine to get my inspiraiton from.
I read the whole thread in your boards... it seems that there are 4 kinds of data files in that game:
- *.hsq files, which are the compressed containers
- *.hnm files, which are the video files
- *.adl and *.m32, which are the Adlib Gold/MT-32 soundtracks
- *.voc files for the speech in the CD version
Also, it seems from the posts that the game is using voxel graphics for the flyover scenes? Or are these videos?
There seems to be an IDA IDB file of the executable, but I can no longer find it in that thread. Where can this be found?
Finally, the main problem you'll be facing is with the game logic itself. How is that structured? At a first glance, it all seems to be hardcoded in the executable - looking at its strings, all of its files are hardcoded in there, so I suppose all of the game logic is in there as well, so this will need to be rewritten from scratch...