Skip to content

Commit

Permalink
MMArchive v1.2.1:
Browse files Browse the repository at this point in the history
[-] Previous version was crashing on Windows XP
[-] Clipboard-related crash on exit
[-] Crash when loading another archive while in Compare To mode
[-] After drag-drop of the same archive, files list wasn't updated after operations
  • Loading branch information
GrayFace committed May 27, 2018
1 parent d2cbb1c commit 6a4f5e4
Show file tree
Hide file tree
Showing 9 changed files with 439 additions and 0 deletions.
48 changes: 48 additions & 0 deletions MMArchive/Language/English.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@

[Help]
Memo1.Text MMArchive v%VERSION%
(c) Sergey Rozhenko
http://sites.google.com/site/sergroj/
sergroj@mail.ru

With this program you can edit any archive of Might&Magic 6-8 or Heroes 3, except *.hwl.
Here I'll explain the most unobvious things about the program and its use.

A double click on preview window will expand it to fit the image size.


[ Optimizing archives ]
When you replace or delete files, it causes archive fragmentation and increase in archive size. If your archive grows too large, use the "Optimize" button to decrease archive size to minimum.
If you change a .vid archive, optimization is especially important. Don't use any other tools until you optimize the archive. Here's the reason why. Because .vid archives lack information about files sizes, MMArchive writes it at the end of archive. Other tools won't recognize it. They'll think files are bigger than they actually are.


[ Merge With ]
"Merge With" command adds into current archive all files from another archive. Added files replace existing files with the same name.


[ Adding files ]
You can use "Add" button or drag files on MMArchive window to add them.
In h3bitmap.lod of Heroes 3 pictures have ".pcx" extension, but you can use bitmaps instead. The program will rename them to ".pcx" automatically.

To add images to M&M archives always use simple ".bmp" extension. Bitmaps in M&M always have 256 colors. If you add a bitmap into icons.lod MMArchive will convert it to 256 colors.
When you add pictures into sprites.lod or bitmaps.lod you may see an error message about their palettes. That's because images in sprites.lod don't have palettes in them, instead they contain a pelette number that refers to "PAL*" file in bitmaps.lod. Bitmaps in bitmaps.lod, dispite having their own palettes, also refer to a "PAL*" index. This means that each bitmap in these archives must have corresponding palette added to bitmaps.lod.
So, If you have an image with new a palette, you must first add the new palette into bitmaps.lod with some unused palette index. The program will automatically find the palette when you add bitmaps.
Note: mm8leveleditor uses extensions ".sprite.bmp", ".tga.bmp", ".4tga.0.bmp" - ".4tga.3.bmp". MMArchive always uses ".bmp". Zoom levels ".4tga.1.bmp" - ".4tga.3.bmp" are generated automatically, so you shouldn't worry about them.

To add a palette you should take a bitmap with this palette and rename it under the name of palette you need, WITHOUT extension (e.g. "PAL722"). Then you can import it as usual. You can also import palettes in ".act" format.
There's another problem with palettes. Originally only 50 palettes could be used in a map. I've removed this limitation in MMExtension (it's changed to 200 there and can be set to any number), but it's still a good idea to reuse palettes for bitmaps with similar colors that are gonna be used together on one level.


[ Monster sprites in M&M ]
Monster sprites are special. They have 3 palettes which are specified in dsft.bin file. Usually their palette numbers are subsequent to palette specified for their sprites in sprites.lod. You can select them in Palette menu. Here are some tips of how to make a monster:

The easiest way:
Render frames of your monster as one variation, convert them into 256 colors with a common palette for them with background color at the first index (you can do this with DefTool v2: http://sites.google.com/site/sergroj/wog/DefTool2.rar?attredirects=0). Save one of the frames under the name of first palette.
Then you'll need to make two more palettes. To do this you change one frame using effects like Hue/Saturation/Brightness and Brightness/Contrast. These effects should only change palette, not changing palette indexes assigned to pixels of bitmap, at least in Corel Photo-Paint. Make another palette this way and you're done. Import all the things.

The most interesting way:
1 set of frames + 3 palettes is a self-limitation of NWC used to reduce virtual memory demands, size of sprite.lod and loading times. You don't have to adhere to these limitations. You can make 3 variations of monster model. They can defer by color, shape, anything. Think of them as of 3 different monsters - render them under different names, convert each into 256 colors with separate palettes (again, with DefTool v2 or a similar approach). Then import them and change Data\Tables\SFT.txt (it's created by MMExtension). Contact me or Vladimir Maestro to get a tool that will help you with the process. Your mod will probably require my patch installed, because it removes limits on number of loaded sprites and on amount of virtual memory M&M games can use.

The hardest way:
If you look at monsters with Default chosen in Palette menu, you'll get the idea of how NWC rendered them. Mostly, they have one area that doesn't change color between variations and one or more areas that do change color. All these areas don't have any similar colors.

157 changes: 157 additions & 0 deletions MMArchive/Language/Russian.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
[TRSLodEdt]
GlobalCharset RUSSIAN_CHARSET
SDeleteQuestion �� �������, ��� ������ ������� "%s" �� ������?
SDeleteManyQuestion �� �������, ��� ������ ������� ���������� ����� �� ������?
SNewFolder ����� �����
SExtractAs �������������� ���...
SExtractTo �������������� �...
SEPaletteNotFound �� ������� ���������� ������� � bitmaps.lod
SEPaletteMustExist ����������� ������ ��������� 256 ������ � ������� ������ ���� ��������� � bitmaps.lod
SPalette �������: %d
SPaletteChanged �������: %d (��������: %d)
SFavorites ���������
SRenameOverwriteQuestion ���� � ������ "%s" ��� ����������. ������ ��� ������������?
SExtractOverwriteFileQuestion ��������� ����� ��� ����������. ������ �� ������������?
SExtractOverwriteDirQuestion ��������� ����� ��� ����������. ������ �� ������������?
SPleaseWaitRebuilding ���������, ����� ��������������...
SPleaseWait ���������...
RSSpeedButton1.Hint ���������
RSSpeedButton2.Hint �����������
OpenDialog1.Filter ������ Might&Magic ��� Heroes 3 (*.lod; *.snd; *.vid; *.mm6; *.mm7; *.dod; *.pac)|*.lod;*.snd;*.vid;*.mm6;*.mm7;*.dod;*.pac|��� �����|*.*
OpenDialogMerge.Filter ������ Might&Magic ��� Heroes 3 (*.lod; *.snd; *.vid; *.mm6; *.mm7; *.dod; *.pac)|*.lod;*.snd;*.vid;*.mm6;*.mm7;*.dod;*.pac|��� �����|*.*
SaveDialogSaveSelectionAs.Filter ������ Might&Magic ��� Heroes 3 (*.lod; *.snd; *.vid; *.mm6; *.mm7; *.dod; *.pac)|*.lod;*.snd;*.vid;*.mm6;*.mm7;*.dod;*.pac|��� �����|*.*
SaveDialogSaveSelectionAs.Title ������� ����� �� ��������� ������
SaveSelectionAsArchive1.Caption ������� ����� �� ��������� ������
AddFolder1.Caption ������� �����
AddFile1.Caption �������� ����
MergeFavorites1.Caption �������� ��������� ��...
Cut1.Caption &��������
Copy1.Caption &����������
Copy2.Caption &����������
Copy3.Caption &����������
Paste1.Caption ���&�����
Paste2.Caption ���&�����
Paste3.Caption ���&�����
Delete1.Caption &�������
Delete2.Caption &�������
Delete3.Caption &�������
Rename1.Caption �������������
Rename2.Caption �������������
Rename3.Caption �������������
Extract1.Caption ��������������
AddtoFavorites1.Caption �������� � ���������
OpenDialog2.Filter ��������� (*.lf)|*.lf|All files|*.*
File1.Caption ����
New1.Caption �����
Open1.Caption �������
RecentFiles1.Caption �������� ���������
Exit1.Caption �����
Edit1.Caption �������������
Add1.Caption ��������...
Extract2.Caption ��������������
Rebuild1.Caption ��������������
AddtoFavorites2.Caption �������� � ���������
Def1.Caption Def
OriginalPalette1.Caption ������� ����
NormalPalette1.Caption ����������� �������
TransparentBackground1.Caption ���������� ���
ShowAll1.Caption ��� ����
Spells1.Caption ����������
ShowCreatures1.Caption �������
ShowMapObjects1.Caption ������� �����
ShowHeroes1.Caption �����
ShowTerrain1.Caption �����
ShowCursors1.Caption �������
ShowInterface1.Caption ���������
ShowCombatHeroes1.Caption ����� � �����
Palette1.Caption �������
Default1.Caption �� ���������
FirstKind1.Caption ������ ���
SecondKind1.Caption ������ ���
ThirdKind1.Caption ������ ���
Options1.Caption �����
Sortbyextension1.Caption ����������� �� ����������
Backup1.Caption ����� ������������ ������
IgnoreUnpackingErrors1.Caption ������������ ������ ����������
Language1.Caption ����
Associate1.Caption ������������� � *.lod
Associate2.Caption ������������� � *.snd
Associate3.Caption ������������� � *.vid
Associate4.Caption ������������� � *.pac
Help1.Caption �������
SaveDialogExport.Filter ��� �����|*.*
SaveDialogExport.Title �������
OpenDialogImport.Filter ��� �����|*.*
OpenDialogImport.Title �������� �����
SaveDialogNew.Filter ����� ����� (*.lod;*.snd;*.vid;*.pac;*.mm6;*.mm7;*.dod)|*.lod;*.snd;*.vid;*.pac;*.mm6;*.mm7;*.dod|LOD-����� Heroes 3 (*.lod; *.pac)|*.lod;*.pac|����� ������ Heroes 3 (*.snd)|*.snd|����� ������ MM (*.snd)|*.snd|����� ����� Heroes 3 ��� MM 7-8 (*.vid)|*.vid|����� ����� MM 6 (*.vid)|*.vid|����� Bitmaps ��� MM (*.lod)|*.lod|����� Icons ��� MM (*.lod)|*.lod|����� Sprites ��� MM (*.lod)|*.lod|����� English ��� MM 8 (*.lod)|*.lod|����� Games ��� MM 7-8 (*.lod)|*.lod|����� Games ��� MM 6 (*.lod)|*.lod|����������� ���� MM 7-8 (*.lod;*.mm7;*.dod)|*.lod;*.mm7;*.dod|����������� ���� MM 6 (*.lod;*.mm6)|*.lod;*.mm6|��� �����|*.*
SaveDialogNew.Title ����� �����
OpenDialogBitmapsLod.Title �������� ����� bitmaps.lod
MergeWith1.Caption ��������� � �������...
OpenDialogMerge.Title �������� �����, ���������� �������� ���� ��������
CompareTo1.Caption �������� �...
OpenDialogCompare.Title �������� ����� ��� ���������
CommonExtractionFolder1.Caption ������ ����� ��� ���������� ������
CopyName1.Caption ����������� ���
ExtractForDefTool1.Caption ����������� ��� DefTool...
ExtractForDefTool2.Caption ����������� ��� DefTool...
ExtractWithExternalShadow1.Caption ������������� ���� ��������
ExtractIn24Bits1.Caption ������������� � 24 �����
StoreAsText1.Caption ���� ���������� � ��������� �������
MoveUp1.Caption �������� �����
MoveDown1.Caption �������� ����
SortByName1.Caption ����������� �� �����
SortTreeByName1.Caption ����������� �� ������ �� �����
Select1.Caption �������
ComboExtFilter.Hint ������ �� ����������
Button1.Caption OK
Button2.Caption ������

[Help]
GlobalCharset RUSSIAN_CHARSET
EditsCharset RUSSIAN_CHARSET
Memo1.Text MMArchive v%VERSION%
(c) Sergey Rozhenko
http://sites.google.com/site/sergroj/
sergroj@mail.ru

������ ��������� ����� ������������� ����� ������ Might&Magic 6-8 � Heroes 3, ����� *.hwl.
����� � ������� ���� ����� ����������� ����������� ��������� � � �������������.

������� ������ �� ���� ��������� �������� ���, ����� ��������� �������� �����������.


[ ����������� ������� ]
������ � �������� ������ �������� � ������������ ������ � ���������� ��� �������. ���� ����� ���� ������� �������, ������� ������ "��������������", ����� ��������� ��� ������ �� ��������.
���� �� ������� ����� .vid, ����������� �������� �����. �� ����������� ������ �������� ��� ������ � �������, ���� �� ������������� ���. �������: ��-�� ����, ��� ������ .vid �� �������� ���������� � �������� ������, MMArchive ���������� � � ����� ������. ������ ���������, �������, �� ������������ � � ����� ������� ������ ������ � ������ ����� �������.


[ ��������� � ������� ]
������� "��������� � �������" ��������� � ������� ����� ��� ����� �� ������� ������. ����������� ����� ������������ ������ ������������ ��� ���������� ���.


[ ���������� ������ ]
��� ���������� ������ ����������� ������ "��������" ��� �������������� ����� � ���� ���������.
� ������ � h3bitmap.lod �������� ����� ���������� ".pcx", �� �� ������ ������������ ������� bmp'��� - ��������� ���� �� ����������� � ".pcx".

��� ���������� �������� � ������ M&M ������ ����������� ���������� ".bmp". � �������� � M&M ������ 256 ������. ����� �� ���������� �������� � icons.lod, ��������� ���� ��������� � � 256 ������, �� ��� �������� �������� ����� ������ ��� � ���������������� ����������� ���������.
��� ���������� �������� � sprites.lod � bitmaps.lod ����� ��������� ��������� �� ������, ��������� � ��������. ������� � ���, ��� � sprites.lod �������� �� �������� ������, � ������ ������ ����� �������, ��������������� ����� "PAL*" �� bitmaps.lod. �������� � bitmaps.lod, ���� � ������ � ���� �������, ���� ������� ��������� ����� ������� "PAL*". ����� �������, ��� ������ �������� �� ���� ���� �������, � bitmaps.lod ������ ������������ ��������������� �������. ����� ���, ��� ��������� ��������, ������� ������� ���������� �� ������������, �� ������ �������� � ������� � bitmaps.lod ��� ��������� �������. ��������� ������ ��� �������, ����� �� ������ ��������� ��������.
������ ����������: ���� �� �������� � mm8leveleditor, �� ������, ��� �� ���������� ���������� ".sprite.bmp", ".tga.bmp", ".4tga.0.bmp" - ".4tga.3.bmp". MMArchive ������ ���������� ".bmp". ����������� �������� ".4tga.1.bmp" - ".4tga.3.bmp" �� ������� �������������.

����� �������� �������, �������� �������� � ������������ � � ������� ��� ���������� - ��������, "PAL722". ����� ���������� � ��� ������. ��� �� �� ������ ��������� ������� � ������� ".act".
� ��������� ���� ��� ���� ��������. ����� ����� ������������ ������������ ������ 50 ������. � MMExtension � ���� ��� ����������� (�� ��������� ������ ����� ������������ 200 ������ �� ����� � ��� ����� ����� ��������� �����), �� ��-����� ���������� ������������ ����� ������� ��� �������� � ������� �������� ������, ���� �� ������ ������������ �� �� ����� �����.


[ ������� �������� � M&M ]
�� ��������� �������� �������. � ��� ���� 3 �������, ������� ������� � ����� dsft.bin. ������ �� ������ ���� ���������� ����� �������, ��������� ��� �������� � sprites.lod. �� ������ �� ����������, ������ � ���� �������. ��� ��������� �������, ��� ��������� �������:

����� ������� ������:
����������� ����� ��� ������ �������� �������, ���������� �� � 256 ������ � ����� �������� � ������ ���� �� ������ ������� (�� ������ ������� ��� � ������� DefTool v2: http://sites.google.com/site/sergroj/wog/DefTool2.rar?attredirects=0). ��������� ���� ���� ��� ������ ������ �������.
����� ��� ���� ������� ��� 2 �������. ��� ����� �������� ���� ���� � �������� ��� � ������� ����� ��������, ��� �������/������������/������� (Hue/Saturation/Brightness) � �������/�������� (Brightness/Contrast). ��� ������� ������ ������ �������, �� ����� �� ��, ����� ������ ��������� ����� ������ ������. �������� ��� 2 ������� - � ��� ������. ���������� ��� ��� � sprites.lod.

����� ���������� ������:
1 ����� ������ + 3 ������� - ��� ��������������� NWC, ����������� ��������� ����������� � ������, ������ sprite.lod � �������� ��������. ��� �� ��������� �� �����������. �� ������ ������� 3 �������� ������ �������, ������� ����� ����������� �� ������ �������, �� � ������, ��� ������. ��� ��� 3 ������ ������� - ����������� �� ��� ������� �������, �������������� ������� � ����� ������� (��� ��, � ������� DefTool v2 ��� �������� ��������). ����� �������� �� � sprites.lod � �������� Data\Tables\SFT.txt, ������� ������ MMExtension. ��������� �� ���� ��� ���������� Maestro, ����� �������� �������, ���������� �������. ��� ���, ������ �����, ����� ��������� ��������� ����� �����, ������ ��� �� ������� ����������� �� ���������� ����������� �������� � ������ ����������� ������ M&M.

����� ������� ������:
���� �� ���������� �� ��������, ������ "�� ���������" � ���� "�������", �� �������, ��� �� ��������� � NWC. ����������� ����� �������, ������� �� ��������, � ��������� ��������, �������� ����. ��� ������� �� ����� ����� ����� ����� ������.

Caption �������
Loading

0 comments on commit 6a4f5e4

Please sign in to comment.