Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Изменения в базе => последствия в игре
#1
Доброго времени суток, суть проблемы заключается вот в чем:
Если руками (скриптом) вношу изменения в базу, в то время когда персонаж находится онлайн, изменения не применяются до тех пор, пока он не перезагрузит клиент...

(т.е. Например, в базе прописал персонажу 100000 кинар, у него их было 12234... если клиент перезагрузить то все нормально, становится 100000, если же он убивает монстра и подбирает еще (скажем 10 кинар...) то в базе значение меняется обратно на 12234+10)

надеюсь, проблему изложил понятно, и собственно вопрос, как сделать, так (и возможно ли это) чтобы изменения в базе автоматом отображались.
Ответ
#2
обычно в базе применяют изменения когда игрока нет в игре
менял в базе сколько получить кинария когда игрока не было в игре после входа и подбора дополнительных монет всё работает нормально
если персанаж в игре то ни чего изменить не получается всё возращается само собой так как данные не дает изменить сервер
ЛЮДИ ВКЛЮЧИТЕ ВАШИ МОЗГИ
а то китайцы уже андроидов в телефоны пихают
Nokia N810
[Изображение: Bez_nazvy-2.png]
[Изображение: account_detailed.gif]
Ответ
#3
Это понятно, так все работает, как ты говоришь. Тоесть реализовать такужю схему, которую я описал выше невозможно?
Ответ
#4
нет так как сервер блокирует изменения той строки которая на данный момент используется
ЛЮДИ ВКЛЮЧИТЕ ВАШИ МОЗГИ
а то китайцы уже андроидов в телефоны пихают
Nokia N810
[Изображение: Bez_nazvy-2.png]
[Изображение: account_detailed.gif]
Ответ
#5
Тут хитро. Всё работает по принципу: клиент - сервер - база данных.
И у всех 3 должны быть одинаковые значения в памяти. Если у кого-то значения другие (скажем, пытается взломать с помощью артмани), то они обновятся до тех, в которых сервер "уверен".
Т.е. клиент хранит локально инфу о количестве голды или что там у вас. И отсылает эту информацию когда это значение нужно обновить. Что на самом деле очень странно.
Или же 2 вариант, более правдоподобный: клиент запрашивает информацию о колличестве голды у чара только при заходе за него и дальше устанавливает все ограничения локально чтобы не грузить сервер. Т.е. выходит что количество голды обновлено, но клиент об этом не знает.
Jedem das seine.
Каждому своё.
Ответ
#6
VoltVolt Написал:Тут хитро. Всё работает по принципу: клиент - сервер - база данных.
И у всех 3 должны быть одинаковые значения в памяти. Если у кого-то значения другие (скажем, пытается взломать с помощью артмани), то они обновятся до тех, в которых сервер "уверен".
Т.е. клиент хранит локально инфу о количестве голды или что там у вас. И отсылает эту информацию когда это значение нужно обновить. Что на самом деле очень странно.
Или же 2 вариант, более правдоподобный: клиент запрашивает информацию о колличестве голды у чара только при заходе за него и дальше устанавливает все ограничения локально чтобы не грузить сервер. Т.е. выходит что количество голды обновлено, но клиент об этом не знает.

так и работает похоже...
Ответ
#7
Название топика - хотябы коректно склонили последние 2 слова Smile
По топегу. Лучше все манипуляции с персонажем делать в офлайн режиме.
[Изображение: 483559.gif]
Ответ
#8
все понял... Видимо тему офф.

Спасибо за ответы.
Ответ
#9
ты можешь добавить любое количество предметов любому игроку онлайн (в том числе и бабло), если сам будешь онлайн с админскими правами (//add id_предмета), кажись так!
Ответ
#10
Это не совсем для этого... если я буду онлайн то я знаю как это сделать, вопрос в том как написать скрипт на добавление, точнее судя по всему вышенаписанному, вопрос снят... надо просто проверять состояние игрока перед транзакцией
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  ссылки в игре Romanz 1 2,400 11-09-2014, 04:17 PM
Последний пост: Romanz
  По поводу изменения вещей! kiotokun 6 3,016 11-20-2010, 03:11 AM
Последний пост: Wolfas
  Время проведени я в игре Mr.TeRay 10 3,598 04-13-2010, 02:16 AM
Последний пост: celler
  В игре не создается пати! CTAPuK 13 5,072 02-16-2010, 09:52 AM
Последний пост: MetaWind
  Копирайты в игре smelioff 4 3,730 11-29-2009, 04:57 AM
Последний пост: PROGRAMMATOR

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)