Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Guide] Editing client files to modify graphic assets, audio and more

Initiate Mage
Joined
May 24, 2022
Messages
4
Reaction score
2
This guide will introduce basic editing of LaTale client files to modify existing graphics and sound effects. It explains the contents of various client files and provides two examples for editing assets to get you started.

What you need


Client file contents

The LaTale client comes with a bunch of .SPF archives that can be unpacked and repacked by the "Packer2" tool.
The following list may serve as a reference for where to look for what:

  • AJJIYA.SPF contains folders: ANITABLE
    • animation stuff? binary .DRG and .SEQ files
  • BANX.SPF contains folders: GLOBALRES
    • NPC portraits, item icons, mob portraits (PNG)
  • BARY.SPF contains folders: CURSOR, INTERFACE, LOADING, LOBBY, LOGGIN
    • UI textures, loading screens, login screen (PNG)
  • CLAIRE.SPF contains folders: LOGO, PROLOGUE
    • initial loading screen, game start story pages (PNG)
  • CVOICE.SPF contains folders: CP_IMAGE, STORY
    • some icons, story pages (PNG)
  • DALBONG.SPF contains folders: BGM
    • soundtrack (MP3)
  • HOSHIM.SPF contains folders: FX
    • .FXM, .FXG, .PNG files, effect sprites and animation
  • JINSSAGA.SPF contains folders: BGFORMAT
    • stages files and minimaps (mostly custom binary formats, some PNG)
  • JOOX3.SPF contains folders: BGM
    • more soundtrack (MP3)
  • MAKO1298.SPF contains folders: BACKGROUND
    • stages background sprites (PNG)
  • METALGENI.SPF contains folders: SOUND
    • sound effects (WAV)
  • ROWID.SPF contains folders: LDT
    • values of monsters, items, skills etc. like HP, attack, stats, loot tables, rates etc. (LDT format)
  • RYUMS.SPF contains folders: TERRAIN
    • stages foreground sprites (PNG)
  • ZENNE.SPF contains folders: CHAR\CHARLAYER, CHAR\MONSTER
    • monster sprites, item sprites, character sprites, fashion sprites, weapon sprites (PNG)
Note: AJJIYA.SPF, JINSSAGA.SPF and ROWID.SPF are also part of the server. If modifying any of those three, make sure to also apply the changed files to the server as well to keep them in sync with the client!

Editing graphics assets (sprites)

As an example, we will modify some weapon sprites which are part of "ZENNE.SPF" (see list above).

  1. from the client copy "ZENNE.SPF" to "Tools\LDT_Editing\Packer2"
  2. unpack "ZENNE.SPF" by dragging & dropping it on "UP_P_Unpack.bat"
  3. as an example go to "Unpacked\DATA\CHAR\CHARLAYER\40_WEAPON_001"
  4. open affected sprite sheet with image editor, e.g. "WEAPON_001_004.PNG"
  5. edit the image and save it using the same name, i.e. overwriting the original file
  6. go back to "Tools\LDT_Editing\Packer2", drag "ZENNE.SPF" and drop it on "UP_P_Pack.bat"
  7. copy the rebuilt "ZENNE.SPF" to the client directory
  8. restart the client
Editing SFX definitions and their timings

This demonstrates how to adjust sound effects and their timings for attacks. As an example we will fix the heavy attack of crossbows in the S1 client* because their sound effect plays a little too late.
The sound effect and timing definitions are part of "ROWID.SPF" in LDT format which we need to convert.

  1. from the client copy "ROWID.SPF" to "Tools\LDT_Editing\Packer2"
  2. unpack "ROWID.SPF" by dragging & dropping it on "UP_P_Unpack.bat"
  3. open LaTaleTool.exe, click "Choose File" and select "Unpacked\DATA\LDT\SOUND_EFFECT.LDT"
  4. use "Tools" > "LDT to TXT" and save it somewhere as "SOUND_EFFECT.LDT.TXT"
  5. open up "SOUND_EFFECT.LDT.TXT "in a suitable editor, e.g. Notepad++
  6. search for "bow" in the file, ignore the first two matches (which are actual bow effects), the third one is for crossbow and is located at ID 1009 (at least for the S1 v7 client*)
  7. change the third column ('_DelayTime1') of the line with ID 1009 from 9 to 4, use "File" > "Save as ..." and save the file as "SOUND_EFFECT.LDT.patched.TXT"
  8. open LaTaleTool.exe, use "Tools" > "TXT to LDT", load the "SOUND_EFFECT.LDT.patched.TXT" and save it as "Unpacked\DATA\LDT\SOUND_EFFECT.LDT" from where your "ROWID.SPF is", overwrite the existing "SOUND_EFFECT.LDT" file
  9. drag the "ROWID.SPF" and drop it on "UP_P_Pack.bat"
  10. insert "ROWID.SPF" into the client and server (the modification has no actual effect on the server, but client and server "ROWID.SPF" should always be in sync!)
  11. restart client and server
Changing the "_DelayTime1" value of the line with ID 1009 from 9 to 4 will make the shooting sound effect of crossbows play a bit earlier actually matching the animation in the S1 client*.

* S1 client refers to the v7 NA client as found here:
 
Back
Top