Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
[ВОПРОС] ПК мод.
#1
Людей, которые не знают яву, или же просто флудеров, прошу удалиться с этого топика и не писать тупые комменты, т.к. писанины будет много.


Начну с маленькой предистории:
Месяца 2 назад писал этот вопрос на АЧ - кроме слов "лес там" ничего более толкового не услышал, поэтому решил написать тут.

Начнёмс:
Мне тут друг затирал про одну игру, в которой при сливе (убийстве, в последуюшем тексте "ПК") у чара повышается его статы, например, бежит лукарь и него (предположим) все статы = 100 (чтобы не разводить демагогию и не катать текст величиной А4 - пусть будет всё по 100 (pAtk/pAtkRange/pAtkSpd/pDef и т.д. = 100))

Дальше наш странный лукарь видит когото и ПКшит (именно ПКшит, а не убивает в ПвП) и ему рандомно(!) даётся заранее заданное колличество к одному стату.
Поясняю:
Заранее заданное колличество - (чтобы не писать слово "или" много раз, в последуюшем тексте "\" заменит слово "или") ХП +50 \ Сила +20 \ Скорость бега +3 \ Зашита + 15 и т.д.
К одному стату - имею ввиду то, что мне не нужно чтобы этот лукарь получал все "заранее заданные колличества" сразу, а только что то одно, например + 50 ХП. И становится у нашего волшебново лукаря не 100, а 150 ХП.

Далле, было бы идеально сделать проверку на классы, а именно:
Маги (боевые): Маги имеют большую вероятность получить бонусы к магической атаке \ к скорости каста \ к магической зашите \ к физической зашите (предположим 70%). А остальные 30% это - вероятность получить бонус к силе атаки (физической) \ к скорости атаки (физической) \ к дальности радиуса физ. атаки.
Маги (бафферы): У бафферов на первом месте шанс получить бонус к длительности баффов (например COV не 5 минут, а 6), всё остальное как у боевово мага.
Танки: Наибольший шанс к ХП \ Физ. зашита \ Маг. зашита
И т.д. - думаю на примере трёх видов понятно что хочу.

Не мало важно: Чтобы не начался тупой фарм нубов (а именно прибегает прокаченный чар в Толкинг Исланд (к примеру) и начинает нубам (чарам низкого лвл) раздавать подарки в виде "фаст порт в город" - для тех кто не понял - ПКшить их) было бы идеально сделать 2 вида проверки:
Проверка №1: Наш счастливый лукарь 80 лвл, так вот, если он убивает персонажа на 20 лвл ниже себя, тогда он получает "Заранее заданное колличество" только в отрицательном значении, а именно - не + 50 ХП, а наоборот - 50 ХП.
Проверка №2: Невозможно атаковать персонажей ниже тебя на 40 лвл, с одним исключением, если чар который ниже на 40 лвл не начал атаковать сам, ито нанести урон ему можно только до тех пор, пока у чара, который ниже на 40 лвл, не сошёл флаг.


Теперь о тёмной стороне:
Как сделать так, чтобы при отмывке на мобах уходило статическое колличество кармы (предположим: 2 пункта кармы) и если он бьёт моба на 10 лвл ниже своего лвл - тогда карма не снимаеться.
Также, как сделать так, чтобы за ПК давалось ровно 100 кармы и закрепить "заранее заданное колличество" именно к значению кармы у персонажа. А именно, +50 ХП лукарь получит, заработав 100 кармы, убив 1-ого игрока. Т.к. за 1 килл даёться 100 кармы. И соответственно, если он начнёт отмываться, то по мере утекания кармы, он будет терять и свои бонусы.


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

Вот что мне ответили на АЧ:
Цитата:Изменения в ядре
Файл L2Player (ну или какой там в этой сборке).

Метод типа такого. Добавляешь всё что нужно
Код:
/**
     * Send a Server->Client StatusUpdate packet with Karma to the L2Player and all L2Player to inform (broadcast).<BR><BR>
     */
    public void updateKarma()
    {
        // Send a Server->Client StatusUpdate packet with Karma to the L2Player
        final StatusUpdate su = new StatusUpdate(getObjectId());
        su.addAttribute(StatusUpdate.KARMA, _karma);
        broadcastPacket(su);
    }
Также методы глянь:
Код:
public void increaseKarma(final long add_karma)
public void decreaseKarma(final int i)
Только тебе нужно наверное ещё будет отправять пакет на апдейт чара(бродкаст UserInfo), так как меняется не только карма но и хп/м деф.

Скажу чесно: написали как нах послали, если учесть что яву не знаю - то и не втыкаю естественно. Разжуёт ктонить потолковее?
Сборка: L2jofficial rev 970
Ответ
#2
Разжую, отвали какому-нибудь программисту пару-тройку сотен ? как минимум он тебе всё разжуёт и напишет, а самому тебе советую в ядро не лезть...
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Вопрос по AI моба и дроп с нпц mercury320 7 2,368 08-29-2018, 04:14 PM
Последний пост: Zubastic
  Вопрос Клиент-Сервер Melargus 12 3,337 07-12-2016, 11:13 PM
Последний пост: FaintSmile
  Вопрос по серверу l2p Hett 3 1,732 08-08-2015, 11:26 AM
Последний пост: Hett
  Вопрос по "The constructor is deprecated" Main 18 3,423 08-24-2014, 09:40 PM
Последний пост: Donatte
  Вопрос Jarkom 3 1,450 07-29-2014, 09:23 AM
Последний пост: Jarkom
  вопрос! Akiflola 15 3,271 06-09-2014, 12:50 PM
Последний пост: Ozzy
  Вопрос о скрипте java (квест\аи) Main 14 3,164 11-02-2013, 01:54 PM
Последний пост: Main
  Вопрос по ХП у Рейд Босов pulavskiy 1 1,326 02-21-2013, 06:29 PM
Последний пост: LestatL
  Глобальный вопрос progectOne 23 4,534 12-16-2012, 04:01 PM
Последний пост: Zubastic
  Вопрос по бафферу(lucera) Masone 0 1,156 11-28-2012, 04:38 PM
Последний пост: Masone

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


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