Реализация НПС в Instead

Эта заметка предназначена начинающим авторам на Instead.

Во всех квестах конечно есть НПС с которыми можно общаться, получать задания и т.д. Исторически разработчики не заморачивались разнообразием реплик НПС-болванчиков. Один и тот же диалог запускался при каждом обращении. Я лично считаю это вполне нормальным поведением и данью классическим квестам и рпг, но некоторые считают иначе и ниже я приведу пару способов разнообразить поведение НПС.

Обычно НПС выглядит как-то так:
obj {
	nam = 'Трактирщик';
	dsc = 'За барной стойкой {трактирщик} протирает стаканы ветхим полотенцем.';
	act = function()
		walk 'Разговор с трактирщиком';
	end;
};
Читать дальше