Перейти к содержанию

Gaikotsu

Администраторы
  • Постов

    3 038
  • Зарегистрирован

  • Посещение

  • Победитель дней

    142

Сообщения, опубликованные Gaikotsu

  1. повреждения в записях, в основном в таблице предметов, как наиболее часто и активно изменяющейся.

    в полях таблицы некорректные значения оказались, к примеру ид несуществующих предметов, случайное количество, энчант и т.д.

    со стороны инструментов восстановления мускуля то тут ничего нет странного, а вот со стороны сервера... ну думаю понятно...

  2. Мутная какая-то история с этими ССД, если честно. Еще и рестарт был сегодня раньше на 15 минут, а вчера в КХ сила гигантов тоже выдавалась не по стандартному расписанию.

    А когда информация из Гейм сервера записывается в БД? И разностные копии БД на другой диск нельзя настроить, чтобы они не раз в день делались на тот же диск? 

    просто сегодня я сам вручную раньше выключил сервер, как в логе увидел ошибки.

     

    а бэкапы и так в другое место пишутся - никто в здравом уме класть бэкапы туда же где лежит то что  бэкапится не будет.

    а про разностные копии? ты про реплики что ли? так в них же все равно будет копироваться состояние основной базы, т.е. ошибки в ней и туда переберутся с большой вероятностью.

    а если ты про diff-копии, то это тоже нереально, т.к. для этого для снятия каждой разности надо фризить бд, чтобы во время создания копии не произошло в ней изменений. а с учетом того что бд сервера имеет размер почти 5 гиг... думаю сам прикинешь как долго будут искаться разности и делаться диффы, а все это время бд будет блокировано как минимум для записи. а серверу это сильно не понравится, начиная от просто пропущенных записей и кончая тупо падением.

     

    вот заместо диффов как раз и бинлоги есть, которые позволяют взять существующий бэкап и просто накатить на него все действия, записанные в эти самые бинлоги - формально эти логи и являются диффом между бэкапом и самым последним состоянием базы.

  3. Вобщем в очередной раз возникли проблемы с железом у хостера - в очередной раз сбойнул почти новый ссд (аптайм всего 2 месяца), что в результате привело к сбоям в бд сервера, которое размещено на этом ссд.

    Повезло что ссд не умер окончательно и позволил перенести все данные с него на другой, новый ссд, но вот то что в файлах бд оказались повреждения - это увы факт.

     

    Так что Кулич с утра старался исправить ошибки в существующей версии бд, но в итоге увы полностью это никак не удается, т.к. осталась куча ошибок которые инструментами исправления mysql ошибками не считаются, но вот для самого сервера то что не исправилось очень даже критично.

     

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

     

    Дело это очень не быстрое из-за размеров бд, так что скорее всего займет еще не один час.

    Если даже так не получится восстановить, то альтернативой остается только откат на сутки, но очень надеемся что до этого все же не дойдет.

     

    Ну а пока остается только ждать результатов...

     

    З.Ы. если кому непонятно что такое бинлоги - это по сути лог всех запросов к бд за определенные периоды времени. и если возникла необходимость, все эти запросы можно повторно воспроизвести, воссоздав как бы весь процесс обращений к бд за нужное время.

  4. И таинственные са падают примерно каждые 5к сундуков

    уже в курсе... при копипасте опечатался и вместо осколков са падают сами они...

    после рестарта следующего такого уже не будет.

     

    З.Ы. и ведь наверняка еще вчера некоторые просекли что-то как-то слишком часто... но как всегда - смолчали...

    Точки гигантов нг лотереи не передаются

    если речь про низкогрейдовые, то есть только такой их вариант - без возможности передачи

  5. Кстати случаем стопка этих предметов у тебя на этом персе не со времен проведения эвентов Сибериусом существует? И не получал ли ты дессерты в этих эвентах этим персом?

    просто помнится тогда это все выдавалось с привязкой к персу, чтобы не перекидывали на других.

    ну а в дальнейшем, если от эвента хотя бы что-то из этих дессертов осталось, то все далее добавляемые уже другими путями будут иметь те же флаги, т.к. будут ложится в ту же стопку, а флаги прописываются на всю ячейку/стопку

  6. странно, на этих предметах висят флаги запрета действия определенных, но вот откуда непонятно - не помню чтобы когда-то что-то такое делал чтобы на предметы с этими ид такие флаги вешались

     

    2672bba6728700abb706ebc80da4dd50.jpg

     

    и Джустина говорит не трогала...

     

    чуть попозже флаги сниму - пока возможности явной правки флагов на любых предметах у меня в вебадминке не сделано, надо чуток дописать функционал редактирования свойств предметов...

  7. Т.к. опять столкнулись с исчерпанием лимита скачиваний на я.диске - обновил залитое туда, как новые архивы, в связи с чем ссыли на них поменялись.

    Так что и тут и на сайте ссылки на я.диск изменились.

     

    Так же добавлен еще один вариант скачивания - с Google Drive (на сайте эти ссылки тоже уже есть)

     

    https://drive.google.com/uc?export=download&id=1-B3Z3q16uKLDAKdcA8-Dsxf5alVoOt2y- ссылка на архив с апдейтером
    https://drive.google.com/uc?export=download&id=1-ACnTefnxidNNpgUsg-QEiLB0K7S4R5k- ссылка на архив с полным патчем для клиента
    https://drive.google.com/uc?export=download&id=1-EEnSF8LcDtiyRpC57oELT0NJ5Z_GDvl- ссылка на архив с клиентом

     

  8. Кстати добавил в .cfg еще одну настройку - может кому пригодится. Ранее такое только для персонажа с правами работало, т.к. обычно к примеру мне нужно всегда смотреть дроп/спойл у мобов любых уровней без того чтобы получать сообщение "моб слишком слаб, потому дропа нет" если разница по уровням слишком большая.

    Теперь и вы можете смотреть шансы без учета штрафа на разницу уровней - вдруг кому вдруг потребуется глянуть дроп у моба сильно ниже по уровню.

    По умолчанию это выключено.

    Применится при следующем рестарте.

     

    745b47efee2ac801e72ab1960647d46c.png

    • Голос 1
  9. Гайка, ходили на Хелиоса и Линду 7 числа. Проверяли ваши правки, двумя чарами с одинаковым Рейтом на дроп 6.36

    110 лвл и 102 соответственно, шансы были одинаковые за исключением одного предмета «Книги Тайн» к ней применялся штраф, в чем причина? Поправьте пожалуйста

    а если внимательно прочтешь тему, то поймешь причину...

    я же писал 8 числа утром, что забыл в конфиги вписать параметр указывающий уровень, до которого идет ограничение при расчетах (а без явного указания он равен такому значению чтобы на расчеты не влиял).

    в итоге реально это все заработало уже после рестарта ночью 9 числа, а ты пишешь что ходили на боссов 7 числа...

     

    ---

    ну и подтверждение тому что все работает правильно

    Shot00010.jpg

    Shot00011.jpg

    Shot00012.jpg

  10. JAVA не знаю, но судя по выложенному коду только на дроп. Для этого завел константу с ограничением максимального уровня (105). 

    Правда непонятно зачем еще npc ограничивать по константе.

    PS Вопросы к Гайке )

    1. Название метода calc вообще ни разу не информативное. 

    2. Непонятно еще , что за буквы a и b. Может подсказки среды разработки ?

    3 .Что возвращается? Почему после return стоит вызов calc ?

    4. Почему если у НПС стоит игнорировать штраф, то возвращается 1, а в финальном возврате максимально 0 ?

    1. ну оно в нужных местах просто вызывается как

    double mod = LevelPenalty.calc(npc, player);
    

    возвращая модификатор к шансу дропа/спойла. в пределах от 0 до 1, чем ближе к 0 - тем ниже конечный шанс, при модификаторе равном 0 само собой шанс падает так же до 0.

    2. это эклипс подсказывает для информативности названия переменных в объявлении конкретной функции. просто конкретно в функциях min/max это достаточно малоинформативно, а так обычно такие подсказки помогают сразу понять что надо передать в метод конкретными параметрами.

    3. это вызывается просто другая функция, возвращающая из готовой таблицы, заполняемой разово, при старте сервера, вычисленные модификаторы для всех нужных разниц уровней между мобом и игроком.

    4. потому-что модификаторы расписаны для разницы уровней от 0 и выше, а тут разница уровней может быть и отрицательной, а для таких значений модификаторы не вычислены, т.к. это не имеет смысла - если моб по уровню выше игрока то штрафа то на дроп нет, т.е. можно возвращать то же значение что и при нулевой разнице в уровнях.

     

    ---

    Изменения я к серверу скорее всего к рестарту в понедельник применю. Т.к. на выходные что-то применять - ну такое... :)

    • Голос 1
  11. не после рестарта, а как выше уже сказал где-то в пределах ближайшей недели примерно. ибо сейчас скомпилированное ядро будет частично нерабочим по причине того что я там как раз в других частях правки делаю и потому пока скомпилять и залить на сервер не могу.

  12. А что не так с громовыми раскатами?

    Там изначально странный косяк был с стэктайпом дебаффа, как это всплыло - так и поправил. Как я поспрашивал, на оффе такой косяк с дебаффом от раскатов тоже был и достаточно долго, пока не поправили.

  13. я лучше второй вариант все ж выберу наверное - он проще в реализации, т.к. всего-то по сути пару строк в расчетах на штраф дропа добавить надо. а в итоге со всех мобов лишний штраф для 105+ исчезнет.

    но это не прямо сейчас если что будет введено, а где-то в ближайшие неделю-две скорее всего, т.к. у меня в ядре сервера в процессе очередные внутренние переработки кода для оптимизации и всего такого и потому ядро сервера в немного несобирабельном состоянии.

    ---

    шанс книг повышать не буду - он и так вполне нормальный, особенно если учесть что на него влияют руны на дроп и т.п.

     

    З.Ы. скоро грядет нг и само собой эвент. ну и конечно у всех будет шанс получить книжечки сами знаете где.

  14. ну вы же понимаете что просто повышением уровня дело тогда не обойдется - если что я так же значительно подниму им атаку и защиту, а так же хп и мп. иначе будет несправедливо что уровень высокий, а статы для этого уровня слабые. притом подниму так чтобы для 108 уровней боссы были все ж достаочно сложными, а значит более низким уровням резко станет плохо при фарме этих боссов.

     

    Еще как вариант, я могу не трогать уровни боссов, а просто добавить в расчеты штрафов на дроп доп условие в том плане что все уровни игроков выше 105 будут приравниваться в расчетах к этому самому 105 уровню. Это в целом решит проблемы с штрафом на шансы дропа для 105+ вобще на всех мобах, т.к. у нас разве что чисто в фармзоне есть кастомные мобы выше 105 уровня, а обычные мобы все ограничены максимум 104 уровнем (за исключением хелиоса с его 105 уровнем)

  15. Полную проверку делал, но на определённом моменте она останавливается и пишет что блок антивирусом, я уже его даже сносил. но один фиг также, отя на той неделе всё работало нормально и с ним.

    Хм, ну тут точно что-то с твоей стороны блокирует скачивание, но вот непонятно что...

    Кроме антивируса еще и фаервол к примеру может пакостить.

     

    Если реально ничего не помогает, то можешь и правда просто с того же яндекс.диска скачать архив с клиентом + по необходимости полный патч оттуда же и все - ссылки на все это есть на сайте в разделе файлов.

Трынделка

Трынделка

    У вас нет разрешения в этот чат.
    ×
    ×
    • Создать...