Это старая версия документа!
Использование Improv
Improv (исходный код, документация) — это мощный движок процедурной генерации от Бруно Диаса.
Вопросы того, зачем вам нужен Improv и как его использовать лежат немного за гранью этого документа, но здесь описаны важные детали того, как использовать его с Salet.
С ноября 2016го Improv позволяет использовать свой ГСЧ (генератор случайных чисел). Если вы соедините его с ГСЧ Salet (удобно предоставленного как salet.rnd
), он будет возвращать один и тот же текст каждый раз, когда игрок загрузит сохранённую игру. Но если вы не сделаете этого, то текст при каждой загрузке будет различаться.
Короче, вот минимальный код:
Improv = new ImprovEngine(data, { rng: () -> return salet.rnd.randf() })
и реальный пример:
require('babel-polyfill') ImprovEngine = require('improv') Improv = {} $.holdReady( true ) $.getJSON('game/procgen/'+i18n.lang+'.json', (data) -> Improv = new ImprovEngine(data, { rng: () -> return salet.rnd.randf() filters: [ ImprovEngine.filters.mismatchFilter() ] reincorporate: false }) $.holdReady( false ) )
где:
babel-polyfill
нужен для совместимости браузеров. Improv написан на ES6, он не работает в старых браузерах сам по себе.- Кусок кода с
holdReady
загружает данные процедурной генерации при помощи запроса AJAX и запрещает игре начинаться, пока этот запрос не будет выполнен.
а остальное объяснено в документации Improv.