- Сохранение грядок
- Сохранение костров и печей
А вот это вообще хорошо
- Сохранение грядок
- Сохранение костров и печей
Ох уж эти сказочники, почему не сказать что ко всем предметам прикрутят время через которое они исчезают, Систему очистки. Точнее они конечно это сказали, но сначала понаприводили длинный список а потом в конце мелким шрифтом как бы невзначай, мы наконец то планируем запустить систему на все сто, а не на выборочных предметах из списка выше.А вот это вообще хорошо
Мне всегда было интересно, что именно представляет себе обыватель, когда говорит, например, о прикручивании времени к предметам? Ну, нет. Я не вас имею в виду. Вы то, наверное, знаете, о чем говорите. Я знаю, что это означает. А вот человек со стороны, с улицы. Не знакомый с архитектурой сложных многопользовательских программ, состоящих из большого количества классов, объектов, записей в базах данных, сетевых пакетов и прочей требухи. Что этот неграмотный человек имеет в виду? Как он себе это представляет в образах?Ох уж эти сказочники, почему не сказать что ко всем предметам прикрутят время через которое они исчезают, Систему очистки. Точнее они конечно это сказали, но сначала понаприводили длинный список а потом в конце мелким шрифтом как бы невзначай, мы наконец то планируем запустить систему на все сто, а не на выборочных предметах из списка выше.
Система очистки не будет затрагивать палатки\грядки\костры\машины, если в их инвентаре будут храниться предметы. Такие объекты будут удаляться только в исключительных случаях.Ох уж эти сказочники, почему не сказать что ко всем предметам прикрутят время через которое они исчезают, Систему очистки. Точнее они конечно это сказали, но сначала понаприводили длинный список а потом в конце мелким шрифтом как бы невзначай, мы наконец то планируем запустить систему на все сто, а не на выборочных предметах из списка выше.
У каждого объекта не находящегося в инвентаре персонажа будет время через которое он удаляется с сервера. Для примера яблоко исчезнет через день(это пример придуманный мной реальное время я не знаю), а вот палатка может стоять долго может и месяц реального времени, и при посещении данного объекта время удаления будет сбрасываться.Мне всегда было интересно, что именно представляет себе обыватель, когда говорит, например, о прикручивании времени к предметам? Ну, нет. Я не вас имею в виду. Вы то, наверное, знаете, о чем говорите. Я знаю, что это означает. А вот человек со стороны, с улицы. Не знакомый с архитектурой сложных многопользовательских программ, состоящих из большого количества классов, объектов, записей в базах данных, сетевых пакетов и прочей требухи. Что этот неграмотный человек имеет в виду? Как он себе это представляет в образах?
Вы в этом уверены? За сколько мы завалим сервер этим хламом? Время удаления будет , но оно будет от нескольких недель до месяца я думаю, и при посещении игроками объекта время будет обновлятсяСистема очистки не будет затрагивать палатки\грядки\костры\машины, если в их инвентаре будут храниться предметы. Такие объекты будут удаляться только в исключительных случаях.
Более крупный калибр и на 50 не держит. Глянь видосы на ютубе. Чтобы полностью собрать надо хорошо помотаться. Слотов мало. Повторюсь: не стоит он затраченных времени и сил.угу, а на дистанциях от 50 метров, выигрывает по всем параметрам.
Чего мне смотреть, когда сами тестировали, а по поводу слотов, я не хомяк, мне много не надо.Более крупный калибр и на 50 не держит. Глянь видосы на ютубе. Чтобы полностью собрать надо хорошо помотаться. Слотов мало. Повторюсь: не стоит он затраченных времени и сил.
Первое попавшееся:
Так и будет, но в том случае, если инвентарь этих объектов пуст и они долгое время не использовались игроками. Палатки будут подвержены системе очистки крайне редко. Грядки будут удаляться только в том случае, если на них долгое время ничего не выращивают. Машины будут удаляться, если их оставили за пределами карты или если их долгое время никто не использовал. Рюкзаки и другие небольшие контейнеры будут храниться намного дольше, чем обычный лут. Все остальные объекты, вроде еды, медикаментов, оружия (которые лежат на земле) будут в полной мере регулироваться системой очистки.Вы в этом уверены? За сколько мы завалим сервер этим хламом? Время удаления будет , но оно будет от нескольких недель до месяца я думаю, и при посещении игроками объекта время будет обновлятся
И трястись за этот броник.Чего мне смотреть, когда сами тестировали, а по поводу слотов, я не хомяк, мне много не надо.
У каждого объекта не находящегося в инвентаре персонажа будет время через которое он удаляется с сервера. Для примера яблоко исчезнет через день(это пример придуманный мной реальное время я не знаю), а вот палатка может стоять долго может и месяц реального времени, и при посещении данного объекта время удаления будет сбрасываться.
Что значит "обработка одной операции для всех записей"? Постоянно пробегаться по всему списку в 126 миллионов банок на всех серверах, и проверять, не пора ли какие-нибудь из этих банок удалить? Это же хтонический ужас.Это самое примитивное представление о маленькой части большой системы взаимодействия. Давайте теперь, исходя из этого предположения, смоделируем цикл жизни одной из 126 343 981 банок фасоли, которые появляются вместе со стартом центральной системы распределения лута.
Обработка одной операции для всех записей, например удаление всех тех, у кого статус стал ruined, займет около 1 минуты. как часто можно проводить эти операции, чтобы не перегружать систему и в то же время чтобы не было провалов в обработке (заруиненая банка лежит целый день в костре). А если учитывать все остальные объекты? А если серверу кроме обработки удаления и нового спауна нужно обрабатывать перемещения всех животных и зомби на всех серверах? А еще - игроков
Поздравляю вы описали основную проблему дейза)))Что есть все эти сущности?
.... уснул
Не больше чем за любой другой, а жизнь лишни раз спасет, да и против замбаков, он лучше остальных держит.И трястись за этот броник.
А хз, на экспе не смотрел пока.Кстати, он и на экспе только на "Алькатрасе" спавнится?
Про ужас, кроме того сервер еще проверяет не подобрана ли эта банка игроком, или была открыта.Что значит "обработка одной операции для всех записей"? Постоянно пробегаться по всему списку в 126 миллионов банок на всех серверах, и проверять, не пора ли какие-нибудь из этих банок удалить? Это же хтонический ужас.
Мне кажется было бы логичнее, если бы в базе данных ЦЭ хранились бы именно данные, какая банка фасоли с каким идентификатором на каком сервере лежит. А вот обновление состояний оных банок (причем, локальных их копий, а не проводя постоянные запросы к базе) производил бы сервер, на котором они лежат; и если сервер видит, что ruined банка пролежала от рестарта до рестарта - отправляет ЦЭ соответствующее сообщение.
//хотя я, в каком-то смысле, тоже неграмотный человек, в архитектуру больших проектов с требухой, базами данных и летающими во все стороны пакетами пока ещё ни разу не влезал
Все гораздо интереснее На самом деле клиент вообще ни о каких банках и их состоянии никаких сообщений не шлет. И не надо ему заниматься этой ерундой. Наоборот. Клиент шлет только информацию о нажатиях на кнопки и движения мыши. Всё остальное делает сервер. И вычисляет положение персонажа, и полет пули и состояние банки фасоли. Вся Чернорусь в виде единичек и нулей, как в матрице крутится в электронном чреве сервера, в котором с огромной скоростью сопостовляются все состояния и статусы всех материальных и не только объектов и только изредка робкие сигналы прорываются наружу и разлетаются с невероятной скоростью к пользовательским компьютерам, которые преобразуют эти сигналы в изменение картинки на экране пользователя, воспринимаемые за игровой процесс. Как то такИгрок подобрал банку - клиент отправляет инфу о том что банка теперь в инвентаре и в таком то состоянии, игрок съел еду из банки и выбросил пустышку на землю - клиент отправил инфу на сервер а тот отправил её в планировщик чтобы в такое-то время удалить эту банку и другой мусор валяющийся возможно на другом конце карты. И не надо тут ломать мозг над тем что мол сервер должен сканировать и сам искать эти банки, вся инфа приходит ему от клиента, что-то отправляется в планировщик, что-то сохраняется до след.запроса от клиента.
Поставил сниффер, взломал пакеты, отправил серверу инфу что я выкинул миллион банок. Сервер лёг от нагрузок.Игрок подобрал банку - клиент отправляет инфу о том что банка теперь в инвентаре и в таком то состоянии, игрок съел еду из банки и выбросил пустышку на землю - клиент отправил инфу на сервер а тот отправил её в планировщик чтобы в такое-то время удалить эту банку и другой мусор валяющийся возможно на другом конце карты. И не надо тут ломать мозг над тем что мол сервер должен сканировать и сам искать эти банки, вся инфа приходит ему от клиента, что-то отправляется в планировщик, что-то сохраняется до след.запроса от клиента.
Скорее всего сервер просто проигнорирует такой пакет. В худшем случае пришлет вам миллион банок в одном пакете и ваш клиент загнется отрисовывать их.Поставил сниффер, взломал пакеты, отправил серверу инфу что я выкинул миллион банок. Сервер лёг от нагрузок.