Mir 2 -> Mir 3 Graphic Conversion Tools

Join Discord

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
Anybody aware of any conversion tools / techniques?

I know that KaoriMIM and a few other programs can convert the file systems over, but I was thinkingmaybe to bolster the resources available for Mir 3 servers, if we could get some tools that could say convert a mir 2 monster image into a mir 3 image, I mean its possible as I have done a few manually and I'm sure other have too.

Think about the weapons and monsters we could bring over, could be a good move.

Anyways anyone know of any? any thoughts feedback welcome.

/cheeky
 

Far

tsniffer
Staff member
Developer
May 19, 2003
20,183
30
2,785
540
be hard with weapons as doesnt mir3 hold alot more textures than mir2?
 

Somebody Else

Dedicated Member
Dedicated Member
Jun 24, 2005
114
0
63
Weapons, there would be a few animations missing. Mobs however would work great :) I know Chimera has ported over a bunch of nice ones manually too.

Does it take long to do?
 

Amenovis

Golden Oldie
Golden Oldie
Loyal Member
Jan 9, 2006
1,105
0
143
Germany
i know also falador did on rd he have the fairys from lom2 and they look great in my opinion
@somebody i would say for one complete mob u will need nearly 1 full day, in the way i know i didnt know how Chimera or fala did it. maybe they have a faster way as me. and i use kaori mim that way manual picture by picture.
 

kozak

Dedicated Member
Dedicated Member
Jul 5, 2006
23
1
49
Poland
mobs arent hard u just need to changes offsets and u dont need all day:P
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
manually a mob would take me about 4 hours straight, and tbh get a little annoying after a while.

Weapons should still be doable to some extent though surely?
 

Somebody Else

Dedicated Member
Dedicated Member
Jun 24, 2005
114
0
63
Yes, to some extent they are possible. But mir2 doesn't have the projectile-firing spell animations (correct me if I'm wrong), and possibly others, which will cause the character to go invisible when using them.
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
still there has to be a way around it, I'm going to look into it some more.
 

Kaori

LOMCN MiR3 Queen!
VIP
Jun 3, 2004
3,584
38
285
Canada
you probably just need a excel number conversion for changing the filenames?
then apply it to different mob locations...
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
yep thats the method I use just now kaori, I'm sure others do aswell.
Just wondering if there is/was any programs that do this (semi)automatically but I guess there probably isn't.
 

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,966
110
310
Stoke, UK
I have never done, it but I assume the file name/number is the easy part, if not I can make a program that does it quickly.

The hard part is the image conversion?
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
technically we could get around that by using KaoriMIM to convert the wil file before starting the 'rip' as it were. Or atleast that bit makes sense to me. I'm just thing that this would allow us (as a community) to have a resource pool to choose from, if we have more monsters than the server can support, then server will be different based on the hosts choice of images. Atleast thats a walk in the right direction anyways.
 

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,966
110
310
Stoke, UK
There are only so many mobs Mir 3 can support which is the suckiest thing.

I have filled all the blanks in Sting with mobs, and to remove some would mean removing the current areas that use them (Which isn't too bad a move as most are low level areas and are hardly used anyway).

What we really need is a server emulator that allows for as many mon files as you want.

Can you tell me what process is used at the moment (I have never done it), or maybe create a guide as to what needs to be done?
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
Current I have use the following method, I extract 1 Full Mir3 Mob and store the numbers for action and frames. (Ie Idle, 4frames 8 directions)

And then Extract the Mir 2 Mob, and Manually rename the images, missing out the shadows that are combined in the mir 2 format. Then get the offsets from the mir 2 text file (thanks to kaorimim) and manually copy and paste those over.

Rebuild the Mir3 Wil with the new mob.

Jobs done.. but as you can see takes forever!
 

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,966
110
310
Stoke, UK
I have no idea how an image array is constructed, or how to extract the data using VB, but that part would be handled fine using KaoriMIM anyway.

The image rename could be done quite quickly using VB...

I.e.

Extract the Entire Mir 2 Mon into a Folder
Extract the Entire Mir 3 Mon into a different Folder

You tell it the Mir 2 Mon folder (Where you extracted the Entire Mon file), the Mir 3 Mon folder, which mob image set you want i.e. Mon No. 6 from the Mir 2 folder to go to Mon No. 3 in the Mir 3 Folder.. and it would grab the data it needs, and then copy and rename everything and recreate the offset text file. Then all you would have to do it remake the Mon file using KaoriMIM.

Easy enough using VB, as long as there is no Image adjustment needed it should be OK.

I will have a go at it tomorrow and see what happens.. if it works I will create a small program that will do it.

/Mick
 

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,966
110
310
Stoke, UK
It doesn't seem quite as easy as I first though as Mir 2 Mon files (Each individual Mob) vary depending on how it attacks whereas Mir 3 files are always 1000 Images long.

Here are 3 I looked at earlier..

Code:
1	4	Rest	N
5	10	Blank	
11	14	Rest	NW
15	20	Blank	
21	24	Rest	W
25	30	Blank	
31	34	Rest	SW
35	40	Blank	
41	44	Rest	S
45	50	Blank	
51	54	Rest	SE
55	60	Blank	
61	64	Rest	E
65	70	Blank	
71	74	Rest	NW
75	80	Blank	
81	86	Walk	N
87	90	Blank	
91	96	Walk	NW
97	100	Blank	
101	106	Walk	W
107	110	Blank	
111	116	Walk	SW
117	120	Blank	
121	126	Walk	S
127	130	Blank	
131	136	Walk	SE
137	140	Blank	
141	146	Walk	E
147	150	Blank	
151	156	Walk	NW
157	160	Blank	
161	166	Attack	N
167	170	Blank	
171	176	Attack	NW
177	180	Blank	
181	186	Attack	W
187	190	Blank	
191	196	Attack	SW
197	200	Blank	
201	206	Attack	S
207	210	Blank	
211	216	Attack	SE
217	220	Blank	
221	226	Attack	E
227	230	Blank	
231	236	Attack	NW
237	240	Blank	
241	242	Receive Hit	N
243	244	Receive Hit	NW
245	246	Receive Hit	W
247	248	Receive Hit	SW
249	250	Receive Hit	S
251	252	Receive Hit	SE
253	254	Receive Hit	E
255	256	Receive Hit	NE
257	260	Blank	
261	270	Dieing	N
271	280	Dieing	NW
281	290	Dieing	W
291	300	Dieing	SW
301	310	Dieing	S
311	320	Dieing	SE
321	330	Dieing	E
331	340	Dieing	NE
341	350	Blank	
351	356	Ranged Attack 1	N
357	360	Blank	
361	366	Ranged Attack 1	NW
367	370	Blank	
371	376	Ranged Attack 1	W
377	380	Blank	
381	386	Ranged Attack 1	SW
387	390	Blank	
391	396	Ranged Attack 1	S
397	400	Blank	
401	406	Ranged Attack 1	SE
407	410	Blank	
411	416	Ranged Attack 1	E
417	420	Blank	
421	426	Ranged Attack 1	NE
427	430	Blank	
431	500	Blank

Code:
1	4	Rest	N
5	10	Blank	
11	14	Rest	NW
15	20	Blank	
21	24	Rest	W
25	30	Blank	
31	34	Rest	SW
35	40	Blank	
41	44	Rest	S
45	50	Blank	
51	54	Rest	SE
55	60	Blank	
61	64	Rest	E
65	70	Blank	
71	74	Rest	NW
75	80	Blank	
81	86	Walk	N
87	90	Blank	
91	96	Walk	NW
97	100	Blank	
101	106	Walk	W
107	110	Blank	
111	116	Walk	SW
117	120	Blank	
121	126	Walk	S
127	130	Blank	
131	136	Walk	SE
137	140	Blank	
141	146	Walk	E
147	150	Blank	
151	156	Walk	NW
157	160	Blank	
161	166	Attack	N
167	170	Blank	
171	176	Attack	NW
177	180	Blank	
181	186	Attack	W
187	190	Blank	
191	196	Attack	SW
197	200	Blank	
201	206	Attack	S
207	210	Blank	
211	216	Attack	SE
217	220	Blank	
221	226	Attack	E
227	230	Blank	
231	236	Attack	NW
237	240	Blank	
241	242	Receive Hit	N
243	244	Receive Hit	NW
245	246	Receive Hit	W
247	248	Receive Hit	SW
249	250	Receive Hit	S
251	252	Receive Hit	SE
253	254	Receive Hit	E
255	256	Receive Hit	NE
257	260	Blank	
261	270	Dieing	N
271	280	Dieing	NW
281	290	Dieing	W
291	300	Dieing	SW
301	310	Dieing	S
311	320	Dieing	SE
321	330	Dieing	E
331	340	Dieing	NE
341		Harvested	N
342		Harvested	NW
343		Harvested	W
344		Harvested	SW
345		Harvested	S
346		Harvested	SE
347		Harvested	E
348		Harvested	NE
349	400	Blank
Code:
1	4	Rest	N
5	10	Blank	
11	14	Rest	NW
15	20	Blank	
21	24	Rest	W
25	30	Blank	
31	34	Rest	SW
35	40	Blank	
41	44	Rest	S
45	50	Blank	
51	54	Rest	SE
55	60	Blank	
61	64	Rest	E
65	70	Blank	
71	74	Rest	NW
75	80	Blank	
81	86	Walk	N
87	90	Blank	
91	96	Walk	NW
97	100	Blank	
101	106	Walk	W
107	110	Blank	
111	116	Walk	SW
117	120	Blank	
121	126	Walk	S
127	130	Blank	
131	136	Walk	SE
137	140	Blank	
141	146	Walk	E
147	150	Blank	
151	156	Walk	NW
157	160	Blank	
161	166	Attack	N
167	170	Blank	
171	176	Attack	NW
177	180	Blank	
181	186	Attack	W
187	190	Blank	
191	196	Attack	SW
197	200	Blank	
201	206	Attack	S
207	210	Blank	
211	216	Attack	SE
217	220	Blank	
221	226	Attack	E
227	230	Blank	
231	236	Attack	NW
237	240	Blank	
241	242	Receive Hit	N
243	244	Receive Hit	NW
245	246	Receive Hit	W
247	248	Receive Hit	SW
249	250	Receive Hit	S
251	252	Receive Hit	SE
253	254	Receive Hit	E
255	256	Receive Hit	NE
257	260	Blank	
261	270	Dieing	N
271	280	Dieing	NW
281	290	Dieing	W
291	300	Dieing	SW
301	310	Dieing	S
311	320	Dieing	SE
321	330	Dieing	E
331	340	Dieing	NE
341	350	Blank	
351	356	Ranged Attack 1	N
357	360	Blank	
361	366	Ranged Attack 1	NW
367	370	Blank	
371	376	Ranged Attack 1	W
377	380	Blank	
381	386	Ranged Attack 1	SW
387	390	Blank	
391	396	Ranged Attack 1	S
397	400	Blank	
401	406	Ranged Attack 1	SE
407	410	Blank	
411	416	Ranged Attack 1	E
417	420	Blank	
421	426	Ranged Attack 1	NE
427	430	Blank	
431	440	Blank	
441	446	Spawn 1	N
447	450	Blank	
451	456	Spawn 1	NW
457	460	Blank	
461	466	Spawn 1	W
467	470	Blank	
471	476	Spawn 1	SW
477	480	Blank	
481	486	Spawn 1	S
487	490	Blank	
491	496	Spawn 1	SE
497	500	Blank	
501	506	Spawn 1	E
507	510	Blank	
511	516	Spawn 1	NE
517	520	Blank	
521	530	Blank	
531	533	Missile	N
534	540	Blank	
541	543	Missile	NNW
544	550	Blank	
551	553	Missile	NW
554	560	Blank	
561	563	Missile	WNW
564	570	Blank	
571	573	Missile	W
574	580	Blank	
581	583	Missile	WSW
584	590	Blank	
591	593	Missile	SW
594	600	Blank	
601	603	Missile	SSW
604	610	Blank	
611	613	Missile	S
614	620	Blank	
621	623	Missile	SSE
624	630	Blank	
631	633	Missile	SE
634	640	Blank	
641	643	Missile	ESE
644	650	Blank	
651	653	Missile	E
654	660	Blank	
661	663	Missile	ENE
664	670	Blank	
671	673	Missile	NE
674	680	Blank	
681	683	Missile	NNE
684	690	Blank	
691	700	Blank	
701	710	Missile Strike	
711	800	Blank

Each Mob attack type seems to have its own package size.. (Stupid!)

Now, as far as Mir 3 is concerned the Magics are all done in seperate files, so they can be ignored, as for the other graphics, i don't see it will be a major problem, apart from the fact that the user will have to tell the program the start and end numbers for each mob that you want to copy over.

I still haven't made a Mir 2 > 3 Mob Converstion as I was checking the File structures, but I will work on that one Tonight.
 

CheekyVimto

It's my Precious!
Veteran
Mar 8, 2005
396
170
130
Now, as far as Mir 3 is concerned the Magics are all done in seperate files, so they can be ignored, as for the other graphics, i don't see it will be a major problem, apart from the fact that the user will have to tell the program the start and end numbers for each mob that you want to copy over.

I still haven't made a Mir 2 > 3 Mob Converstion as I was checking the File structures, but I will work on that one Tonight.

But there does seem to be a nice structured way of doing it according to your findings and double checking with some of the manual ones i've done.

So far we know this:
Mir 3 Mob File Structure
Idle - 4 frame (8 directions) (images 01-74)
Moving - 5 frame (8 directions) (images 81-156)
Attacking - 5 frame (8 directions) (images 161-236)
Taking Damage - 2 frame (8 directions) (images 241-256)
Death - 10 frame (8 directions) (images 261-340)
Harvest - 1 frame (8 directions) (images 341-348)
Cast1 - 6 frame (8 directions) (images 351-436)
Cast2 - 6 frame (8 directions) (images 441-516)
Ranged - 3 frame (16 directions) (images 531-683)
Unknown - 10 frame (1direction) (images 701-710)

I haven't started with a mir2 mob yet, but even if we can't go the whole way with a full conversion, maybe we could atleast get a file renaming into the above sections?
 

Somebody Else

Dedicated Member
Dedicated Member
Jun 24, 2005
114
0
63
I assume you mean mir2 structure there CV :P

This is what I have so far of the Mir3 one:

Idle - 4 frame (8 directions) (images 01-80)
Moving - 5 frame (8 directions) (images 81-160)
Attacking - 5 frame (8 directions) (images 161-240)
Taking Damage - 2 frame (8 directions) (images 241-320)
Death - 10 frame (8 directions) (images 321-400)
Cast1 - 6 frame (8 directions) (images 401-480)
Cast2 - 6 frame (8 directions) (images 481-560)
Unknown from 561-640??
Summon - 10 Frames (8 directions) (images 641-720)
Unknown from 721-880??
Harvest - 1 frame (8 directions) (images 881-960)

In fact, I think any animation can have anything up to 10 frames if they like, I see EE has a 10-frame cast2 animation. Every animation uses 10 spaces in the .wil, whether they have 10 images or not.

So actually, looking at the mir2 mobs, it doesn't look too different. Everything up to and including attacking is identical, and after that everything up to and including death animations are always the same (meaning the conversion can be done the same way every time). For everything else apart from the flinch and missile animations, you can simply extract with the correct offset to place them in the right place in the mir3 structure. Unfortunately I haven't seen any mir3 mob that has a 16-direction attack though.

Question, how different are the offsets from mir2 to mir3? Can it just be done with Excel?
 
Last edited:

Jokers

LOMCN n00bie
Aug 7, 2008
4
0
32
I have the same problem all you guys does but the most painful part is change the offset that "$*@*%&$" job take lot of time. Just wonder if there any tools that can correct the offset between mir 2 and mir3 that will be save alot of time!!