FAQ:Возможно ли сделать игру на собственном движке: различия между версиями
Oreolek (обсуждение | вклад) м (ссылки) |
Oreolek (обсуждение | вклад) (обновил список open source движков) |
||
Строка 27: | Строка 27: | ||
Исходный код следующих современных платформ РИЛ открыт и свободен для правок: | Исходный код следующих современных платформ РИЛ открыт и свободен для правок: | ||
− | * [http://www.assembla.com/spaces/qsp/trac_subversion_tool QSP] | + | * [http://www.assembla.com/spaces/qsp/trac_subversion_tool QSP] (C) |
− | * [https://github.com/instead-hub/instead STEAD] | + | :* [https://github.com/graylor/FastQSP FastQSP] (C) |
− | * [https://github.com/narmiel/UrqW UrqW] | + | * [https://github.com/instead-hub/instead STEAD] (C, Lua) |
− | * [http://forum.ifiction.ru/viewtopic.php?pid=19971#p19971 ТОМ] | + | * [https://github.com/fireton/fireurq FireURQ] (Object Pascal) |
− | * [https://salet | + | * [https://github.com/narmiel/UrqW UrqW] (Javascript) |
+ | * [http://forum.ifiction.ru/viewtopic.php?pid=19971#p19971 ТОМ] (C++) | ||
+ | * [https://bitbucket.org/yandexx/rinform RInform] (С-подобный Inform) | ||
+ | :* [https://github.com/DavidKinder/Inform6 Inform 6] (C) | ||
+ | * [https://gitlab.com/Oreolek/salet-module Salet] (CoffeeScript) | ||
В иностранной ИЛ также популярны: | В иностранной ИЛ также популярны: | ||
− | * [[Ink]] | + | * [[Ink]] (C# + порты на Javascript и других языках) |
− | * [https://github.com/ | + | * [https://bitbucket.org/klembot/twinejs Twine] (Javascript) |
− | * [https://bitbucket.org/ | + | :* [https://github.com/Dan-Q/twee2 Twee2] (Ruby) |
+ | :* [https://bitbucket.org/tmedwards/tweego Tweego] (Go) | ||
+ | * [[ChoiceScript]] (Javascript) открыт под несвободной лицензией | ||
[[Категория:FAQ]] | [[Категория:FAQ]] |
Версия 18:58, 13 февраля 2018
Содержание
Возможно ли сделать игру на собственном движке?
Ответ для обычных людей
Нет, пока вы не станете программистом.
Ответ для программистов
Текстовые игры кажутся простыми для программирования. Но это не совсем так.
Сделать игру на собственном движке намного сложнее, чем взять одну из имеющихся платформ и сделать что-то, отталкиваясь уже от готовой базы. Почему это разумный совет?
Во-первых, важно удобство и скорость разработки. Писать игру с нуля - это совсем не то, что писать её на какой-то специализированной базе. Многие системы позволяют создать игру с одной фразы. Без готового движка вам придётся потратить несколько недель на реализацию базовых мелочей, которые не будут иметь прямого отношения к вашей игре - например, думать над выводом текста или сохранением/загрузкой игр.
В случае парсерных игр всё ещё хуже. Вы готовы писать самостоятельно 234 реакции на глаголы, уже прописанные в RTADS? Плохо написанный парсер может стать очень большой помехой для игрока.
В разработку популярных платформ был вложен не один месяц работы. Этот труд был сделан, чтобы вам не надо было его повторять.
Во-вторых, это надёжность. В уютном интерпретаторе баги вашей игры не будут катастрофичными. Игра не "вылетит", не сохранившись, и не исчезнет с экрана в нужный момент. В худшем случае она всего лишь станет непроходимой. Когда вы пишете свой движок, баг игры - это то же, что и баг движка.
В-третьих, это переносимость. Многие интерпретаторы интерактивной литературы поддерживают несколько платформ для запуска - это не только Windows, Linux и Mac, но также могут быть PSP, планшеты Nokia и другие устройства. Хотите ли вы самостоятельно обеспечивать такую поддержку?
И, наконец, поддержка сообщества. Если вы зашли в тупик и не понимаете, как сделать что-то, вы можете обратиться к другим авторам, которые пишут игры на этой платформе или, возможно, к автору самой платформы. Вам смогут подсказать, исправить что-то в коде. Когда вы пользуетесь самодельным движком — вы всегда сами по себе.
Для очень крутых программистов
Если вы - такой гениальный программист, почему бы вам не взять исходный код уже существующих платформ и не поработать уже над ним? Возможно, вы сможете сделать улучшение или исправите несколько багов. А заодно и посмотрите, как устроены различные платформы ИЛ.
Исходный код следующих современных платформ РИЛ открыт и свободен для правок:
- QSP (C)
- FastQSP (C)
- Inform 6 (C)
- Salet (CoffeeScript)
В иностранной ИЛ также популярны:
- ChoiceScript (Javascript) открыт под несвободной лицензией