Введение
Визуальный роман NScripter (エヌスクリプター), официально сокращенный как Nscr, также известный под производственным названием Scripter4, — это игровой движок, разработанный Наоки Такахаси в период с 1999 по 2018 год, работающий на собственном языке сценариев, который упрощает создание как визуальных, так и звуковых новелл. SDK доступен только для Windows. Начиная с версии 2.82, NScripter поддерживает как японские символы длиной в два байта, так и любые символы длиной в один байт; ранее он поддерживал только японские символы. Этот движок был очень популярен в Японии благодаря своей простоте и тому, что он был бесплатным для начинающих разработчиков игр. Кроме того, существуют форки, позволяющие расширить возможности NScripter для отображения символов других языков, запуска игры на других платформах и т. д.
NScripter (エヌスクリプター), officially abbreviated as Nscr, also known under its production title Scripter4, is a game engine developed by Naoki Takahashi between 1999 and 2018 functioning with its own script language which facilitates the creation of both visual and sound novels. The SDK is only available for Windows. From version 2.82, NScripter supports both Japanese characters these are two bytes long and any single byte character; before that, it only supported Japanese characters. This engine was very popular in Japan because of its simplicity and because it was free for amateur game makers. Additionally, there are forks available to extend NScripter's capabilities to display characters from another language, run a game on other platforms, etc.
Н-скриптер
Разработка NScripter велась с [дата начала] по [дата окончания]; изначально он назывался Scripter4, так как являлся преемником Scripter3, предыдущего движка, разработанного Наоки Такахаси. [Дата] была датой выхода финальной версии NScripter.
Характеристики
Сценарий выполняется движком в интерпретаторе. Синтаксис очень прост и напоминает язык BASIC. Функции, необходимые для создания визуальных и звуковых новелл, такие как отображение текста, спрайтов и CG-артов, воспроизведение музыки и обработка выбора, встроены в движок в виде базового API. Это упрощает создание игр благодаря возможности написания сценария, который напрямую вызывает эти функции. Для удовлетворения специфических потребностей можно использовать метод, называемый "системной настройкой", который изменяет поведение самого движка для добавления функций, таких как система сохранения, сложные эффекты, отсутствующие в базовом API, или управление видео. Для этого можно использовать внешние DLL. Эти возможности позволяют создавать игры-симуляторы и другие подобные проекты. Однако, до версии 2.92 объектно-ориентированные элементы не были реализованы в программном обеспечении, и NScripter вообще не поддерживал параллельное выполнение. Оператор использовался для попыток структурированного программирования в NScripter. В целом, NScripter специализируется на разработке визуальных и звуковых новелл, что значительно упрощает создание игр этих жанров. В версии 2.82 NScripter получил поддержку однобайтовых символов, что позволяет писать на латинском алфавите, включая английский, для англоязычных пользователей.
Расширение через Луа
С версии 2.93, выпущенной в 2007 году, появилась возможность расширить функциональность NScripter с помощью Lua. Lua реализован в виде DLL и запускается непосредственно NScripter. Из обычного скрипта NScripter можно вызывать любые функции этого языка, а также вызывать функции NScripter из Lua, что позволяет практически полностью перенести игровой скрипт на Lua. Помимо сложных математических операций, недоступных в стандартном NScripter, этот язык предоставляет полный набор функций, характерных для скриптовых языков, таких как работа с файлами, блочная область видимости, методы массивов и модульные библиотеки. Lua позволяет NScripter поддерживать параллелизм, что теперь дает возможность одновременно и параллельно манипулировать каждым элементом игры; например, во время воспроизведения анимации NScripter может выполнять другие задачи. Этот язык значительно улучшает и упрощает описание различных расширений, которые ранее создавались с помощью метода, известного как "системная настройка", и предоставляет возможность изменять поведение самого движка, например, поведение в конце игры. Однако использование Lua не является обязательным, и старый метод системной настройки по-прежнему доступен.
Документация
NScripter имеет официальную документацию в электронном виде и четыре официальные книги, изданные в 2004, 2005, 2006 и 2007 годах соответственно. Сейчас эти книги доступны только на вторичном рынке. Существуют также неофициальные электронные руководства, например, руководство Сензогавы.
Лицензия
Что касается лицензии, разрешено некоммерческое использование программного обеспечения, и любую некоммерческую игру можно распространять без выплаты роялти. Условия использования были упрощены, и участники игр и других конкурсов теперь могут использовать программное обеспечение бесплатно, независимо от получения денежного приза и формы распространения выигрышной работы. Более того, при бесплатном распространении использование разрешено как для коммерческих, так и для частных пользователей, независимо от способа распространения. Даже если работа включена в приложение к журналу в виде бесплатного или условно-бесплатного программного обеспечения, ее использование остается бесплатным. Однако для коммерческой продажи работы необходимо выплатить роялти после того, как игра будет оценена рейтинговым агентством, таким как EOCS. Даже в случае любительских игр и программного обеспечения/игр с открытым исходным кодом, если сумма роялти достигнет 400 000 иен или более, работа будет считаться коммерческой, и любые проблемы с движком будут решаться. В этом случае, если разработчик захочет добавить функцию, например, расширение или обфускацию для каждой работы, это будет учтено как часть роялти. Возможность договориться об оплате или вовсе избежать ее существует; разработчик NScripter особенно поддерживает разработчиков игр, не стремящихся к получению прибыли, и тех, кому это затруднительно из-за выплаты роялти. Создание расширения DLL и его распространение под лицензией GPL запрещено, однако лицензия LGPL считается приемлемой.
Популярность
Этот движок был очень популярен в Японии в 2000-х годах благодаря своей простоте и тому, что он был бесплатным для любительских разработчиков видеоигр.
Примеры сценариев
В следующих примерах используется вариант языка скриптов NScript, реализованный в ONScripter EN.
Простой сценарий
Этот простой скрипт определяет некоторые базовые параметры и отображает текст.
Сценарий с выбором и фоновым изображением
Любой визуальный роман, который не является линейным или называется "кинетическим романом", содержит варианты выбора. Этот скрипт также включает инструкции для отображения фонового изображения и, кроме того, с эффектом плавного появления попиксельно.
Известные игры с использованием NScripter
Большинство игр, работающих на NScripter, — это любительские видеоигры, поэтому заметных игр на NScripter немного. Большинство примечательных игр, перечисленных ниже, — коммерческие проекты и, следовательно, коммерчески успешны. Tsukihime; хотя Type Moon использовала NScripter для Tsukihime, компания позже перешла на KiriKiri для своей следующей игры, Fate/stay night. Звуковые новеллы 07th Expansion — серия "Когда они плачут" и другие; многие люди узнали о NScripter и его производных благодаря играм 07th Expansion, в том числе и многие любительские переводчики. Серия Narcissu; серия Narcissu, вероятно, самая популярная серия бесплатных кинетических новелл, работающих на NScripter.
НСкриптер 2
NScripter2 (エヌスクリプターツー), также известный как Sunday Game Engine (SGE), является преемником игрового движка NScripter, разработанный Наоки Такахаси. SDK доступен только для операционной системы Windows.
Разработка и выпуск
В 2008 году прототип движка был выпущен под названием Sunday Game Engine. С тех пор разработка продолжалась, и официальная бета-версия движка стала доступна .
Характеристики
Please provide the English text you want me to translate. I need the content of "... ." to begin the translation process. I will use the provided "Да . - Да . - Да . - Да . - Да . - Да ." only as a reference for consistent terminology if applicable, but prioritize accurate translation of the English meaning.
Руководство пользователя
По состоянию на [дата], NScripter2 находился на стадии, когда были выпущены только сам движок и минимальная документация. Разработчик намеревался обновить и упростить его, но движок не обновлялся с [дата].
Синтаксис
Синтаксис отличается от NScripter, хотя и вдохновлен языком BASIC, точнее Visual Basic и QuickBasic; например, функции теперь начинаются не с звездочки (*), а с символа «@», начальная функция теперь не '', а ' ', и, в качестве еще одного примера, для большей согласованности с Lua команда выхода из программы теперь не ' ', а ' ' – команда, завершающая условие 'if' в Lua, в отличие от BASIC. Существует неофициальное расширение для бесплатного текстового редактора Atom, облегчающее разработку скриптов для NScripter2.
Лицензия
В основе своей, действуют те же условия лицензирования, что и для NScripter, то есть движок бесплатен для любительских игр и некоммерческих проектов. Использовать NScripter2 для разработки коммерческих продуктов возможно, но требуется выплата роялти.
Скриптер 3
Scripter3 (スクリプタースリー), официально сокращенно Scr3 — это бесплатный проприетарный игровой движок, разработанный Наоки Такахаси в период между [дата начала] и [дата окончания], работающий на собственном языке сценариев, который упрощает создание как визуальных, так и звуковых новелл. SDK доступен только для Windows. Он является предшественником NScripter, другого движка от Наоки Такахаси с более гибким синтаксисом и расширенными возможностями; например, NScripter изначально поддерживает изображения в формате JPEG/JPG, в то время как Scripter3 требует DLL с именем 'jpeglib.dll'.
Характеристики
Scripter3 читает скрипт-файлы в формате обычного текста с кодировкой Shift JIS и расширением TXT. Движок будет читать файлы в порядке от 0.txt до 99.txt, но также может читать обфусцированные скрипты с расширением SCP, эквивалентные файлу nscript.dat для NScripter; однако приоритет отдается файлам обычного текста. Можно отображать символы основного латинского и английского алфавитов, а также различные символы, такие как французские кавычки, но все они должны быть полноразмерными. Scripter3 обрабатывает текст, но не обрабатывает графическую часть текстовых окон, которая необходима для визуальных новелл, чтобы обеспечить контраст между фоном и текстом. Разработчикам приходится встраивать графику текстового окна непосредственно в каждое фоновое изображение, поэтому часто существует копия фонового изображения без текстового окна и копия с ним. В результате, если игрок щелкнет правой кнопкой мыши, чтобы скрыть текст, текстовое окно останется видимым, поскольку оно является частью фонового изображения. Движок способен читать аудио-CD, что позволяло, в частности, создателям любительских видеоигр использовать аудио-CD других, часто коммерческих, проектов, например, для пародий и т.п. Его преемник, NScripter, сохранил в основном те же команды, поэтому оба движка относительно совместимы друг с другом; например, некоторые команды, такие как @, \, и другие, остаются неизменными, мы также находим в обоих движках метку *start, команду caption и т.д., в то время как некоторые команды меняются, например, команда bp была переименована в background в NScripter.
Популярность
Scripter3 был очень популярен в годы, когда Наоки Такахаси продолжал его разработку, однако движок почти исчез из Интернета, и теперь всё, что с ним связано, доступно лишь на архивных сайтах. Многие пользователи помогали друг другу на официальном форуме, а сам разработчик присутствовал там, наблюдая день за днем за ростом популярности своей программы. Судя по немногочисленной информации, сохранившейся в сети, в период расцвета Scripter3 был популярнее конкурирующего движка KiriKiri. После выхода последней версии Scripter3 в 2013 году и рекомендации разработчика перейти на NScripter, сообщество Scripter3 перешло на NScripter, который был доступен с 2013 года.
Смежные двигатели
Оригинальный движок NScripter воссоздавался многократно, клонировался для добавления новых функций или освобождения от проприетарной лицензии движка.
ONScripter-EN (на английском языке)
Please provide the English text you want me to translate. I need the content of "... ." to perform the translation. I will use the provided "Да . - Да . - Да . - Да . - Да . - Да ." as a reference for terminology only, and prioritize accuracy to the original English meaning.
ONScripter-ANSI (на английском языке)
ONScripter ANSI — это форк ONScripter EN, разработанный Энди Скаллом в начале 2000-х годов, обеспечивающий поддержку кодировки ANSI, что является ошибочным названием для набора символов Windows 1252. Эта версия широко используется переводчиками, работающими с языками, использующими кириллицу, и известно, что изначально программное обеспечение предназначалось главным образом для несостоявшегося русского перевода Umineko When They Cry. Последняя версия была выпущена в , и, по всей видимости, разработка этой версии прекращена. ONScripter ANSI доступен только для компьютеров под управлением Windows с 32-битной или более высокой архитектурой.
PONScripter (Понскриптер)
PONScripter — это форк ONScripter, разработанный ранее дядей "Мионом" Сонозаки в 2011 году, с поддержкой пропорциональных шрифтов и Unicode. Эта версия не полностью совместима со скриптами, созданными для ONScripter EN, хотя достижение совместимости было одной из целей проекта. Активная разработка приостановлена, и наиболее актуальным форком является версия, поддерживаемая Sekai Project.
ПНАКЛОНСкриптор
PNaCl ONScripter — это ответвление ONScripter, разработанное с использованием технологии "песочницы" PNaCl от Google. Оно позволяет пользователям запускать игры NScripter через HTML5 и, таким образом, ориентировано в первую очередь на веб-браузер Chrome, экспортируя игры как приложения Chrome. В этой версии присутствуют ошибки и отсутствуют некоторые функции, например, ввод текста и обработка колеса мыши.
NscPlayer (проигрыватель)
NscPlayer — это форк PNaCl ONScripter. Он демонстрирует безопасность, обеспечиваемую технологией PNaCl, позволяя пользователю играть, не опасаясь вредоносного ПО, которое может содержаться в игре.
ОНСлаught
Также известный под производственным названием NONS, это клон ONScripter, разработанный Виктором Мануэлем "Helios VMG" Гонсалесом в начале, чтобы полностью заменить его или, по крайней мере, стать альтернативой с такими функциями, как поддержка Unicode, UTF-8, Shift JIS, а также некоторые функции PONScripter, например, возможность отображать текст курсивом или жирным шрифтом, или растягивать изображение с низким разрешением на весь экран без изменения разрешения экрана. Разработчик пытался ускорить повышение переносимости совместимых игр, принимая пожертвования на покупку PSP, однако это не принесло успеха. Несмотря на то, что целью является стать самым распространенным движком NScripter, немногие визуальные новеллы, разработанные для NScripter, совместимы без адаптации игровых сценариев. Движок впервые был использован для любительского испанского перевода Tsukihime. Как и PONScripter и ONScripter EN, ONSlaught поставляется с исполняемым файлом, однако в последних версиях он предназначен только для компьютеров под управлением Windows с 32-битной или более высокой архитектурой. Он также поставляется с архивом, содержащим исходный код и программные библиотеки, от которых он зависит. После версии движка, датированной, проект был неактивен до, когда движок был обновлен.
CCScripter (Спитер)
CCScripter — клон, разработанный toveta на языке M, позволяющий пользователям играть и разрабатывать игры NScripter на macOS. Поддержка и выпуск обновлений были прекращены с версией 0.8.24, после чего автор рекомендовал пользователям перейти на ONScripter.
KScripter (код для KScripter)
KScripter — это клон, вдохновлённый NScripter в ActionScript 3. Следовательно, KScripter может работать на любой операционной системе, поддерживающей Flash. Расширение исполняемого файла программного обеспечения или игры, созданной с помощью KScripter, — SWF. Движок может взаимодействовать с веб-серверами, используя такие языки, как PHP, Ruby или JavaScript.
Китайская модифицированная версия
Модифицированная версия, например, использовалась при создании мандаринской версии Narcissu.
Корейская модифицированная версия
Корейские интернет-пользователи опубликовали модифицированную версию NScripter 2.96 с поддержкой корейского языка. Например, эта модифицированная версия использовалась при корейском переводе визуальной новеллы "Когда плачут цикады".
Конкурирующие двигатели
NScripter имеет ряд конкурентов, таких как движок fr (Buriko General Interpreter), также известный как Ethornell, который широко используется компаниями August и OVERDRIVE, а также MangaGamer – компанией, занимающейся локализацией на английский язык и основанной OVERDRIVE, Circus и NEXTON. Другим серьезным конкурентом является KiriKiri, также сокращенно KAG; этот движок является бесплатным и имеет открытый исходный код, и, например, был выбран Type Moon для разработки их игры Fate/stay night. Ранее эта компания разработала Tsukihime, игру, созданную с использованием NScripter, которая имела большой коммерческий успех. Однако на международном уровне основным конкурентом является Ren'Py, с помощью которого было создано более 4000 игр.