Помогу добавить скриптовый слой AngelScript в игру или приложение на C++. Этот язык компактный, статически типизированный и синтаксисом напоминает C, а с нативным кодом на C++ соединяется очень аккуратно. Благодаря этому он отлично подходит там, где логику геймплея, правила матча, поведение противников или диалоги хочется менять данными и скриптами, не пересобирая при этом весь проект.
Объём услуги:
— Встраивание рантайма AngelScript в существующий проект на C++: инициализация движка, работа с модулями и контекстами исполнения, сборка скриптов, перезагрузка на лету и аккуратная передача ошибок обратно в приложение.
— Прослойка связок с хостом: я делаю доступными для скриптов нужные классы, поля, методы, перечисления и свободные функции вашего кода — со счётчиком ссылок, хендлами под сборщик мусора, значимыми типами и перегруженными операторами.
— Логика на самом AngelScript: умения персонажей, оружие, появление врагов, очки, ветки диалогов, реакции на события и параметры, доступные для правки дизайнеру без участия кодера.
— Защищённая поддержка модов: песочница, урезанные пространства имён, ограничение времени работы скрипта от бесконечных циклов и понятный задокументированный интерфейс, чтобы игроки дописывали контент и ничего не рушили.
— Дополнения: строки, массивы, словари, ref и weakref, сборщик скриптов и сериализация состояния, а при необходимости — отдельные модули под особенности вашего проекта.
Отдельно слежу за скоростью и надёжностью: замеряю переход между скриптом и нативной частью, убираю лишние выделения памяти в кадре и держу связки строго типизированными, чтобы промахи ловились ещё при компиляции. Опишите своё приложение и то, что именно должно управляться скриптами, — предложу прозрачный план с этапами и сроками.
Объём услуги:
— Встраивание рантайма AngelScript в существующий проект на C++: инициализация движка, работа с модулями и контекстами исполнения, сборка скриптов, перезагрузка на лету и аккуратная передача ошибок обратно в приложение.
— Прослойка связок с хостом: я делаю доступными для скриптов нужные классы, поля, методы, перечисления и свободные функции вашего кода — со счётчиком ссылок, хендлами под сборщик мусора, значимыми типами и перегруженными операторами.
— Логика на самом AngelScript: умения персонажей, оружие, появление врагов, очки, ветки диалогов, реакции на события и параметры, доступные для правки дизайнеру без участия кодера.
— Защищённая поддержка модов: песочница, урезанные пространства имён, ограничение времени работы скрипта от бесконечных циклов и понятный задокументированный интерфейс, чтобы игроки дописывали контент и ничего не рушили.
— Дополнения: строки, массивы, словари, ref и weakref, сборщик скриптов и сериализация состояния, а при необходимости — отдельные модули под особенности вашего проекта.
Отдельно слежу за скоростью и надёжностью: замеряю переход между скриптом и нативной частью, убираю лишние выделения памяти в кадре и держу связки строго типизированными, чтобы промахи ловились ещё при компиляции. Опишите своё приложение и то, что именно должно управляться скриптами, — предложу прозрачный план с этапами и сроками.