NScripter — игровой движок для создания визуальных новелл. Написан Наоки Такахаси (яп. 高橋 直樹 Takahashi Naoki). Название состоит из первой буквы имени автора движка — «N», и слова «Scripter», обозначающего, что NScripter как наследник движка Scripter3 авторства Такахаси Атару (яп. Takahashi Ataru) частично унаследовал его синтаксис.

NScripter
Изображение логотипа
Тип игровой движок
Разработчик Наоки Такахаси
Поддерживаемая ОС Windows
Написан на языке C++
Лицензия Freeware
Последняя версия 23.02.2018
nscripter.com

Благодаря своей простоте (использует ассемблер-подобный скриптовый язык) и весьма либеральной лицензии (бесплатен даже для коммерческого использования) стал популярен в Японии. Использовался для ряда коммерческих проектов: HaniHani, Tsukihime, Binary Pot, Higurashi no Naku Koro ni и многих других.

ONScripter править

ONScripter
 
Тип игровой движок
Разработчик Ogapee
Поддерживаемые ОС Windows, Linux, macOS
Написан на языке C++
Лицензия GPL
onscripter.sourceforge.jp

Оригинальный NScripter был доступен только для Microsoft Windows и поддерживал только японский язык. Поэтому были написано несколько клонов. Самым популярным стал ONScripter — движок с открытым исходным кодом, базирующийся на графической библиотеке SDL. Благодаря ONScripter’у у пользователей появилась возможность воспроизводить игры и новеллы, созданные на движке NScripter, на других платформах. В частности, существуют порты ONScripter для macOS, Linux, Sega Dreamcast, Sony Playstation 3, Sharp Zaurus, PlayStation Portable и Apple iPhone.

ONScripter-En править

ONScripter-En
 
Тип игровой движок
Разработчик Mion
Ключевой программист Peter Jolly
Дата выхода 5 сентября 2006
Поддерживаемые ОС Windows, Linux, macOS
Написан на языке C++
Лицензия GPL
Последняя версия 20110930 (30 сентября 2011)
web.archive.org/web/2018…

Поскольку ONScripter, являясь чистокровным клоном, унаследовал те же недостатки, что и его «прародитель», англоязычной группой фан-переводчиков под названием insani были разработаны патчи, добавляющие поддержку 1-байтовых символов наравне с Shift-JIS, а также корректных переносов строк (функция отсутствовала потому, что в японском языке нет переносов как таковых), которые впоследствии вошли в официальный дистрибутив ONScripter’а. Несмотря на это, группа продолжала поддерживать собственную ветку, названную ONScripter-En. В 2006-м году insani передали разработку ветки Peter «Haeleth» Jolly.

Proportional ONScripter править

Proportional ONScripter
 
Тип игровой движок
Разработчик Mion
Ключевой программист Peter Jolly
Дата выхода 6 сентября 2006
Поддерживаемые ОС Windows, Linux, macOS
Написан на языке C++
Лицензия GPL
Последняя версия 20111009 (9 октября 2011)
Первая игра на движке «Tokoyo no Hoshizora (русская версия)» (15 ноября 2007)
web.archive.org/web/2018…

В 2006 году была начата работа над юникод-ориентированной веткой ONScripter'а, названной «Proportional ONScripter», или просто «PONScripter». В отличие от ONScripter’а, Proportional ONScripter поддерживает скрипты, кодированные в формате UTF-8, а также множество дополнительных возможностей, включая:

  • различные стили текста — курсив, подчёркнутый, зачёркнутый и т. д.
  • подключение до 8 различных файлов шрифтов (системные по-прежнему не поддерживаются)
  • отсутствие ограничений на формат шрифтов: поддерживаются растровые, OpenType и т. д.
  • пропорциональные шрифты наравне с полноширинными и моноширинными (отсюда и название ветки)
  • локализация интерфейсных строк

Всё это дало возможность перевести новеллы, изначально выпущенные на движке nScripter, на все языки мира, включая русский.

В конце 2009-го у англоязычной ветки ONScripter-En и Proportional ONScripter’а сменился разработчик. Им стала Mion, глава фанатской локализаторской группы Sonozaki Futago-tachi, в своё время выпустившей перевод новеллы-первоисточника Higurashi no Naku Koro ni.

ONScripter-ANSI править

Представляет собой небольшую модификацию-патч, добавляющую поддержку скриптов в кодировке Windows-1251 вместо Shift-JIS, использующегося в исходной версии оригинальной ветки ONScripter-En.

ONSlaught править

ONSlaught
 
Тип игровой движок
Разработчик Helios_VMG
Дата выхода 30 декабря 2008
Поддерживаемая ОС Windows
Написан на языках C, C++, Yacc
Лицензия BSD
Последняя версия 20111126 (26 ноября 2011)
Первая игра на движке «Tsukihime (русская версия)»
sourceforge.net/projects…

В начале 2009 года написан как альтернатива ONScripter’у. Частично включает возможности Proportional ONScripter’а, а также большой список поддерживаемых кодировок для скриптов наравне с Shift-JIS и UTF-8. Также позволяет растягивать картинку низкого разрешения до полноэкранной, не меняя при этом само разрешение экрана. На момент написания статьи, совместимость с существующими новеллами низкая, отсутствует ряд необходимых функций.

Факты о локализациях новелл править

ONScripter-En использовался практически во всех англоязычных локализациях nScripter-новелл, Из-за того, что Наоки Такахаси добавил поддержку 1-байтового текста лишь в последней версии своего движка, была упущена потенциальная переводческая аудитория.

Proportional ONScripter был использован в русскоязычных локализациях бесплатных кратких новелл Tokoyo no Hoshizora, Natsu no Hi no Resonance, Negaeba Kitto, в официальной французской версии Higurashi no Naku Koro ni, а также в нескольких неофициальных портах коммерческих новелл.

ONSlaught был использован в русскоязычной локализации Tsukihime.

Примеры править

Пример простейшей «программы» для среды nScripter, выводящей «Hello, world!»
*define

game

*start
setwindow 26,344,26,5,22,22,0,0,0,1,1,#2266BB,0,320,639,479

`Hello, world!\

end
Пример простейшего главного меню с фоном (с комментариями)
*define

effect 2,10,1000 ;Назначаем эффект 2 10-м эффектом: "появление из темноты", с длительностью в 1 секунду

game

*start

bg "image.png",2 ;Открываем фоновое изображение с указанным эффектом

locate 10,12 ;Располагаем текст, кнопки

select "Start Game",*gamestart ;Прописываем кнопку

*gamestart ;Игра начинается

setwindow 26,344,26,5,22,22,0,0,0,1,1,#2266BB,0,320,639,479 ;Располагаем границы текста, размер шрифта и т. д.

bg "fon.jpg",2 ;Выставляем для игры фон

`Hello, world!\ ;Выводим текст

end

Ссылки править