Touhou Patch Center:Download/ko: Difference between revisions
(Created page with "* <tt>thcrap_configure.exe</tt>를 실행하여 패치 설정을 작성하시기 바랍니다.") |
(Updating to match new version of source page) |
||
(27 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Project overview/{{PAGELANGUAGE}}}} | |||
<languages /><div style="float:right;">__TOC__</div> | <languages /><div style="float:right;">__TOC__</div> | ||
<span id="Main_Package_(Multi-Language,_Multi-Game)"></span> | |||
== 메인 패키지 (다중 언어, 다중 게임 지원) == | == 메인 패키지 (다중 언어, 다중 게임 지원) == | ||
:[[File:Gnome-dev-zipdisk.svg|64px|link=]] <font size=26>[https://github.com/thpatch/thcrap/releases/latest/download/thcrap.zip | :[[File:Gnome-dev-zipdisk.svg|64px|link=]] <font size=26>[https://github.com/thpatch/thcrap/releases/latest/download/thcrap.zip 다운로드]</font> | ||
:<span class="plainlinks">'''[https://github.com/thpatch/thcrap/releases 변경내역]'''</span> | :<span class="plainlinks">'''[https://github.com/thpatch/thcrap/releases 변경내역]'''</span> | ||
:'''소스 코드:''' [https://github.com/thpatch/thcrap @ GitHub] | :'''소스 코드:''' [https://github.com/thpatch/thcrap @ GitHub] | ||
Line 8: | Line 9: | ||
:[[Special:MyLanguage/Touhou Patch Center:Standalone Patches|수동식 패치]]의 경우 [[Portal:ko|한국어 번역]]을 기반으로 만들어졌습니다. (추천하지 않음). | :[[Special:MyLanguage/Touhou Patch Center:Standalone Patches|수동식 패치]]의 경우 [[Portal:ko|한국어 번역]]을 기반으로 만들어졌습니다. (추천하지 않음). | ||
:[https://github.com/thpatch/Universal-THCRAP-Launcher/releases Universal THCRAP Launcher, recommended quick launch addon] | :[https://github.com/thpatch/Universal-THCRAP-Launcher/releases Universal THCRAP Launcher, recommended quick launch addon], and [https://github.com/thpatch/Universal-THCRAP-Launcher#readme Read this for how to install] | ||
== 시스템 요구사항 == | == 시스템 요구사항 == | ||
* 윈도우 XP 서비스 팩 2 이상, Wine에서도 사용 가능합니다. | * 윈도우 XP 서비스 팩 2 이상, Wine에서도 사용 가능합니다. (Wine 사용 시 "version.js not found" 오류가 발생하는 경우가 있습니다.) | ||
* 인터넷 연결은 초기 설정과 업데이트시에만 필요합니다. 인터넷이 연결되어 있지 않을 경우 < | * 인터넷 연결은 초기 설정과 업데이트시에만 필요합니다. 인터넷이 연결되어 있지 않을 경우 <code>thcrap</code>은 가장 최근에 다운 받은 패치를 사용합니다. | ||
<span id="Setup_Instructions"></span> | |||
== 설치 방법 == | == 설치 방법 == | ||
=== [https://www.youtube.com/watch?v=7qENa8mvOto Video walkthrough] === | === <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
=== [https:// | [https://www.youtube.com/watch?v=7qENa8mvOto Video walkthrough] | ||
</div> === | |||
=== <div lang="en" dir="ltr" class="mw-content-ltr"> | |||
[https://lilyremigia.github.io/installtouhou Alternative Text walkthrough on how to get just English] | |||
</div> === | |||
=== 요약 === | === 요약 === | ||
* 먼저, '''특정 게임의 디렉토리에 설치하지 마시기 바랍니다'''. 실행기는 어느 디렉토리에 있더라도 게임을 실행할 수 있습니다. | * 먼저, '''특정 게임의 디렉토리에 설치하지 마시기 바랍니다'''. 실행기는 어느 디렉토리에 있더라도 게임을 실행할 수 있습니다. | ||
* < | * <code>thcrap.exe</code>를 실행하여 패치 설정을 작성하시기 바랍니다. | ||
* | * 패치 설정 .js 파일과 설치된 모든 동방 게임들의 디렉토리 정보가 들어 있는 .js 파일이 생성됩니다. thcrap는 기존에 설치된 동방 게임들의 데이터를 수정하지 않습니다. | ||
=== | === 자세히 === | ||
# | # 패키지를 다운로드하고 압축을 풉니다. (경로는 상관 없습니다) | ||
# | # 동방 게임들을 검색하기 위해 <code>thcrap</code>를 실행합니다. | ||
# | # 언어와 패치를 선택합니다. | ||
# | # 다운로드가 끝날 때까지 잠시만 기다립니다. | ||
# | # 동방 게임이 들어있는 경로를 선택합니다. 혹은 Cancel을 클릭하여 컴퓨터 전체에서 경로를 검색할 수도 있습니다. | ||
# 동방 게임의 여러 버전이 설치되어 있다면 패치를 적용하고자 하는 버전을 선택합니다. | |||
# | # 바로가기를 생성합니다. | ||
# | |||
=== | <div class="mw-translate-fuzzy"> | ||
=== vpatch와 연동 === | |||
2013-10-25 빌드 이후 버전에서 가능합니다. vpatch의 구조로 인해 현재 자동 설정이 되지 않으니 다음과 같이 수동으로 설정해야 합니다. | |||
</div> | |||
# | # 아직 vpatch를 다운로드하지 않으셨다면, [https://en.touhouwiki.net/wiki/Game_Tools_and_Modifications#Vsync_Patches Touhou Wiki]나 [https://ux.getuploader.com/swmplv75e/ 제작자의 홈페이지]에서 다운로드합니다. | ||
# | # 평소대로 패치를 설정합니다. 올바른 경로로 설정하는 것이 중요합니다. | ||
# | # 생성된 <code>games.js</code>를 메모장으로 열고, 게임의 실행 파일 주소에서 exe의 이름 부분을 <code>vpatch.exe</code> (혹은 따로 설정된 이름)으로 변경합니다. | ||
# | # 바로가기를 실행하면, thcrap→vpatch→게임 순서대로 실행되는데, 여기서 thcrap에서 일본어를 따로 지원하므로, '''AppLocale을 같이 실행할 필요는 없습니다.''' | ||
=== | === 도움! {{GameLabel|th06}}의 속도가 약빤 것 같습니다! === | ||
동방홍마향을 Windows 10에서 실행시키려면 vpatch가 필요합니다. | |||
# | # [[:File:vpatch_th06_for_thcrap.zip|vpatch th06 for thcrap package]]를 다운로드합니다. vpatch (rev4)와 [[:File:vpatch_th06_unicode.zip|유니코드 대응 수정판 vpatch DLL]]가 포함되어 있습니다. | ||
# | # 동방홍마향이 설치된 경로에 압축을 해제합니다. | ||
# | # 동방홍마향 경로에 이미 <code>vpatch_th06.dll</code>이라는 파일이 있다면, 삭제해 주시기 바랍니다. 여기서 필요한 파일은 <code>vpatch_th06_unicode.dll</code>입니다. | ||
# | # 홍마향 실행 파일의 이름이 <code>th06.exe</code>라면, <code>東方紅魔郷.exe</code>로 이름을 변경해주시기 바랍니다. 이는 <code>vpatch.exe</code>가 <code>東方紅魔郷.exe</code>만을 인식하기 때문입니다. 아무런 추가 패치가 적용되지 않은 원본 1.02h 버전을 사용할 것을 권장합니다. | ||
# | # <code>thcrap\config\games.js</code>를 메모장으로 열고 <code>th06</code>에서 실행 파일 이름 부분을 <code>vpatch.exe</code>로 수정합니다. | ||
# | # 수직 동기화 기능을 켜려면, <code>vpatch.ini</code>를 메모장으로 열고 <code><syntaxhighlight lang="json" inline>vsync = 0</syntaxhighlight></code> 부분을 <code><syntaxhighlight lang="json" inline>vsync = 1</syntaxhighlight></code>로 수정합니다. | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Tricks== | ==Tricks== | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
===File Output=== | ===File Output=== | ||
This will dump all the original, unpatched files loaded by a game as it runs. | This will dump all the original, unpatched files loaded by a game as it runs. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Steps: | Steps: | ||
# Locate the .js file that is created when you run <code> | # Locate the .js file that is created when you run <code>thcrap.exe</code> (this would be whatever you named your shortcuts, so if you called your shortcut "en" then the .js file will also be called en.js). | ||
# Open it with your text editor (notepad, editpadpro, etc) | # Open it with your text editor (notepad, editpadpro, etc) | ||
# Change < | # Change <code><syntaxhighlight lang="json" inline>"dat_dump": false</syntaxhighlight></code> to either | ||
:* < | :* <code><syntaxhighlight lang="json" inline>"dat_dump": true</syntaxhighlight></code> - this will output files to wherever you placed your original game, in a folder called <code>dat</code> | ||
:* < | :* <code><syntaxhighlight lang="json" inline>"dat_dump": "C:/name/to/dump/path/"</syntaxhighlight></code> - this will output files into the given directory. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Then, run the shortcut. | Then, run the shortcut. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
===Steam integration=== | ===Steam integration=== | ||
We'd actually need a new guide how to do this at this place! | We'd actually need a new guide how to do this at this place! | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
== Troubleshooting == | == Troubleshooting == | ||
=== How to debug a game crash, freeze, or other issue unrelated to translation === | === How to debug a game crash, freeze, or other issue unrelated to translation === | ||
A complete patch setup is made up of a number of individual parts, any one of which will be responsible for the issue you're experiencing. If possible, please try to pin down the cause before reporting an issue to us. | A complete patch setup is made up of a number of individual parts, any one of which will be responsible for the issue you're experiencing. If possible, please try to pin down the cause before reporting an issue to us. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* ''Does the issue appear in the original, unpatched game?'' | * ''Does the issue appear in the original, unpatched game?'' | ||
: While thcrap fixes ''some'' of the bugs in the original games as part of its patch support, we sadly don't have the capacities to fix ''all'' of them, as we are mostly busy with thcrap's own bugs and features, first and foremost. Still, [[#HALP|please report the issue]], maybe it is trivial enough that one of our developers can look at it and fix it fairly quickly. | : While thcrap fixes ''some'' of the bugs in the original games as part of its patch support, we sadly don't have the capacities to fix ''all'' of them, as we are mostly busy with thcrap's own bugs and features, first and foremost. Still, [[#HALP|please report the issue]], maybe it is trivial enough that one of our developers can look at it and fix it fairly quickly. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* ''Try removing patches from your stack, one by one, starting at the bottom.'' | * ''Try removing patches from your stack, one by one, starting at the bottom.'' | ||
:* To do this, edit the run configuration .js file generated by | :* To do this, edit the run configuration .js file generated by <code>thcrap</code> in a plaintext editor like Notepad. | ||
:: For example, if you only selected the English translation, you'd edit < | :: For example, if you only selected the English translation, you'd edit <code>en.js</code> (or whatever you've named it). You'd first remove the <syntaxhighlight lang="json">, { "archive": "thpatch/lang_en/" }</syntaxhighlight> section, then check whether that fixed your error, using your existing shortcuts or launchers. If it didn't, remove the next patch, and so on. | ||
:: If you are unfamiliar with JSON, use [https://jsonlint.com/ JSONLint] or [https://jsonformatter-online.com JSON Formatter] to verify the syntax of your edited file. This site also gives you helpful error messages if you e.g. left a comma at the end of the < | :: If you are unfamiliar with JSON, use [https://jsonlint.com/ JSONLint] or [https://jsonformatter-online.com JSON Formatter] to verify the syntax of your edited file. This site also gives you helpful error messages if you e.g. left a comma at the end of the <code>"patches"</code> section. | ||
:* If necessary, repeat this until you have no patches left. Note that running thcrap with no patches is still ''different'' from running the original, unpatched game. It still applies the game-independent features of thcrap, like its locale independence code or its propagation to child processes, onto the game, which might be the cause of your bug. | :* If necessary, repeat this until you have no patches left. Note that running thcrap with no patches is still ''different'' from running the original, unpatched game. It still applies the game-independent features of thcrap, like its locale independence code or its propagation to child processes, onto the game, which might be the cause of your bug. | ||
:: If the bug still appears with no patches, you're done. But if you ''could'' identify a patch that caused your issue: | :: If the bug still appears with no patches, you're done. But if you ''could'' identify a patch that caused your issue: | ||
::* Temporarily delete or rename < | ::* Temporarily delete or rename <code>thcrap_update.dll</code> in the thcrap directory in order to disable automatic updates. | ||
::* Look at < | ::* Look at <code>thcrap_log.txt</code> and check which files '''of that patch''' are actually loaded by the game. These are indicated by lines beginning with a <code> + </code>. | ||
::* Delete those files one by one, until the bug doesn't appear any more. | ::* Delete those files one by one, until the bug doesn't appear any more. | ||
::: These files will be re-downloaded once you restore < | ::: These files will be re-downloaded once you restore <code>thcrap_update.dll</code>. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* Now that you know the exact cause, [[#HALP|report all the info you've gathered to the team]], and they will be happy about your detailed bug report, and certainly less frustrated than if you just posted one screenshot of the bug. ☺ | * Now that you know the exact cause, [[#HALP|report all the info you've gathered to the team]], and they will be happy about your detailed bug report, and certainly less frustrated than if you just posted one screenshot of the bug. ☺ | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=== Known issues === | === Known issues === | ||
====My game isn't recognized by the configuration tool, and no shortcut is created==== | ====My game isn't recognized by the configuration tool, and no shortcut is created==== | ||
If that game happens to be {{GameLabel|th075}}: thcrap does not support it yet. | If that game happens to be {{GameLabel|th075}}: thcrap does not support it yet. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
If you're on Linux or MacOS with Wine, there seems to be a bug when when the game is in a subfolder of the selected folder (which happens when you add your folder with all your games in it). If this happens, you'll need to use the "Find games in a specific folder..." button to add each game one by one. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Otherwise, please post the game's executable on either https://thpatch.net/w/logos/discord.png [https://discord.thpatch.net/ Discord] or https://thpatch.net/w/logos/irc.png our [https://webchat.freenode.net/?channels=#thcrap IRC channel] '''#thcrap''' on '''irc.freenode.net'''. We'll see what we can do. | Otherwise, please post the game's executable on either https://thpatch.net/w/logos/discord.png [https://discord.thpatch.net/ Discord] or https://thpatch.net/w/logos/irc.png our [https://webchat.freenode.net/?channels=#thcrap IRC channel] '''#thcrap''' on '''irc.freenode.net'''. We'll see what we can do. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====Dialog==== | ====Dialog==== | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=====Untranslated Japanese text appears blank on Wine===== | =====Untranslated Japanese text appears blank on Wine===== | ||
This is a bug in Wine, and has not been fixed as of October 2017. ''Even if'' Japanese fonts are installed and work as intended on an unpatched game, Wine's font substitution is not sophisticated enough yet to use glyphs from these fonts in case the currently selected font (''[[:File:THBiolinum.otf|Touhou Biolinum]]'' for Latin script languages) does not contain Japanese glyphs. | This is a bug in Wine, and has not been fixed as of October 2017. ''Even if'' Japanese fonts are installed and work as intended on an unpatched game, Wine's font substitution is not sophisticated enough yet to use glyphs from these fonts in case the currently selected font (''[[:File:THBiolinum.otf|Touhou Biolinum]]'' for Latin script languages) does not contain Japanese glyphs. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=====Dialogue does not fit in text box===== | =====Dialogue does not fit in text box===== | ||
Unfortunately, ZUN's engine has never been able to do automatic line breaks, and we don't want to combat this by having the wiki parser guess where to put a line break. This means that ''all of the line breaks have to be done manually''. | Unfortunately, ZUN's engine has never been able to do automatic line breaks, and we don't want to combat this by having the wiki parser guess where to put a line break. This means that ''all of the line breaks have to be done manually''. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
If you see such a line, just log in, look for the corresponding page and split it yourself. If it's a third-party patch, then e-mail the project leader about the issue, or tell them on GitHub or wherever they host their patch. | If you see such a line, just log in, look for the corresponding page and split it yourself. If it's a third-party patch, then e-mail the project leader about the issue, or tell them on GitHub or wherever they host their patch. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====Errors==== | ====Errors==== | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=====Japanese text error===== | =====Japanese text error===== | ||
[[File:The ZUN Mutex.png|frame|right|The ZUN Mutex]] | </div> | ||
[[File:The ZUN Mutex.png|frame|right|<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
The ZUN Mutex | |||
</div>]] | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
The error to the right is shown whenever a Touhou game is started and there is another Touhou game process active, meaning that you cannot run two Touhou games at the same time. Check Task Manager for any zombie processes and kill them if necessary. | The error to the right is shown whenever a Touhou game is started and there is another Touhou game process active, meaning that you cannot run two Touhou games at the same time. Check Task Manager for any zombie processes and kill them if necessary. | ||
</div> | |||
<div style="clear: both;"> | <div style="clear: both;"> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
===== Some translations are incomplete or missing ===== | ===== Some translations are incomplete or missing ===== | ||
Check the corresponding text page on this site; most likely, the translations there have not been finished yet. | Check the corresponding text page on this site; most likely, the translations there have not been finished yet. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====Patch configuration==== | ====Patch configuration==== | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=====Why does Patch X not work with Patch Y?===== | =====Why does Patch X not work with Patch Y?===== | ||
[[File:Patch Used Wrong.png|thumb|right|Oops!]] | </div> | ||
[[File:Patch Used Wrong.png|thumb|right|<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Oops! | |||
</div>]] | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
When you are using multiple patches, the order is important. For example one may want to use [https://github.com/Gamer251/thcrap-gamer251/tree/master/mima Gamer251's Mima patch] for the Mima sprite and dialog, the Alphes patch for Alphes-style art, and [[Patch:lang_en|our English patch]] to have the rest of the game translated to English. If one was to use the Mima patch first, then the Alphes patch, then the English one, they would discover that while the other patches were applied, the English title screen was applied to the Mima's custom title. So for a typical patch selection, the correct way to select a patch if it's not already not added for you (as seen with [https://github.com/Nazeo/thcrap-nazeo/tree/master/gangster Nazeo's gangster patch]) is using the main language first, then the mod. | When you are using multiple patches, the order is important. For example one may want to use [https://github.com/Gamer251/thcrap-gamer251/tree/master/mima Gamer251's Mima patch] for the Mima sprite and dialog, the Alphes patch for Alphes-style art, and [[Patch:lang_en|our English patch]] to have the rest of the game translated to English. If one was to use the Mima patch first, then the Alphes patch, then the English one, they would discover that while the other patches were applied, the English title screen was applied to the Mima's custom title. So for a typical patch selection, the correct way to select a patch if it's not already not added for you (as seen with [https://github.com/Nazeo/thcrap-nazeo/tree/master/gangster Nazeo's gangster patch]) is using the main language first, then the mod. | ||
</div> | |||
<div style="clear: both;"> | <div style="clear: both;"> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====There a crash on Wine (Linux and Mac) when running a game==== | |||
Make sure you're using the last version, we fixed some important bugs with Wine in the version 2021-08-30. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Also, if you previously applied the workaround where you copied some DLL files around, delete them. This workaround is no longer needed, and having old DLL files in the thcrap directory can cause a crash. You should not have any DLL file in the thcrap root folder. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====The patch does not seem to update.==== | ====The patch does not seem to update.==== | ||
A complete, manual reinstallation of the latest thcrap version usually fixes this. | A complete, manual reinstallation of the latest thcrap version usually fixes this. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
====HALP==== | ====HALP==== | ||
Something not covered here? Everything just going wrong? We have the solution! (Most of the time.) | Something not covered here? Everything just going wrong? We have the solution! (Most of the time.) | ||
</div> | |||
Please visit our https://thpatch.net/w/logos/discord.png [https://discord.thpatch.net/ Discord] or IRC channel '''#thcrap''' on '''[http://webchat.freenode.net/?channels=#thcrap irc.freenode.net]'''. Things we would need are OS, game, what you were doing, and the patcher's log file (< | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
Please visit our https://thpatch.net/w/logos/discord.png [https://discord.thpatch.net/ Discord] or IRC channel '''#thcrap''' on '''[http://webchat.freenode.net/?channels=#thcrap irc.freenode.net]'''. Things we would need are OS, game, what you were doing, and the patcher's log file (<code>thcrap_log.txt</code>). | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
== Run configuration parameters == | == Run configuration parameters == | ||
=== Root level === | === Root level === | ||
==== < | ==== <code>dat_dump</code> ==== | ||
:Dumps original game data from the .dat archive as it's loaded. | :Dumps original game data from the .dat archive as it's loaded. | ||
:As of the 2013-07-29 build, this also dumps the sprite boundaries for all graphic files. | :As of the 2013-07-29 build, this also dumps the sprite boundaries for all graphic files. | ||
:values: ''false'' to disable, directory string to specify directory, anything else will enable dumping into ''game directory/dat'' | :values: ''false'' to disable, directory string to specify directory, anything else will enable dumping into ''game directory/dat'' | ||
</div> | |||
==== < | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
==== <code>console</code> ==== | |||
:Enables or disables the on-screen patch debugging console. | :Enables or disables the on-screen patch debugging console. | ||
:values: ''true'' / ''false'' | :values: ''true'' / ''false'' | ||
</div> | |||
==== < | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
==== <code>font</code> ==== | |||
:Changes the font used in the game to any other font installed on your system. | :Changes the font used in the game to any other font installed on your system. | ||
:values: ''string'' | :values: ''string'' | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
=== Patch level === | === Patch level === | ||
==== < | ==== <code>archive</code> ==== | ||
:Specifies the base directory of this patch. Must end in a forward slash (/). | :Specifies the base directory of this patch. Must end in a forward slash (/). | ||
:As of the 2014-01-03 build, this can be a directory relative to the one the run configuration is stored in. | :As of the 2014-01-03 build, this can be a directory relative to the one the run configuration is stored in. | ||
:value: ''string'' | :value: ''string'' | ||
</div> | |||
==== < | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
==== <code>ignore</code> ==== | |||
:Ignores any files from this patch that match the given wildcard. | :Ignores any files from this patch that match the given wildcard. | ||
:value: ''array'' of strings | :value: ''array'' of strings | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''Example: Disabling music title and spell card translations for a specific language''' | '''Example: Disabling music title and spell card translations for a specific language''' | ||
<syntaxhighlight lang=" | </div> | ||
<syntaxhighlight lang="json"> | |||
{ | { | ||
"archive": "thpatch/lang_en/" | "archive": "thpatch/lang_en/" | ||
Line 166: | Line 251: | ||
}, | }, | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==== < | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
:Set to < | ==== <code>update</code> ==== | ||
:Set to <code>false</code> to disable automatic updates for this patch. | |||
:value: ''true/false'' | :value: ''true/false'' | ||
Alternatively, you can safely delete < | Alternatively, you can safely delete <code>thcrap_update.dll</code> after configuration to remove all on-line functionality. | ||
[[Category: | </div> | ||
[[Category:Tools]] |
Latest revision as of 01:18, 2 January 2024
프로젝트 개요 | ||||||
---|---|---|---|---|---|---|
동방 패치 센터에 대하여 | 튜토리얼 | FAQ | 다운로드 | 패치 서버 | 버그 트래커 | 보안 |
메인 패키지 (다중 언어, 다중 게임 지원)
시스템 요구사항
- 윈도우 XP 서비스 팩 2 이상, Wine에서도 사용 가능합니다. (Wine 사용 시 "version.js not found" 오류가 발생하는 경우가 있습니다.)
- 인터넷 연결은 초기 설정과 업데이트시에만 필요합니다. 인터넷이 연결되어 있지 않을 경우
thcrap
은 가장 최근에 다운 받은 패치를 사용합니다.
설치 방법
===
=== ===
===
요약
- 먼저, 특정 게임의 디렉토리에 설치하지 마시기 바랍니다. 실행기는 어느 디렉토리에 있더라도 게임을 실행할 수 있습니다.
thcrap.exe
를 실행하여 패치 설정을 작성하시기 바랍니다.
- 패치 설정 .js 파일과 설치된 모든 동방 게임들의 디렉토리 정보가 들어 있는 .js 파일이 생성됩니다. thcrap는 기존에 설치된 동방 게임들의 데이터를 수정하지 않습니다.
자세히
- 패키지를 다운로드하고 압축을 풉니다. (경로는 상관 없습니다)
- 동방 게임들을 검색하기 위해
thcrap
를 실행합니다. - 언어와 패치를 선택합니다.
- 다운로드가 끝날 때까지 잠시만 기다립니다.
- 동방 게임이 들어있는 경로를 선택합니다. 혹은 Cancel을 클릭하여 컴퓨터 전체에서 경로를 검색할 수도 있습니다.
- 동방 게임의 여러 버전이 설치되어 있다면 패치를 적용하고자 하는 버전을 선택합니다.
- 바로가기를 생성합니다.
vpatch와 연동
2013-10-25 빌드 이후 버전에서 가능합니다. vpatch의 구조로 인해 현재 자동 설정이 되지 않으니 다음과 같이 수동으로 설정해야 합니다.
- 아직 vpatch를 다운로드하지 않으셨다면, Touhou Wiki나 제작자의 홈페이지에서 다운로드합니다.
- 평소대로 패치를 설정합니다. 올바른 경로로 설정하는 것이 중요합니다.
- 생성된
games.js
를 메모장으로 열고, 게임의 실행 파일 주소에서 exe의 이름 부분을vpatch.exe
(혹은 따로 설정된 이름)으로 변경합니다. - 바로가기를 실행하면, thcrap→vpatch→게임 순서대로 실행되는데, 여기서 thcrap에서 일본어를 따로 지원하므로, AppLocale을 같이 실행할 필요는 없습니다.
도움! Embodiment of Scarlet Devil의 속도가 약빤 것 같습니다!
동방홍마향을 Windows 10에서 실행시키려면 vpatch가 필요합니다.
- vpatch th06 for thcrap package를 다운로드합니다. vpatch (rev4)와 유니코드 대응 수정판 vpatch DLL가 포함되어 있습니다.
- 동방홍마향이 설치된 경로에 압축을 해제합니다.
- 동방홍마향 경로에 이미
vpatch_th06.dll
이라는 파일이 있다면, 삭제해 주시기 바랍니다. 여기서 필요한 파일은vpatch_th06_unicode.dll
입니다. - 홍마향 실행 파일의 이름이
th06.exe
라면,東方紅魔郷.exe
로 이름을 변경해주시기 바랍니다. 이는vpatch.exe
가東方紅魔郷.exe
만을 인식하기 때문입니다. 아무런 추가 패치가 적용되지 않은 원본 1.02h 버전을 사용할 것을 권장합니다. thcrap\config\games.js
를 메모장으로 열고th06
에서 실행 파일 이름 부분을vpatch.exe
로 수정합니다.- 수직 동기화 기능을 켜려면,
vpatch.ini
를 메모장으로 열고
부분을vsync = 0
로 수정합니다.vsync = 1
Tricks
File Output
This will dump all the original, unpatched files loaded by a game as it runs.
Steps:
- Locate the .js file that is created when you run
thcrap.exe
(this would be whatever you named your shortcuts, so if you called your shortcut "en" then the .js file will also be called en.js). - Open it with your text editor (notepad, editpadpro, etc)
- Change
to either"dat_dump": false
- this will output files to wherever you placed your original game, in a folder called"dat_dump": true
dat
- this will output files into the given directory."dat_dump": "C:/name/to/dump/path/"
Then, run the shortcut.
Steam integration
We'd actually need a new guide how to do this at this place!
Troubleshooting
A complete patch setup is made up of a number of individual parts, any one of which will be responsible for the issue you're experiencing. If possible, please try to pin down the cause before reporting an issue to us.
- Does the issue appear in the original, unpatched game?
- While thcrap fixes some of the bugs in the original games as part of its patch support, we sadly don't have the capacities to fix all of them, as we are mostly busy with thcrap's own bugs and features, first and foremost. Still, please report the issue, maybe it is trivial enough that one of our developers can look at it and fix it fairly quickly.
- Try removing patches from your stack, one by one, starting at the bottom.
- To do this, edit the run configuration .js file generated by
thcrap
in a plaintext editor like Notepad.
- For example, if you only selected the English translation, you'd edit
en.js
(or whatever you've named it). You'd first remove thesection, then check whether that fixed your error, using your existing shortcuts or launchers. If it didn't, remove the next patch, and so on., { "archive": "thpatch/lang_en/" }
- If you are unfamiliar with JSON, use JSONLint or JSON Formatter to verify the syntax of your edited file. This site also gives you helpful error messages if you e.g. left a comma at the end of the
"patches"
section.
- If necessary, repeat this until you have no patches left. Note that running thcrap with no patches is still different from running the original, unpatched game. It still applies the game-independent features of thcrap, like its locale independence code or its propagation to child processes, onto the game, which might be the cause of your bug.
- If the bug still appears with no patches, you're done. But if you could identify a patch that caused your issue:
- Temporarily delete or rename
thcrap_update.dll
in the thcrap directory in order to disable automatic updates. - Look at
thcrap_log.txt
and check which files of that patch are actually loaded by the game. These are indicated by lines beginning with a+
. - Delete those files one by one, until the bug doesn't appear any more.
- These files will be re-downloaded once you restore
thcrap_update.dll
.
- Temporarily delete or rename
- To do this, edit the run configuration .js file generated by
- Now that you know the exact cause, report all the info you've gathered to the team, and they will be happy about your detailed bug report, and certainly less frustrated than if you just posted one screenshot of the bug. ☺
Known issues
My game isn't recognized by the configuration tool, and no shortcut is created
If that game happens to be Immaterial and Missing Power: thcrap does not support it yet.
If you're on Linux or MacOS with Wine, there seems to be a bug when when the game is in a subfolder of the selected folder (which happens when you add your folder with all your games in it). If this happens, you'll need to use the "Find games in a specific folder..." button to add each game one by one.
Otherwise, please post the game's executable on either Discord or our IRC channel #thcrap on irc.freenode.net. We'll see what we can do.
Dialog
Untranslated Japanese text appears blank on Wine
This is a bug in Wine, and has not been fixed as of October 2017. Even if Japanese fonts are installed and work as intended on an unpatched game, Wine's font substitution is not sophisticated enough yet to use glyphs from these fonts in case the currently selected font (Touhou Biolinum for Latin script languages) does not contain Japanese glyphs.
Dialogue does not fit in text box
Unfortunately, ZUN's engine has never been able to do automatic line breaks, and we don't want to combat this by having the wiki parser guess where to put a line break. This means that all of the line breaks have to be done manually.
If you see such a line, just log in, look for the corresponding page and split it yourself. If it's a third-party patch, then e-mail the project leader about the issue, or tell them on GitHub or wherever they host their patch.
Errors
Japanese text error
The error to the right is shown whenever a Touhou game is started and there is another Touhou game process active, meaning that you cannot run two Touhou games at the same time. Check Task Manager for any zombie processes and kill them if necessary.
Some translations are incomplete or missing
Check the corresponding text page on this site; most likely, the translations there have not been finished yet.
Patch configuration
Why does Patch X not work with Patch Y?
When you are using multiple patches, the order is important. For example one may want to use Gamer251's Mima patch for the Mima sprite and dialog, the Alphes patch for Alphes-style art, and our English patch to have the rest of the game translated to English. If one was to use the Mima patch first, then the Alphes patch, then the English one, they would discover that while the other patches were applied, the English title screen was applied to the Mima's custom title. So for a typical patch selection, the correct way to select a patch if it's not already not added for you (as seen with Nazeo's gangster patch) is using the main language first, then the mod.
There a crash on Wine (Linux and Mac) when running a game
Make sure you're using the last version, we fixed some important bugs with Wine in the version 2021-08-30.
Also, if you previously applied the workaround where you copied some DLL files around, delete them. This workaround is no longer needed, and having old DLL files in the thcrap directory can cause a crash. You should not have any DLL file in the thcrap root folder.
The patch does not seem to update.
A complete, manual reinstallation of the latest thcrap version usually fixes this.
HALP
Something not covered here? Everything just going wrong? We have the solution! (Most of the time.)
Please visit our Discord or IRC channel #thcrap on irc.freenode.net. Things we would need are OS, game, what you were doing, and the patcher's log file (thcrap_log.txt
).
Run configuration parameters
Root level
dat_dump
- Dumps original game data from the .dat archive as it's loaded.
- As of the 2013-07-29 build, this also dumps the sprite boundaries for all graphic files.
- values: false to disable, directory string to specify directory, anything else will enable dumping into game directory/dat
console
- Enables or disables the on-screen patch debugging console.
- values: true / false
font
- Changes the font used in the game to any other font installed on your system.
- values: string
Patch level
archive
- Specifies the base directory of this patch. Must end in a forward slash (/).
- As of the 2014-01-03 build, this can be a directory relative to the one the run configuration is stored in.
- value: string
ignore
- Ignores any files from this patch that match the given wildcard.
- value: array of strings
Example: Disabling music title and spell card translations for a specific language
{
"archive": "thpatch/lang_en/"
},
{
"archive": "thpatch/lang_pt-br/",
"ignore": ["*themes.js", "*spells.js"]
},
update
- Set to
false
to disable automatic updates for this patch. - value: true/false
Alternatively, you can safely delete thcrap_update.dll
after configuration to remove all on-line functionality.