Здравствуйте.
Пытаюсь сделать сайт, на котором администратор добавлял бы различные ачивки по игре DOTA2, а пользователи бы пытались их выполнить, причем проверка проводится автоматически. Вопрос в том как организовать хранение ачивок?
Единственное что мне пришло в голову, это хранить человеко-понятное описание ачивки и некоторую строку, в которой как нибудь закодировать предикат выполнимости ачивки, например:
Описание: выиграть игру раньше 20 минут с показателем GPM > 250.
Строка-предикат: "duration>20&GPM>250&winer"
Когда пользователь нажимает кнопку 'Выполнить', сервер парсит строку и, используя инфу об игре пользователя вычисляет предикат.
Вопросы:
1. Как лучше закодировать строку? Если я её закодирую так, как в примере, то придётся писать парсер (или как бы интерпретатор) для вычисления предиката. Или можно например сразу писать питоновский код в строке, чтобы интерпретатор питона сам её выполнил, как вы думаете?
2. Может быть есть еще какой нибудь способ это организовать?
3. Просто покритикуйте идею, если ничего больше в голову не пришло =)
Заранее спасибо!