Исправление гейткипера в Giran Harbor с переводом его на JBF.

 
+
-
edit
 

Balancer

администратор
★★★★★
В нынешнем датапаке сия мадама перекидывала всех в Cruma Tower. Такая, вот, шутница :D

Вместо того, чтобы добавлять две лишних записи в БД и рестартовать сервер, добавил команду gatekeeper-jump, снимающую параметры x y z и adena и перекидывающую игрока в заданные координаты (работает пока только с сегодняшней сборкой L2J Balancer, в L2JRU нужную модификацию ещё не вводил):

code forth
  1. : gatekeeper-jump ( x y z adena -- )
  2.     10 /    ( temporary price is 1/10 of original )
  3.     adena? not if
  4.         "You have not adena!" .
  5.         drop 2drop
  6.         exit
  7.     then
  8.  
  9.     player@ adena-!
  10.  
  11.     jump
  12. ;


Теперь вызов нужной команды осуществляется не по ID из БД, а прямо из ссылки файла NPC, и изменения координат не требуют рестарта сервера:
code html4strict
  1. <a action="bypass -h forth 83400 147943 -3404 6300 gatekeeper-jump">The Town of Giran - 6300 Adena</a>
  2.  
  3. <a action="bypass -h forth 15670 142983 -2705 6500 gatekeeper-jump">The Town of Dion - 6500 Adena</a>


Добавил также команды, позволяющие быстро вернуться в текущие координаты после перехода куда либо:
//do loc@ - считает текущие координаты текущего игрока и запомнит их в стеке
//do jump - перенесёт игрока по запомненным координатам.
 
+
-
edit
 

Balancer

администратор
★★★★★
Обновил и L2JRU и готовые сборки датапака и сервера на Файлы L2J /Бесплатный Lineage II Interlude (C6) сервер Balancer'а/
 
+
-
edit
 

TD_ALECS

втянувшийся
Balancer смотри я так понял, сча все Гатекейперы работают по этому параметру или тока этот что ты исправил.
Если есть строка JBForth вот эта :
gatekeeper-jump ( x y z adena — )
10 / ( temporary price is 1/10 of original )
adena? not if
"You have not adena!" .
drop 2drop
exit
then

player@ adena-!

jump
;

То я могу в любом файле ссылки NPS прописать кардинаты телепорта и цену и чела закинет куда нада по цене как я пропишу.
Так получится у меня.
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 
+
-
edit
 

TD_ALECS

втянувшийся
Нифига у меня не работает часть JBForth
Мне написало
Abort: Unknown word 'gatekeeper-jump'
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

TD_ALECS

втянувшийся
Include 'data/jbforth/l2j/main.f' ...
Include 'data/jbforth/admin/main.f' ...
Include 'data/jbforth/admin/Coords.f' ...
JBForth started.
Abort: Unknown word 'teleport-player-to'

JBForth init:

importing quests ...
importing blacksmith data: dual swords
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

garri_il

втянувшийся
http://la2.balancer.ru/files/... ska4ai otsuda datopak vitashi papku /jbforth/ i postav sede :) dolzno rabotat'
 
+
-
edit
 

Balancer

администратор
★★★★★
TD_ALECS:
Abort: Unknown word 'teleport-player-to'
 


Поиск -> "teleport-player-to" -> Первые четырехмоторные пассажиры [Sergib#17.05.02 21:25]
 
+
-
edit
 

Balancer

администратор
★★★★★
[quote|TD_ALECS:]То я могу в любом файле ссылки NPS прописать кардинаты телепорта и цену и чела закинет куда нада по цене как я пропишу.
Так получится у меня.[/quote]

Да. Именно так. Только давайте возьмём за правило куски кода в тэги code запихивать. В таком виде я их даже рассматривать не буду.
 
+
-
edit
 

TD_ALECS

втянувшийся
Ты про это говорил :

code html4strict
  1. <a action="bypass -h forth 83400 147943 -3404 63000 gatekeeper-jump">The Town of Giran - 63000 Adena</a>

Вот так должно выглядеть на форуме.
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

TD_ALECS

втянувшийся
Script Sucessfullty Parsed.
Parsing Script: Valentines.xml
Parsing Event "Valentines Event"
Event has passed... Ignored.
Script Sucessfullty Parsed.
Include 'data/jbforth/Main.f' ...
Include 'data/jbforth/constants/main.f' ...
Include 'data/jbforth/constants/pets.f' ...
Include 'data/jbforth/jbf/Main.f' ...
Include 'data/jbforth/jbf/Flow.f' ...
Include 'data/jbforth/jbf/L2j.f' ...
Include 'data/jbforth/l2j/main.f' ...
Include 'data/jbforth/admin/main.f' ...
Include 'data/jbforth/admin/Coords.f' ...
Include 'data/jbforth/admin/Teleports.f' ...
Include 'data/jbforth/games/Casino.f' ...
Include 'data/jbforth/service/main.f' ...
Include 'data/jbforth/service/Rename.f' ...
Include 'data/jbforth/service/Ride.f' ...
Include 'data/jbforth/service/teleport.f' ...
JBForth started.
Abort: Unknown word '?:'

Abort: Unknown word 'jump'

JBForth init:

importing quests ...
importing blacksmith data: dual swords
importing quests: 101: Sword Of Solidarity Quest
importing quests: 102: Fungus Fever

Теперь вот что пишет, я поправил кое что TELEPORT-PLAYER-TO на это TELEPORT_PLAYER_TO
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

Balancer

администратор
★★★★★
[quote|TD_ALECS:]
Include 'data/jbforth/service/teleport.f' ...
JBForth started.
Abort: Unknown word '?:'[/quote]


Ты где-то пробел зевнул. Хотя, вобще-то, комбинация "? :" в Форте не встречается. Ищи ошибку у себя.
 
+
-
edit
 

TD_ALECS

втянувшийся
: gatekeeper-jump ( x y z adena — ) вот эту строку сделал :gatekeeper-jump ( x y z adena — ) подвинул к двоеточию, вот что написало.

Parsing Script: Valentines.xml
Parsing Event "Valentines Event"
Event has passed... Ignored.
Script Sucessfullty Parsed.
Include 'data/jbforth/Main.f' ...
Include 'data/jbforth/constants/main.f' ...
Include 'data/jbforth/constants/pets.f' ...
Include 'data/jbforth/jbf/Main.f' ...
Include 'data/jbforth/jbf/Flow.f' ...
Include 'data/jbforth/jbf/L2j.f' ...
Include 'data/jbforth/admin/Teleports.f' ...
Include 'data/jbforth/games/Casino.f' ...
Include 'data/jbforth/games/CurrentEvent.f' ...
Include 'data/jbforth/service/main.f' ...
Include 'data/jbforth/service/Rename.f' ...
Include 'data/jbforth/service/Ride.f' ...
Include 'data/jbforth/service/teleport.f' ...
JBForth started.
Abort: Unknown word '?:gatekeeper-jump'

JBForth init: Ok!

importing quests ...
importing blacksmith data: dual swords
importing quests: 101: Sword Of Solidarity Quest
importing quests: 102: Fungus Fever
importing quests: 103: Spirit Of Craftsman
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

Balancer

администратор
★★★★★
Блин. Пока не прочтёшь и не вкуришь хотя бы Уроки - даже комментировать не буду. "подвинул" он... :-/
 
+
-
edit
 

garri_il

втянувшийся
j tebe kinul ssilku na datopak tam vozmi vesy papku /jbforth/ eto tak trudno sdelat' v nei dolzni lezat' poslednii ili predposlednii opdeit i versiy servera vozmi poslednyy i vse dalzno rabotat' kak 4asi :)
 
+
-
edit
 

TD_ALECS

втянувшийся
[quote|garri_il:]j tebe kinul ssilku na datopak tam vozmi vesy papku /jbforth/ eto tak trudno sdelat' v nei dolzni lezat' poslednii ili predposlednii opdeit i versiy servera vozmi poslednyy i vse dalzno rabotat' kak 4asi :)[/quote]
Я это проделал ещё днём, но тогда никто не сказал что обновилась версия движка, я его до твоего сообщения скачал и обновил, вот тогда всё и заработало, телепорт деньги снимает неправильно, если прописать вот это то снимет 10000 адена
code html4strict
  1. <a action="bypass -h forth 83400 147943 -3404 100000 gatekeeper-jump">The Town of Giran - 100000 Adena</a>


А если прописать после кардинат 1000000 то снимет 100000 как мне и нужно.
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

garri_il

втянувшийся
a 4E NE PRAVEL'NO pri s'eme deneg ?
 
+
-
edit
 

Balancer

администратор
★★★★★
[quote|TD_ALECS:]если прописать вот это то снимет 10000 адена[/quote]

Так у меня цена за телепорт - 1/10 номинала. Облегчение игрокам, пока их мало.

И в соответствующей строчке исходника в нужном месте комментарй стоит.

Убери деление на 10 отуда - будет номинал :)
 
+
-
edit
 

TD_ALECS

втянувшийся
Ок попробуем.
Server L2j- 1=> http://lineage.cybernet.by Server L2j- 2=> http://game.iptel.by [img]http://total-disconnect.at.tut.by/logoiptel.jpg[/img]  
+
-
edit
 

Balancer

администратор
★★★★★
Ввёл константы с координатами этих городов в constants/locations.f и прописал вызов не по координатам, а уже по именам, в html-диалог гейткипера.
 
+
-
edit
 

garri_il

втянувшийся
вот если кому интересно вариант телепорта в Tower Insolence ID NPC 12563
code text
  1. <html>
  2. <body>
  3. <tr><td>Tower of Insolence Gatekeeper</tr></td>
  4.  
  5.  
  6. <tr><td>Na 2, 3 i 4om itajah Gatekeeper'ov naideno nebilo.</tr></td>
  7. <tr><td></tr></td>
  8.  
  9.  
  10. <a action="bypass -h forth 114991 16023 -5099 0 gatekeeper-jump">To 1st floor</a>
  11.  
  12.  
  13. <a action="bypass -h forth 114647 12759 -3601 0 gatekeeper-jump">To 2st floor</a>
  14.  
  15.  
  16. <a action="bypass -h forth 116841 16071 -2119 0 gatekeeper-jump">To 3st floor</a>
  17.  
  18.  
  19. <a action="bypass -h forth 114646 19350 -637 0 gatekeeper-jump">To 4st floor</a>
  20.  
  21.  
  22. <a action="bypass -h forth 114850 16018 929 0 gatekeeper-jump">To 5th floor</a>
  23.  
  24.  
  25. <a action="bypass -h forth 114800 16031 1948 0 gatekeeper-jump">To 6th floor</a>
  26.  
  27.  
  28. <a action="bypass -h forth 114824 16050 2995 0 gatekeeper-jump">To 7th floor</a>
  29.  
  30.  
  31. <a action="bypass -h forth 114992 15988 3968 0 gatekeeper-jump">To 8th floor</a>
  32.  
  33.  
  34. <a action="bypass -h forth 114971 16081 4978 0 gatekeeper-jump">To 9th floor</a>
  35.  
  36.  
  37. <a action="bypass -h forth 114936 16106 5988 0 gatekeeper-jump">To 10th floor</a>
  38.  
  39.  
  40. <a action="bypass -h forth 114626 16068 6998 0 gatekeeper-jump">To 11th floor</a>
  41.  
  42.  
  43. <a action="bypass -h forth 115020 16120 7998 0 gatekeeper-jump">To 12th floor</a>
  44.  
  45.  
  46. <a action="bypass -h forth 115943 16093 9008 0 gatekeeper-jump">To 13th floor</a>
  47. </body>
  48. </html>

и просто и с базои замора4иватьсй не надо :)
 
+
-
edit
 

Balancer

администратор
★★★★★
Вместо "0 gatekeeper-jump" можно просто "jump" использовать :) Безусловный переход в заданные координаты.

Кстати, для админа может быть полезна команда "jm" (jump by map), которая переносит по координатам карты:

//45.5 50.2 jm

:)

Глянул по карте, куда тебе нужно, и прыгнул туда :)
 
+
-
edit
 

garri_il

втянувшийся
[quote|Balancer:]Кстати, для админа может быть полезна команда "jm" (jump by map), которая переносит по координатам карты:

//45.5 50.2 jm

:)

Глянул по карте, куда тебе нужно, и прыгнул туда :)[/quote]
kleva :)
 

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