Пакеты

 
UA MorbidAngel #04.01.2007 17:12
+
-
edit
 

MorbidAngel

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

Нужно заставить непись использовать феерверки....но вопрос - кому и какой пакет слать(явно не неписи ;) )...я думаю, что нужно послать игрокам (всем или тем, кто в зоне видимости нпц)...прав я или нет? и подскажите название пакета.
Заранее спасибо
 
UA SoulKeeper #04.01.2007 18:43
+
-
edit
 

SoulKeeper

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

MagicSkillUse пакет шли, это скилл...
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  
UA MorbidAngel #05.01.2007 09:37
+
-
edit
 

MorbidAngel

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

Нашел MagicSkillUser
[code java]
public MagicSkillUser(L2Character cha, L2Character target, int skillId, int skillLevel, int hitTime, long reuseDelay)
{
....
}

public MagicSkillUser(L2Character cha, int skillId, int skillLevel, int hitTime, long reuseDelay)
{
....
}
[/code java]
как я понял:
cha - сюда передаем объект неписи
skillId - все понятно, но как скил называится(Firework,Large Firework в XML нету)
skillLevel,hitTime,reuseDelay - аналогично, но думаю найдя скил разберусь
 
UA MorbidAngel #05.01.2007 09:53
+
-
edit
 

MorbidAngel

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

Нашел =)) Large Firecracker
 
UA MorbidAngel #06.01.2007 02:58
+
-
edit
 

MorbidAngel

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

Мучался я мучался так ниче и не вышло ;(
Пишу так:
[code forth]
'tts-spawned-npc-list 0 list@ 2025 1 1 0 "MagicSkillUser"
{ L2Character.class int.class int.class int.class long.class } new-server-packet send-packet' do-players
[/code forth]
tts-spawned-npc-list - тут хранятся объекты отспавненных нпс.
Эксепшины и ошибки сервер не бросает, но ни каких ферверков тоже невижу....подскажите, что не так
 
UA SoulKeeper #06.01.2007 13:25
+
-
edit
 

SoulKeeper

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

хех, попытайся использовать L2Character.doCast(ид скила)
Хотя в форте я нихрена не понимаю :D:D:D
У тебя кажись игнорирование конструктора MagicSkillUser идет, ну или оно заумно расписано.
Разыскивается десятка с два датапакеров :) http://la2.wrk.ru/forum/viewtopic.php?id=50882  

Drac

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

Да что ж вас всех на форт тянет... Учите яву.
 
UA MorbidAngel #06.01.2007 17:32
+
-
edit
 

MorbidAngel

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

SoulKeeper> хех, попытайся использовать L2Character.doCast(ид скила)
SoulKeeper> Хотя в форте я нихрена не понимаю :D:D:D
SoulKeeper> У тебя кажись игнорирование конструктора MagicSkillUser идет, ну или оно заумно расписано.
Эксепшин..

java.lang.NoSuchMethodException: l2f.gameserver.model.instances.L2NpcInstance.do
Cast(int, l2f.gameserver.model.L2Character)

Хотя L2NpcInstance наследуется от L2Character.
Как в жаве получить базовый класс??
Вернее добраться до его методов
 
Это сообщение редактировалось 06.01.2007 в 17:55
UA SoulKeeper #06.01.2007 18:35
+
-
edit
 

SoulKeeper

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

super.doCast();
или
(L2Character)npc.doCast();

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

Balancer

администратор
★★★★★
Drac> Да что ж вас всех на форт тянет... Учите яву.

1. Не у всех есть исходники.
2. Отлаживать такие штучки на Яве - это просто застрелиться можно. На каждый чих - рекомпиляция и рестарт сервера. Нет, конечно, кому-то и чесь вёрст не крюк, но подобные задачи нужно оптимально на Форте делать :)

По сабжу.

Вот простой пример, юзер-команда .bah, которая, собственно, и бахает :)
code forth
  1. : user_bah
  2.     self self 2025 1 1000 2000 new-MagicSkillUser
  3.     self p.broadcast
  4. ;


MagicSkillUser определён в l2j/broadcast.f:
code forth
  1. : new-MagicSkillUser  ( L2Character:char L2Character:target int:skillId int:skillLevel int:hitTime Long:reuseDela
  2. y -- MagicSkillUser )
  3.         "MagicSkillUser" { L2Character.class L2Character.class int.class int.class int.class Long.class } new-ser
  4. ver-packet
  5. ;
 
UA SoulKeeper #07.01.2007 01:38
+
-
edit
 

SoulKeeper

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

демоны...

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

Balancer

администратор
★★★★★
SoulKeeper> демоны...
SoulKeeper> Пока в форте что-то поймеш - застрелится успееш :)

Как показывала практика, средненький программист начинает хорошо понимать Форт в течении 3..4 объяснений на Форуме или минут за 20 общения в чате :)

Одна беда, после 3..4 таких объяснений у меня напрочь пропало желание повторяться.

Нужно раскапывать в хистори конфы и на форуме и делать статьи...

Проще Форта трансляторов ещё элементарно не придумано :)

...

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

Если знаешь, что нужно вызывать - вызвать труда не составляет никакого :)
 

Murkt

Pythoneer

Balancer> 2. Отлаживать такие штучки на Яве - это просто застрелиться можно. На каждый чих - рекомпиляция и рестарт сервера. Нет, конечно, кому-то и чесь вёрст не крюк, но подобные задачи нужно оптимально на Форте делать :)

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

PS но делать подобное на джаве - неумно :)
[team Їжачки - сумні падлюки]  
+
-
edit
 

Balancer

администратор
★★★★★
Murkt> Ну, мазохистов мы в расчёт не принимаем - если модифицируется что-то не очень большое, то из под эклипсового дебага всё отлично пишется, меняется и дебажится.

Это если на уровне константу поменять :) И то, если класс ничем не залочен (не из "ходовых").
 
UA MorbidAngel #07.01.2007 15:28
+
-
edit
 

MorbidAngel

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

Balancer> По сабжу.
Balancer> Вот простой пример, юзер-команда .bah, которая, собственно, и бахает :)

Спасибо ;)
Получилось!:
[code forth]
tts-spawned-npc-list 1 list@ tts-spawned-npc-list 0 list@ 2025 1 1 0 new-MagicSkillUser tts-spawned-npc-list 0 list@ broadcast-other
tts-spawned-npc-list 3 list@ tts-spawned-npc-list 2 list@ 2025 1 1 0 new-MagicSkillUser tts-spawned-npc-list 2 list@ broadcast-other
[/code forth]

P.S. Теперь понял как сервер пакеты шлет =))
 

Murkt

Pythoneer

Murkt>> Ну, мазохистов мы в расчёт не принимаем - если модифицируется что-то не очень большое, то из под эклипсового дебага всё отлично пишется, меняется и дебажится.
Balancer> Это если на уровне константу поменять :) И то, если класс ничем не залочен (не из "ходовых").

Да не, можно прям код писать - я пробовал, никаких проблем. А если это всё на тестовом сервере (а какой же ещё из под Эклипса-то), то там большинство классов не из ходовых. А те, что даже и в таком случае не поменяешь особо, так там форту вообще делать нечего :)
[team Їжачки - сумні падлюки]  
+
-
edit
 

Diamond

втянувшийся

Murkt>>> Ну, мазохистов мы в расчёт не принимаем - если модифицируется что-то не очень большое, то из под эклипсового дебага всё отлично пишется, меняется и дебажится.
Balancer>> Это если на уровне константу поменять :) И то, если класс ничем не залочен (не из "ходовых").
Murkt> Да не, можно прям код писать - я пробовал, никаких проблем. А если это всё на тестовом сервере (а какой же ещё из под Эклипса-то), то там большинство классов не из ходовых. А те, что даже и в таком случае не поменяешь особо, так там форту вообще делать нечего :)

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

Drac

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

Насчет питона - не скажите. Очень удобно и все понятно.
 

Murkt

Pythoneer

Megawolf> Ага, а вот добавить игроку ауру, наложить любой эффект, да и вообще за минуту придумать и тут же осуществить что-то интересное (эвент) не выходя из игры - такое яве не под силу :)

Так я и не спорил. Всякие мелочи делать ядром...

Megawolf> Плюс писать простые квесты на яве - глупо, а на питоне как-то коряво выходит, и легко ошибок наделать (которые потом фиг найдешь) плюс его отладка какая-то неудобная... да и не сделать на питоне то, что можно на форте :)

А этим предложением ты показываешь только то, что не знаешь, как работает питон в L2J. Ну и самого питона тоже не знаешь :)
[team Їжачки - сумні падлюки]  
+
-
edit
 

Diamond

втянувшийся

Murkt> А этим предложением ты показываешь только то, что не знаешь, как работает питон в L2J. Ну и самого питона тоже не знаешь :)

Хреново работает. Половина квестов неработает из за мелких ошибок, которые сложно заметить. Питона незнаю, говорю то что вижу.
 

Murkt

Pythoneer

Murkt>> А этим предложением ты показываешь только то, что не знаешь, как работает питон в L2J. Ну и самого питона тоже не знаешь :)
Megawolf> Хреново работает. Половина квестов неработает из за мелких ошибок, которые сложно заметить. Питона незнаю, говорю то что вижу.

Чего общего между "как работает питон" и "какой глючный код в L2J на питоне"?
[team Їжачки - сумні падлюки]  
+
-
edit
 
а такая что питон отлаживать практически невозможно
Пытаясь понять рекурсию, следи за тем, чтобы она не поняла тебя первой...  
+
-
edit
 

Balancer

администратор
★★★★★
Вообще, есть весьма немаленькая разница в особенностях отладки и использования Python и Jython.

Давно присматриваюсь к первому (программировать сам ещё не начал, не было задач, но, чувствую, что работать на нём предстоит ещё много в ближайшем будущем, а вот готового кода использую ОЧЕНЬ много), но совершенно не переношу второй :)
 

Murkt

Pythoneer

Можно выкинуть Jython и подрубить CPython через JPype.
[team Їжачки - сумні падлюки]  
Это сообщение редактировалось 15.01.2007 в 00:30
AD Реклама Google — средство выживания форумов :)
+
-
edit
 

Balancer

администратор
★★★★★
Murkt> Можно выкинуть Jython и подрубить CPython через JPipe.

И чем оно тогда будет лучше чистой Java? :) Ничем...
 

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