Я подобное реализовывал через кэш, не особо беспокоясь об актуальности информации. Просто при определённых действиях сбрасывал кэш и закрывал диалог, чтоб игрок уж совсем с устаревшей информацией не работал.
В моём случае был список игроков + ряд действий, которые можно совершить над аккаунтом игрока. И тут единственным ограничением я делал запрет на работу с одним и тем же аккаунтом несколькими игроками (просто создал двумерный массив [MAX_PLAYERS][MAX_PLAYER_NAME] и когда кто-то открывал аккаунт, проверял массив на наличие соответствующего ника. Если ника в массиве нет - позволял работать с акком и записывал ник в ячейку игрока). Это нужно чтоб изменения одного игрока не перекрыли изменения другого, если что :)
В остальном проблем не было.

Ну раз ответ получен, то тему закрываю. Если вдруг нужна будет ещё - напиши в личку и открою.