Mod Text Merger version 1.1 by Vasiliy -------------------------------------- (sorry for my bad english) This program is for replacing the text in the some records in the morrowind mods. The main usage is for import translated text back to the mod. How it work: it load mod and textual file of importing. In the mod it scan all records, detect record's ID, then such ID search in the import file, and if located, then replace original text to text specified in the import file. The text replaced in various subrecrds - it is depended from the record type. The results writes to the file '_out.es?' to the same directory as original mod. The import file format is very simple. It is textual file. One line - one record. And looks like INFO:1234567890=bla bla bla where, part before '=' is specified record's type and ID divided by ':'. String, immediately after the '=' and up to the end of line, will be written down to the mod. This files can be generated by my other programm - Mod Info. Load mod, do searches in master files, then use command Menu -> Export -> Export For Translate. The command Menu -> Info -> Check Info Hyperlink also generate such strings, but only for changed INFO records with broken hyperlinks (and the text takes from the master files - not from mod). What more? ... The records in import file always should be in one line. If the text contain the CRLF symbols, replace them with a symbol with a code 0x7f. List of processed records and subrecords in them: ACTI FNAM ALCH FNAM APPA FNAM ARMO FNAM BOOK FNAM BSGN FNAM CLAS FNAM CLOT FNAM CONT FNAM CREA FNAM DIAL NAME DOOR FNAM FACT FNAM GMST STRV INFO NAME INGR FNAM LIGH FNAM LOCK FNAM MGEF DESC MISC FNAM NPC_ FNAM PROB FNAM RACE FNAM REGN FNAM REPA FNAM SPEL FNAM WEAP FNAM The algorithm. -------------- First step - load mod into the memory, scan it and create records's ID list. The second - load import file. In this file the program check the consistency of the import file. For example most of records allows only 32 chars in the text. If any troubles founded, program writes this into a log and disable the "Go" button. In this case you need correct import file and reload it again. Third step - import texts into the mod and save result to output file. The processing start from first record and walk up to the end in the order, as it located in original mod. For each record ID the programm do search same ID in the import table. If type and ID was located, then in this record writes the text (in apropriate subrecord). If type and ID not located, then the record will saved to the output without changes. There is two possible problems: 1. If the record ID contain symbols '=', then it may be recognized incorrectly. Just delete those lines from the import file (and edit it manually later). 2. If several records have same ID (it may be for INFO records), then in the import file was located only first entry. And all of this records will take same changes. Also remove this situation from import file. Mod Info can help you to know what IDs is not uniq. PS: for the program there is not matter - is the input file is the mod, or master file... -------------------------------------------------------------------------------------------- SOFTWARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. AUTHOR DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE PROGRAM. THE END-USER ASSUMES ALL RISK AS TO THE SUITABILITY, QUALITY, AND PERFORMANCE OF THE PROGRAM. IN NO EVENT WILL AUTHOR, OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AFFILIATES, BE LIABLE TO THE END-USER FOR ANY CONSEQUENTIAL, INCIDENTAL, INDIRECT, SPECIAL OR EXEMPLARY DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF DATA OR BUSINESS INFORMATION, AND THE LIKE) ARISING OUT OF THE USE OF OR INABILITY TO USE THE PROGRAM OR ACCOMPANYING WRITTEN MATERIALS, EVEN IF AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -------------------------------------------------------------------------------------------- Send your comments and suggestions to vasiliy73@mail.ru With best regards, Vasiliy.