Tool QSP Tools for QSP

ace_boogie

Professional Asshole
Respected User
Former Staff
Aug 5, 2016
1,993
4,490
People are always looking for the tools to modify or translate QSP games so I decided to put everything in one spot
QGen - Use to create/modify the qsp files. You practically change anything you want with this tool. Just be careful not to break the game and ALWAYS BACKUP THE ORIGINAL!

Qsptools by ttant - Don't get it confused with qgen. This tool allows you to translate Ren'py, QSP, and AXMA games. You're also able to remove/ change passwords to QSP tools, and modify dictionaries from translated games.
Here are directions to use qsptools from tfgamessite.com/phpbb3/viewtopic.php?f=15&t=7320 by paz.
How to use ttant's QSPTools.

Note #1: The process is generally the same, but depending on the type of game a few extra steps may be involved.
Note #2: It is assumed you have all the prerequisites where needed (qspgen, txt2gam plugin, etc.)

QSP Games
  • 1 Open the .qsp file with QSPGen
    *1a Make a backup copy of the .qsp file just in case.
    *1b. Go to Utilities -> Game Info and make a note of total locations amount (so you can compare after import to see if everything went smoothly as a preliminary check).
  • 2. Go to Export -> Text file in TXT2GAM format (TXT2Gam 1.1 ) and save it anywhere you like.
  • 3. Open QSPTools and select QSP as the parser.
  • 4. Click on "Browse", locate your saved txt file from step #1 and click on "Open"
    *4a. If you have a dictionary XML file from a previous version, click on "Load" in the Dictionary row and load it.
  • 5. Click on "Translate" and wait until translation is finished (you can tell either by the progress bar, or the command line output that stops scrolling)
  • 6. After translation is done, the translated .txt is saved automatically
    *6a. You may want to press "Save" on the dictionary to save it for future use (Caution: you need to include the .xml extension when typing a filename, e.g. mydict.xml)
  • 7. Back in QSPGen, go to Import -> Text file in TXT2GAM format, locate the translated .txt and click "Open"
  • 8. Save the .qsp file in QSPGen. If no errors were raised, your QSP is 99% translated and ready to use.

-- "Help, I had an encoding error while translating and it stopped" - Don't worry, it's somewhat easily bypassed.
  • a. Save a dict with strings up to that point so you won't need to translate them via Yandex again to save time.
  • b. Copy the offending string from the console, and paste it to google translate or yandex translate or similar.
  • c. Locate the offending string inside the exported .txt file, replace it by hand and save it.
  • d. Start again from step #4 and don't forget to load the dictionary you saved in the beginning.
  • e. Rinse and repeat if more encoding errors arise.

-- "Help, QSPGen bitches about duplicate locations" - This is kinda rare but can happen.
  • There is no set in stone way of fixing it, but opening the translated .txt file and look of duplicate pairs of locations, should give you a hint about how to fix that.
    (Usually just renaming one of those pairs works)

-- "Help, The translated game does not work" - Make sure that:
  • a. The location total in original and translated .qsp files is the same. If not, probably some commenting messed up the import. Search in QSPGen for "--- " strings (without the quotes).
    Normally none should exists as it's the location separator for TXT2GAM files. If some exist you need to manually fix it.
  • b. The top-most location in the original .qsp or the left-hand side in the QSPGen is the same as the translated .qsp. If not, drag it to the top, save and retry.

LUA Games
  • 1. Open QSPTools and select LUA as the parser.
  • 2. Click on "Browse", select the root directory (the uppermost directory where .lua game files are present) and click "Open".
    *2a. If you have a dictionary XML file from a previous version, click on "Load" in the Dictionary row and load it.
  • 3. Click on "Translate" and wait until translation is finished.
  • 4. After translation is done, the translated .lua files are saved automatically.
    *4a. You may want to press "Save" on the dictionary to save it for future use.
  • 5. The game is now translated and ready to play.

RenPy Games
  • 1. Open QSPTools and select RenPy as the parser.
  • 2. Click on "Browse", select the root directory (the uppermost directory where .rpy game files are present), it's almost always the /game directory, and click "Open".
    *2a. If you have a dictionary XML file from a previous version, click on "Load" in the Dictionary row and load it.
  • 3. Click on "Translate" and wait until translation is finished.
  • 4. After translation is done, the translated .rpy files are saved automatically.
    *4a. You may want to press "Save" on the dictionary to save it for future use.
  • 5. The game is now translated and ready to play.

-- "Help, there are no .rpy files, just .rpyc" - You need to convert them by using unrpyc (a google search should point you to the github link).
-- "Help, there are no .rpy files, just an .rpa" - The game is archived, you need to unpack it by using unrpa (a google search should point you to the github link).

HTML Games (Mostly works for AXMA games, not Twine, and probably not ones with embedded images to my experience.)
  • 1. Open QSPTools and select HTML as the parser.
  • 2. Click on "Browse", select the .html file you want translated and click "Open".
    *2a. If you have a dictionary XML file from a previous version, click on "Load" in the Dictionary row and load it.
  • 3. Click on "Translate" and wait until translation is finished.
  • 4. After translation is done, the translated .lua files are saved automatically.
    *4a. You may want to press "Save" on the dictionary to save it for future use.
  • 5. The game is now translated and ready to play.
 

ttant

Member
May 7, 2017
173
61
New version of QspTools can be found here :

Request can be asked by MP, but they might be not implemented, regardless of the free time i have to do it :coldsweat:
 
  • Like
Reactions: inshaderwetrust

ace_boogie

Professional Asshole
Respected User
Former Staff
Aug 5, 2016
1,993
4,490
@ttant Do you know if your program works on any other os then Windows and is there another way to launch it without launcher.bat
 

ttant

Member
May 7, 2017
173
61
Launcher.bat is just a batch script to launch the java vm as expected.
As i don't own a mc and beacuse qsp is mostly windows user, i haven't checked the cross-platform compatibility.
Anyhow, java is cross platform and i don't remember using specific windows stuff inside this tool, so it might works on linux/mac too, if you just use the expected arguments (edit the bat file to get the java -jar line)
 

ace_boogie

Professional Asshole
Respected User
Former Staff
Aug 5, 2016
1,993
4,490
Launcher.bat is just a batch script to launch the java vm as expected.
As i don't own a mc and beacuse qsp is mostly windows user, i haven't checked the cross-platform compatibility.
Anyhow, java is cross platform and i don't remember using specific windows stuff inside this tool, so it might works on linux/mac too, if you just use the expected arguments (edit the bat file to get the java -jar line)
Not sure if you can help me but when I try to run the exact same script in terminal on mac osx it says that the main class can't be found or loaded. Also is there a particular jar file that I need to focus on executing in order to bring up the tool
 

ttant

Member
May 7, 2017
173
61
Command line is
Code:
java -Dfile.encoding=UTF-8 -cp *;lib/*;plugins/* qsptools.QspTools
The main jar is the one next to the launcher.bat (core-*version*.jar) but this one doesn't have the required data to be launched using the -jar swicth. So i guess, you have to figure out why the argument of -cp switch doesn't work.
 

zoomg

Member
Modder
Nov 22, 2016
464
692
qsptools.png
It's possible to change language you want to translate into, don't know how well it works for others than english though.
 

dragoduval

Newbie
Mar 21, 2017
62
73
Okay quick question, Whats a Location ? Cause i get the error about missing one (having one extra ?) and im not really sure what to do.
 

Eoin

The Bug Hunter
Moderator
Donor
Feb 21, 2017
1,240
4,958
Okay quick question, Whats a Location ? Cause i get the error about missing one (having one extra ?) and im not really sure what to do.
Check out the QSP Documentation here: . You'll need to translate it to English (or native language) in order to read it, as it is all in Russian.
 
  • Like
Reactions: Pif paf

ace_boogie

Professional Asshole
Respected User
Former Staff
Aug 5, 2016
1,993
4,490
In Qgen, just go to Game ->Export ->Text File in TXT2GAM format. Do the same thing when you import it back after translating
 

Jack0706

Newbie
Oct 21, 2016
44
13
In Qgen, just go to Game ->Export ->Text File in TXT2GAM format. Do the same thing when you import it back after translating
I can´t do this, because Qgen doesn´t open the game. I got these error message:
"Can´t load game. Locations with the same name are found!"

And without Qgen I can´t export it to TXT2GAM format.
 

ace_boogie

Professional Asshole
Respected User
Former Staff
Aug 5, 2016
1,993
4,490
I can´t do this, because Qgen doesn´t open the game. I got these error message:
"Can´t load game. Locations with the same name are found!"

And without Qgen I can´t export it to TXT2GAM format.
What game are you trying to open?
 

TragerMaximoff

New Member
Oct 29, 2017
3
0
Hi, new to this site.. I see there are tools mentioned here, but what about a player? and a SAFE source for the player, for qsp games? The .su site comes up with norton warnings about trojans on it and warns not to even visit the site.. sooo where's a safe place to grab the file/install if you even wanna PLAY qsp games to see what they're like?