English Amiga Board


Go Back   English Amiga Board > Other Projects > project.Amiga Game Factory

 
 
Thread Tools
Old 16 November 2009, 16:12   #1
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,322
Heroes of Might and Magic II

Hello,

This thread is for all those who like this game and want it to be ported on the Amiga. You may well think it is overly ambitious, especially because sources are not available, but I started the project anyway and got some interesting result.

Grab it from here :
meynaf.free.fr/tmp/h2.lzx
All updates will be done at this same address.

Of course, to run it you'll need the game data files and I can't provide those.
Note that this is a full port using original code that I have reSourced, not a complete rewrite like Free Heroes2.
It also works (or must work ) on regular AGA machines with 16MB ram.

Now, I'm here to ask for help. I especially need :
- coders expert in fast hires chunky graphics
- musicians who can convert/redo midi (or cd audio) musics into regular tracker
- audio programmers who can do fast 4 or more mono channels playing from fastmem with good quality (for both music and sfx)
- coders expert in floating-point ops removeal (there is a legion of them, and computer AI is very slow because of this)
- someone who can reSource and/or decompile the PC versions so I can use that to implement h2x extensions not present in the Mac 68k version I've used

I can give the sources to whoever wants them, but beware : they are large.

There are many bugs, but you can theoretically play. Don't expect the game to be fast, but it's not very slow either.

You can help in several ways, including play testing. But please read the readme file in the archive before reporting anything !

So what... can I get any help in here or not ?

EDIT: link is now http://meynaf.free.fr/pr/homm2.lzx

Last edited by meynaf; 09 January 2016 at 21:57. Reason: download url changed
meynaf is offline  
Old 16 November 2009, 17:27   #2
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,750
This may not be helpful at all, but:
Quote:
Originally Posted by meynaf View Post
- coders expert in fast hires chunky graphics
I don't think there's a difference between high and lowres c2p except that because you're using interlace you only have to update half the number of scanlines per frame (needs double buffering). This may sound silly, but why not convert the graphics to bit planes and do the effects using chunky+c2p?
Quote:
Originally Posted by meynaf
- musicians who can convert/redo midi (or cd audio) musics into regular tracker
If you're going to have mixing in the game, then it's probably best to simply resample the cd audio and sound effects (on the peecee using Sox), and mix the music with the sound effects. Fast and simple once the audio is converted, and you get 14 bit quality. At the price of larger game data.
Thorham is offline  
Old 16 November 2009, 19:35   #3
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,322
Quote:
Originally Posted by Thorham View Post
I don't think there's a difference between high and lowres c2p except that because you're using interlace you only have to update half the number of scanlines per frame (needs double buffering).
No way ! Updating half the scanlines in one frame isn't possible (already too slow). So I update when program says that an area needs to be updated - and only this area.

Quote:
Originally Posted by Thorham View Post
This may sound silly, but why not convert the graphics to bit planes and do the effects using chunky+c2p?
Because it probably would end up being slower. Planar graphics are quite a pain to blit with the cpu, and they're WAY too numerous to fit into chipmem (in fact, sounds don't even fit and I had to play from fastmem).

Quote:
Originally Posted by Thorham View Post
If you're going to have mixing in the game, then it's probably best to simply resample the cd audio and sound effects (on the peecee using Sox), and mix the music with the sound effects. Fast and simple once the audio is converted, and you get 14 bit quality. At the price of larger game data.
You can not pre-mix SFX with music because they don't happen synchronously with it. SFX can be played directly and don't need to be resampled, and cannot be pre-mixed either.
meynaf is offline  
Old 16 November 2009, 20:55   #4
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,750
Quote:
Originally Posted by meynaf View Post
No way ! Updating half the scanlines in one frame isn't possible (already too slow). So I update when program says that an area needs to be updated - and only this area.
Sorry about that one, I wrote to fast. That interlace technique can only be used if writing half of the scan lines takes less than a frame, my mistake. If it would always take less than one frame, then you could even use interlace as a souble buffering system, because only half of the scan lines are shown. In this case that doesn't matter, though, so just forget this none sense
Quote:
Originally Posted by meynaf View Post
Because it probably would end up being slower. Planar graphics are quite a pain to blit with the cpu, and they're WAY too numerous to fit into chipmem (in fact, sounds don't even fit and I had to play from fastmem).
How is cpu blitting slower than c2p? Anyway, I said it might not be useful
Quote:
Originally Posted by meynaf View Post
You can not pre-mix SFX with music because they don't happen synchronously with it. SFX can be played directly and don't need to be resampled, and cannot be pre-mixed either.
That's not what I meant. The music is resampled to a frequency the audio dma can handle, and the same goes for the effects, where both of them have the same sample rate. Now you can easily mix them at run time in the game as needed. If you want more than four channels total you already have to mix, so why not make it easy? Pre-mixing would mean you'd have to mix for every possible combination, and that would probably take up millions of exa bytes

Last edited by Thorham; 16 November 2009 at 21:02.
Thorham is offline  
Old 16 November 2009, 23:17   #5
NovaCoder
Registered User
 
NovaCoder's Avatar
 
Join Date: Sep 2007
Location: Melbourne/Australia
Posts: 4,400
Cool, I'll have to try this on my Miggy.

If you're after fast C2P you should look at the ADoom source code (on Aminet) although most C2P is designed for low-res screens and will not work with 640x480.

As for the floating point stuff, you could either target FPU users (like me!) or borrow the fixed-point code from ADoom.
NovaCoder is offline  
Old 17 November 2009, 09:37   #6
gimbal
cheeky scoundrel
 
gimbal's Avatar
 
Join Date: Nov 2004
Location: Spijkenisse/Netherlands
Age: 42
Posts: 6,903
I don't have anything to offer to this project, but I want to show my moral support anyway. Cool project, the more challenging, the better I say!
gimbal is offline  
Old 19 November 2009, 10:41   #7
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,322
Quote:
Originally Posted by Thorham View Post
Sorry about that one, I wrote to fast. That interlace technique can only be used if writing half of the scan lines takes less than a frame, my mistake. If it would always take less than one frame, then you could even use interlace as a souble buffering system, because only half of the scan lines are shown. In this case that doesn't matter, though, so just forget this none sense
It's not a bad idea to use that kind of interlace trick, but sadly chipmem is too slow even for this.
Besides, you might regret that the day your game works on a non-interlaced screen.

Quote:
Originally Posted by Thorham View Post
How is cpu blitting slower than c2p? Anyway, I said it might not be useful
Transparent blitting is easy to do with chunky pixels (write non-transparent ones and skip the others), but in planar mode it's more complicated.
Or do you have a very fast blitting routine ? (I guess not )

Quote:
Originally Posted by Thorham View Post
That's not what I meant. The music is resampled to a frequency the audio dma can handle, and the same goes for the effects, where both of them have the same sample rate.
The effects are already in range, as they are 22050 hz. Of course the music can be resampled to this value, but it would still mean a whole lot of data.

Quote:
Originally Posted by Thorham View Post
Now you can easily mix them at run time in the game as needed. If you want more than four channels total you already have to mix, so why not make it easy? Pre-mixing would mean you'd have to mix for every possible combination, and that would probably take up millions of exa bytes
Of course, but I'd prefer to use tracked music.

Quote:
Originally Posted by NovaCoder View Post
Cool, I'll have to try this on my Miggy.
Yes

Quote:
Originally Posted by NovaCoder View Post
If you're after fast C2P you should look at the ADoom source code (on Aminet) although most C2P is designed for low-res screens and will not work with 640x480.
I don't think my C2P can be beaten on '030
(anyway not by enough to be significant)

But perhaps there exists better refreshing methods. For now I just C2P whatever screen region the game tells me to refresh.

Quote:
Originally Posted by NovaCoder View Post
As for the floating point stuff, you could either target FPU users (like me!) or borrow the fixed-point code from ADoom.
I can't target FPU users for two reasons : the game CAN work without FPU (and it already does), so it MUST work like that. The other reason is that I don't have FPU

I don't see how I could borrow some fixed-point code. What I need is that float stuff to be rewritten to no longer use float. It's not extremely difficult (already half done in the editor), it's just that the game has too many of them to do.
meynaf is offline  
Old 19 November 2009, 12:18   #8
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,750
Quote:
Originally Posted by meynaf View Post
It's not a bad idea to use that kind of interlace trick, but sadly chipmem is too slow even for this.
Yep, if the band width required exceeds the available band width, the interlace method becomes useless. Sad really.
Quote:
Originally Posted by meynaf View Post
Besides, you might regret that the day your game works on a non-interlaced screen.
That could have been solved, except for the fact that it doesn't matter in this case
Quote:
Originally Posted by meynaf View Post
Transparent blitting is easy to do with chunky pixels (write non-transparent ones and skip the others), but in planar mode it's more complicated.
Or do you have a very fast blitting routine ? (I guess not )
Yeah, I know what a pain it can be. The fast cpu blitting routine I have is sadly only usable in my Advance Wars conversion, because it simply blits two tiles with two bobs on top (works, because only one unit can move around at any one time, in that case I use a 16 color sprite).
Quote:
Originally Posted by meynaf View Post
The effects are already in range, as they are 22050 hz. Of course the music can be resampled to this value, but it would still mean a whole lot of data.
Yep!
Quote:
Originally Posted by meynaf View Post
Of course, but I'd prefer to use tracked music.
Perhaps cd audio can be an option?
Thorham is offline  
Old 19 November 2009, 18:34   #9
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,322
Quote:
Originally Posted by Thorham View Post
Perhaps cd audio can be an option?
It *is* an option (even though an unimplemented one ).
The PC version allows either midi or cd music. I wish to do the same.
meynaf is offline  
Old 07 December 2009, 08:39   #10
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,322
So, didn't anyone test it ?
meynaf is offline  
Old 07 December 2009, 13:12   #11
EmuChicken
Senior Member
 
EmuChicken's Avatar
 
Join Date: Jul 2004
Location: Nagoya, Japan (moved!)
Age: 41
Posts: 746
I'm gonna give this a shot once i get my amiga working with my japanese telly.. pal > ntsc sucks
EmuChicken is offline  
Old 07 December 2009, 23:19   #12
kriz
Junior Member
 
kriz's Avatar
 
Join Date: Sep 2001
Location: No(R)Way
Age: 41
Posts: 3,185
this is cool stuff, i will test and report later!! working nightshifts now..
kriz is offline  
Old 07 December 2009, 23:53   #13
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Missed this project sounds very good you reSourced the Mac68k code to work on AGA Amiga

As soon as I can get the Data files ill try - Do the Data files have to be from the Mac version or can they be from any version?
Retro1234 is offline  
Old 08 December 2009, 00:15   #14
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,750
Tried it today, and there was one solvable problem: The game data from HOMAM2GOLD PC version doesn't include one of the intro anims. The game says it can't find sh2intro.smk, so I just cloned snwclogo.smk (I think it was that file). Problem fixed

It might be a good idea to simply skip those non important anim files if they're not found, and display a message if it can't find an important one, and just continue the game. Could you send me a list of expected anims so I can see which ones are missing? Maybe it's not as bad as it looks.

Anyway, I only tried playing very briefly, and although combat seems to be fast (I only tried AUTO, and died ), moving around the map is just too slow, but you probably already knew that.

10/10 for effort, and when the game gets it's much needed optimization, it should be quite good to play

Last edited by Thorham; 08 December 2009 at 00:22.
Thorham is offline  
Old 08 December 2009, 00:27   #15
KillJ0Y
Registered User
 
KillJ0Y's Avatar
 
Join Date: Feb 2020
Location: Tachov / CZE
Posts: 293
Hi I test your version 0.1 and its amazing!
It have few bugs, but its realy much better then some freeheroes2 via sdl (I hate sdl).
Hope you'll do a newer version soon can't wait for it
I used the PC version datafiles.
KillJ0Y is offline  
Old 08 December 2009, 08:24   #16
Cammy
Registered User
 
Cammy's Avatar
 
Join Date: Aug 2007
Location: Tasmania, Australia
Age: 39
Posts: 1,189
I am going to try this too, as soon as the PC version finishes downloading. Will I also have to rename the animation file, as Thorham did? I guess we'll soon see.

I like the idea of resampling the CD audio tracks to stereo IFF samples (or another easily played format) that can spool from the hard drive, leaving two channels free for sound effects. If you have a look at the old game Labyrinth of Time, it uses the same method for playing back its awesome atmospheric soundtrack.
Cammy is offline  
Old 08 December 2009, 10:24   #17
coze
hastala vista winny vista
 
coze's Avatar
 
Join Date: Feb 2006
Location: mt fuji
Age: 46
Posts: 1,335
Send a message via ICQ to coze Send a message via Yahoo to coze
I got a PC version moments ago, and at first it didn't like my configuration




but fortunately it continued the install even on my underspec machine

gonna give a try on Winuae tonight, and later on my A4000. Thanks meynaf !
coze is offline  
Old 08 December 2009, 14:30   #18
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,750
Quote:
Originally Posted by Cammy View Post
Will I also have to rename the animation file, as Thorham did? I guess we'll soon see.
If it's the GOLD version, then you probably will. But don't rename the file, clone it. In other words, copy it to the new name.
Thorham is offline  
Old 08 December 2009, 16:53   #19
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Just tried this - Worked great on WinUae -Agreed a bit slow on A1200/030 now after trying this im even more impressed Anyone that likes this type of game check it out

Going to investigate the game further.
Retro1234 is offline  
Old 09 December 2009, 12:46   #20
Cammy
Registered User
 
Cammy's Avatar
 
Join Date: Aug 2007
Location: Tasmania, Australia
Age: 39
Posts: 1,189
Quote:
Originally Posted by Thorham View Post
But don't rename the file, clone it. In other words, copy it to the new name.
Don't worry, that's what I was going to do. With any luck I'll have it installed by tomorrow.
Cammy is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Graphical Problems with Bubble Heroes Marskilla support.FS-UAE 7 18 August 2014 00:15
Heroes of Might and Magic mattbarton.exe Retrogaming General Discussion 7 25 April 2010 04:01
Heroes of the Lance xaind HOL contributions 1 07 January 2010 15:31
Heroes of Might and Magic III almost made it to the Atari! Shoonay Nostalgia & memories 10 31 May 2009 08:02
Heroes of the lance... keil81 support.Games 3 16 December 2001 12:26

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 Off

Forum Jump


All times are GMT +2. The time now is 04:33.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.13654 seconds with 16 queries