TRS

From wowdev
Revision as of 13:45, 20 May 2014 by Schlumpf (talk | contribs)
Jump to navigation Jump to search

This file is used by World of Warcraft in order to convert texture filename hashcodes into the string that is calling the said texture. There is only one .trs file. it is found in "textures\Minimap\md5translate.trs". This file is used to convert the minimap texture files into the hashcode filenames (and vice-versa if needed).

Structure

dir: directory1
hash1.blp       directory1\clearfilename1.blp
hash2.blp       directory1\clearfilename3.blp
hash3.blp       directory1\clearfilename2.blp
hash4.blp       directory1\clearfilename4.blp
dir: directory2
hash5.blp       directory2\clearfilename1.blp

Simple Translator (Java)

A simple translator, I wrote. --Schlumpf 14:10, 3 August 2007 (CEST)

import java.io.*;

public class trnslate
{
 public static String filename = "_bmd5translate.trs";   // .trs-file
 public static boolean back = true;                      // md5 -> clear (false) | clear -> md5 (true)
 
 public static void main(String[] args)  throws IOException
 {
  String dir  = "";
  String test[] = new String[5];
  File file1 = new File(" ");
  File file2 = new File(" ");
  boolean success = true;
  int counter = 0;
  int length = 1;
  File infile = new File(filename);
  FileReader instream = new FileReader(infile);
  BufferedReader in = new BufferedReader(instream);
  
  while ((in.readLine()) != null)
   length++;
  
  instream = new FileReader(infile);
  in  = new BufferedReader(instream);
  
  String zeile[][] = new String[length][10];
  String filename[]  = new String[length];
  
  while ((filename[counter] = in.readLine()) != null)
  {
   if (filename[counter] != null)
   {
    test=filename[counter].split("dir: ");
    if(!(test[0].equals("")))
    {
     zeile[counter] = filename[counter].split("\t");
     
     file1 = new File(zeile[counter][1]);
     file2 = new File(zeile[counter][0]);
     if(back == true)
     {
      file2 = new File(zeile[counter][1]);
      file1 = new File(zeile[counter][0]);
     }
     
     success = file1.renameTo(file2);
    }
    else
    {
     File temp = new File(test[1]);
     success = temp.mkdirs();
    }
   } 
   counter++;
  }
 }
}