• Хостинг игровых серверов

    Максимальная производительность для ваших игровых серверов!

    Заказать сейчас

Обсудим Как Алюкар жестко запизделся.

Ваше мнение по этому поводу

  • Срач на пустом месте

    Голосов: 9 21.4%
  • У Алукара развито ЧСВ

    Голосов: 11 26.2%
  • Каждый в чем-то прав и делает как может

    Голосов: 5 11.9%
  • На нахер ваш дурдом

    Голосов: 7 16.7%
  • У представителей с сайта ЧСВ

    Голосов: 2 4.8%
  • У Каидоза ЧСВ

    Голосов: 7 16.7%
  • Я за команду форума

    Голосов: 1 2.4%

  • Всего проголосовало
    42
Мне не нужно по пунктам расписывать про мой плохой фикс, мне нужны пруфы того, что из-за моего фикса, как ты сказал - сервера падают.
Слушай, ну я тебе же писал пункты - давай еще раз повторю.
C#:
using System;
using System.Collections;
using System.Collections.Generic;
using Oxide.Core;
using uLink;

namespace Oxide.Plugins
{
    [Info("Fix", "Kaidoz", "1.0.0")]
    public class Fix : HurtworldPlugin
    {
        object OnBitStream(BitStream stream)
        {
            string tx = stream.ToString();
            if (tx.Contains("34"))
                return true;

            return null;
        }
    }
}
Вот твой фиикс - официально выложенный в теме - https://oxide-russia.ru/threads/2030/
  1. Ты, что бы найти байт 34 превращаешь Stream в String - хотя сам стрим хранит byte[] buffer и с удовольствием его отдает. Ты мог сделать GetBuffer() (Ну не прям так но там можно получить полный массив байт) - и далее ты проверяешь в строке место нахождение 2х символов "32". В отличии от GetBuffer().Contains("34") работает раз в 10 быстрее(минимум) чем ToString().Contains("34") а напоминаю - что ты проводишь это действие на каждый пакет от любого юзера который около 20-50 байт. На серверах порой видно нагрузку в 1-2 мегабайта с онлайном 60+. 1024кб * 1024 = 1048576 / 30 = 34952 раза ты вызывать это действие будешь. А теперь просто посчитай сколько ms будет кушать ToString().Contains() на 30 байтах. И далее от 1000 ms в секунде отними эту сумму. Я думаю 100-200 там будет, и это на сервер с онлайном! Естественно, если онлайна 0 - то и нагрузки не какой.
  2. Ты ищешь байт 34 в любом пакете, но байт - это число от 1 до 255 - исходя из этого шанс что ты наткнешься 1\255. А теперь возьмем во внимание, что в пакете который ты просматриваешь - в среднем 30 байт - а значит 255 делим на 30 и получаем - что шанс наткнуться на пакет с байтом 1\9. Дальше пойдем - ты ищешь текст а не число, а значит под твое условие попадает не только 34 но 134 и 234 - это тоже байты которые будут встречаться. А значит шанс наткнуться на пакет с 34 сокращается примерно в 3 раза - 1\3 шанс что ты наткнешься на пакет содержащий этот байт. А значит примерно около трети пакетов ты будешь блокировать. Как думаешь - всё ли ок будет?
  3. Ты код игры смотрел? Там в самом начале на получение байт в BypassRPC стоит проверка - если первый бат не 34 то пакет не пройдет вовсе. Вывод - каждый пакет от нормального игрока всегда будет иметь 34 первым байтом - а ты такие пакеты блокируешь. А значит игроки не смогут играть. А если игроки даже зайти на сервер не могу т - вывод - сервер лежит для них.
Вот ты просишь что бы тебе по пунктам расписали, ну пожалуйста - ответь мне по пунктам, в чем я не прав в каждом из пунктов?
[automerge]1548175475[/automerge]
Напомню! Прав не тот кто говорит об этом - а у кого это на деле! Я лишь хочу сказать - что сервера на алькад работают, а даже WarGames в своей группе заявил что плагин фикса не работает. Это не только мое мнение связанное в теории, это не только мнение Alukar о том - что плагин не только не исправляет но еще и портит(я в 2 и 3 пунктах подтвердил) но и сторонние люди заявляют что плагин не работает. Он не выключает сервер, не заставляет его зависнуть. Он просто не дает игрокам играть - к слову практически не как.
Ладно - можешь зайти в конфу Алькад(там разрабы есть и все более мение компететные) и задай там вопрос - тебе ответ дадут не предвзято и даже те кто не читал тему - примерно те же пункты распишут по отдельности или все сразу - что и я.

Опять же - я не с кем спорить не хочу. Но пока вы не прекратите сраться - эта какафонья не утихнет. Каждый занимается своим делом - и тот у кого не получится или не будет получаться достигать целей и работоспособности - тот и не прав будет!
 
UberhatchetSoftware, прав конечно, но разве мой фикс от этого становится нерабочим?)
Немного не догнал про 'сервер лежит для них'. У нас сервер работал и игроки играли на нем еще некоторое время, пока не заблочили хост, никаких претензий насчет работы не было. Да и на линукс заливал я, стоял он там недолго, когда уже оксид обновили я ничего не делал.
 
UberhatchetSoftware, прав конечно, но разве мой фикс от этого становится нерабочим?)
Немного не догнал про 'сервер лежит для них'. У нас сервер работал и игроки играли на нем еще некоторое время, пока не заблочили хост, никаких претензий насчет работы не было. Да и на линукс заливал я, стоял он там недолго, когда уже оксид обновили я ничего не делал.
Ну тогда ты или не так пропатчил асемблю, или забыл её залить ну или хз... Это как яблоко кинуть и оно полетит не вниз а вверх.
Я расписал по по пунктно - возможно я ошибаюсь именно в архетектуре именно Hurt и BypassRCP вообще используется для чего то другова - и тогда да, там трафик вообще не большой и возможно он отключает какие то служебные вещи - но факт того - что этот способ передачи используется разработчиками - нельзя отрицать. И то что там в начале стоит:
C#:
byte correctByte = stream.ReadByte();
if (correctByte != 34)
    return;
тоже нельзя отрицать, а я думаю - глядя на эти 3 строчки - ты понимаешь о чем я говорю. В общем не суть важно...
 
Последнее редактирование:
тоже нельзя отрицать, а я думаю - глядя на эти 3 строчки - ты понимаешь о чем я говорю.
Конечно. Я очень много раз с байтами возился когда писал крипторы)) Признаю, холтурность своей работы, я когда перебирал возможные функции stream не нашел каким-то образом байты(что в принципе понятно, когда сутки не спишь). Решил не парится и сделать проверку с конвертирование в стринг и его проверки.
 
Конечно. Я очень много раз с байтами возился когда писал крипторы)) Признаю, холтурность своей работы, я когда перебирал возможные функции stream не нашел каким-то образом байты(что в принципе понятно, когда сутки не спишь). Решил не парится и сделать проверку с конвертирование в стринг и его проверки.
Серега(Alukar) может и любит преувеличивать - и были проблемы с каким то плагином на коннект и дисконнект - в твоем плагине, плюс тут вот этот еще момент. И пес его знает о чем он именно говорит - что падает и из за чего - я не вкурсе. Но точно знаю - что он сидит и видит в тебе врага человечества из за отсутствия каких то практических навыках и враждебного отношения к алькаду. Ну и ты - на банальные вещи этого мира - огрызаешься и проявляешь любое свое недовольство - в столь открытой форме - проблема не в публичности - а в том, что если тебе что то не нравится - иди подальше от этого а не провоцировать - как делаешь это ты. По факту - я вижу что у тебя есть навыки к тем ли иным вещам - но мало практических навыков в коде - которые придут именно с опытом - как и у всех, нужен именно опыт - опыт большого колличества часов писания кода и встречи с теми или иными проблемами. Это как виграх - от 1 до 100 часов ты нуб а от 100 часов до 10000 ты лишь идешь к опыту. К примеру у меня в Dota2 около 15 тысяч часов сумарно - но я же не про игрок а лишь 4500ммр. Точно так же и в коде, но я как погляжу ты просто тратишь время на другие аспекты... и это приносит свои плоды...
Поэтому - заканчивайте уже оба, ну или кто то из вас должен закончить это, и пускай каждый занимается своим делом!

ps. Мараль сей басни такова: Будь мы теми кем нас называют, мы б лежали на дне и не чего не могли. Но как бы нас не назвали - мы делаеми будем делать то что мы считаем нужным - пока не научимся смотреть не на оскорбительный смысл а на причины сказанного в нашу сторону!
 
  • Мне нравится
Реакции: Ernieleo
Поэтому - заканчивайте уже оба, ну или кто то из вас должен закончить это, и пускай каждый занимается своим делом!
А мы и занимаемся ))) Наш караван идёт , клиенты довольны и все сервера онлайн , а шавки гавкают , пытаются ддосить (Пруфы выше с их же угрозами , и прям Казявкин признаётся в организации сего действия) Не получилось положить сервера , пошли досить веб хост. Тоже смешно ...
 
Плагины бесплатно - делают люди с низкими навыками и те - кому делать не чего. Я думаю с этим можно согласиться, ибо все люди кого я знаю - и они перешли уровень джуна - ценят своё время и делают плагины уже за деньги и время у них постоянно забито, тобишь нет времяни на то - что бы фигней страдать.
Ты уверен что платно плагины делают люди вышедшие из джунов? :)
На каком то из форумов "комьюнити" была шутливая инструкция "Как сделать бесплатный плагин, платным".
И скверность этого всего в том что ведь найдется тот "недальновидный" администратор сервера который купит таки какой нибудь "Death Notes" с Unod`а за 500 рублей.
Увы, платность плагина не показатель что он хорошо написан.
 
Ты уверен что платно плагины делают люди вышедшие из джунов? :)
На каком то из форумов "комьюнити" была шутливая инструкция "Как сделать бесплатный плагин, платным".
И скверность этого всего в том что ведь найдется тот "недальновидный" администратор сервера который купит таки какой нибудь "Death Notes" с Unod`а за 500 рублей.
Увы, платность плагина не показатель что он хорошо написан.
Уважаемый, вы наверно не в курсе про круги Эйлера, раз пишете такую чушь.
 
Активность
Пока никто не печатает сообщение