MotorlarRehberlerFAQPatreonDiscordİndir
Giriş yap
RuneTranslate · Japon oyunlarını baştan sona çevirin
MotorlarRehberlerKarşılaştırGörsel metniKayıt düzenleyiciHile ModuFAQİndirPatreonDiscordYouTubeGizlilikŞartlarİletişim
Tüm yazılar
nscripter · onscripter · engine

NScripter / ONScripter görsel romanları nasıl çevrilir

16 Haz 2026·6 dk okuma

RuneTranslate, NScripter ve ONScripter görsel romanlarını İngilizceye ve 30’dan fazla dile çevirir — XOR-gizlenmiş nscript.dat’yi çözerek, Shift-JIS / CP932’yi işleyerek ve çalışmaya hazır bir kopya dışa aktararak. Yeni; yüklenmeyen her şeyi bildirin.

RuneTranslate, Japon görsel romanlarındaki en eski motor ailelerinden birini okur: NScripter ve açık kaynaklı ikizi ONScripter. Bir klasör dolusu şifreli .dat dosyası ve Shift-JIS betikleri olarak gönderilen bu klasik doujin VN’leri, tarihsel olarak elle açılması en acı verici olanlar ve makine çevirisi araçlarının genellikle atladığı olanlardır. RuneTranslate motoru algılar, betik metnini okur ve hatta başlık ekranına ve menü düğmelerine boyanmış Japoncayı bile çevirebilir.

Bu motor desteği yeni eklendi ve henüz gerçek oyunlarla doğrulanmadı, dolayısıyla RuneTranslate’i bir NScripter / ONScripter oyununa yönlendirir de algılamaz veya yüklemezse, lütfen bize söyleyin — bununla ilgili sonda daha fazlası var.

NScripter ve ONScripter gerçekte nedir

NScripter, Naoki Takahashi tarafından yapılan, 2000’lerin başından itibaren Japonya’da yaygın olarak kullanılan, kapalı kaynaklı bir Windows VN betikleme motorudur. Kişisel ve ticari kullanım için telifsiz lisansı, yerleşik arşiv paketleyicisi ve ünlü düşük seviyeli betikleme dili onu doujin sahnesinin temel unsuru yaptı; Nekonekosoft gibi stüdyolar neredeyse yalnızca ona dayandı.

ONScripter, Ogapee olarak bilinen bir programcı tarafından NScripter çalışma zamanının ayrı, açık kaynaklı (GPL) bir yeniden uygulamasıdır. SDL üzerine kurulu ve yerine geç uyumlu olarak, NScripter’ın çalışamadığı yerlerde çalışır — Linux, macOS, Android ve daha fazlası — dolayısıyla yerelleştirme topluluğu bunu (ve orantılı Unicode fontları için ONScripter-EN ve Ponscripter gibi çatalları) çevrilmiş sürümleri göndermek için fiili çalışma zamanı olarak benimsedi.

Kısa versiyon: NScripter, oyunların yazıldığı orijinal kapalı Windows motorudur; ONScripter, hayran çevirmenlerin sürümlerini çalıştırdığı açık, çapraz platform çalışma zamanıdır. RuneTranslate oyunun betiklerinden ve varlıklarından çalışır, dolayısıyla her iki kamptaki oyunları da kapsar.

Bu oyunları çevirmek neden bu kadar zor oldu

Ren’Py veya Kirikiri gibi modern bir motorla karşılaştırıldığında, NScripter / ONScripter bir motor-döneminden kalma tuhaflıklar mayın tarlasıdır. Özellikle dördü onu hem el çevirmenleri hem de naif MT araçları için bir duvar yaptı:

  • Shift-JIS / CP932 kodlaması. Eski betikler Shift-JIS’tir (CP932). Yanlış çözün, mojibake alırsınız; dikkatsizce yeniden kodlayın, bazı eski çalışma zamanları belleği bozar ve çöker. Modern yerel betikler UTF-8 olabilir, ama arka katalog CP932’dir.
  • XOR-`0x84` gizlenmiş `nscript.dat`. Derlenmiş betik genellikle nscript.dat (veya Ponscripter’da pscript.dat) içinde yaşar, her bayt 0x84 sabitine karşı XOR’lanmış. Bu şifreleme değildir — yalnızca yanlışlıkla sürprizlere karşı bir korumadır — ama yine de bir metin düzenleyicide açamazsınız. Düz metin oyunlar betiği bunun yerine 0.utf / 0.utf.txt (UTF-8) veya 0.txt / 00.txt (Shift-JIS) olarak gönderir.
  • Görsel çizime pişirilmiş metin. Başlık ekranları, menüler ve düğmeler sıklıkla önceden işlenmiş bitmap’lerdir, dolayısıyla üzerlerindeki Japonca dizeler değil, piksellerdir — bir dize çıkarıcı onlara dokunamaz.
  • İnce olanı: Latin ile başlayan satırlar komut olarak yeniden ayrıştırılır. NScripter’ın ayrıştırıcısı her satıra komut modunda başlar. Motor yalnızca iki baytlık Japonca kabul ettiğinde bu güvenliydi, ama tek baytlık bir Latin harfiyle başlayan bir satır tam olarak bir komut gibi görünür ve motor onu yürütmeye çalışır. Topluluk düzeltmesi, metin modunu zorlayan ayrılmış bir metin işaretçisidir (eski ONScripter’da ters tırnak ` `; Ponscripter’da ^`) — ki naif bir bul-değiştir bunu eklemez.

RuneTranslate şimdi ne yapıyor

RuneTranslate, NScripter / ONScripter’ı birinci sınıf bir motor olarak ele alır ve sorunun her iki yarısını da halleder:

  • Betik metni. Oyunun betiğini okur — gevşek bir düz metin dosyası veya XOR 0x84 ile gizlenmiş bir nscript.dat — Shift-JIS / CP932 diyalogu çözer, her çevrilebilir satırı düzenleyicide listeler ve dışa aktarımda betiği motorun beklediği biçimde geri yazar, orijinal onu kullandığında XOR’u yeniden uygulayarak. Ayrıca çevrilmiş İngilizcenin bir komut olarak yanlış okunmaması için tek baytlık metin işaretçisini otomatik olarak ekler. (Yalnızca bir .nsa / .sar arşivinin içinde, gevşek bir kopyası olmadan yaşayan bir betik henüz okunmaz — sınırlamalara bakın.)
  • Pişirilmiş görsel metin. Başlık ekranlarındaki ve menülerdeki Japonca, görsel metin çevirisi tarafından ele alınır: kelimeleri kutulayın, tanıyın, kendi sağlayıcınızla çevirin ve sonucu yeniden pişirin, böylece oyun çevrilmiş çiziminizi yükler.

Japonca → İngilizce en verimli noktadır — bu motorun hayran-çeviri geçmişinin konusu budur — ama 30’dan fazla dili hedefleyebilirsiniz. Eski Shift-JIS betiklerinde Latin dışı bir hedef, motorun işleyebildiği fontlarla sınırlıdır.

İhtiyacınız olanlar

  • Windows için RuneTranslate — ücretsiz, her motor ve sağlayıcı açık.
  • Bir NScripter veya ONScripter oyun klasörü — oyunun .exe’sinin (veya bir ONScripter ikilisinin), betiğinin (nscript.dat ya da gevşek bir 0.txt / 0.utf) ve varsa .nsa / .sar arşivlerinin bulunduğu dizin.
  • Bir hedef dil — İngilizce, İspanyolca, Fransızca, Almanca, Çince ve 30’dan fazlası.
  • Bir sağlayıcı. Ücretsiz Google Translate kutudan çıkar çıkmaz çalışır; DeepL’in ücretsiz bir katmanı vardır; OpenAI, Anthropic, bir yerel model ve herhangi bir OpenAI uyumlu API kendi anahtarınızı getirmenizi gerektirir. Bu oyunlar diyalog ağırlıklıdır, dolayısıyla bir LLM veya DeepL en iyi okur.

Adım 1: Oyun klasörünü açın

RuneTranslate’i başlatın, Yeni proje’ye tıklayın ve oyun dizinine yönlendirin. Algılama otomatik çalışır: bir nscript.dat / pscript.dat ya da düz metin bir 0.utf / 0.utf.txt tek başına yeterlidir. Sade bir Shift-JIS 0.txt veya tek başına bir .nsa arşivi, yalnızca destekleyici bir sinyalle birlikte tanınır — bir ONScripter ikilisi, bir oyun fontu veya eşlik eden bir arşiv — yanlış eşleşmeleri önlemek için. Orijinal oyun klasörünüz asla değiştirilmez.

Adım 2: Betik nasıl okunur

RuneTranslate, oyunun kök dizinine gevşek gönderdiği betiği okur ve sizin için çözer:

  • Gizlenmiş `nscript.dat` — 0x84’e karşı XOR’u çözülür ve Shift-JIS olarak okunur, böylece ayrı bir nsdec adımını atlarsınız.
  • Düz metin betikler — 0.utf / 0.utf.txt (UTF-8) veya 0.txt / 00.txt (Shift-JIS), doğrudan okunur.
  • Arşivlenmiş görseller — görsel metin adımı için oyunun .nsa / .sar arşivlerinden çekilir. (Betiğin kendisi gevşek kök dosyalarından okunur; yalnızca bir arşivin içinde paketlenmiş bir betik henüz okunmaz.)

Diyalog ve gösterilen metin düzenleyicide dosyaya göre gruplanarak listelenir. Motor işaretlemesi ve komut belirteçleri, sağlayıcıya ulaşmadan önce sayısal yer tutucuların arkasına maskelenir, ardından çıkışta geri yüklenir — ve gerektiğinde tek baytlık metin işaretçisi uygulanır, böylece motor çevrilmiş bir satırı bir komutla karıştırmaz.

Adım 3: Çevirin

Bir sağlayıcı seçin ve çalıştırın. Karakter sesi için bir LLM (OpenAI / Anthropic) en iyisidir, DeepL anlatı için hızlı ve temizdir ve ücretsiz Google Translate kısa menü dizeleri için gayet iyidir. Adların aynı şekilde görünmesi için kadronuzu baştan sözlüğe ekleyin — Sözlük 101’e bakın. Bitirdiğinizde, yapay zeka iyileştiricisiyle isteğe bağlı bir geçiş her satırı bağlamda yeniden okur ve MT’nin geride bıraktığı katı, birebir ifadeyi sıkılaştırır.

Adım 4: Görsellerdeki metni çevirin

NScripter arayüzünün çok fazlası önceden işlenmiş çizim olduğu için, bu adım burada çoğu motordan daha fazla önemlidir. Bir başlık veya menü görselini açın, her Japonca parçasını kutulayın, tanıyın, aynı sağlayıcıyla çevirin ve dışa aktarımda RuneTranslate çeviriyi geri pişirir ve dışa aktarılan kopyaya gevşek yazar, böylece motor çevrilmiş çiziminizi arşivlenmiş orijinalin üzerine yükler. (Orijinal klasörünüz dokunulmadan kalır; SPB-sıkıştırılmış çizim ve birkaç egzotik görsel varyantı hâlâ sağlamlaştırılıyor.) Tam anlatım: görsel metin çevirisi.

Adım 5: Çalışmaya hazır bir kopya dışa aktarın

Dışa Aktar’a tıklayın. RuneTranslate oyunun çevrilmiş bir kopyasını yazar — betik Shift-JIS / CP932’ye yeniden kodlanmış ve orijinal onu kullandıysa XOR 0x84 ile yeniden gizlenmiş, motorun arşivlenmiş herhangi bir kopyanın üzerine yüklediği gevşek bir betik olarak yazılmış, artı yanında varsa çevrilmiş görseller. Çalıştırın ve ister orijinal NScripter çalışma zamanında ister ONScripter / ONScripter-EN’de hedef dilinizde oynasın.

Bilinen sınırlamalar

  • XOR-0x84 gizlemesi ele alınır, ama gerçek özel şifreleme içeren bir oyun açılmayabilir.
  • Kökte gevşek bir nscript.dat / 0.txt olmadan, yalnızca bir .nsa / .sar arşivinin içinde paketlenmiş bir betik henüz çıkarılmaz — çoğu oyun onu gevşek gönderir, ama birkaçı göndermez.
  • Görsel metin çevirisi boyalı menülere, başlıklara ve düğmelere ulaşır, ama SPB-sıkıştırılmış çizim ve yoğun üsluplu logolar elle bir rötuş isteyebilir.
  • Tam motor sürüme göre değişebilir — bazı NScripter ile ilişkili oyunlar belirli Steam / konsol yeniden sürümleri için yeniden tasarlandı. Kendi kopyanızda doğrulayın.

Yepyeni — neyin bozulduğunu bize söyleyin

Bu motor taze bir eklemedir, henüz sınanmamıştır. NScripter / ONScripter’ın hepsini görmediğimiz onlarca yıllık varyantı, çatalı ve stüdyodan stüdyoya tuhaflığı var. Yani RuneTranslate’i bir tanesine yönlendirir de algılamaz, yüklemez veya çalışma zamanının açmayacağı bir şey dışa aktarırsa, lütfen bildirin — oyunun adı ve nasıl paketlendiği (gevşek 0.txt, nscript.dat, .nsa arşivleri) onu en hızlı şekilde sağlamlaştırmamıza yardımcı olur.

RuneTranslate’i indirin, okumayı düşündüğünüz o klasik VN’ye yönlendirin ve deneyin. Daha modern bir VN motoru için, sonra Ren’Py anlatımını okuyun.

İlgili okumalar
01

Bir oyunun .po ve .mo dosyaları nasıl çevrilir (gettext)

gettextpomoenginetutorial4 Ağu 2026 · 7 dk
Oku →
02

AliceSoft System oyunları nasıl çevrilir (Rance, Evenicle…)

alicesoftranceengine26 Haz 2026 · 6 dk
Oku →
03

YU-RIS görsel romanları İngilizceye nasıl çevrilir

yu-risengine25 Haz 2026 · 6 dk
Oku →

RuneTranslate'i denemeye hazır mısın?

Ücretsiz katman her motoru + her çeviri sağlayıcısını açar. Supporter ($3/mo) tam hızı açar.

Windows için indir