mmtools development
mmtools development
If somebody interesting here, below the link to MMResTool 0.2.5 with preliminary support of changing MM7 D3D engine resolution. After unpacking to main game folder (where mm7.exe reside) file "mmt_d3d_screen.bat" can be used to patch .exe-file. By default applied 1024x768 resolution as mostly universal. To try other resolutions change these values in .bat file.
Patch supports mm7.exe with versions 1.0.0.1 (original) and 1.2.1.0 (used in MOK patch). In case of using MOK patch better to launch game via MM7_Res.exe, not via MM7.exe, which is MOK's rescaler for window mode and can cause incorrect mouse processing in window mode after engine patching. In fullscreen mode this is indifferent. Original (unpatched) files renamed to .mmt (mm7.mmt) and can be restored to undo patch changes. But no need to do it to reapply patch, because it automatically used original .mmt file if it exists. "Software" rendering disabled after patching because not yet ready.
This is very preliminary version of patch, so I don't know how it works on other's computers. In-game interface not completly fixed yet, video and splash screens not rescaled to whole screen etc. But 3D-engine and mosly important parts must be workable (if not via mouse, then by keyboard shortcuts). So I'm publish this version in testing and demonstration purposes only.
P.S. "mmt_d3d_textures.bat" is the same file, as "q0_high.bat" from presious release. It converts textures from software to hardware mode. So if this is not needed, don't use it.
http://www.old-games.ru/forum/attachmen ... 1236542912
Patch supports mm7.exe with versions 1.0.0.1 (original) and 1.2.1.0 (used in MOK patch). In case of using MOK patch better to launch game via MM7_Res.exe, not via MM7.exe, which is MOK's rescaler for window mode and can cause incorrect mouse processing in window mode after engine patching. In fullscreen mode this is indifferent. Original (unpatched) files renamed to .mmt (mm7.mmt) and can be restored to undo patch changes. But no need to do it to reapply patch, because it automatically used original .mmt file if it exists. "Software" rendering disabled after patching because not yet ready.
This is very preliminary version of patch, so I don't know how it works on other's computers. In-game interface not completly fixed yet, video and splash screens not rescaled to whole screen etc. But 3D-engine and mosly important parts must be workable (if not via mouse, then by keyboard shortcuts). So I'm publish this version in testing and demonstration purposes only.
P.S. "mmt_d3d_textures.bat" is the same file, as "q0_high.bat" from presious release. It converts textures from software to hardware mode. So if this is not needed, don't use it.
http://www.old-games.ru/forum/attachmen ... 1236542912
Last edited by mmtool on 25 Apr 2009, 20:48, edited 2 times in total.
Can you post screenshot to identify the problem, please? Is this in both modes (window and fullscreen)? And is this on all resolutions or in default 1024x768 only? Btw, patch after applying must report of 184 changes in code. If reported less, then such .exe version is not supported yet, so various bugs possible. In such a case try to download MOK's MM7 patch (from http://strony.aster.pl/mokmtg/mm7_eng_xp.exe) apply it and patch again, because it contains supported 1.2.1.0 version of .exe.
Forgot to mention... In case of exectuable changing (such as applying MOK's patch) backup files of older version need to be removed manually from game folder (such as "mm7.mmt" and "mm7-rel.mmt"). In other case MMResTool will use _them_ to generate patches, i.e. it rewrite new .exe file with patched version of old .mmt file, and nothing will really be changed.
So in case of changing version of mm7.exe the next steps must be done:
1) remove backup files "mm7.mmt" and "mm7-rel.mmt", if exist;
2) update "mm7.exe" to other version (manually or by applying MOK's patch);
3) patch new .exe by "mmt_d3d_screen.bat". Patcher then create new .mmt backup file and use it to generate new patched .exe file in future.
Soon I'll make detection of .exe changing by patcher itself (in GUI version of patcher), so this thing 'll gone (and patching become more easy for users, which have not expirience with .bat files etc.). But currently it need to be done manually.
So in case of changing version of mm7.exe the next steps must be done:
1) remove backup files "mm7.mmt" and "mm7-rel.mmt", if exist;
2) update "mm7.exe" to other version (manually or by applying MOK's patch);
3) patch new .exe by "mmt_d3d_screen.bat". Patcher then create new .mmt backup file and use it to generate new patched .exe file in future.
Soon I'll make detection of .exe changing by patcher itself (in GUI version of patcher), so this thing 'll gone (and patching become more easy for users, which have not expirience with .bat files etc.). But currently it need to be done manually.
Please post screenshot, if it possible. And may be in other resolutions this is gone. Try to change values in mmt_d3d_screent.bat to other, supported by display adapter. On my machine interface in fullscreen mode screwed only in 800x600, but in 1024x768 and 1152x864 all Ok. This is because MM7 D3D engine seems incompletly use information from D3D driver about size of screen line. It always suppose that size of line is equal to Width*2 bytes(16bit color = 2 bytes per pixel). But D3D driver not always keep this true (at least in resolutions higher than 640x480). So if line size bigger, 2D interface can be partially screwed. I'm not yet completly fixed this issue because thinked it pretty rare (in my case on 800x600 resolution only). May be this is the same and in your case, but I can not say exactly without screenshot.
Btw, software rendering mode has not this "error", but it has hardcoded limit of 480 lines vertically, which is yet need to be fixed. So it currently disabled even if workable with any screen width (no limit on it in engine). I planned to to it after completly fixing D3D mode in MM7 and 8.
Btw, software rendering mode has not this "error", but it has hardcoded limit of 480 lines vertically, which is yet need to be fixed. So it currently disabled even if workable with any screen width (no limit on it in engine). I planned to to it after completly fixing D3D mode in MM7 and 8.
Ok so:
800x600 fullscreen: http://img5.imageshack.us/my.php?image=800x600t.jpg
1024x768 fullscreen : http://img5.imageshack.us/my.php?image=1024x768c.jpg
800x600 fullscreen: http://img5.imageshack.us/my.php?image=800x600t.jpg
1024x768 fullscreen : http://img5.imageshack.us/my.php?image=1024x768c.jpg
Thanks for help! So in 800x600 fullscreen mode the same problem as on my PC and will be fixed in future. But on 1024x768 something strange, which I have not it on my PC. Especially strange, that this "phantom" copy of bottom panel has incorrect vertical size. So I'll try to understand, how it possible.
Very bad, that I haven't this bug on my PC to analize it first-hand. So additional questions on it, please. Is yellow lines around selected face always equal on both pictures of bottom panel? I.e. when on bottom panel selected second face, is it updated on it "phantom" copy or it always in the same state? And if picture updated, how fast it occur (immediatly or with some delay)?
Btw, screenshots has such a dark colors (in case if it is not the night :) because "gamma/brightness" settings of fullscreen mode did not have effect on it, only on real picture. And in window mode gamma seems not supported at all (as I know), so gaming is not very "bright" in it. May be I'll implement support of it in window mode too in a future.
Very bad, that I haven't this bug on my PC to analize it first-hand. So additional questions on it, please. Is yellow lines around selected face always equal on both pictures of bottom panel? I.e. when on bottom panel selected second face, is it updated on it "phantom" copy or it always in the same state? And if picture updated, how fast it occur (immediatly or with some delay)?
Btw, screenshots has such a dark colors (in case if it is not the night :) because "gamma/brightness" settings of fullscreen mode did not have effect on it, only on real picture. And in window mode gamma seems not supported at all (as I know), so gaming is not very "bright" in it. May be I'll implement support of it in window mode too in a future.
Nil's picture from russian topic on this has not this bug:
http://www.old-games.ru/forum/attachmen ... 1236611454
So it seems depends on something hardware or system related. May be some issues with legacy support of DirectX 6.1 on modern systems. More testing by other peoples will tell...
http://www.old-games.ru/forum/attachmen ... 1236611454
So it seems depends on something hardware or system related. May be some issues with legacy support of DirectX 6.1 on modern systems. More testing by other peoples will tell...
I have the exact same problems as Krogul in 800x600 and 1024x768 but for both full screen and windowed modes.Krogul wrote:Ok so:
800x600 fullscreen: http://img5.imageshack.us/my.php?image=800x600t.jpg
1024x768 fullscreen : http://img5.imageshack.us/my.php?image=1024x768c.jpg
The phantom panel will mirror and rescale an item such as a scroll if held over the bottom panel but it does not mirror the mouse pointer.
Right-click doesn't work on either bottom or side panel (to see active spells/hp)
Clicking on the books on the side panel for quests/auto notes/map etc is broken but the buttons work.
I am using MOKs patch.
The higher resolution combined with your texture pack looks great, I selfishly wish you the best of luck with the debugging!
Yes, not all mouse click places was fixed in this release, because several hundreds of them exists in code. So each need to be checked, classified and correctly added to patch. There is nothing like assembled dialog panels in code, each screen item has its own hardcoded coordinates on screen. I'm forced to assemble dialog boxes in patcher itself, so that all related items can be moved together correctly. So interface fixing take much more time, then 3D-engine itself.
I'll try to figure out, why phantom pictures appeared, but this is pretty hard because I'm have not this bug, so can not analize it directly. Not all people have this bug, so this is seems like some incompatibility with some versions of modern DirectX, or may be it OS (Vista?) or video card model related.
In any case software 3D engine will be patched soon too and I'm doubt it will have such a bug because almost not depended on DirectX.
I'll try to figure out, why phantom pictures appeared, but this is pretty hard because I'm have not this bug, so can not analize it directly. Not all people have this bug, so this is seems like some incompatibility with some versions of modern DirectX, or may be it OS (Vista?) or video card model related.
In any case software 3D engine will be patched soon too and I'm doubt it will have such a bug because almost not depended on DirectX.
May be as temporary fix I'll provide option to place horizontal panel at the top of the screen. Pictures at top (like right panel) seems not cause any problem. In any case this is very preliminary version of patcher, not yet playable, only workable. It contains only 25-30% of all changes, which need to be done. It become more or less usefull only after several future releases. And this bug may be gone (I hope), as many others...
As reported, phantom picture problem can coexists with incorrect 3D-objects scaling. So below the ethalon picture to compare, is any problem exists on somebody computer. If staying near Emerald Islands's Training Center and looking top somebody has different picture (phantom pictures, wrong distance to 3D-objects, incorrect 3D-objects sizes etc.), this is some incompatibility, related to Direct3D legacy support on such system. So in this case can be used hi-res software mode (when released), or need to wait until I'm empirically figure out, what is going on and how to fix it (or may be somebody with this problem help me on it).
My1152x864.zip
My1152x864.zip
With high probablility problem with phantom picture is the same problem, as with 800x600 resolution (which I'm explained above). Simply more fancy looking because different width of videobuffer line (Width*4 in this case, so phantom picture has twice less vertical size). So this is can be not DX incompatiblitity, but no more then problem in MM/D3D engine. And may be in the next patch release it will be solved completly (I hope)
Who had problems with 3D picture, can try the next fix to solve it (this is not release, published in 3D-picture testing purposes only). Please report is problem with phantom pictures etc. gone after it.
MMResTool025fix2.zip
MMResTool025fix2.zip
- tomchen1989
- Pixie
- Posts: 140
- Joined: 21 Jun 2008
- Location: Europe / China
thank u very much it works fine in res of 1024*768
here's my screenshots:
http://www.cwebgame.com/attachments/mon ... VERt7I.png
http://www.cwebgame.com/attachments/mon ... VhgCkH.png
http://www.cwebgame.com/attachments/mon ... p6DJzw.png
here's my screenshots:
http://www.cwebgame.com/attachments/mon ... VERt7I.png
http://www.cwebgame.com/attachments/mon ... VhgCkH.png
http://www.cwebgame.com/attachments/mon ... p6DJzw.png
Thanks :) Btw, I can add support of the Chinese version too, if it exists (need .exe via mail). And patcher must report 311 changes in case of MOK 1.2.1.0 version. With some resolution (changed in .bat) it can report more and fail to patch correctly (such as in 1280x960). This is small bug (already reported), which I'll fix tommorow in version 0.2.6 (with additional couple of fixes, related to mouse processing, which is lack in 0.2.5 yet). But in many other resolutions, supported on target system, it works (even in 1680x1024, as reported).
Who is online
Users browsing this forum: No registered users and 6 guests