Форум Oni

Русскоязычный форум поклонников игры «Они» от Bungie

  • Здравствуйте, Гость

#1 23-03-2008 22:08:11

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Скрипты

У меня вопрос... Какой командой можно телепортировать аппонентов из одного места в другое?
Можно ли например Чёрного TCTF поместить во 2 уровень, где его недолжно быть?
И как сделать так чтобы определённый оппонент ходил за тобой (как напарник)!

Оффлайн

 

#2 29-03-2008 15:13:12

VenomMan (муж.)
Страйкер
Откуда: Кумертау
Регистрация: 21-03-2008
Сообщений: 66
Профиль

Re: Скрипты

Вродебы можно.
Я не знаю спроси у geysera.

Добавлено спустя 47 секунд:
Отправь ему ЛС с этим вопросом.


ONI-forever

Оффлайн

 

#3 01-04-2008 20:34:19

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Это не сюда. Это в форум <ковыряния в игре>. Телепортировать самого персонажа нельзя. Можно только задать оболочку. Он будет драться, как TCTF, но против тебя. В таком случае помогает <change team>. В темах всё есть. Посмотри. Чтобы за тобой ходили, тоже можно, но у меня так и не получилось в аэропорту страйкера, (в оболочке TCTF) которого я переманил на свою сторону, заставить за собой ходить.


Это... это печально...

Оффлайн

 

#4 04-04-2008 10:00:35

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Телепортировать самого персонажа нельзя."
Смешной ты, Gelo. А chr_teleport? А chr_location?

"Можно ли например Чёрного TCTF поместить во 2 уровень, где его недолжно быть?"
Это можно провернуть только в Anniversary Edition, посредством chr_set_class и т.п.
"Т.п." - потому что иногда удобнее хачить бинарники: http://wiki.oni2.net/CHAR

"И как сделать так чтобы определённый оппонент ходил за тобой (как напарник)!"
Оппонент, естественно, как напарник ходить не будет, а будет тебе морду бить...
Скриптить напарников сложно, гораздо проще хачить http://wiki.oni2.net/NEUT


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#5 05-04-2008 08:15:15

VenomMan (муж.)
Страйкер
Откуда: Кумертау
Регистрация: 21-03-2008
Сообщений: 66
Профиль

Re: Скрипты

А кто может сказать как заменять персонажей?
Что для этого писать или изменять надо?
:)


ONI-forever

Оффлайн

 

#6 09-04-2008 08:50:29

Cursor (муж.)
Ликвидатор
Откуда: Верхний город
Регистрация: 15-11-2007
Сообщений: 954
Профиль

Re: Скрипты

Смотри "учебник по скриптированию".


Молодыми умирают лучшие.

Оффлайн

 

#7 10-04-2008 20:48:56

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

geyser написал(а):

"Телепортировать самого персонажа нельзя."
Смешной ты, Gelo. А chr_teleport? А chr_location?

"Можно ли например Чёрного TCTF поместить во 2 уровень, где его недолжно быть?"
Это можно провернуть только в Anniversary Edition, посредством chr_set_class и т.п.
"Т.п." - потому что иногда удобнее хачить бинарники: http://wiki.oni2.net/CHAR

"И как сделать так чтобы определённый оппонент ходил за тобой (как напарник)!"
Оппонент, естественно, как напарник ходить не будет, а будет тебе морду бить...
Скриптить напарников сложно, гораздо проще хачить http://wiki.oni2.net/NEUT

ДА Я ВООБЩЕ СМЕШНОЙ! Вот только я и имел в виду, что из 1 во 2 уровень нельзя переместить. ЭТО, МЕЖДУ ПРОЧИМ, ВЫ МНЕ И ГОВОРИЛИ! А в тех командах, которые ты показывал, знаю только одну, но не знаю, как применить. Как узнать, куда именно телепортируешь? И кстати, напарник не будет морду бить, если его задобрить одной командой....


Это... это печально...

Оффлайн

 

#8 21-04-2008 11:46:14

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

А нельзя просто сделать так, что бы у аппанента было какое нибуть сообщение для тебя! И пока ты не нажмёш контрол и непоговоришь с ним, он буде ходить за тобой????!

Оффлайн

 

#9 23-04-2008 09:22:56

VenomMan (муж.)
Страйкер
Откуда: Кумертау
Регистрация: 21-03-2008
Сообщений: 66
Профиль

Re: Скрипты

Я не знаю!?


ONI-forever

Оффлайн

 

#10 23-04-2008 18:31:17

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

Ser написал(а):

А нельзя просто сделать так, что бы у аппанента было какое нибуть сообщение для тебя! И пока ты не нажмёш контрол и непоговоришь с ним, он буде ходить за тобой????!

См. выше: "Скриптить напарников сложно, гораздо проще хачить NEUT"
NEUT определяет как "разговоры", так и полноценное "хождение за".


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#11 24-04-2008 19:09:00

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Как сделать так, что бы камера во время заставок было  свободной т. е. такой же как непосредственно во время игры????!
Ну например едит на мотике конока, и как сделать так что бы камеры была в стандартном положении (позади коноки, и соответствено следовала за конокой)!?? Пробовал некоторые команды с "cm_" удалять сильно не помогло(( Чё нужно сделать??

Оффлайн

 

#12 24-04-2008 22:38:39

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

Если удалить все команды с приставкой cm_, то камера будет волочиться за Конокой как миленькая. Если кое-какие недоудалить - возможны варианты.
Ещё можно в любой момент вызвать cm_reset, что прекращает текущую анимацию камеры и устанавливает её в игровой режим.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#13 25-04-2008 09:26:25

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

НЕт, когда я все камеры удалил у мя была камера которая начинается при первой анимации, и оставалась так доконца!! и кстати за что эта камера отвечает cm_wait?? Это привязка камеры к какой-то анимации?? И какак пишется команда камеры, которая волочится за коноко???!

Оффлайн

 

#14 25-04-2008 13:15:24

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

geyser написал(а):

"Телепортировать самого персонажа нельзя."
Смешной ты, Gelo. А chr_teleport? А chr_location?

"Можно ли например Чёрного TCTF поместить во 2 уровень, где его недолжно быть?"
Это можно провернуть только в Anniversary Edition, посредством chr_set_class и т.п.
"Т.п." - потому что иногда удобнее хачить бинарники: http://wiki.oni2.net/CHAR

"И как сделать так чтобы определённый оппонент ходил за тобой (как напарник)!"
Оппонент, естественно, как напарник ходить не будет, а будет тебе морду бить...
Скриптить напарников сложно, гораздо проще хачить http://wiki.oni2.net/NEUT

А каким образом, всмысле хачить?? Зашёл по ссылке вижу наименование цифр, в них закадирован сам объект с его функциями??
И мне нужно просто найти нужную кадировку и скопировать из одного уровня в другой (который хочешь)????

Добавлено спустя 6 минут 23 секунды:
И скинь плиз сцылку на кач программ нужных для редактирования, а то с того сайта не пойму где качать!!! ))

Оффлайн

 

#15 25-04-2008 13:30:42

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"НЕт, когда я все камеры удалил у мя была камера которая начинается при первой анимации, и оставалась так доконца!"
Ну, ежу понятно, что ты удалил не все камерные команды, а все, кроме первой камерной анимации. Так что ищи дальше.

"за что эта камера отвечает cm_wait? Это привязка камеры к какой-то анимации?"
Эта штука выдерживает паузу до окончания предыдущей камерной команды.
Имеет смысл только после анимации, интерполируемой за ненулевое время.

"И какак пишется команда камеры, которая волочится за коноко?"
cm_reset, блин.

"мне нужно просто найти нужную кадировку и скопировать из одного уровня в другой (который хочешь)?"
С челами (CHAR) это примерно так и происходит, да. Копируешь из одного BINACJBOCharacter.oni в другой.
Однако надо следить за анонсируемым размером следующего CHAR и за полным размером коллекции OBJC.
Пока что кое-какие инструкции по CHAR есть тут: http://wiki.oni2.net/AE:AddCHAR

NEUT хачить труднее, ибо там надо не тупо копировать, а целенаправленно изменять.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#16 02-05-2008 06:08:04

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Я на сайти wuki.oni2.net увидел скришот программы Edit Neutral Behavoir, тока непонял где скачать, скиньте плиз ссылку!!))
И кстати если я глобализовал например уровень, то я из него уже могу просто копировать чаров например: ai2_spawn... , в другой урвень??!
И ещё как мне узнать координаты старта каждого схранения, это для того что бы я мог телепортировать чаров в это место!!!?

Оффлайн

 

#17 02-05-2008 12:20:02

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Я на сайти wuki.oni2.net увидел скришот программы Edit Neutral Behavoir, тока непонял где скачать, скиньте плиз ссылку!!))"
Это где это ты такое удивел? "Behavoir" какой-то, "wuki"... Понятия не имею. Первый раз слышу. Скинь плиз ссылку.

"И ещё как мне узнать координаты старта каждого схранения" В английской версии вбиваешь с консоли where
Или пользуешься списком/смотрелкой флагов:
http://geyser.oni2.net/OBD/BINA/OBJC/FLAG/OrderedList/
http://geyser.oni2.net/OBD/BINA/OBJC/FLAG/QuickList/

"И кстати если я глобализовал например уровень" Что такое "глобализовал уровень"???????

"то я из него уже могу просто копировать чаров" Что такое "копировать чаров"???????


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#18 02-05-2008 12:49:43

Mifistos (муж.)
Агент TCTF
Регистрация: 21-04-2008
Сообщений: 131
Профиль

Re: Скрипты

geyser написал(а):

В английской версии вбиваешь с консоли where

а так ето можно любого места координаты найти?


Маи убила Мукада потому, что завидовала ему как хакеру.

Оффлайн

 

#19 02-05-2008 13:01:46

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

А как записать в скриптах правильно строчку с координатами x y z что бы телепортировать чара??)

Оффлайн

 

#20 02-05-2008 13:09:52

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

Телепортировать в любую точку можно только по индексу (а с индексами надо осторожно).
chr_location(i, x, y, z), где i - индекс чела, x, y, z - координаты. Можно без скобок и запятых.
Если известен "флаг" в нужном месте, то chr_teleport(n, f), где n - имя чела, f - номер флага.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#21 02-05-2008 13:34:25

Mifistos (муж.)
Агент TCTF
Регистрация: 21-04-2008
Сообщений: 131
Профиль

Re: Скрипты

2 geyser: 
а как узнать ети координаты???


Маи убила Мукада потому, что завидовала ему как хакеру.

Оффлайн

 

#22 02-05-2008 14:15:50

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

т.е. например вот так??:
chr_teleport Lobby_TCL_1 0120
chr_teleport Lobby_TCL_2 0120
а эти флаги в какие места телепортируют например 0000 к месту начала игры, перса??

Оффлайн

 

#23 02-05-2008 19:26:46

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Попробовал первый способ, координаты узнал, но как записать?( попробовал вот так:
chr_location konoko I=011 x=43.278500 y=13.500000 z=65.845528
неполучилось(

Оффлайн

 

#24 02-05-2008 20:11:18

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Ух ты, а как координаты узнать?


Это... это печально...

Оффлайн

 

#25 02-05-2008 22:35:57

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

@ Gelo + Mifistos: Ну уж нет, повторять третий раз подряд, в одной и той же ленте... не дождётесь.

@ Ser :
"а эти флаги в какие места телепортируют например 0000 к месту начала игры, перса?"
Нет, не "например". Номера флагов ничему такому не соответствуют.
В списках, которые я тебе показал, есть вся нужная информация.

"chr_teleport Lobby_TCL_1 0120" Писать 0102 вместо 102 - странно, а так - правильно.

"chr_location konoko I=011 x=43.278500 y=13.500000 z=65.845528" Садись, двойка.
chr_location(0, 43.2785, 13.5, 65.845528) или: chr_location 0 43.2785 13.5 65.845528

А что касается цифры 11 (откуда она?) я скажу вот что (и повторять не буду) :

Берёшь, например, крыши. Там всегда есть Коноко плюс 3 чела (первые два нинзи и снайпер - они споунятся всегда, первыми).
Для Коноко индекс - ноль, так как она появляется вообще раньше всех.
Для первого нинзи индекс - единица, так как он первый после Коноко.
Для второго нинзи индекс - двойка, так как он - следующий в списке.
Потом идёт снайпер, с индексом тройка. Дальше - как получится.
На последней сохранке, например, индекс Мукада - четвёрка.
Почему? Потому, что те трое тоже споунятся, и раньше Мукада.

Если после Мукада заспоунить комгая какого-нибудь - будет пятым.
Но если сначала Мукада "убить совсем" (то есть довести до трупа)?
Тогда комгай встанет не после Мукада, а вместо - снова четвёртым.
А если убить первого ниньзю? Тогда комгай встанет вместо него.
То есть порядок будет такой: Коноко, комгай, нинзя, снайпер, Мукад.

А если вдруг снайпер подох на момент добавления комгая, а остальные живы?
Тогда, естественно, комгай не может быть 4-м (там Мукад), и 1-м (там нинзя).
Однако, 3-м - может, и радостно этим 3-м становится (а не 5-м). И так всегда.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#26 03-05-2008 03:26:52

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

так, Geyser, значит, ссылку давал... Поищем... Небось, как всегда на английском.


Это... это печально...

Оффлайн

 

#27 03-05-2008 06:08:10

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Слушай спасибо гейсер)) Получилось с телепортами)) Осталось разобраться какие индексы к каким персам относятся, но это я уже сам)
А можно задать аппоненту такую команду что бы аппонент не телепортировался в заданную точку, а бежа к этой точке!!????

Оффлайн

 

#28 03-05-2008 20:20:25

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты


Это... это печально...

Оффлайн

 

#29 04-05-2008 23:25:54

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

а может это сюда?

Мне лично пофиг. Двинуть ленту всегда успеем.

так, Geyser, значит, ссылку давал... Поищем... Небось, как всегда на английском.

Нет, не ссылку, и нет, не на английском... если не считать, конечно, слова "where" :glare:

Осталось разобраться какие индексы к каким персам относятся, но это я уже сам)

Ну-ну, разбирайся. Только не удивляйся, если Они вдруг падать станет.
Я уже несколько раз говорил, что индексы по умолчанию динамические.
То есть индекс чела зависит от всей предыстории споунов и смертей...

А можно задать аппоненту такую команду что бы аппонент не телепортировался в заданную точку, а бежа к этой точке

Да, ребята, ну вы и пишете... Опечатки простить могу, а вот ошибки сильно раздражают... Тебе нужна команда ai2_movetoflag


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#30 05-05-2008 00:05:16

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Всё, Geyser, увидел про координаты. Только вот ты говорил <в английской версии>, а если у меня русская? Как быть?


Это... это печально...

Оффлайн

 

#31 05-05-2008 00:17:53

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

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

Но в данном случае вам повезло. Есть альтернатива.
Вместо where можешь вбить chr_debug_characters=1


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#32 05-05-2008 00:24:19

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Фух... Слава богу!

Добавлено спустя 1 минуту 13 секунд:
Спасибо


Это... это печально...

Оффлайн

 

#33 05-05-2008 12:40:45

Mifistos (муж.)
Агент TCTF
Регистрация: 21-04-2008
Сообщений: 131
Профиль

Re: Скрипты

geyser написал(а):

Вместо where можешь вбить chr_debug_characters=1

Спасибо :)


Маи убила Мукада потому, что завидовала ему как хакеру.

Оффлайн

 

#34 05-05-2008 12:53:49

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

"ai2_movetoflag Roof_Striker_3 0130" написал такую команду а чар к этой точке не пошёл(( Как же правильно написать. Флаг такой есть, проверил.   
Пробовал по разному и так: "ai2_movetoflag 0130 Roof_Striker_3" и так: "ai2_movetoflag 9 0130" Но невышло(

Оффлайн

 

#35 05-05-2008 13:29:50

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Пробовал по разному и так: "ai2_movetoflag 0130 Roof_Striker_3" и так: "ai2_movetoflag 9 0130""

Зачем пробовать "по-разному", когда известно, как надо? Только так: ai2_movetoflag Roof_Striker_3 0130
(Я обычно пишу 130 вместо 0130, но 0130 тоже работает, так что это - странновато, но не возбраняется.)

"чар к этой точке не пошёл(( Как же правильно написать. Флаг такой есть, проверил."
Ты правильно написал. Просто по дороге к флагу есть закрытые двери. А так нельзя.
Сделай на пробу door_ignore_locks=1
И для наглядности: ai2_showpaths=1

Mifistos написал(а):

geyser написал(а):

Вместо where можешь вбить chr_debug_characters=1

Спасибо :)

А ещё можете просто-напросто менять движок на английский, на время.
Русские шрифты не будут отображаться, но ведь вам они и не нужны...
Вам нужно вбить с консоли where и прочитать ответ - а он как раз будет.

Единственное - если у вас чисто русский persist.dat - будет трудно искать сохранки.
Для этой цели полезно иметь английский persist.dat, и использовать вместе с движком.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#36 05-05-2008 15:13:25

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Спасибо большое geyser подействовало))
1. К месту влага чар идёт, а как сделать что бы он бежал к флагу??)!
2. И ещё вопрос, а как заставить чара идти не на флаг а на координаты которые ты прописал, например:  43.2785 -13.500000 -65.845528!
3. И как сделать так, что бы идти на флаг была главной командой!?? Тоесть если бежит Синдикат, то привиде меня функция "ai2_movetoflag" отменяется и сидикат начинает отоковать меня, как сделать так, что бы он, ни на что ни обращал внимание и и строго выполнял команду??!)

Заранее спасибо!)

Оффлайн

 

#37 05-05-2008 15:36:59

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Да, кстати, чтоб не писать по тыщу раз функцию просмотра координат, можно просто один раз её написать, как скрипт. Всё, я открыл Америку! И еще: Geyser, ты дал ссылочку на список флагов. Там я увидел много, очень много цифр! Это, наверное, координаты. Но там пояснений нет. Как разобраться с этими флагами?
P.S. Я с координатами немного разобрался... Теперь я властелин пространства! ХА ХА ХА! Вот только почему-то чуваки не всегда  перемещаются туда, куда я хочу. Они бывают, на крыше появляются, как я хочу. Бывает, на земле стоят. Может, с номером я прокосил? Но нет, я был свидетелем, когда персы один раз появились на крыше, но со следующим запуском оказались на земле. В чем мой косяк?

Добавлено спустя 2 минуты 25 секунд:
И еще... Geyser, а движок много весит?


Это... это печально...

Оффлайн

 

#38 05-05-2008 15:54:27

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

2) Никак. Я уже неоднократно говорил, что далеко не всё можно делать, обращаясь к челам по индексу.
1) ai2_setmovementmode Roof_Striker_3 run
3) Например вот так: ai2_makeignoreplayer Roof_Striker_3 1
Индифферентным "ко всему" его тоже можно сделать, но тогда он даже встать не сможет, если что.
А вообще такого рода штучки надо делать на уровне ресурсов BINACJBO*, как и многое другое...

"сидикат начинает отоковать меня" ты нарочно? это неприятно, учти.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#39 05-05-2008 16:07:02

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Спс) Но у меня странная штука: я пару раз указывал команду ai2_movetoflag Roof_Striker_3 130 т.е. заходил в игру смотрел как чел ходит по маршруту) Но потом я удалил команду это 100%. Зашёл в игру а у меня продолжил ходить по этому маршруту- это что идёт запоминание флагов???!

Насчёт флагов! Получается изначально каждый чар  запрограммирован идти к каждому влагу! Тоесть если встретится припятствие чар заранее знает как его обойти как куда свернуть и.т.д. это я заметил по ai2_showpaths=1. А свои личные координаты игрой непредусмотрены, и чар бы может и двигался к заданной точке но несмог бы обходить препятствия и.т.д.???! Я правильно понял geyser?!

Оффлайн

 

#40 05-05-2008 16:13:05

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"персы один раз появились на крыше, но со следующим запуском оказались на земле. В чем мой косяк?"
В том, что индексы много от чего зависят, и при отсутствии контроля могут ложиться иначе от раза к разу.
А ты их "угадываешь". В этом весь косяк, и я тебе уже об этом сказал, буквально совершенно недавно.

"Но там пояснений нет. Как разобраться с этими флагами?"
Флаг имеет номер, 3 координаты плюс угол (поворот вокруг вертикальной оси).
Этого достаточно для работы, так что разбирайся с этим сам. Пояснять нечего.

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

"а движок много весит?" полтора метра, и это видно до закачки: http://geyser.oni2.net/EXE/pc.east
Блин, да что я говорю?! Разве ежу не понятно, что он весит примерно столько же, сколько Букин?
На такие ленивые вопросы, учти, буду впредь отвечать молчанием или смайликом. Ибо нефиг :glare:

Добавлено спустя 5 минут 14 секунд:
"Зашёл в игру а у меня продолжил ходить по этому маршруту- это что идёт запоминание флагов???!"
Такого не бывает. Долой мистику. Скорее всего, ты просто не спас скрипт, и поспешил с выводами.

Насчёт флагов! Получается изначально каждый чар  запрограммирован идти к каждому влагу! Тоесть если встретится припятствие чар заранее знает как его обойти как куда свернуть и.т.д. это я заметил по ai2_showpaths=1. А свои личные координаты игрой непредусмотрены, и чар бы может и двигался к заданной точке но несмог бы обходить препятствия и.т.д.???! Я правильно понял geyser?!

Не знаю, так как я не понял, что ты сказал. Попробуй ещё раз, только выражай свою мысль поаккуратнее. Копаться в чужом потоке сознания мне влом.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#41 05-05-2008 16:37:45

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Блин чё-то я немогу написать правильно что бы он бежал!(((

вот мой все строки:

restore_game

ai2_showpaths=1
door_ignore_locks=1
ai2_spawn Roof_Striker_3
ai2_spawn Sec_BOL_1
chr_changeteam Roof_Striker_3 TCTF
chr_set_class 1 TCTF_lite_blackops_1
sleep 100
chr_location 1 412.259552 -27.00000 25.465523

ai2_setmovement mode Roof_Striker_3 run
ai2_movetoflag 0130 Roof_Striker_3

всё работает кроме "ai2_setmovement mode Roof_Striker_3 run"

"Такого не бывает. Долой мистику" - я проверел опять то же самое (бегает по флагу 130)!
я удолял!! И всё равно!!
Команда у меня была только  в 1-сохранение после restore_game! После её удоления таже фигня)
Сам проверь если не веришь.

Оффлайн

 

#42 05-05-2008 17:07:25

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Сам проверь если не веришь."  Не буду. Это ты не напроверялся. Оньку перезагружать не пробовал небось?

"ai2_setmovement mode Roof_Striker_3 run"  Сорри, опечатался: ai2_setmovementmode

"немогу" "проверел" "удолял" "вот мой все строки" :glare:
Да уж... какой уж там английский, при таком-то русском.

"ai2_movetoflag 0130 Roof_Striker_3"
Ты что, издеваешься?


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#43 05-05-2008 17:18:46

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Чар терь бегает) Но только стоит чару отвлечься (при виде синдиката) как после этого он идёт к флагу шагом(((! Как это исправить

Оффлайн

 

#44 05-05-2008 17:22:04

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

Минутку, а вот это что такое?
"ai2_movetoflag 0130 Roof_Striker_3"
Ты что, издеваешься? =)

Чар терь бегает) Но только стоит чару отвлечься (при виде синдиката) как после этого он идёт к флагу шагом(((! Как это исправить

Никак. То есть не то чтоб совсем никак, но я не буду давать инструкций, т.к. делать это скриптами глупо.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#45 05-05-2008 17:36:19

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Минутку, а вот это что такое? Нет я не издеваюсь это я спецально для тебя написал, но сейчас этой строчки нет! и всё норм)) Почему скриптом глупо?? если это можно реализовать, то почему бы и нет!!

И кстати как мне сделать так что бы одна команда начала работать когда завершиться другая. Ну например в 3 -уровне, если Барабас сдохнет то появятся 2 каких-нибуть чара, или у тя хп ввостановится и.т.д. пробовал да всё бестолку))!

Оффлайн

 

#46 05-05-2008 18:20:35

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Почему скриптом глупо?? если это можно реализовать, то почему бы и нет!!"
Потому. На одних скриптах это - тяжёлая логика, которую мне влом объяснять.

"пробовал да всё бестолку))!" Пробуй дальше. Например, chr_wait_health
К тому же, в данном случае, смерть Барабаса вызывает функцию rocket


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#47 05-05-2008 18:59:14

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Слушай, я телепортировал 2 TCTF которые ещё в ролике учавствуют(помниш наверное), в 3 уровень к барабасу, Барабаса лупят на Ура!)
Но проблема указываю флаг к нему не идут, думал что к одному флагу не могут все идти, поставил для каждого разные флаги, не идут..((
Написал вроде правильно!)

ai2_spawn BombTCTF1
ai2_spawn BombTCTF2

chr_changeteam BombTCTF1 TCTF
chr_changeteam BombTCTF2 TCTF

chr_location 3 271.595032 -27.00000 64.018921
chr_location 4 247.827652 -27.00000 -7.101126

ai2_movetoflag 0109 BombTCTF2
ai2_setmovementmode BombTCTF2 run

ai2_movetoflag 0135 BombTCTF1
ai2_setmovementmode BombTCTF1 run

или это из-за того что они из ролика и негодятся для более сложных команд??!

Оффлайн

 

#48 05-05-2008 19:14:49

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"ai2_movetoflag 0109 BombTCTF2"
Мне это уже надоело. Разуй глаза!
Ты же знаешь, как правильно :glare:
ai2_movetoflag BombTCTF2 0109
Блин!

Между прочим, английский движок тебя бы обругал...
Очень много скриптовых ошибок выводятся на консоль.
Именно поэтому советую пользоваться английским EXE.

Слушай, я телепортировал 2 TCTF которые ещё в ролике учавствуют(помниш наверное), в 3 уровень к барабасу, Барабаса лупят на Ура!)

"Слушай", эта фраза мне ровным счётом ничего не говорит. Ни фига ты никого не телепортировал "в 3 уровень", а рассчитывать на то, что я "помню" каких-то "TCTF", которые "ещё участвуют" в каком-то "ролике" - это просто грубость или глупость, я даже не знаю что хуже.
С какой стати ты думаешь, что я обязан понимать, что ты имеешь в виду, когда ты так туманно выражаешься? Я, например, думаю, что лучше-ка я не буду тратить время на людей, которые не могут связно объяснить, что их беспокоит. На фига мне читать чужие мысли? Блин!


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#49 05-05-2008 19:33:34

Ser
Охранник
Регистрация: 23-03-2008
Сообщений: 32
Профиль

Re: Скрипты

Блин реально извени Geyser, и правду глупае ошибки!( Можно тогда и последний вопрос?!)
2 TCTF  в том же уровне вставил на первый этаж! Поставил и написал соответствующие команды после строчки "restore_game"
Всё нормально они появляются, но только тогда, когда я перезапускаю игру и запускаю 2 сохранение, если начинать с 1 сохранения то ничего не получается, пробовал прописывать до строчки "restore_game" но не помогло((

Оффлайн

 

#50 05-05-2008 20:26:28

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"( Можно тогда и последний вопрос?!)"
Вот уж действительно последний. Учите английский, люди.
И добро пожаловать в коммьюнити с мировым масштабом...
=D

"пробовал прописывать до строчки "restore_game" но не помогло"
До или после команды restore_game - это ведь в данном случае совершенно пофиг.
restore_game всего-навсего восстанавливает параметры, сохранённые в persist.dat
А это - положение игрока, его инвентарь, и пара переменных... Остальное - мимо.

"они появляются, но только тогда, когда я перезапускаю игру и запускаю 2 сохранение, если начинать с 1 сохранения то ничего не получается"
Это потому, что ты обращаешься к ним по индексам, а после сохранки 1 индексы зависят от того, что произошло на этой самой сохранке 1.
Я же много раз говорил, что индексы занимаются заспоуненными челами, и освобождаются только тогда, когда челы становятся трупами.
Это сложная динамика, и довольно капризная, потому что, например, мёртвый чел в поле зрения игрока в труп не превратится никогда.
Чтобы хоть как-то контролировать этот процесс, полезно всем челам делать chr_death_lock, а в подходящие моменты делать ai2_reset


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#51 06-05-2008 03:38:03

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

То, что с координатами, это была одна ссылка, а во второй там обычные цифры. Ну, вот, допустим, что вы тут обсуждаете. Пишете, типа, такому-то персу бежать к флагу 109. Что за флаг 109 ? Или это и есть координаты, мол "0"-высота, "1"-где находится, "9"-куда повернулся?
И еще: команда chr_death_lock что делает? Не позволяет трупам исчезнуть и тем освободить номер? Я вроде бы начал соображать, что ты мне говорил про номера. И ai2_reset  означает?


Это... это печально...

Оффлайн

 

#52 06-05-2008 23:49:06

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"То, что с координатами, это была одна ссылка, а во второй там обычные цифры."

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

Имея номер, нет ничего проще, чем сделать chr_teleport 0 109. Всё и узнаешь.
Есть и более удобные способы исследовать флаги с доступными номерами...
Это, например Flag Viewer (ссылку давать не буду), или, например, Oni Menu.
http://geyser.oni2.net/OniTeamArena/tools/

"команда chr_death_lock что делает? Не позволяет трупам исчезнуть и тем освободить номер?"
Номер чела освобождается не когда исчезает труп, а когда исчезает чел и появляется труп.
Эта замена происходит "у Коноки за спиной", и chr_death_lock предотвращает именно её, да.

"ai2_reset  означает?" самый простой способ убрать всех на фиг, кроме игрока (и пред-споуненных челов if any).
Если тебе надо, чтобы кто-то остался - ai2_reset не подойдёт. Тогда надо убирать нужных челов индивидуально.
Мёртвый чел (не-до-труп) убирается командой chr_delete(ImjaChela), но только после chr_health(ImjaChela, 1).
Живого чела можно убрать той же командой chr_delete(ImjaChela). Это тоже освобождает индекс данного чела.
В случае индивидуальных chr_delete надо внимательно следить за тем, какой индекс освобождает каждый чел.
Потому что добавляемые челы занимают первую свободную на момент добавления "дырку" (свободный индекс).

Если не пользоваться chr_death_lock и chr_delete, то уследить за индексами нельзя, т.к. челы исчезают втихаря.
В этом случае всё равно можно юзать ai2_reset (всех убрать). Ну и ai2_spawnall - это ведь тоже своего рода "reset".
ai2_spawnall споунит всех доступных челов в порядке перечисления в BINACJBOCharacter, т.е. их индексы известны.
Лишних можно сразу убрать. Не следует забывать о пред-споуненных челах, которые есть в главах 4, 6, 7, 8, 9 и 10.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#53 07-05-2008 20:39:56

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Я знаете, что заметил!? Страйкеры Муро не любят! Они только и ждут подходящего момента, чтоб ему то пинка, то подножку подставить. Знаете, как я в этом убедилися? Я включил режим разработчиков, загрузил самую первую заставку <аэропорта> и начал нажимать энтр. Мне удалось установить камеру прям за спиной у Коноки. Она слезает с мотоцикла, говорит: <Муро, козел, меня подожди!>. И как только она это сказала, можно бежать вперед. Почти добежал до Муро и тут вижу, что тот упал. Ну, думаю, глюк. И как только заставка закончилась, меня телепортировали в исходную точку. Но зеленый страйкер почему-то вбежал в здание. Я за ним.  И вижу замечательную картину: Муро пытается убежать, а страйкер ему дает ТАКИЕ пинки под зад, что после очередного пинка глава синдиката аж подлетела и упала на ковер. А потом, зараза, взял и исчез! Зеленый страйкер был очень огорчен. Но, увидев молодое тело Маи, сразу же обрадовался. Ну дальше как обычно: "Девушка, а что вы делаете сегодня вечером. А давайте я вас провожу. Ой, какая вы буйная. Бееее",-сдох.

Добавлено спустя 4 минуты 21 секунду:
Да, и еще: почему здесь Муро дерется, как лох? Ни одного суперудара, как цивилло прям, или страйкер.
Ну и последний вопрос: как заставить врагов перепрыгивать препятствия? А то провалились в маленькую ямку и бегут на меня, упершись в уступ, который им по пояс.


Это... это печально...

Оффлайн

 

#54 08-05-2008 20:56:33

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Да, кстати, Geyser, в "биолабораторной" арене (вроде бы скачивал тут http://geyser.oni2.net/OniTeamArena/WIP/ ) я ничего не делал. Там действительно нельзя убивать камикадзе. В этом я уверен.
И еще: в арене конец вообще есть? Или всё бесконечно?

Добавлено спустя 1 минуту 35 секунд:
P.S. Крыши-супер. В аэропорту игра вылетела. Буду дальше играть. Но всё-же конец есть?


Это... это печально...

Оффлайн

 

#55 08-05-2008 21:12:36

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"И еще: в арене конец вообще есть? Или всё бесконечно?"

Нет, конечно. То есть "да, бесконечно." То есть - как посмотреть - что такое "конец"?
Арена есть соревнование двух команд, на очки либо на время, в определённом месте.
Каждый скрипт есть бесконечное чередование нескольких арен на данном уровне...

"Там действительно нельзя убивать камикадзе. В этом я уверен." ... Ну НЕПРАВДА это!
В ареновых скриптах НЕТУ катсцены с башней. Если ты её видишь - это твой косяк.

"вроде бы скачивал тут" Со словами "вроде бы" шли бы вы, ребята, подальше... :glare:

"В аэропорту игра вылетела. Буду дальше играть."
В аэропорту есть проблема, независимая от Эдишн. Глюк самого движка...
Что же касается Эдишн, советую пересесть на новогоднюю, для верности.
.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#56 08-05-2008 21:16:07

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Я со стандартной Oni играл в аэропорту.
Ну в лаборатории НЕ МОЖЕТ БЫТЬ МОЙ КОСЯК! Я распаковал архив, эти 2 папки засунул куда надо. Вот завтра возьму и заново сделаю. Для верности.


Это... это печально...

Оффлайн

 

#57 08-05-2008 21:37:29

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: Скрипты

"Я со стандартной Oni играл в аэропорту." Хорошо, осталось только понять, в каком именно аэропорту...

"Я распаковал архив, эти 2 папки засунул куда надо." ... Ну и что?
Я ведь знаю, что в аренных папках ничто не мешает убить бомбера.
Более того, в той версии, что ты скачал, он даже не взрывается...
Более того, там по идее даже не Арена вовсе, а игра в салочки.
Так что тщательнее надо тестить, особо тщательнее, ребята.

Раз уж ты ленишься дать точные ссылки (а я без них разговаривать отказываюсь), просто ответь Да или Нет:
Аэропорт - отсюда? http://geyser.oni2.net/OniTeamArena/WIP/ABPbis.zip
Био-лаба - отсюда? http://geyser.oni2.net/OniTeamArena/WIP/IGMD_OTA2.ZIP
Да, и насчёт падания в аэропорту - не изволь беспокоиться, лучше поставь себе фиксанутый англ. движок.
http://geyser.oni2.net/TEMP/cachefix/Oni.exe


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#58 09-05-2008 20:31:25

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Био лаба-да. У Аэропорта название другое. Там еще был текстовой файл. А в том архиве, что ты дал, никакого текста нет.


Это... это печально...

Оффлайн

 

#59 09-07-2008 09:43:06

Mukade (муж.)
Страйкер
Откуда: Петрозаводск
Регистрация: 01-07-2008
Сообщений: 65
Профиль

Re: Скрипты

люди! скоро выложу свой 1 скрипт! ждите!


"я чувствую, как он крадётся от тени к тени..."

Оффлайн

 

#60 09-07-2008 21:40:48

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Ааа!!! Прям горю желанием увидеть! Прям каждый день считаю. Но вообще-то выкладывать нужно сюда:             Вываливаем и обсуждаем скрипты


Это... это печально...

Оффлайн

 

#61 10-07-2008 13:12:20

Mukade (муж.)
Страйкер
Откуда: Петрозаводск
Регистрация: 01-07-2008
Сообщений: 65
Профиль

Re: Скрипты

ну ну, считай считай, только не усни пока будешь считать

дак я только предупредил тут, а там выложу!


"я чувствую, как он крадётся от тени к тени..."

Оффлайн

 

#62 10-07-2008 21:41:31

Gelo (муж.)
Глава ленивых лентяев
Откуда: г. Новороссийск
Регистрация: 05-01-2008
Сообщений: 718
Профиль

Re: Скрипты

Да я уснул сразу же, когда посчитал "0". Ну ладно. Закрываем флуд, оффтоп и прочюю дрянь


Это... это печально...

Оффлайн

 

#63 19-07-2008 19:04:00

Cursor (муж.)
Ликвидатор
Откуда: Верхний город
Регистрация: 15-11-2007
Сообщений: 954
Профиль

Re: Скрипты

Мож какой скрипт мне написать? Могу сюжетный, или просто бойню.(получше моих пас скриптов битвы Муро с Маи)


Молодыми умирают лучшие.

Оффлайн

 

#64 20-07-2008 03:15:42

Мih@ 
Регистрация: 27-08-2006
Сообщений: 826
Профиль

Re: Скрипты

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

Cursor, пиши, конечно. ) Главное, чтоб интересно было... И грамотно. )

Оффлайн

 

#65 20-07-2008 11:24:03

Mukade (муж.)
Страйкер
Откуда: Петрозаводск
Регистрация: 01-07-2008
Сообщений: 65
Профиль

Re: Скрипты

Cursor
напиши пародию какого нибудь фильма в Они дизаине (в скрипте)
прикольно будет))


"я чувствую, как он крадётся от тени к тени..."

Оффлайн

 

#66 20-07-2008 18:35:37

Cursor (муж.)
Ликвидатор
Откуда: Верхний город
Регистрация: 15-11-2007
Сообщений: 954
Профиль

Re: Скрипты

Мih@ написал(а):

Cursor, пиши, конечно. ) Главное, чтоб интересно было... И грамотно

Напишу скрипт тренировка маи по моему фанфику, надеюсь читали, гейсер говорил что в эдитион положит, но новой версии так и нет

Mukade написал(а):

напиши пародию какого нибудь фильма в Они дизаине

Да ну, не интересно так будет.


Молодыми умирают лучшие.

Оффлайн

 

#67 21-07-2008 12:47:17

Mukade (муж.)
Страйкер
Откуда: Петрозаводск
Регистрация: 01-07-2008
Сообщений: 65
Профиль

Re: Скрипты

или "ужасное и загадочное убийство в TCTF"

тоже прикольно))


"я чувствую, как он крадётся от тени к тени..."

Оффлайн

 

Board footer

© 2006-2024 Амэ & Mih@
ОНИмия – фан-сайт игры Oni
Движок форума - модифицированный PunBB