kone
소미소프트

소미소프트

BepInEx 기번 개선방법 중 정규표현식 사용법

10/07/2025, 15:25:47
정보
5257 views · 24 likes
  • 개선 대상: 반복 번역구문 번역속도 대폭상승, 품질 상승

  • 개선 방법: 반복구문 패턴 정규화




  • 방법

  1. 번역스크립트 폴더로 이동

 게임설치경로\BepInEx\Translation\ko\Text


1

이건 비단 eztrans뿐만 아니라 파파고/구글 번역등 BepInEx 쓰는 기번 모두 해당되는 이야기인데

\BepInEx\config\AutoTranslatorConfig.ini

에 보면

[Files]
Directory=Translation\{Lang}\Text
OutputFile=Translation\{Lang}\Text\_AutoGeneratedTranslations.txt
SubstitutionFile=Translation\{Lang}\Text\_Substitutions.txt
PreprocessorsFile=Translation\{Lang}\Text\_Preprocessors.txt
PostprocessorsFile=Translation\{Lang}\Text\_Postprocessors.txt

이런 부분이 있는데
BepInEx가 여기서 [Directory]에 있는 txt를 기본적으로 다 읽음
그래서 저 기존 4개의 파일들을 직접 손대서 번역을 개선시킬수도 있지만
파일 관리측면에서 덮어씌워지거나 할 수 있으니
정규식 패턴을 따로 추가 파일로 생성해서 고치면 기번성능을 간단하게 끌어올릴 수 있음


왜 기번성능이 개선되냐면

대상 언어가 일->한 번역으로 세팅 되어있을 경우

일본어만 찾아서 변환시키기 때문에 최초 1회만 번역 되는데

최초 변환) BepInEx(추출) -> Eztrans(번역) -> _AutoGeneratedTranslations.txt(결과) -> BepInEx(변환) -> 게임화면 출력
이 구조이기 때문에 최초 번역은 상당히 버퍼가 느림

이후 변환) ???.txt(치환식) -> BepInEx(변환) -> 게임화면 출력

이기 때문에 번역이 생략돼서 버퍼없이 거의 즉시 출력됨


그래서 txt문에 정규식을 추가해주면 번역속도 개선이 많이 이루어짐



2. 거슬리는 일반 단어의 경우

_AutoGeneratedTranslations.txt 에 들어가서 직접 편집해주면 됨

ごめんね、すぐ綺麗にするから=미안해요, 곧 예쁘게 하기 때문에

이렇게 되어있는 번역을 혹시 바꾸고 싶다 치면

ごめんね、すぐ綺麗にするから=미안, 금방 닦아줄게

이렇게 바꿔주면 되는거



본문 3). 반복되는 번역 정규표현식으로 처리시키기


예를 들면 게임에 이런 구문이 있다고 치자


信頼:   16\n好き:   17\nえっち:   10=신뢰: 16\n좋아: 17\n엣치: 10
信頼:   19\n好き:   20\nえっち:   10=신뢰: 19\n좋아: 20\n엣치: 10
信頼:   20\n好き:   21\nえっち:   10=신뢰: 20\n좋아: 21\n엣치: 10
信頼:   21\n好き:   22\nえっち:   10=신뢰: 21\n좋아: 22\n엣치: 10
信頼:   22\n好き:   23\nえっち:   10=신뢰: 22\n좋아: 23\n엣치: 10
信頼:   22\n好き:   23\nえっち:   11=신뢰: 22\n좋아: 23\n엣치: 11
信頼:   22\n好き:   24\nえっち:   11=신뢰: 22\n좋아: 24\n엣치: 11
信頼:   22\n好き:   24\nえっち:   12=신뢰: 22\n좋아: 24\n엣치: 12
信頼:   22\n好き:   24\nえっち:   13=신뢰: 22\n좋아: 24\n엣치: 13
信頼:   22\n好き:   24\nえっち:   14=신뢰: 22\n좋아: 24\n엣치: 14

게이지가 올라갈때마다 새로 통으로 번역을 하게되고 이게 파일에 계속 쌓이게 된다

게임 종류에 따라 파일크기가 점점 커지고 번역을 불러오는데 느려질 요소가 다분하다

5日目(金)=5일째(금)
6日目(土)=6일째(토)
7日目(日)=7일째(일)


이런것도 마찬가지로 날짜가 지날때마다 번역을 새로하고

최악의 경우는

30日目 16:00 (火)\n(2025-10-02 01:58:52)=30일째 16:00(화)\n(2025-10-0201:58:52)
30일째 16:00(화)\n(2025-10-0201:58:52) \n\nをロードしますか?=30일째 16:00(화)\n(2025-10-0201:58:52) \n\n를 로
30日目 16:00 (火)\n(2025-10-08 00:15:25)=30일째 16:00(화)\n(2025-10-0800:15:25)

이렇게 1초 달라졌다고 번역을 새로해야 하는 경우가 있다 (나중에 번역만 수백줄 됨)
이런건 한방에 고쳐줄 수 있는데


a) BepInEx\Translation\ko\Text 폴더에 _Regex.txt 파일 생성

1


b) 예시 게임의 경우 아래와 같이 정규식 입력 (해당 게임에 맞게 짜야합니다)

sr:^(\d+)日目\(月\)$=$1일차(월)
sr:^(\d+)日目\(火\)$=$1일차(화)
sr:^(\d+)日目\(水\)$=$1일차(수)
sr:^(\d+)日目\(木\)$=$1일차(목)
sr:^(\d+)日目\(金\)$=$1일차(금)
sr:^(\d+)日目\(土\)$=$1일차(토)
sr:^(\d+)日目\(日\)$=$1일차(일)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(月\)\n\((.*)\)$=$1일차 $2 (월)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(火\)\n\((.*)\)$=$1일차 $2 (화)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(水\)\n\((.*)\)$=$1일차 $2 (수)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(木\)\n\((.*)\)$=$1일차 $2 (목)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(金\)\n\((.*)\)$=$1일차 $2 (금)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(土\)\n\((.*)\)$=$1일차 $2 (토)\n($3)
sr:^(\d+)日目\s(\d{2}:\d{2})\s\(日\)\n\((.*)\)$=$1일차 $2 (일)\n($3)
sr:^(.*\n.*)\n\nをロードしますか?$=$1\n\n를 로드합니까?
sr:^信頼:\s+(\d+)\n好き:\s+(\d+)\nえっち:\s+(\d+)$=신뢰도: $1\n호감도: $2\n음란도: $3
sr:^♥\sパンツを\s(\d+)\s回脱がされた$=♥팬티를 $1 회 탈의했다
sr:^♥\sおまんこを\s(\d+)\s回いじられた$=♥보지를 $1 회 만져졌다
sr:^♥\sお口に\s(\d+)\s回射精された$=♥입에 $1 회 사정되었다
sr:^♥\sパンツを\s(\d+)\s回濡らした$=♥팬티를 $1 회 적셨다
sr:^♥\s飲んだ精液量\s(\d+)\smL$=♥마신 정액량 $1 mL
sr:^♥\s中出しされた精液量\s(\d+)\smL$=♥질내사정된 정액량 $1 mL
sr:^♥\s膣内に\s(\d+)\s回射精された$=♥질내에 $1 회 사정되었다
sr:^♥\sお尻を\s(\d+)\s回叩かれた$=♥엉덩이를 $1 회 얻어맞았다
sr:^♥\s舌を\s(\d+)\s回絡め合った$=♥혀를 $1 회 서로 휘감았다
sr:^♥\sお尻を\s(\d+)\s回揉まれた$=♥엉덩이를 $1 회 주물러졌다
sr:^♥\sおまんこを\s(\d+)\s回舐められた$=♥보지를 $1 회 빨렸다
sr:^♥\s顔に\s(\d+)\s回射精された$=♥얼굴에 $1 회 사정되었다
sr:^♥\sおまんこを\s(\d+)\s回触られた$=♥보지를 $1 회 만져졌다
sr:^♥\s乳首で\s(\d+)\s回イった$=♥유두로 $1 회 갔다
sr:^♥\s乳首を\s(\d+)\s回触られた$=♥유두를 $1 회 만져졌다
sr:^♥\s乳首を\s(\d+)\s回舐められた$=♥유두를 $1 회 빨렸다
sr:^♥\sおまんこに\s(\d+)\s回射精された$=♥보지에 $1 회 사정되었다
sr:^♥\s(\d+)\s回キスされた$=♥ $1 회 키스 되었다
sr:^♥\sお尻を\s(\d+)\s回撫でられた$=♥엉덩이를 $1 회 만져졌다
sr:^♥\sおまんこで\s(\d+)\s回イった$=♥보지로 $1 회 갔다


번역 개선/혹은 속도 개선하고 싶은 반복 구문을 정규화 시켜서

sr:{정규표현식},{번역구문(평문)}

이렇게 작성해 주면 해당 구문은 기존에 매번 2초 걸리던게 로딩 0.1초만에 이미 되어있는 걸 볼 수 있음.


정규표현식은 PERL 방식을 따르고 수식이 엄청 많기 때문에 위에서 사용한 규칙만 설명하면

^  = 문장의 시작
$  = 문장의 끝
\s = 띄어쓰기 1칸
() = 파라미터 -> 평문에서 소괄호 순서대로 $1 부터 $2,$3 순서로 전달 받음. 0은 파라미터 전체.
+  = 이전 패턴이 1개 이상
*  = 이전 패턴이 0개 이상
.  = 모든 일반 문자
\n = 개행
\(, \) = 괄호를 문자로 쓰고 싶은경우, 정규표현식에서 사용하는 수식을 문자로 쓰고 싶을 경우 앞에 escape 문자 추가
\d = 숫자
즉, (\d+) = 1개 이상의 숫자가 오면 이를 파라미터로 세이브

이렇게 할 수 있음


24
8 comments
10/07/25 Edited 10/07/25
대충 개추
10/07/25
저게 perl 정규 표현식이었구나 유익한 정보였다
10/07/25
개추
10/08/25
이게 정보지
인게임에 信頼 好き えっち 를 신뢰 좋아 엣지 로 수정하려면 어떻게 해야해?
아 그냥 밑에꺼 복붙했더니 되네 감사감사
11/22/25
1번 설명 이해가 안됨 미안합니다 조금 더 쉽게 가능하시오? 결론 적으로 파일을 옮기라는 말임?
11/22/25
아 이동이라는 말이 저 폴더 안으로 들어가라는 '폴더로 이동' 인데 로가 빠졌네요
여동생 모노크롬 판타지 선택지 정보
정보
sindo10
09/06/25 39965 25
여동생 모노크롬 판타지 초반 선택지 & 칭호 정보
정보
sindo10
09/05/25 42195 25
[시모바시라 공방] 「마장영희 셀레녹시아」 제작 보고 53 - 계속되는 차이점 작업과 10만 상어
정보
날개 로봇
09/05/25 10681 34
무인도 체험판 공개
정보
beatrirz
09/05/25 7022 19
Handyman Fantasy 무료 dlc2 곧 공개
정보
영고
09/05/25 6847 21
스타메이커 스토리 1.7 이벤트 공략 (스압&스포 주의)
정보
anisakis
09/05/25 61706 57
Luna 9월 25일 출시
정보
캬르루
09/05/25 5397 20
셀레스포니아 따거모드 (다른버전)
정보
쩝냡
09/03/25 8294 15
[정보] 요몽원 하반신만 나오는 버그 해결법
정보
Ghost
09/03/25 16706 17
[체험판](ONEONE1)終末のオルターエゴイズム
정보
잉여로운인간의생활
09/01/25 7624 17
마법 음마 소녀 리리스 발매
정보
wasansppap
08/31/25 8102 24
나만 관심있어보이길래 적는 정보 WhiteMoor 제작자 근황
정보
영고
08/31/25 5888 28
[정보] 오 심챈때 개발하던 개발자 망고파티로 스팀진출했네요 ㅋㅋ
정보
Ghost
08/29/25 13110 72
트위터에서 찾은 기대되는 치한게임
정보
no-chat-user
08/29/25 11548 16
비의 괴물 [雨のバケモノ] 8월 제작 현황 (CG완료 + 완성 9월->10월)
정보
미식이네
08/28/25 8619 23
달인 퇴마사는 촉수요마 따위에 굴복하지 않는다 출시일 확정
정보
eisia
08/28/25 6624 18
익헨(Exhentai)에서 특정 업로더 차단하는 방법 + 차단목록 공유
정보
BHCM
08/28/25 5336 36
내 여친이랑 해볼래? 2 번역 안떠서 진행힘든사람용 공략
정보
ㅇㅇ
08/27/25 17127 25
Luna 신규 H씬
정보
캬르루
08/26/25 11892 34
[정보] 마법 음마 소녀 리리스 발매일 확정 9월 1일
정보
Ghost
08/24/25 8629 26
[정보] 존재감이 옅은 여동생과 간단생활 근황
정보
Ghost
08/23/25 33712 55
NTR 아이돌 정상화 세팅.txt
정보
비비안
08/22/25 16088 56
[정보] NTR 아이돌 정식발매시 공식한글 확인됨.
정보
Ghost
08/18/25 5955 21
뉴비가 적는 던브 주인공 리세마라 방법..
정보
NtrGuy
08/18/25 7979 27
[정보] 시니시스터2 한글번역추가 확정 소식
정보
Ghost
08/17/25 4616 18
무인도 파이널테스트
정보
beatrirz
08/17/25 4253 15
멜피어스 첫번째 업뎃
정보
영고
08/17/25 7294 22
한글 경로 미지원 게임, 한글 경로로 실행 가능하게 하는법
정보
gyhaga
08/13/25 4070 22
유니티 게임 16:9 이외의 모니터에서 화면 짤릴때 간단 수정법
정보
ㅏ얽초ㅏㅓㅑㅇㄹ쳐가어ㅑㅕㄹ곹ㅇ
08/13/25 3055 26
청아) 야루모니라는 작가가 겜만드네
정보
hihihiiihihi
08/13/25 5074 15