Zlecę pracę za zł.
Prosty program z jednego pliku tekstowego wyszukuje się nazwy z końcówką .3ds na podstawie tych nazw pliki z końcówką .mrm następnie edytuje mrm i szuka tan nazwy z końcówką.tga techniczne musiałbym to pokazać na rozmowie
Piszmy tu bo jak ja nie zrobię to inni będą mieli wytyczne
1.A to w przyszłości trzeba będzie program rozwijać czy wystarczy raz napisać.
2Ten tekst szukany z końcówką 3ds skąd wiedzieć gdzie się zaczyna. Bo wiemy że się kończy na .3ds.
3. Co to znaczy że edytuje pliki .mrm. Co tam edytuje.
Zacznijmy od tego, co to są te pliki MRM, bo pierwszy raz słyszę o takim rozszerzeniu…
Jak to tylko dziwne rozszerzenie na prosty plik, to żaden problem; a jak tam siedzi niewiadomoco, albo nawet zaszyfrowane niewiadomoco, to ten projekt przestaje być łatwy, a cena leci w górę o kilka rzędów wielkości…
A biorąc pod uwagę tytuł tematu, obróbka zaszyfrowanych/podpisanych danych nie wydaje się niemożliwa…
Obawiam się że to niekoniecznie będzie takie proste. mrm i 3ds sugeruje że to jakieś modele 3d a tga sugeruje że chcesz podmienić tekstury. Myk polega na tym, że mówimy tu o plikach binarnych i z reguły takich plików nie da się tak prosto edytować i niczego nie zepsuć. W najlepszym wypadku można podmienić jeden string na drugi o identycznej długości i jeśli nie ma tam nigdzie zadnej checksumy to taki zabieg może się udać i coś takiego to kilka linijek kodu w pythonie.
MRM to pliki modeli gier Gothic i Gothic 2. Silnik gry (ZenGin) tworzy je z plików .3ds
Nie chcę zniechęcać, ale sprawdzałeś, czy taka podmiana zadziała? Bo ja sprawdziłem i podmieniając tylko nazwę tekstury w pliku uzyskujemy takie coś:
Przed:
Po:
log z zSpy:
-3- 00:17 Warn: 0 D: OBJ: SetObjectName() on shared object class 'zCMaterial' failed: object with that name already exists! OBJ_CITY_MARKETSTALLS_02 .... <zObject.cpp,#299>
-3- 00:17 Warn: 0 C: zCOBBox3D::LoadBIN(): really many child bboxes found. probable data corruption. try to delete all _compiled data instead converting on the fly! .... <zBVolume.cpp,#2376>
-3- 00:17 Warn: 0 B: MOBCONTAINER: Item-Instance not found: ItWr_Map_NewWorld .... <oMobInter.cpp,#2983>
-3- 00:39 Warn: 0 C: zCOBBox3D::LoadBIN(): really many child bboxes found. probable data corruption. try to delete all _compiled data instead converting on the fly! .... <zBVolume.cpp,#2376>
-3- 00:39 Warn: 0 B: VFILE: Seek -2087026660 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10720. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
-3- 00:39 Warn: 0 B: VFILE: Seek -12605836 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10726. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
-3- 00:39 Warn: 0 B: VFILE: Seek -219540310 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10732. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
-3- 00:39 Warn: 0 B: VFILE: Seek -708951513 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10738. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
-3- 00:39 Warn: 0 B: VFILE: Seek -1264830793 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10744. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
-3- 00:39 Warn: 0 B: VFILE: Seek -985481961 on file NW_CITY_MARKETSTALL_ALCHEMY_01.MRM failed. Current position is 10750. Filesize is 11087 .... <zDisk_Vdfs.cpp,#255>
Tak jak pisze @Shalom, plik najpewniej robi się niespójny
@avetz666: Jaki masz budżet?
Dobra, chyba mam coś, co działa
Dla jasności, przykładowy plik .MRM wygląda tak:
±H+ 0' „ zC“AŹÂˇ‚śÂ|˙yäÍW@ľúvB„ zC¤ÍW@ľúvB|˙yĂ“AŹÂˇ‚śÂúţšÂ’AŹÂvő…Aúţ¤Â’AŐÂşúvBôýeÂ’AŐÂ~őŐA›B’AŹÂ~ő…AĄB’AŐÂľúvBfB’AŐÂ~őŐA›B“AŹÂ
şÁĄB“AŐ¡‚ÂfB“AŐÂA„€hC“AŹÂ
şÁ„€mC“AŐ¡‚„€TC“AŐÂAÂ|hĂ’AŹÂrő…A|mĂ’AŐÂşúvB|TĂ’AŐÂrőŐAúţšÂ“AŹÂ
şÁúţ¤Â“AŐ¡‚Âôýe“AŐÂAÂ|hĂ“AŹÂ‚
şÁ|mĂ“AŐ¡‚Â|TĂ“AŐÂA„ zC“AŹÂ_}ŹB|˙yĂ“AŹÂ_}ŹB„€YC’AŹÂ†ő…A„€hC’AŹÂĂúNB„€TC’AŐ†őŐA„€mC’AŐÂÂúvBĄB“AŐÂAÂúţ¤Â“AŐÂAÂ|mĂ’AŐÂrőŐA|mĂ“AŐÂAÂĄB’AŐÂ~őŐA„€mC’AŐ†őŐA„€mC“AŐÂBÂúţ¤Â’AŐÂvőŐA„€TC’AŐÂÂúvBfB’AŐÂľúvBzB’AŹÂżúNBfB“AŐ¡‚ÂzB“AŹÂAi„€TC“AŐ¡‚„€YC“AŹÂAiÂôýe“AŐ¡‚Âôýy“AŹÂAiÂ|TĂ“AŐ¡‚Â|YĂ“AŹÂAiÂ|TĂ’AŐÂşúvB|YĂ’AŹÂ·úNBôýeÂ’AŐÂľúvBôýyÂ’AŹÂ»úNB|˙yĂ&:¡‚śÂ„ zC&:¡‚śÂzB“AŹÂ
şÁôýy“AŹÂ‚
şÁzB’AŹÂ~ő…A„€hC’AŹÂ†ő…A„€YC“AŹÂ‚
şÁ|YĂ’AŹÂrő…A|YĂ“AŹÂ‚
şÁôýyÂ’AŹÂző…A›B’AŹÂżúNB›B“AŹÂAi„€hC“AŹÂAiÂúţšÂ“AŹÂAiÂ|hĂ“AŹÂAiÂúţšÂ’AŹÂ»úNB|hĂ’AŹÂ·úNB„€YC’AŹÂÁúNB|˙oĂ™ęÁ…!]B|˙oĂÎ6ľoOB„ pC™ęÁ‡!]B„ pCÎ6ľqOB|˙oĂ{RSÂÎĂÂ|˙oç-ÂŮ}ŠÂ„ pC{RSÂËĂ„ pC§-ÂÖ}ŠÂ| . k k | š m Ý É Ü l ‘ Ó o Ą n Ň … q Ď « Î p — s × ± Ö r ‹ u Ů Ă Ř t Ń w · v Đ Ž Ű y ˝ x Ú 0 { +
, z z ~
Ę } ” D ě € E Ő „ C € ě ť ¨ 9 ‡ < † = ´ Š ‰ Ŕ Ť Ś ! ş Ź ˘ “ G J K ’ ź – ? „ Ő • ® 2 ™ 5 6 Ć $ ś ' › ( – ź @ ž B A “ ˘ H K J Ţ n Ą F ß I ‡ : ¨ = ŕ < p ¦ « 8 ; á ™ 3 ® 6 â 5 r ¬ ± 1 4 ă Š ´ ä v · ˛ ĺ ş ć x ˝ ¸ ç Ť Ŕ ! ę t ľ Ă ë ś % Ć ( č ' l Ä É # & é Í Ë } Ę / Í + Ě 0 Ď > … Ń Ó ‘ L D ” Ô × 7 — Ů " ‹ Ű Ž Ý ) š ß F Ł á © 8 ă Ż 1 ĺ µ ç » é Ç # ë Á B ž í ň
* ó ú ń ý đ ó ř * - ů ÷ ô ú
˙ đ ţ ý ů ˙ €żYyżÇŁ= Đ? €ż Ô5żD> “ż €ż JŃń˝DO>J D”€2N4¬ľ˙qżPµzżŕ^=H €? Ž¨ůľ ™G=H fŢ@łL4¬>˙q?Â^¨ż@L ˝0ąđq?k)¬ľ°övż`‚=7 ˝0ąđq?k)¬ľć»ż Ú=7 Ţ
°8ßq?–¬ľt+§˝`‚=6 Ţ
°8ßq?–¬ľ‘’\ľ 9©<6 íU>Á}?yO¸ľ€°ń= €ż € ĺąľVĆD? X,098q?;>¬ľ¬C‘˝ ˝ë< X,098q?;>¬ľ~sżŔé^< C¨Ś>n&vż‰´™?đ˝v>0 €ż p<‡˝ 'ŐĽ €ż –ć˝Ŕţq˝ C¨Ś>n&vż‰´™?ü^”> Tm}żÂĐ> Ľ"ľ¬ľ¤> Tm}żÂĐ> z9˝´c> i| ?¨Śľo&v?aăľB> i| C¨Ś>n&vż‰´™?`}˝. i| €ż p<‡˝„A7> f| €ż –ć˝°f> i| C¨Ś>n&vż´™?€!TĽ i|Tm}żÂĐ> Ľ"ľÓŽ> i|Tm}żÂĐ> {9˝8đV> i|łG´>¨Śľo&v?
ÂľB> i| I¨Ś>n&v?aĎľBU>2 i| €ż Ä"Z< 'ŐĽ i| €ż át=Ŕţq˝ €I¨Ś>n&v?ačľBU> Tm}żÂĐ> ĆĂ=¬ľ¤> Tm}żÂĐ> hü;´c> ?¨Śľo&vżŠt˘?ü^Ź> =‰ť´D¨Ś>n&v?„Ń˝BU>4 i| € €ż ä"Z<„A7> i| €ż át=°f> i|=‰µ?¨Ś>o&v?
ÂľBU> i|Tm}żĂĐ> ĆĂ=ÓŽ> i|Tm}żĂĐ> $hü;4đV> i|łG5A¨Śľo&vżt˘?€şĽ i|¬w°¸rq?/H¬ľ*¤|żĐŢ!= i| €? {(ż¤l3? g| íU>Á}?yO¸ľÄz#? i|¬w°¸rq?/H¬ľ°
`ż€íë< i| €ż łq…>D˛? i| €ż”¦‰˝ÇŁ= g| €? ]ňŘľoe> i| C¨Ś>n&vż´™?€Đż, i| €ż p<‡˝Đ8 ? g| €ż –潯? C¨Ś>n&vż´™?€P#ż Tm}?ĂĐ> %ľ(%‹ľ Tm}?ĂĐ> :˝`”Oľ
˛G´E¨Śľn&v?úží>B>
C¨Ś>n&vż‰´™?ˇ’ľ* €ż p<‡˝p~©> €ż –ć˝Řkş> C¨Ś>n&vż‰´™? ˇ«ľ Tm}?ÂĐ> $ľsjľ Tm}?ÂĐ> :˝(˝#ľ
i|łG4=¨Śľo&v?ó=%>B>
i| €ż ü"Z<Đ8 ? i| €ż ét=Ż? i| <¨Ś>o&v?úžň>BU> i|˛G´@¨Ś>o&v?úží>B> g|Tm}?ĂĐ> »ůÎ=`”Oľ i| ?¨Śľo&vż‰t˘?€Pż i|Tm}żĂĐ> ¤hü;đ> i| <¨Ś>o&v?é{ú=BU>( f| €ż ä"Z<p~©> g| €ż ét=Řkş> i| <¨Ś>o&v?ó=/>BU> i|Tm}?ŐĐ>k´g4¸ůö=sjľ i|Tm}?ŐĐ>k´g4qó=(˝#ľ f| ?¨Śľo&vżŠt˘?ˇ¦ľ f|fŢ@łL4¬>˙q?بżśZ(@7  €ż đUľ¬Ĺ>7 g| €? Śň<ż@,č<6 i|D”€2N4¬ľ˙qżĽ÷˝€k= f|Tm}żĂĐ> †Ć›=đ> g|Tm}?ĂĐ> €oó= Hř˝ i|Tm}?ĂĐ> ‹:˝Ŕ™ ˝ i|Tm}?ĂĐ> €ió=Ŕ™ ˝ i|Tm}żĂĐ> z9˝đ>
i|Tm}?ĂĐ> wó=`”Oľ e|Tm}żĂĐ> dhü; W/> e|Tm}?ĂĐ> Ť:˝0Hř˝ i|Tm}żĂĐ> z9˝ W/>
i|Tm}?ĂĐ> ¶ůÎ= Hř˝ i|Tm}?ÂĐ> łůÎ=Ŕ™ ˝ i|Tm}?ÂĐ> Eé˝Ŕ™ ˝ i|Tm}?ÂĐ> Fé˝0Hř˝ e|Tm}żÂĐ> ˝ľđ> e|Tm}żÂĐ> ˝ľ W/> g|Tm}żĂĐ> „Ć›= W/> i|xh5B¨Śľo&vż´™?€!TĽ i|XR2B¨Śľo&v?úžň>BU> g| ?¨Śľo&vż‰´™?ˇ«ľ i| ?¨Śľo&v?ačľBU> i| ?¨Śľo&vż‰´™?ü^”> i|łGł>¨Śľo&v?
ÂľBU> g|łG4?¨Śľo&v?ó=/>BU> i| ?¨Śľo&vż´™?€P#ż e| €ż ó®ä>ú> i| €ż ó®ä>D˛? i| €ż łq…>ú> î?Tm}?ĂĐ> sóU= ÚBľ i|<‰5D¨Śľn&vż‰´™?`}˝ i|Tm}żĂĐ> ß<
v> i| ?¨Śľo&vż‰´™?ˇ’ľ i|Tm}żÂĐ> |9¸˝
v> A¨Śľo&v?ç{ú=BU> Tm}żÂĐ> |9¸˝Ü5J> =‰4@¨Śľo&v?úžŮ>BU> Tm}?ÂĐ> ióU=Đľ i| €?¨Śľo&vż‰´™?đ˝v> i|Tm}?ÂĐ> F…˝ ÚBľ i| ?¨Śľo&v?„Ń˝BU> g|Tm}?ÂĐ> E…˝Đľ ?¨Śľo&v?aĎľBU> íU>Á}?]żÂz#? €? öúĎľÚ˝9? €ż ó®ä>D˛? €ż ü‰ ż]0D? €íU>Á}?]ż€°ń= €ż ó®ä>ú> Ş@Tm}żĂĐ> *ß<Ü5J> i| ?¨Śľo&vż´™?€Đż i| ?¨Śľo&vż´™?€P#ż i|Tm}żĂĐ> ‡ĆĂ=Ü5J> i|Tm}?ĂĐ> şůö=(%‹ľ g|łG4?¨Śľo&v?ó=/>BU> Tm}?ÂĐ> G…˝sjľ €ż p<‡˝Řkş> łGł>¨Śľo&v?
ÂľBU> f|Tm}żÂĐ> |9¸˝ÓŽ> i| €ż p<‡˝°f> i| ?¨Śľo&vż‰´™?ü^”>! Tm}żÂĐ> ß<¬ľ¤>! i| €ż Ä"Z<Ŕţq˝! f| ?¨Śľo&v?ačľBU>" Tm}żÂĐ> |9¸˝¬ľ¤>" €ż p<‡˝Ŕţq˝" ?¨Śľo&vż‰´™?ˇ«ľ# i|Sm}?çĐ>k´ç4qóU=sjľ# f| €ż ä"Z<Řkş># i| ?¨Śľo&vż´™?€P#ż$ i|Tm}?ĂĐ> wóU=(%‹ľ$ i| €ż ü"Z<Ż?$ f|XR2B¨Śľo&v?úžň>BU>% Tm}?ĂĐ> J…˝(%‹ľ% €ż q<‡˝Ż?% xh5B¨Śľo&vż´™?€!TĽ& f|Tm}żĂĐ>
ß<ÓŽ>& i| €ż Đ"Z<°f>& i|Tm}żĂĐ> ‡ĆĂ=Ü5J>' i|˛G´@¨Ś>o&v?úžŮ>BU>' f| €ż ét=Đ8 ?' i|Tm}żĂĐ> ĆĂ=
v>( i|Tm}?ĂĐ> ąůÎ=(˝#ľ( i| €ż ét=p~©>( i| <¨Ś>o&v?ô=>B>) i|Tm}?ĂĐ> ąůÎ=(˝#ľ) f|Tm}żĂĐ> „Ć›= W/>) i|Tm}żÂĐ> Ľ"ľ
v>* Tm}?ĂĐ> €Gé˝(˝#ľ* e| €ż –ć˝p~©>* C¨Ś>n&vżt˘?ˇ—ľ+ f|Tm}?ĂĐ> €Gé˝(˝#ľ+ i|Tm}żÂĐ> ˝ľ W/>+ f|Tm}żÂĐ> Ľ"ľÜ5J>, i|Tm}?ĂĐ> €Ié˝`”Oľ, e| €ż –ć˝Đ8 ?, g| C¨Ś>n&vż‰t˘?€Pż- Tm}?ĂĐ> €Ié˝`”Oľ- i|Tm}żÂĐ> ˝ľđ>- Tm}?ÂĐ> $ľ ÚBľ. i|Tm}żĂĐ> ˝ľ8đV>. i| €ż –潄A7>. i| C¨Ś>n&vżt˘?`U˝/ i|Tm}żĂĐ> ˝ľ8đV>/ i|Tm}?ÂĐ> Fé˝0Hř˝/ i|Tm}?ÂĐ> #ľĐľ0 Tm}żĂĐ> ˝ľ´c>0 i| €ż –ć˝ 'ŐĽ0 C¨Ś>n&vż‰t˘?ř^€>1 i|Tm}żĂĐ> ˝ľ´c>1 f|Tm}?ÂĐ> Eé˝Ŕ™ ˝1 i|Tm}?ÂĐ> ¶ůö=Đľ2 i|Tm}żĂĐ> |Ć›=´c>2 i| €ż át= 'ŐĽ2 d| I¨Ś>n&v?aÔľB>3 Tm}żĂĐ> |Ć›=´c>3 i|Tm}?ÂĐ> łůÎ=Ŕ™ ˝3 Tm}?ĂĐ> ąůö= ÚBľ4 i|Tm}żĂĐ> €Ć›=4đV>4 i| €ż ét=„A7>4 ť I¨Ś>n&v?„ĺ˝B>5 i|Tm}żĂĐ> €Ć›=4đV>5 i|Tm}?ĂĐ> ¶ůÎ= Hř˝5 g| €ż Ć·Öľ4Ă>6 €żYyż W$<6 €? €ÜŢż8lh>7 €ż”¦‰˝ W$<7 Tm}żĂĐ> z9˝ W/>8 i|łG4?¨Śľo&v?ó=>B>8 i|Tm}?ĂĐ> Ť:˝0Hř˝9 f|łGł>¨Śľo&v?„ĺ˝B>9 i|Tm}żĂĐ> dhü; W/>: i| ?¨Śľo&vż‰t˘?ˇ—ľ: g| ?¨Śľo&vżt˘?‚Đ ż; i|Tm}?ĂĐ> wó=`”Oľ; f|Tm}żĂĐ> z9˝đ>< XR2B¨Śľo&v?úžŢ>B>< Tm}?ĂĐ> €ió=Ŕ™ ˝= ?¨Śľo&vż‰t˘?ř^€>= Tm}?ĂĐ> ‹:˝Ŕ™ ˝> i| ?¨Śľo&v?aÔľB>> i|Tm}?ĂĐ> €oó= Hř˝? g|xh5B¨Śľo&vżt˘?`U˝? g|Tm}?ĂĐ> ąůÎ=(˝#ľ@ i| <¨Ś>o&v?ó=%>B>@ f|Tm}?ĂĐ> €Gé˝(˝#ľA e| C¨Ś>n&vż‰t˘?ˇ¦ľA Tm}?ĂĐ> €Ié˝`”OľB C¨Ś>n&vżt˘?‚Đ żB Tm}żĂĐ> ˝ľ8đV>C g| C¨Ś>n&vżt˘?€şĽC f|Tm}żĂĐ> ˝ľ´c>D i| C¨Ś>n&vżŠt˘?ü^Ź>D i|Tm}żĂĐ> €Ć›=4đV>E i|=‰ť´D¨Ś>n&v?
ÂľB>E f|Tm}żĂĐ> |Ć›=´c>F I¨Ś>n&v?aăľB>F Tm}żĂĐ> †Ć›=đ>G f|˛GµE¨Ś>n&v?úžŢ>B>G i|§N°8rq?/H¬ľW¶˝đ7J=H f|§N°8rq?/H¬ľI°řľ0Ç=H f| €? AxúľČŞ‹=I i|D”€2N4¬ľ˙qżŕ zż°Ď•=I i|§N°8rq?/H¬ľI°řľ0Ç=I e|§N°8rq?/H¬ľW¶˝đ7J=I i|D”€2N4¬ľ˙qżLĂ÷˝ŕ=J C0ą8q?<>¬ľ®·ZżŔč3<J ÂC0ą8q?<>¬ľ}ĺwżput=J i| €ż € _ŕľč˛>K g|C0ą8q?<>¬ľ}ĺwżput=K i|C0ą8q?<>¬ľ®·ZżŔč3<K e|D”€2N4¬ľ˙qżĽ÷˝€k=K g|Č-09ďq?s)¬ľWË˝ ďc<L ÂČ-09ďq?s)¬ľ"pľŔĆ=L e| €? Śň<ż@,č<L €? €hZ=żŇC=M i|fŢ@łL4¬>˙q?2l¤żŢ@M i|Č-09ďq?s)¬ľ"pľŔĆ=M g|Č-09ďq?s)¬ľWË˝ ďc<M g|ü•°¸ßq?–¬ľ0qrż€íc<N f|ü•°¸ßq?–¬ľ$hżŔó‹<N f| €ż qĽę˝ÖßÄ>N i|fŢ@łL4¬>˙q?بżśZ(@N i| €ż đUľ¬Ĺ>O i|fŢ@łL4¬>˙q?}夿v[(@O i|ü•°¸ßq?–¬ľ$hżŔó‹<O i|ü•°¸ßq?–¬ľ0qrż€íc<O f|˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙. i R ) W L Y > U 7 T " X S , + j
i E D h Q C g < : f e d c J H ‚ „ @ b 5 3 a ' % A @ ` J H F ˇ _ < : 8 § ¦ ^ 5 3 1 ¬ ] ł ˛ \ ą ¸ [ ż ľ Z ' % # Ĺ Ä 0 / Y > X W L D V U 7 T " S R ) ¤ Ł Ş © ° Ż ¶ µ Ľ » Č Ç Â Á Q B
ď î P - * ö ő ô O ý ü ű N M j j j k l l l n n n p p p r r r
t
t
t v v v x x x z } € € € ‚ … ‹ Ž ‘ " ” $ — & š ( ť * , Ł . ¦ 0 © 2 ¬ 4 Ż 6 ˛ 8 µ : ¸ < » > ľ @ Á B Ä D Ç F Ę H Ě J Î K Đ L Ň M Ô N Ö O Ř P Ú Q Ü R Ţ S ŕ T â U ä V ć W č X ę Y ě Z î \ đ ^ ô ` ÷ b ű d ţ f h j
“AŹB €ż żďd@<‰5D¨Śľn&vżĚ˙ŹÂTm}?ĂĐ> €ÓÂTm}żĂĐ> öŻ+Ŕ A¨Śľo&v?raĂTm}żĂĐ> qaĂTm}?ĂĐ> €„ zC €? tvB íU>Á}?|˙yC €ż € \CTm}?ĂĐ> “AŐB €ż Č/…BTm}?ÂĐ> Á-…BTm}żÂĐ> \CTm}żÂĐ> śđA <¨Ś>o&v?XB C¨Ś>o&vżˇ‚śB €ż¤<ŤÁE:„9˙q?H4¬ľócCÂD”€2N4¬ľ˙qż|˙oĂ €? „ pĂ €ż € K źÂfŢ@łL4¬>˙q? =Ż·1˙q?I4¬ľő~ż 4I» f|oÉ2˙q?K4¬ľŠX˛;hĺx> i|>Ż72˙q?J4¬ľ
[˛; 4I» g|>Ż72˙q?J4¬ľő~żhĺx> i|>Ż72˙q?J4¬ľő~żhĺx>6 i|oÉ2˙q?K4¬ľŠX˛;hĺx>7 g|=Ż·1˙q?I4¬ľő~ż 4I»H >Ż72˙q?J4¬ľ
[˛; 4I»J >Ż72˙q?J4¬ľő~żhĺx>L oÉ2˙q?K4¬ľŠX˛;hĺx>N i|˙˙˙˙
ŔÜÁoÉ2˙q?K4¬ľ P Ŕ Ŕ j <
@! „" j X# ,
@! Q Č$ Č$ Č$ Č$ Ô$
Ř% ' ' Ä%
Ř% Q 0' 0' 0' ZenGin Archive
ver 1
zCArchiverGeneric
BINARY
saveGame 0
END
objects 2
END
OBJ_CITY_GALLOW_01 } ś % zCMaterial OBJ_CITY_GALLOW_01 &-˙ pBOBJ_CITY_GALLOW_01.TGA 512 512 0 0 €? €? đA ČB @ @OBJ_CITY_MARKETSTALLS_02 ‰ ś % zCMaterial OBJ_CITY_MARKETSTALLS_02 !%˙ pBOBJ_CITY_MARKETSTALLS_02.TGA 512 512 0 0 €? €? đA ČB @ @ |˙yĂ“AŐ¡‚śÂ„ zC ÍW@_}ŹB ;&N TPŔ €? €? €? zC \B –B ?|ÓÂ5ŹÂr.Ŕ[?{5‹=›fˇ<Vš˝˛Ž|?˙ăľęéň<T5ľŐ
}żś´C9“BĹ˙˘B #Ä0Â[<zÂiSŔOż?ľµ=?áË<í˝}J[>Ęěy?›úĽ*ây?˝I\ľö”CÓ¦Bp_cB 'ŞgĂb5ŹÂ8_‰Ŕ8?ĽKł)>~s|?›8y?śh>ĂôĽ˙îi>ßłużú"'>hf›BD ˇAl˝‚B N~ÓB5ŹÂW$˝ŔôR?Rő‰˝…HŢ<Âř‘˝¤ĆzżËo@>!dĽłčA>ÉW{?˛9łCÉŽB\&«B /«gCb5ŹÂ_‰Ŕ?ĽBł)ľ~s|ż›8y?śhľĂô<˙îi>ßłu?ń"'ľef›BD ˇAm˝‚B ?Č0B[<zÂe éŔ›ş?TĹ˝‰aě<Ú,˝"Qwż—t‚>ů‘™Ľ!đ‚>Âpw?@”C]inBM0˛B €? ˙±
Ten akurat składa się z 2 tekstur. Jeśli chcemy zmienić tylko wygląd towaru na stoisku (OBJ_CITY_MARKETSTALLS_02.TGA), interesuje nas ten fragment:
@OBJ_CITY_MARKETSTALLS_02 ‰ ś % zCMaterial OBJ_CITY_MARKETSTALLS_02 !%˙ pBOBJ_CITY_MARKETSTALLS_02.TGA 512 512
Nowa nazwa tekstury, tak jak pisał @Shalom, musi mieć tą samą liczbę znaków, np. AAA_NTEX_MARKETSTALLS_00.TGA
Nie potrzebujemy tekstury w formacie TEX. Wygeneruje się podczas uruchamiania gry.
Musimy podmienić to na:
@AAA_NTEX_MARKETSTALLS_00 ‰ ś % zCMaterial OBJ_CITY_MARKETSTALLS_02 !%˙ pBAAA_NTEX_MARKETSTALLS_00.TGA 512 512
Jak ktoś dobrze ogarnia regexy, to pewnie do zrobienia.
Ale osobiście myślę, że i tak lepiej generować modele z .3ds
Przykład co jest mi potrzebne
Opis po odnalezniu nazwy w pliku.d w innym folderze mam plik mrm. Na podstawie nazw przykład. Item_1h_bleble.3ds w folderze _compiled pliki mrm które program ma odnaleźć jak i skopiować do innego folderu. Następnie po edytowaniu pliku mrm w notatniku jest ciąg znakow w którym jest mnie interesującą linijka z nazwą tekstury zawsze zaczyna się od pbnazawatekstury.tga następnie po skopiowaniu nazwy program musiałby wyciąć przedrostek pB i odszukać pliku w folderze _compiled gdzie są tekstury i przekopiować je do innego folderu
Nie interesuje mnie podmienianie tekstur ale szubciekie wyciągnięcie dwóch typów plików do osobnych folderów