Почему бы не построить свой собственный?
Если у вас есть время, терпение и желание учиться - вы всегда можете попробовать разработать собственный движок сценариев со всеми необходимыми функциями и синтаксисом.
преимущества
- Вы узнаете об интересной части информатики.
- Разработав «собственный» механизм сценариев, он дает вам полный контроль от начала до конца, позволяя адаптировать движок именно к тому, что вам нужно.
- Если вам понадобится внести какие-либо изменения в будущем, они могут сделать несколько проще, зная входные и исходные данные вашей собственной кодовой базы, чем изучая входные и выходные данные кого-то другого.
- Вам не придется беспокоиться о том, чтобы поддерживать ваш движок в актуальном состоянии с чужими патчами.
Недостатки
Время. Не у многих это есть. Если вам нужно что-то СЕЙЧАС, попробуйте уже существующий движок (как один из уже предложенных).
Скорость. Многие существующие скриптовые движки работают очень быстро - индивидуальное решение может быть не таким быстрым.
Размер команды. Многие существующие скриптовые движки имеют большие группы людей, работающих над базой кода, будь то частные команды или глобальные добровольцы, есть что-то, что можно сказать о коде, который проверяется и перепроверяется многими другими людьми.
Механизм сценариев требует определенного объема первоначального планирования для эффективного выполнения. Существует много основ, которые также должны быть реализованы, которые могут вообще не иметь отношения к фактическому скриптовому движку.
- Ваша база игроков / разработчики должны привыкнуть к вашему скриптовому движку. Это может не быть проблемой, если синтаксис и функциональность почти такие же, как у большинства современных скриптовых движков, но просто имейте это в виду.
Это ни в коем случае не исчерпывающий список. Если вам необходимо внести большое количество изменений в серверную часть существующего языка сценариев, чтобы получить желаемую функциональность, IMO вам, вероятно, следует поискать другой движок, более точно соответствующий вашим требованиям, или просто создать свой собственный.
Я понимаю, что людям нравится разбрасываться словами «лень» и «не изобретать велосипед», но я думаю, что можно кое-что сказать об изучении того, как это делается. И конкретная реализация, вероятно, будет лучше для вашего проекта, чем общая реализация.
«Создание систем сценариев в C ++», кажется, является любимой статьей (статьями), которой люди делятся при обсуждении темы: http://www.gamedev.net/reference/list.asp?categoryid=76