Balancer: Все сообщения за 19 Декабря 2006 года

 
ПнВтСрЧтПтСбВс
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Balancer

администратор
★★★★★
Вчера около 22:00 заходил - рейты были как раз "околобазовые" - 10/10/12/14/16.

Поскольку "в среднем" это выходит (10+10+12+14+16)/5 = 12.4, дальше в ближайшем времени увеличивать ничего не буду :) Могу накинуть XP/SP, но за счёт уменьшения дропа. Скажем, 12/12/12/13/13 :)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Впрочем, ловите ещё небольшую прибавочку (активируется с естественным рестартом), но сильной халявы в будущем не ждите.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
DeathDemona> В общем , если есть такая возможность , можно получить доступ к svn как бы для ознакомления , виде испытательного срока ?

Стукни сегодня в Jabber. В крайнем случае - по email.

DeathDemona> 2. перед аурой вокруг персонажа должны спавнится 4 феи и чтобы смотрели на персонажа

Спавн мобов можешь посмотреть в data/jbforth, много где используется :)

DeathDemona> 3. ну и патетический текст от квестера - "HERO - you complete my quest!!!" и тд

Тексты, если они больше одной-двух строчек, лучше и удобнее хранить в файлах.

DeathDemona> 4. когда персонаж убивает квестового моба - должен спавнится демон который проникновенным голосом говорить - мол дарагой ты маладец - пора идти к квестеру

Тут тебе трудно, наверное, будет. Нужно написать слово .say, которое будет "говорить" от лица некоего чара. Аналогично словам .tell/.trade/.shout (описаны в data/jbforth/effects/say.f). Но пока его нет, и при его использовании есть тонкость - говорить нужно не всем чарам сервера, а только окружающим на заданном расстоянии :)

Думаю, это лучше мне такое слово написать. Сейчас пропишу себе в TODO.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Krio> Не пойму чего-то, забанили незаслуженно, тогда вещи вернуть надо.

Нет, этот автобан пока ни у кого сомнению не подвергался.

Krio> Ну а если попался, аккаунт - Ф ТОПКУ.

В виде исключения :D

Krio> ПС: можт после разбана стоит права GMа давать на полчаса))

На 10 секунд :D
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
DeathDemona> что-то с спавном запорлся, в чём напутал ?

Где ошибка - попробую понять позже. Пока советы по мелочам.

DeathDemona> 0 value xM

Будь осторожнее, помни, что value переменные - глобальные. Если там пишет что-то один персонаж, то данные меняются у всех. Так что - не особо рекомендуется использовать без особой надобности. Можно - пользовательские uvalue, а лучше - прямо со стека брать, если что.

Вообще, чую, пора вводить локальные временные переменные слова :)

DeathDemona> player@ "X" p@ 100 + to xM
DeathDemona> player@ "Y" p@ 100 + to yM
DeathDemona> player@ "Z" p@ to zM

1. Есть слово coords@ ( character - x y z ), которое возвращает x, y и z указанного персонажа.

2. Есть слово coords-randomize ( x y z delta - x+/-delta y+/-delta z ). Т.е. можно написать:
code forth
  1. self coords@ 100 coords-randomize to zM to yM to xM


DeathDemona> "{5122 [ xM ] [ yM ] [ zM ] [ HeadingM ] 60 false}" parse

Получилась строка.

> fairys-spawned-list list+

Ты строку добавил к списку.

DeathDemona> fairys-spawnlist npc-list-spawn to fairys-spawned-list

Пытаешься отспавнить, и среди других данных - простая строка... :)

Варианты:

1. добавить eval, чтобы просто вычислить строку: "{ 5122 [ xM ] [ yM ] [ zM ] [ HeadingM ] 60 false }" parse  eval.

2. Зачем вообще вычислять строку? Список можно итак сделать, фигурные скобки - это обычные слова. Открывающаяся запоминает уровень стека, закрывающая - снимает всё, что появилось с введения открывающейся и из добавленных элементов формирует список. Кстати, поэтому и не забывай фигурные скобки отделять пробелом или переводом строки от других слов.
code forth
  1. { 5122 xM yM zM HeadingM 60 false } fairys-spawned-list list+


Кстати, содержимое списка можно посмореть, распечатав. Или в клиенте, или в телнете:
code forth
  1. fairys-spawned-list .


("точка" - печатает со стека одно значение).

Для отладки полезно также использовать ещё .s (печатает весь стек, не трогая значений).
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Всё, я совсем плохой :D Менял параметры рейтов не в том месте :)

Вот, ловите сейчас. При онлайне 4:
XP=9.0
SP=9.0
ADENA=11.0
ITEMS=15.0
SPOIL=19.0
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
MorbidAngel> 2Balancer А где можно посмотреть полный список уже описаных слов, операторов, а то на вики ДАЛЕКо не все?

К сожалению, пока только в исходниках :) Благо, и исходники JBForth, и слова, определённые на Форте доступны всем. Исключение - слова L2F-расширений JBF, написанные на Java. Они есть только у тех, у кого есть исходники. При написании слов я старался давать их краткие описания.

Если кто-то возьмётся расширить Wiki - я только за :)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
MorbidAngel> непись будит смотреть не в твою сторону, а в ту-же что и ты.

Да. Я не помню, сколько в h-единицах будет 180 градусов. Не уверен, что 360 градусов - это точно 65536. Но если так, то 180 градусов - это 32768 (там отличия если и есть, то небольшие, нам не принципиально). Значит, чтобы повернуть чара на 180 градусов, достаточно добавть 32768 и взять остаток от деления на 65536:
code forth
  1. 32768 + 65536 MOD
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Кстати, не забывайте, что тестировать работу Форта можно прямо из телнета:
code text
  1. telnet localhost 1903
  2. Trying 127.0.0.1...
  3. Connected to localhost.
  4. Escape character is '^]'.
  5. Welcome To The L2J Telnet Session.
  6. Please Insert Your Password!
  7. Password: ***
  8. Password Correct!
  9. [L2J]
  10. 1 32768 + 65536 MOD .
  11. 32769
  12.  
  13. 32769 32768 + 65536 MOD .
  14. 1
  15.  
  16. 1234 32768 + 65536 MOD .
  17. 34002
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
code forth
  1. "
  2. {
  3. { 5122 [ xM ] [ yM 100 + ] [ zM ] [ HeadingM ] 60 false }
  4. { 5122 [ xM 100 + ] [ yM ] [ zM ] [ HeadingM ] 60 false }
  5. { 5122 [ xM ] [ yM 100 - ] [ zM ] [ HeadingM ] 60 false }
  6. { 5122 [ xM 100 - ] [ yM ] [ zM ] [ HeadingM ] 60 false }
  7. } to fairys-spawnlist" parse eval


Это то же самое, что просто:
code forth
  1. {
  2. { 5122 xM yM 100 +  zM  HeadingM 60 false }
  3. { 5122 xM 100 +  yM   zM   HeadingM  60 false }
  4. { 5122  xM   yM 100 -   zM   HeadingM  60 false }
  5. { 5122  xM 100 -   yM   zM   HeadingM  60 false }
  6. } to fairys-spawnlist


:)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
MorbidAngel> А при инкрементации угла поворот происходит по часовой стрелке или против??

Кажется, по часовой. Но в нашем случае это не важно, так как поворот на 180 градусов всё равно через какую сторону делать :)

...

Хотя, если тебе нужно, чтобы персонаж всегда смотрел в момент спавна лицом на тебя, находясь в любой точке, то тут нужно уже именно углы считать. Тут мне уже клиент нужен, чтобы поиграть. Хотя, кажется, где-то уже код подобный был.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Сабж. Апострофы, html-сущности теперь корректно раскрашиваются в [ code ] ... [ /code ].

До кучи сделал сброс кеша при Edit/Save сообщения без его редактирования.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Стандартные квесты - это Jython.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Raf> Не надо експерементов с дропом, ни в коем разе.:)

Нынешние пропорции удовлетворительны? :)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Megawolf> Balancer: насчет parse eval это я ему насоветовал, незнал что внутри списков можно переменные использовать :)

Я в этом топике уже писал, как работают слова { ... }. Открывающаяся скобка запоминает уровень стека, а закрывающаяся - делает список из всех добавившихся элементов. Каким образом они туда попали - не важно :) Всё, что между этими скобками - обычный Форт-код.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
vea> кстате хотел спросить про сайт и про ту статистику которая там пишеться у меня такое чуство что она вобше не меняеться ткое чуство что все с кэша какого то береться и если и меняться то в лучшем случае раз в день два но уж точно не раз в 10 мин.

Статистика, которая на http://la2.balancer.ru:7776/status.fsh или http://la2.balancer.ru:7776/stat.html обновляется в реальном времени. Легко увидеть по оставшемуся до рестарта времени, например :)

vea> Что касаеться карты онлайн дак там тже что то странное если ей верить то некоторые чары уже целый месяц седят на одном месте и не двигаються.

Период обновления - 10 минут. Оперативность карты прекрасно видна, например, во время мероприятий. В субботу все сидели в Колизее и на карте это было видно :D
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Balancer

администратор
★★★★★
Пытаюсь привыкнуть. Таки (если не заморачиваться на том, что ещё не привык и ошибаюсь иногда), действительно, удобно! :)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

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