На рассмотрении При смене уровня Великих Строений они должны исчезать из ленты Центра сообщений

Поддерживаете идею?


  • Всего проголосовало
    8

Oberonish

Странник
Проблема:
После завершения строительства текущего уровня ВС предложение на инвестирование в него продолжает оставаться в ленте сообщений; это путает игроков - потенциальных инвесторов строительства следующего уровня ВС.

Описание поведения игроков:
Предложение к инвестированию в ВС помещается в одну из веток ленты сообщений с помощью скрепки. Это делает строитель ВС, при этом обычно он обуславливает правила инвестирования в своё ВС, если эти правила не оговорены в названии ветки. Далее начинается: все накидывают ему в стройку СО-шки, накидывают... кто - по правилам, кто - произвольное количество... в-общем, кончили накидывать. ВС данного уровня достроено.
Тут-то бы и удалить предложение на инвестирование в ВС из ленты, как это происходит с торговыми сообщениями - когда торг состоялся, предложение к торговле из ленты пропадает автоматически. Но ВС остается в ленте, отображая свой новый уровень, и начинает смущать и путать потенциальных инвесторов. Чем же? Тем, что ВС - то же самое, строитель - тот же самый, да вот условия-то поменялись. И уровень здания другой, и гарантированное покрытие строитель ещё не подготовил, да и может быть у него пропало желание достраивать новый этаж к существующим. Он бы деньги инвесторов лучше бы пустил на другое ВС, которое тоже требует внимания.
Конечно, выход всегда существует - в данном случае такой:

Существующее решение.
Строитель ведь получает pop-up окошко от системы, что его здание построено. Он должен просто внимательно сидеть за монитором, следить за правым верхним углом игрового поля, и когда через пару часов или дней увидит, что его здание достроено, перейти в Центр сообщений. В Центре сообщений надо найти все ветки, в которых он размещал предложение на инвестиции по конкретному уровню своего здания и удалить его руками лично. Это правильно - сам размещал, сам и удаляй!
Обидно только, что коммерсантам легче жить, чем строителям. Торговое-то предложение само выпиливается, когда сделка завершена! Подготовил сделку, бросил клич, и забыл. Потом бац-бац, кто-то подтвердил сделку, а у тебя и товар желаемый появился, и предложение само закрылось. Никуда лазить-чистить-историю не надо и т.п.

Причины (IMO):
Почему различается поведение системы в случаях инвестиционного и торгового предложений? Думается, это "не баг а фича". Делается для экономии бумаги места на сервере. Ссылка на инвестиционное предложение из ленты сообщений ведет не на репозиторий инвестиционных предложений (которого и нет), а сразу на объект недвижимости. И уже оттуда подтягиваются свойства этого объекта - текущий уровень строительства, сумма вложений в текущий уровень, название, картинка и т.п.
Если бы был такой репозиторий, то после завершения этапа строительства ссылка отображала бы старый уровень ВС, а на нём - 100%-но заполненную синим полоску. Инвесторы видели бы, что в данный уровень вкладываться уже не стоит, искали бы другие предложения. Но это в идеале. Сложилось так, как сложилось, не нам менять, понятное дело.

Предложение по игре.
Некий игрок (пусть будет Василий) строит Колизей. Система (Forge of Empires) знает, что в списке Великих Строений экземпляра "Василий" объекта Gamer записан идентификатор экземпляра 20000777 объекта Colosseum [ну, или объекта GreatBuilding с типом "Колизей" - подробностей не знаю]. Вася совершает действия со своим Колизеем, а Система изменяет значения экземпляра 20000777.

При смене уровня Великого Строения необходимо создавать новый экземпляр 20000778 объекта Colosseum (копию текущего экземпляра 20000777) и обновлять список Великих Строений Василия, заменяя в нём старый идентификатор Колизея на новый идентификатор Колизея. Изменения также следует внести в список зданий города игрока.

При этом Василий будет иметь Колизей нового уровня, а ссылки, которые он наоставлял в ленте сообщений, будут по-прежнему вести на старый экземпляр. Инвесторы, читающие ленту, увидят полностью завершённый уровень строительства и станут искать новые сообщения от Василия (которые он напишет, когда будет готов).

Ещё более понятно для инвесторов будет, если старый экземпляр при копировании будет удаляться. Тогда (наверное) в ленте на месте инвестиционного предложения будет надпись в стиле "Данное предложение больше не существует". Удаление старого экземпляра также позволит сохранить объём базы данных в прежних границах.
 
Верх