Посоветуйте как можно реализовать ОТРЯДЫ!

Теги:
 
+
-
edit
 

Delta_Q

новичок
Идея такая:
В игре есть гуарды ну те что продаются для обороны замка!
Я вот подумал а как можно реализовать такой фокус чтобы игрок нанимал себе этих охранников не для обороны замка а как дружину!
Т.е. предположим купил себе игрок камень стражей! Потом зашел в магазин и накупил тех охранников что используются для обороны замка и зарядил этот камень стажами. (Можно сделать камни на 4 стражников на 6 на 8 и 10 ну в общем несколько видов чем больше тем дороже камень) и предположим когда требуется вызвать их он щелкает на такой камень два раза как при вызове дракона и перед ним выстраивается его отряд из нескольких стражников.
Для управления стражами будет высвечено как при пет окно где можно отдвать команды стражам, типа следовать за мной атаковать и т.п.
Если один из стражников погибает он автоматически удаляется из камня стражей и игроку нужно купить нового стажа.
Если убиваются все стражи то камень стражей разрушается.

Вы скажите зачем это надо?: При небольшом он-лайн такой камень превратит игру из ряда обычной РПГ в стратеги с полномасштабными сражениями.

Я бы хотел услышать мнение людей кто разбирается в сервер на уровне исходников и они мне посоветовали как лучше всего реализовать такую идею...
 
Это сообщение редактировалось 18.01.2007 в 18:31
UA SoulKeeper #18.01.2007 18:42
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

пет окно зашито в клиенте.
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Delta_Q

новичок
Хорошо.. тогда без окна.
Просто шелкаеш и они разварачвиваются..
Шелкаеш еще раз и они сворачиваются.
А отряд просто следует за хозяином и любую агресиию присекает.

Или использовать стандартное например дракона, тока им управлять отрядом... (если это возможно)
 
+
-
edit
 

Balancer

администратор
★★★★★
Покупные охранники у нас скоро будут :) В принципе - уже почти работают (требуется устранить глюк при прекращении боя, не происходит переинициализация охранника).

Можно брать в качестве охранника не только NPC, но и, вообще, любые персонажи, т.е. и мобов.
 
+
-
edit
 

Delta_Q

новичок
А как мне их релаизовать хотябы посоветуйте, в каом модуле мне ковырять?
Я работаю с СВН сервером у меня исходники С5 439 сборки...
Я не прошу исходники мне хоятбы намекните как это схематически реализовать? А там я уж постараюсь сам пошаманить :)

Блансер: Расскажи по подробней как это у вас в игре выглядить будет ваша работа с охраной?
 
+
-
edit
 

Balancer

администратор
★★★★★
Исходники, как доделаю, будут доступны. Там голый Форт.

Хотя для найма в качестве стражников NPC, придётся, кажется, патчить Java-часть, ибо сейчас NPC - "не бойцы". Хотя, наверное, это можно обходить на уровне SQL-базы, прописав им соответствующий класс.

Плюс к тому, у нас из-за лености некоторых из разработчиков, был какое-то время запрет на атаку мобов мобами. Но это я уже с месяц назад подправил, так что такая версия скоро будет доступна к скачиванию, полагаю.
 
+
-
edit
 

Balancer

администратор
★★★★★
Delta_Q> Блансер: Расскажи по подробней как это у вас в игре выглядить будет ваша работа с охраной?

Конкретные режимы работы и т.п. - это всё можно будет потом 10 раз переделать. Главное, чтобы охранник в принципе работал. Бегал за тобой, ввязывался в драки и т.п. (вообще, это всё в целом работает, но нужно вылизывать)
 
UA SoulKeeper #18.01.2007 19:13
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

Имхо, если уж и делать - то новый инстанс и управление через HTML
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Balancer

администратор
★★★★★
Зачем новый инстанс, когда итак всё работает? :)

Бросайте этот глупый SF-стиль размножения сущностей :D
 
+
-
edit
 

Delta_Q

новичок
У вас я так понимаю 1 охранник нанимается да?
А у меня идея в том чтобы был целый отряд!

SoulKeeper: Слушай а это тема! Точно через HTML инстан можно! Напрмиер у отряда будет коммандир к нему и обращастя через Меню!!!

Balancer: НУ ваши исходниик закрыты и вы это реализуете через язык ФОРТ.. а я с СВН работю :(

Тогда такой вопрос как реализовать такой замут:
Есть камень СТРАЖЕЙ, в нем уже имеется 1 Страж это Коммандир. В Камень как я писал выше можно запихивать других стражей наращивая число стражей, пока есть место в камне.
Чтобы вызвать стражей шеклаем по камню и вызываются все стражи! Если щелкунть по командиру то возникнит диалог где можно отдать приказы стражникам.
Если убивают всех стражей камень разрушается. Если убивают какогото из стаже он вычитается из камня.

НУ предположим с камнями можно сделать базу данных где будут указан АЙДИ игрока и какой у него тип камня на скоко, в этой записи будет указаны АЙДИ номеров тех охранников которых нанял игрок! Соответсвенно вставляя в камень охранника или если он погибает он добавляется в запись или удаляется отуда. Заполенеи идет по принципу масива.
Привмер записи:
Номер ИГРКА - АЙДИ предмета - Цифра заряда камня - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10
234567789 - 4357 - 5 - 20500 - 20500 - 21500 - 21500 - 22500 - 0 - 0 - 0 - 0 - 0

Каждый охранник имеит свой номер в массиве и в бою убило охранника номер 3 тогда в запис добавистя:
234567789 - 4357 - 5 - 20500 - 20500 - 0 - 21500 - 22500 - 0 - 0 - 0 - 0 - 0
 
UA SoulKeeper #18.01.2007 20:26
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

Камень это самое легкое для реализации. А вот солдатикам то наследника L2SummonInstance делать прийдется :) Т.к. его AI в принципе подходит и для твоей задумки.

2 Balancer: Алтернативные варианты реализации на SF based?
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Balancer

администратор
★★★★★
SoulKeeper> 2 Balancer: Алтернативные варианты реализации на SF based?

SF - с открытыми сорцами. Приделать там хуки на управление имеющимся AI из Форта - несколько строчек кода. После чего этим AI можно спокойно рулить из Форта.

Принцип простой - на каждое событие, входящее в AI может вешаться обработчик на Форте. Он уже сам смотрит, обработать событие самому, или вернуть управление и пусть оно обрабатывается по дефолту. Переключать же состояние AI можно и без всяких хуков, из Форта можно произвольно вызывать Java-методы.

Т.е. AI работает так. На игроке висят обработчики событий. Игрок куда-то бежит - вызывается код обработчика и заставляет бежать туда же охранника (точнее, в точку окрестности, так выглядит красивее). Игрока кто-то атакует или игрок сам атакует - охранник начинает атаку атаковавшего или присоединяется. Цель убита - происходит сброс AI в нейтральное состояние (вот тут у меня на последнем тесте что-то не срабатывало, разобраться пока не было времени).
 
+
-
edit
 

Delta_Q

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

SoulKeeper: а что L2SummonInstance.java это объект обрабатываеющий вызов СУМОНА?
 
Это сообщение редактировалось 19.01.2007 в 00:50
UA SoulKeeper #19.01.2007 02:49
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

По сути это и есть сам саммон.

net.sf.l2j.gameserver.model.actor.instance.L2SummonInstance.java, от него наследник. Оверрайд стандартной функции дабл клика, хтмл менюшка, не говорим игроку что у него есть саммон - в принципе готово. Работы часа на 3-4, 80% времени на тесты :)

Balancer> SF - с открытыми сорцами. Приделать там хуки на управление имеющимся AI из Форта - несколько строчек кода. После чего этим AI можно спокойно рулить из Форта.

Тебе везде бы форт засунуть :)
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Balancer

администратор
★★★★★
SoulKeeper> Тебе везде бы форт засунуть :)

Потому что перекомпиляция сервера по каждому чиху - это большое зло :)
 
+
-
edit
 

Delta_Q

новичок
SoulKeeper: тогда проще сделать так взять за сиходник
net.sf.l2j.gameserver.model.actor.instance.L2SummonInstance.java И сделать на его основе свой фвйл L2GuardInstance.java c одним отличием убрать эту строку
code text
  1. private static final int SUMMON_LIFETIME_INTERVAL = 1200000; // 20 minutes

НУ это же не совсем самон, а некий Пет получается? так былобы правельней...

тогда проконсультируйте какие мне разработаь отдельный класс для такого рода Самонав?
1) Значит так в папке java/net/sf/l2j/gameserver/model/actor/instance/ создаем файл L2GuardInstance.java
2) В java/net/sf/l2j/gameserver/instancemanager добавить обработку команд для Стражников L2GuardMen.java
3) В java/net/sf/l2j/gameserver/handler/itemhandlers добавить обработку камня L2GuardRock.java
4) В java/net/sf/l2j/gameserver/ai добавить АИ для поведения Старжей L2GuardAI.java

Че я упустил и как теперь сделать так чтоб при сборке серва мои фалы автоматически добавлялись в модуль сервера?

З.Ы. Хочу выразить свою благодарность SoulKeeper и Balancer что вы отвечаете на мои глупые вопросы :)
 
Это сообщение редактировалось 19.01.2007 в 15:15
UA SoulKeeper #19.01.2007 15:26
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

ээээ... ну ты уже загнул :)

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

Если ты хочеш полностью автономного гварда с автоматичейской атакой/защитой патрулем... Гемор это... В общем тогда копать в сторону L2MonsterInstance
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Delta_Q

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

Drac

разработчик l2j-сервера

А смысл браться, если не знаешь, где копать?!
 
UA SoulKeeper #22.01.2007 16:27
+
-
edit
 

SoulKeeper

разработчик L2J Fortress

Главное желание, остальное не столь важно. В гугле все есть :)
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
+
-
edit
 

Delta_Q

новичок
Капать магу, а место где капать надо найти :) Вот поэтому и спрашиваю у тех кто знает структуру и могут подсказать направление.
З.Ы. Конешно могу и не сделать, но я это делаю т.к. просто инетресно этим заниматся. :) В Инете полно серверов Ла2, я вот и подумал, а почемубы не сделать на основе сервера нечто свое непохожее на другие сервера. Впринципи некоторые игровые параметы можно регулировать без изменения исходников но вот чтото более глобальнео требует изменеие и добаление своего в исходник.

Вот и возникла идея с созданием такой фишки как отряд. :)
 
+
-
edit
 

Delta_Q

новичок
А как в игре используется этот модуль? bodyguard.f
 
+
-
edit
 

Diаmond

втянувшийся

Delta_Q> А как в игре используется этот модуль? bodyguard.f
А он уже около года (если не ошибаюсь) не используется. Да и не работает :)
 
+
-
edit
 

Balancer

администратор
★★★★★
Delta_Q> А как в игре используется этот модуль? bodyguard.f

Это демонстрация AI на Форте. Концепт, так сказать :) По идее, нужно просто взять и реализовать, скажем, "продажу" охранников.
 
AD Реклама Google — средство выживания форумов :)
+
-
edit
 

Delta_Q

новичок
Хмм.. я бы попробовал в свободное время.
тогда возникает вопрос:
1) как реализовать привязку этого скрипта к предмету и к вызванному мобу
2) Получается, что это обрабатывается 1 непись и таким образом можноли сделать чтоб таких неписй было 2 и более?

З.Ы.
У меня были идеи привязать это к моделям охранников в замках, а также использовать их иконки в качестве прдметов сумона при создании объекта для вызова охраны.
 
Это сообщение редактировалось 12.07.2007 в 15:59

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru