Конечно, звучит как «Создание Вечного Двигателя», но всё же…
Я не очень разбираюсь в языках программирования, но имею какое-то представление о логике процессора и т. п. Поэтому на досуге, прочитав постик о проге, которая бы "просила читера выйти с сервера а потом банила нахрен", ко мен в голову пришла эта идея. Не судите строго но примите к сведению.
Итак начнем...
В принципе создание такого патча возможно, главные две проблемы это:
I) Как отличить читера/прочих_типов_мешающих_играть.
II) Подогнать работу патча к работе стартера.
Решение иметься и у той и у другой.
I) Любой читер использует читы – т. е. какие-то характеристики сильно изменены. Например, определить игрока, играющего за монстра можно тупо проверив, равен ли показатель расы unhuma или unhufe.
! Важно именно кикать, а не банить. Ведь после неудачных попыток человек может захотеть зайти честным персом. А серверов нынче так мало…
Список известных мне читов и их индикаторы или решения:
1) Игра за персонажей монстров – написано выше, в исключения можно кроме людей добавить unorma и unorfe, может кто-то орков в мод запихает… Конечно, можно по типу Human, но это создаст дыру для читеров. (это-то можно и в дате изменить)
2) Бестелость – патч AntiImmortal. Самой пробиваемости читеру хватит по горло. :-)
3) Баксовая броня – патч Антибакс. (тоже нагло сдуть, но обнулять только выше брони_самой_крутой_честной_брони(50-60 и хватит))
4) Скорость передвижения – Скорость бега ставим как максимум, с остальными значениями кикаем.
5) Мега-урон у оружия и магии. Если с оружием все ясно(слишком большой дамаг - кикаем), то с магией не все так просто. По-хорошему надо найти место, где из урона и брони высчитывается дамаг, там можно дописать кик за слишком большой показатель урона. Но есть другой, более сложный выход – ставить разные лимиты магии типа тумана и магии типа сгустка. (А это куча строк, куча места и куча лагов.)
6) Прокачанность – бешеная Прокачанность тоже мешает играть. Но тут все сравнительно просто. Фильтры. Причем желательно фильтровать не по хэлсам/Мане, а по экспе. Хотя по хэлсам надежнее – это уже осуществляли в Еи-моде 303.
7) Сверхдолгое действие – если можно отследить кол-во единиц времени, на которое кастуется заклинание, то можно будет даже Паралич урезать. Иного выхода я не вижу.(Хотя тут уже точно придется прописывать исключения – орлиный взор например: временных единиц 5000 (333сек). Если заделать Паралич на 333 секунды, то тоже неприятно будет.)
8) Огромный рост – лимит 100, тут точно особо мудрить не придеться. Нижний лимит: 0, хотя программный -99, это ведь тоже лимит (дальше начинает кидать не в меру). Но для особо честных – 0.
9) Длинные и цветные имена – хм… А тут вообще можно ничего не менять, это игре не особо мешает. (Для ярых античитеров – ограничить имя 10 битами, или имя/клан 23 битами. В зависимости от игры.)
10) Метеоритные и т.п. доспехи/оружие на Гипате. – Возможно как-то через левел предметов, хотя тут четких мыслей у меня не появилось.
11) Огромные дистанция и площадь у заклов – см. п. 5) и 7), по тому же методу.
12) Дальность удара у оружия – у всех кроме луков/арбалетов дальность 0. Фильтр для Луков/арбалетов ставить чуть выше дальности алмазного арбалета. (Чтобы создать пространство для мод-мейкеров)
13) Мега-прокач всех на карте – проверка разума больше 1 и экспы больше 1.
14) Манна 0 (автоматы). – Надо как-то проверить расход манны в предмете, но у меня подозрение, что это происходит не на сервере, серву кидается только команда на кастование закла. Хотя…
15) Еще какие-то читы… Фантазия и память кончились, если знаете пишите.
Как кикать… Ну мало ли, может вам объяснить надо. :-)
Кроме читабельного имени у игрока есть внутреннее имя (Игрок¹*, в связи с ним привязывается цвет имени. Я про честных игроков.) Вот по этому имени и кикать.
Почему кикать, почему не банить. Млин, а вдруг зададите такой вопрос. Человек должен иметь шанс на исправление. И к тому же, машина кикать не устанет, не игрок. :-)
II) Совместимость с стартером.
А тут проблема. По-хорошему надо переделать весь стартер и ввести данный патч как одну из функций. Плюс сюда ввести еще и ПК. Да и интерфейс неплохо переделать, Сделать его более красочным, и настройку «Дополнение» вынести на первый-второй план.
Другой вариант – пересчитать контрольную сумму гаме.екзе у стартера и выпустить специальный стартер, который будет работать только при установленном данном патче. И тогда, чтобы отключить патч придется менять стартер, потом возвращать его на место, и так каждый раз. Хм… Первый вариант мне кажется легче… Вот бы только исходник.
Вообще, цель этого патча – спасение нубов от засилия читеров. Причем не Читеров, а всякого мелкосортного «читерного шлака». Хороший Читер и с этоим патчем справиться, хотя такой свободы для читерения у него уже не будет.
Хотя весить такой патч будет видимо солидно, но это способ сделать ПЗ лучше и направить игру на путь возрождения.
Осталась одна проблема на повестке темы: Кто же это все возьмется писать? На меня не кивать, языков программирования я не знаю и знать не хочу! При всей своей любопытности и несмотря на некоторые знания компьютерной логики
А теперь, осознавая благородность моей идеи, я вывешиваю ее здесь и пойду отсель. <_<
Я не очень разбираюсь в языках программирования, но имею какое-то представление о логике процессора и т. п. Поэтому на досуге, прочитав постик о проге, которая бы "просила читера выйти с сервера а потом банила нахрен", ко мен в голову пришла эта идея. Не судите строго но примите к сведению.
Итак начнем...
В принципе создание такого патча возможно, главные две проблемы это:
I) Как отличить читера/прочих_типов_мешающих_играть.
II) Подогнать работу патча к работе стартера.
Решение иметься и у той и у другой.
I) Любой читер использует читы – т. е. какие-то характеристики сильно изменены. Например, определить игрока, играющего за монстра можно тупо проверив, равен ли показатель расы unhuma или unhufe.
! Важно именно кикать, а не банить. Ведь после неудачных попыток человек может захотеть зайти честным персом. А серверов нынче так мало…
Список известных мне читов и их индикаторы или решения:
1) Игра за персонажей монстров – написано выше, в исключения можно кроме людей добавить unorma и unorfe, может кто-то орков в мод запихает… Конечно, можно по типу Human, но это создаст дыру для читеров. (это-то можно и в дате изменить)
2) Бестелость – патч AntiImmortal. Самой пробиваемости читеру хватит по горло. :-)
3) Баксовая броня – патч Антибакс. (тоже нагло сдуть, но обнулять только выше брони_самой_крутой_честной_брони(50-60 и хватит))
4) Скорость передвижения – Скорость бега ставим как максимум, с остальными значениями кикаем.
5) Мега-урон у оружия и магии. Если с оружием все ясно(слишком большой дамаг - кикаем), то с магией не все так просто. По-хорошему надо найти место, где из урона и брони высчитывается дамаг, там можно дописать кик за слишком большой показатель урона. Но есть другой, более сложный выход – ставить разные лимиты магии типа тумана и магии типа сгустка. (А это куча строк, куча места и куча лагов.)
6) Прокачанность – бешеная Прокачанность тоже мешает играть. Но тут все сравнительно просто. Фильтры. Причем желательно фильтровать не по хэлсам/Мане, а по экспе. Хотя по хэлсам надежнее – это уже осуществляли в Еи-моде 303.
7) Сверхдолгое действие – если можно отследить кол-во единиц времени, на которое кастуется заклинание, то можно будет даже Паралич урезать. Иного выхода я не вижу.(Хотя тут уже точно придется прописывать исключения – орлиный взор например: временных единиц 5000 (333сек). Если заделать Паралич на 333 секунды, то тоже неприятно будет.)
8) Огромный рост – лимит 100, тут точно особо мудрить не придеться. Нижний лимит: 0, хотя программный -99, это ведь тоже лимит (дальше начинает кидать не в меру). Но для особо честных – 0.
9) Длинные и цветные имена – хм… А тут вообще можно ничего не менять, это игре не особо мешает. (Для ярых античитеров – ограничить имя 10 битами, или имя/клан 23 битами. В зависимости от игры.)
10) Метеоритные и т.п. доспехи/оружие на Гипате. – Возможно как-то через левел предметов, хотя тут четких мыслей у меня не появилось.
11) Огромные дистанция и площадь у заклов – см. п. 5) и 7), по тому же методу.
12) Дальность удара у оружия – у всех кроме луков/арбалетов дальность 0. Фильтр для Луков/арбалетов ставить чуть выше дальности алмазного арбалета. (Чтобы создать пространство для мод-мейкеров)
13) Мега-прокач всех на карте – проверка разума больше 1 и экспы больше 1.
14) Манна 0 (автоматы). – Надо как-то проверить расход манны в предмете, но у меня подозрение, что это происходит не на сервере, серву кидается только команда на кастование закла. Хотя…
15) Еще какие-то читы… Фантазия и память кончились, если знаете пишите.
Как кикать… Ну мало ли, может вам объяснить надо. :-)
Кроме читабельного имени у игрока есть внутреннее имя (Игрок¹*, в связи с ним привязывается цвет имени. Я про честных игроков.) Вот по этому имени и кикать.
Почему кикать, почему не банить. Млин, а вдруг зададите такой вопрос. Человек должен иметь шанс на исправление. И к тому же, машина кикать не устанет, не игрок. :-)
II) Совместимость с стартером.
А тут проблема. По-хорошему надо переделать весь стартер и ввести данный патч как одну из функций. Плюс сюда ввести еще и ПК. Да и интерфейс неплохо переделать, Сделать его более красочным, и настройку «Дополнение» вынести на первый-второй план.
Другой вариант – пересчитать контрольную сумму гаме.екзе у стартера и выпустить специальный стартер, который будет работать только при установленном данном патче. И тогда, чтобы отключить патч придется менять стартер, потом возвращать его на место, и так каждый раз. Хм… Первый вариант мне кажется легче… Вот бы только исходник.
Вообще, цель этого патча – спасение нубов от засилия читеров. Причем не Читеров, а всякого мелкосортного «читерного шлака». Хороший Читер и с этоим патчем справиться, хотя такой свободы для читерения у него уже не будет.
Хотя весить такой патч будет видимо солидно, но это способ сделать ПЗ лучше и направить игру на путь возрождения.
Осталась одна проблема на повестке темы: Кто же это все возьмется писать? На меня не кивать, языков программирования я не знаю и знать не хочу! При всей своей любопытности и несмотря на некоторые знания компьютерной логики
А теперь, осознавая благородность моей идеи, я вывешиваю ее здесь и пойду отсель. <_<
Он был потомственный монах, так же как его отец и дед...