Появилась такая идея: продукт Battle Thread, битва !
Суть продукта - развлекательная и познавательная, упорядоченная битва мнений. Apple VS Samsung, например, МКПП против АКПП и т.д.
Два оппонента или две группы оппонентов обмениваются поочередно "ударами" - мнениями".
"Валидность" ударов определяется нейтральными юзерами, наблюдателями, которые отмечают мнения как "аргументированное " (состоявшийся удар) или неаргументированное (несостоявшийся удар).
Право "нанесения ударов" переходит от оппонента к оппоненту в зависимости от "отражения" удара.
аргументированный вопрос - неаргументированный ответ = пропущенный удар
аргументированный вопрос - аргументированный ответ = переход хода (права удара)
Общий сценарий:
1. каждый пользователь может вызвать каждого пользователя на битву путем отправки приглашения прямо из спорного сообщения.
Что -то типа "опции сообщения" -> вызвать пользователя Luvilla на битву. При этом в специальном разделе "Битвы" создается тема
- в админке -> разделы и модераторы - > создать раздел, назвать по-своему
- в админке продукта "Битвы" прописать ID этого созданного раздела, чтобы в нем создавалась битва
2. В момент отправки приглашения на битву автор битвы видит интерфейс создания битвы:
- поле ввода названия битвы (под этим названием в разделе "Битвы" будет создан Battle Thread, ссылка на который пойдет пользователю, которого вызвали на битву.
- создать название кланов в битве: "Эппло-владельцы" "Самсунговладельцы" и т.п. (При этом пользователь, которого вызвали на битву сможет откорректировать название своего клана, ибо вдруг оно создано оппонентами заведомо оскорбительным)
- нажать ОК.
3. Таким образом
- в разделе "Битвы" создался тред,
- вызываемый пользователь получил в ЛС инвайт со ссылкой в битву (2),
- в разделе, с которого начался сыр-бор, появляется анонс "новая битва" (3) в котором есть ссылка на спорное сообщение, с которого все началось, ники инициаторов с обеих сторон (Ivanoff вызвал Sidoroff на битву <a href = Битва/> по мотивам <a href = этого сообщения />)
4. При входе в тему битвы каждый пользователь может
- вступить в клан А
- вступить в клан Б
(и т.д. по кол-ву кланов, созданных инициатором битвы)
- остаться в клане "Наблюдатели"
- остаться "Анонимным"
5. Тема оформляется автоматически
- закреплением первого поста
- в первом посте есть ссылка на инициаторов битвы (1), на спорный пост , с чего все началось (2), состав кланов (3), количество нанесенных и парированных ударов (4) и общий счет битвы (5) и симпатии сообщества (6)
6. Обмен репликами и аргументами называется "удар". Клан А может "нанести удар" клану Б. При этом система зафиксирует удар только в том случае, если Наблюдатели (тотчас или через 15 минут или на следующий день, опционально задается в админке или при создании битвы) зафиксируют реплику, как состоявшийся удар, т.е. отметят реплику как "аргументированную, которую можно считать ударом, который требует ответа и ответной аргументации".
Пример "нанесения удара":
Ivanoff (Клан А) жмет кнопку ответа в теме. Кнопка - "Нанести удар" (заменяет иконку кнопки "Ответить"):
- Эппл г*вно.
(Сообщение отправлено в тему).
Один Наблюдатель, два Наблюдателя, каждый Наблюдатель может в отправленном посте нажать кнопку "Засчитать как удар" или "Не засчитать как удар". На основании баланса голосов Наблюдателей сообщение может (или не может) быть засчитанным как "аргументированный, сотоявшийся Удар."
Если сообщение засчитано как "аргументированный состоявшийся Удар", в первом посте темы в отображении обмена ударами появляется "1" напротив клана А (+ м.б. растет цветной столбик интерпретации количества ударов, как в опросах).
На кнопке ответа для клана Б появляется иконка "ответить на удар (или "парировать"..)". Т.е. от клана Б ожидают "ответа на удар", ответной аргументации.
Если ответ на удар засчитывается Наблюдателями как "состоявшийся, аргументированный", то
- обмен ударами считается состоявшимся,
- удар "клана А" "клану Б" считается парированным
- Клан Б получает право в свою очередь "нанести удар", а клан А будет вынужден его парировать.
Пример "парирования удара"
- Сами вы г*вно".
Ответ, допустим, не засчитан Наблюдателями как "состоявшийся, аргументированный", и клан А, например, получает себе неотъемлемый балл и получает право снова нанести удар.
И т.д.
8 . Люди, зашедшие в тему посмотреть могут выбрать клан, могут стать наблюдателями, могут стать "анонимами" и просто оставить свой голос (симпатии) за какой-либо клан.
Остается один вопрос: как регулировать очередность отправки.
Требуется ajax-решение (одновременное для всех, типа шахматных часов) в header темы:
11:35- Клан А нанес удар, удар защитан, Клан Б отвечает
11:40 - Клан Б ответил, парирование удара не защитано, Клан А получил балл. Клан А снова наносит удар.
11:42 - ...
9. Если в теме нет Наблюдателей, идет тупо обмен ударами
10. Если Наблюдатели тупят и не понимают своей роли, им требуется срочный поп-ап, объясняющий, что от них ждут.
типа "Вы выбрали клан наблюдателей, Вы обязаны без промедления принимать решение: засчитать или нет ответы противоборствующих сторон как "состоявшиеся Удары" или ответ ез аргументации и примеров считать "несостоявшимся ударом"
Как-то так.
***********************************
Есть идеи по оптимизации сценария?