Online MUD игра АРДА

Общедоступные => Моя Арда => Тема начата: Visio aka Manch от 07.09.05, 15:10:15

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Visio aka Manch от 07.09.05, 15:10:15
сабж?:umnik:
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 07.09.05, 16:06:27
программа минимум:
драконий, сила, прозорливость, быстрота, выносливость, полет, невидимость. Я, впрочем, не скуплюсь обычно и на: доспех, подводное, инфразрение, эльфийская, а то и щит.
Некоторые (редко) запрашивали ажно (вкупе с этим) все щиты.

В общем есть обкаст на статы с вариациями добавок, если что те же щиты и приблуды можно и отдельно довесить.

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


Цитировать
сабж?

есть мнение, товарищи присяжные, что нас (пусть даже чайников) держат за ламеров - см.сабж.

Подробнее: все вбито (у меня в алиас, ~ы), а потом в триггер можно вбить.
Пример
алиас кди - каст драконьего на кого-то
алиас ксп - каст "сила предков" на кого-то
} алиас облок - кди;ксп ... на кого-то

Триггеры кто-то писал, потом юзал в таверне:
триггер сказал то-то - облок

Пардон за примитивизм, но в чем суть-то, Манч?

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Visio aka Manch от 07.09.05, 16:25:08
кто знает как сделать алиас/триггер для з***а
так чтоб я писал "обкаст манч" и он делал каст на все заклы на "%1", тоесть на меня.

И как такое сотворить на Жабе?
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Nanni от 07.09.05, 16:39:43
Хыхы.. а у соорденцев спросить слабо :(

#alias {обкаст} {кол драк %1;кол проз %1;кол сила %1;кол быстрот %1;кол вынос %1;кол эльфи %1;кол полет %1;кол добл %1;кол щит %1;кол досп %1;кол внутрен %1;кол предвид %1;кол подвод %1;кол нев %1;кол "огненный щит" %1;кол "ледЯной щит" %1}
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 07.09.05, 16:48:02
Жаба
на себя
#alias {фобк} {ко нем; кинв;винв;кди;ксп;кпроз;ко быстр;ко выносл;эльк;винв;кпол;кпод; кдос;ко щит; кзак;кмс;ктм;ко ист;кинф;кэфщ;камз;ксд;квл;квс;кшд;кшт;кдоб;кпред} {default}
и на других
#alias {облок} {кинв %1;кди %1;ксп %1;кпроз %1;ко быстр %1;ко выносл %1;эльк %1;кпол %1;кпод %1;кдоб %1; кдос %1;ко щит %1;кинф %1;dvm;улыб %1} {default}

пример
#alias {кди} {колд "драконий интеллект" %1} {default}
пример триггера
#action {^Вы слегка поглупели} {кди} {5} {default}
#action {%1 ГОВОРИТ ВАМ %2} {#bell} {5} {default}

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Barkett от 07.09.05, 17:43:40
Хехе, а триггерки-то запрещены правилами. БР побуждает игроков нарушать правила?
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 07.09.05, 17:51:29
п.1
Не используйте триггеры для того, чтобы говорить в общий канал (например,
поздравлять каждого с полученным уровнем).

п.6
6. Запрещены персонажи, производящие какие-либо действия при отсутствии
реально стоящего за ними человека (боты). То есть, вы не можете отправить
своего персонажа левелиться на триггерах или оставить его в таверне, чтобы
он говорил заклинания на каждого входящего, а сами уйти от компьютера.

Точнее надо быть - вышеупомянутые триггеры не подпадают под запреты, кроме как если Манч пропишет триггер на рекламу обкаста за 500 монет у крота с тикером, и уйдет на кухню ужинать.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 07.09.05, 21:53:23
Как я это реализовал на mmc:

$U::Cast = undef;
$U::TargetCast = undef;
@U::AllCast = ("сила пре",
              "драконий инт",
              "проз",
              "быс",
              "выносливость тро",
              "эльфийскаЯ кра",
              "щит",
              "пла",
              "пол",
              "видеть нев",
              "видеть маг",
              "видеть лов",
              "инф",
              "зака",
              "шкура дра",
              "шкура тро",
              "антимагическаЯ защ",
              "эфирный щит",
              "внутреннее теп",
              "доб",
              "подводное дых",
              "пре",
              "благословение огн",
              "нев",
              "тени мра",
              "дос",
              "ледЯной щит",
              "огненный щит",
              "мистическаЯ сфе",
              "электрощ");

sub NextCast($){
 if($U::Cast == $#U::AllCast){
   $U::Cast = 0;
   disable(CAST)
 }
 else{
   if($U::AllCast[$U::Cast] eq $_[0].$_[1]){
     $U::Cast++;
     if($U::TargetCast){
       sendl("cast \'$U::AllCast[$U::Cast]\' $U::TargetCast")
     }
     else{
       sendl("cast \'$U::AllCast[$U::Cast]\'")
     }
   }
 }
 return($U::Cast)
}

sub RepiteCast($){
 if($U::TargetCast){
   sendl("cast \'$U::AllCast[$U::Cast]\' $U::TargetCast")
 }
 else{
   sendl("cast \'$U::AllCast[$U::Cast]\'")
 }
 return($U::Cast)
}

alias{
 $U::Cast = 0;
 $U::TargetCast = "@_";
 enable(CAST);
 if($U::TargetCast){
   sendl("cast \'$U::AllCast[$U::Cast]\' $U::TargetCast")
 }
 else{
   sendl("cast \'$U::AllCast[$U::Cast]\'")
 }
} "обкаст";

trig { NextCast("сила пре") } 'Сила предков влилась в ваши жилы, вы стали сильнее\.$', "-n:CAST";

trig { NextCast("сила пре") } 'Мускулы \w+ налились силой\.$', "-n:CAST";

trig { NextCast("драконий инт") } 'Ваш интеллект повысилсЯ\.$', "-n:CAST";

trig { NextCast("драконий инт") } '\w+ выглЯдит умнее\.$', "-n:CAST";

trig { NextCast("проз") } 'Вы стали мудрее и прозорливее\.$', "-n:CAST";

trig { NextCast("проз") } 'В глазах \w+ зажегсЯ огонек мудрости\.$', "-n:CAST";

trig { NextCast("быс") } '\w+ \w+ ускорились\.$', "-n:CAST";

trig { NextCast("выносливость тро") } 'Ваша выносливость увеличилась\.$', "-n:CAST";

trig { NextCast("выносливость тро") } '\w+ выглЯдит более вынослив(?:ым|ой)\.$', "-n:CAST";

trig { NextCast("эльфийскаЯ кра") } '\w+ \w+ осветились эльфийской красотой\.$', "-n:CAST";

trig { NextCast("щит") } 'Аура голубоватой энергии окружила \w+\.$', "-n:CAST";

trig { NextCast("пла") } '\w+ \w+ повысилась\.$', "-n:CAST";

trig { NextCast("пол") } 'Вы поднЯлись над землей\.$', "-n:CAST";

trig { NextCast("пол") } '\w+, покачиваЯсь, взлетел(?:а|о)? в воздух\.$', "-n:CAST";

trig { NextCast("видеть нев") } 'Вы обрели возможность видеть невидимое\.$', "-n:CAST";

trig { NextCast("видеть маг") } 'Вы начали видеть голубое свечение вокруг магических объектов\.$', "-n:CAST";

trig { NextCast("видеть лов") } 'Теперь вы чувствуете ловушки\.$', "-n:CAST";

trig { NextCast("инф") } '\w+ получил(?:а|о|и)? способность видеть в темноте\.$', "-n:CAST";

trig { NextCast("зака") } 'Ваша кожа стала твердой, как камень\.$', "-n:CAST";

trig { NextCast("шкура дра") } 'Ваша кожа стала прочной, как шкура дракона\.$', "-n:CAST";

trig { NextCast("шкура тро") } 'Ваша кожа стала толстой, как шкура троллЯ\.$', "-n:CAST";

trig { NextCast("антимагическаЯ защ") } 'Прозрачный экран, отталкивающий любую магию, окружил вас\.$', "-n:CAST";

trig { NextCast("эфирный щит") } 'Вы защищены от влиЯниЯ вредных энергий\.$', "-n:CAST";

trig { NextCast("внутреннее теп") } 'Ваше тело налилось теплом\.$', "-n:CAST";

trig { NextCast("внутреннее теп") } '\w+ начал(?:а|о)? излучать тепло\.$', "-n:CAST";

trig { NextCast("доб") } 'Вы начали доблестно сопротивлЯтьсЯ любым попыткам оглушить и парализовать вас\.$', "-n:CAST";

trig { NextCast("доб") } '\w+ выглЯдит доблестно\.$', "-n:CAST";

trig { NextCast("подводное дых") } 'На \w+ (?:у )?\w+ выросли жабры\.$', "-n:CAST";

trig { NextCast("пре") } 'Вы предвидите будущее\.$', "-n:CAST";

trig { NextCast("пре") } '\w+ начал(?:а|о)? предвидеть будущее\.$', "-n:CAST";

trig { NextCast("благословение огн") } 'Ваша чувствительность к огню снизилась\.$', "-n:CAST";

trig { NextCast("нев") } 'Вы стали невидим(?:ым|ой)\.$', "-n:CAST";

trig { NextCast("нев") } '\w+ становитсЯ невидим(?:ым|ой)\.$', "-n:CAST";

trig { NextCast("тени мра") } 'Черные тени закрывают вас от врагов\.$', "-n:CAST";

trig { NextCast("дос") } '\w+ \w+ окружилось подобием магического доспеха\.$', "-n:CAST";

trig { NextCast("ледЯной щит") } 'Хоровод смертельно холодных льдинок окружил \w+\.$', "-n:CAST";
                                               
trig { NextCast("огненный щит") } 'Языки бушующего пламени окружили \w+ обжигающей стеной\.$', "-n:CAST";

trig { NextCast("мистическаЯ сфе") } 'Вокруг вас поЯвилась мистическаЯ сфера\.$', "-n:CAST";

trig { NextCast("электрощ") } 'Небольшие шаровые молнии начали кружить вокруг вашего тела\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'У вас зачесалось в носу в самый неподходЯщий момент\. Все стараниЯ пошли прахом\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'На середине фразы волшебнаЯ сила покинула вас\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'Вы не смогли сконцентрироватьсЯ\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'Что-то отвлекло вас, и заклинание не удалось\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'Камешек закатилсЯ в вашу обувь и помешал сосредоточитьсЯ\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'У вас кончилсЯ воздух в легких, и вы с шумом перевели дыхание\. Попробуйте еще раз\.$', "-n:CAST";

trig { RepiteCast($U::AllCast[$U::Cast]) } 'Вы закашлЯлись на середине фразы, заклинание сорвано\.\.\.$', "-n:CAST";

trig { NextCast($U::AllCast[$U::Cast]) } 'Вы не можете использовать это заклинание на других\.$', "-n:CAST";

trig { NextCast($U::AllCast[$U::Cast]) } 'Не удалось\.$', "-n:CAST";

trig { NextCast($U::AllCast[$U::Cast]) } 'Вы не умеете\.$', "-n:CAST";

(Добавление)
Как я это реализовал на jmc:

#alias {коаз} {кол 'антимагическаЯ защ'} {default}
#alias {кобо} {кол 'благословение огн'} {default}
#alias {ковл} {кол 'видеть лов'} {default}
#alias {ковм} {кол 'видеть маг'} {default}
#alias {ковн} {кол 'видеть нев'} {default}
#alias {ковт} {кол 'выносливость тро'} {default}
#alias {коди} {кол 'драконий инт'} {default}
#alias {колщ} {кол 'ледЯной щит'} {default}
#alias {комс} {кол 'мистическаЯ сфе'} {default}
#alias {коощ} {кол 'огненный щит'} {default}
#alias {копд} {кол 'подводное дых'} {default}
#alias {косп} {кол 'сила пре'} {default}
#alias {котм} {кол 'тени мра'} {default}
#alias {кошд} {кол 'шкура дра'} {default}
#alias {кошт} {кол 'шкура тро'} {default}
#alias {коэк} {кол 'эльфийскаЯ кра'} {default}
#alias {коэщ} {кол 'эфирный щит'} {default}

#alias {обкаст} {#var cast 1; #var ctar { }; #var ctar %1; косп %1} {default}

#alias {повтор} {#if {$cast == 1} {косп $ctar}; #if {$cast == 2} {коди $ctar}; #if {$cast == 3} {кол про $ctar}; #if {$cast == 4} {кол быс $ctar}; #if {$cast == 5} {ковт $ctar}; #if {$cast == 6} {коэк $ctar}; #if {$cast == 7} {кол щит $ctar}; #if {$cast == 8} {кол пла $ctar}; #if {$cast == 9} {кол пол $ctar}; #if {$cast == 10} {ковн $ctar}; #if {$cast == 11} {ковм $ctar}; #if {$cast == 12} {ковл $ctar}; #if {$cast == 13} {кол инф $ctar}; #if {$cast == 14} {кол доб $ctar}; #if {$cast == 15} {кол зак $ctar}; #if {$cast == 16} {кошд $ctar}; #if {$cast == 17} {кошт $ctar}; #if {$cast == 18} {коаз $ctar}; #if {$cast == 19} {коэщ $ctar}; #if {$cast == 20} {кол вну $ctar}; #if {$cast == 21} {кол пре $ctar}; #if {$cast == 22} {копд $ctar}; #if {$cast == 23} {кобо $ctar}; #if {$cast == 24} {кол нев $ctar}; #if {$cast == 25} {котм $ctar}; #if {$cast == 26} {кол дос $ctar}; #if {$cast == 27} {колщ $ctar}; #if {$cast == 28} {коощ $ctar}; #if {$cast == 29} {комс $ctar}; #if {$cast == 30} {кол электрощ $ctar}} {default}

#alias {следующий} {#if {$cast != 0} {#var cast {$cast + 1}; повтор $ctar}} {default}

#action {Сила предков влилась в ваши жилы, вы стали сильнее.} {#if {$cast == 1} {#var cast 2; коди $ctar}} {5} {default}

#action {Мускулы %1 налились силой.} {#if {$cast == 1} {#var cast 2; коди $ctar}} {5} {default}

#action {Ваш интеллект повысилсЯ.} {#if {$cast == 2} {#var cast 3; кол про $ctar}} {5} {default}

#action {%1 выглЯдит умнее.} {#if {$cast == 2} {#var cast 3; кол про $ctar}} {5} {default}

#action {Вы стали мудрее и прозорливее.} {#if {$cast == 3} {#var cast 4; кол быс $ctar}} {5} {default}

#action {В глазах %1 зажегсЯ огонек мудрости.} {#if {$cast == 3} {#var cast 4; кол быс $ctar}} {5} {default}

#action {%1 %2 ускорились.} {#if {$cast == 4} {#var cast 5; ковт $ctar}} {5} {default}

#action {Ваша выносливость увеличилась.} {#if {$cast == 5} {#var cast 6; коэк $ctar}} {5} {default}

#action {%1 выглЯдит более вынослив%2.} {#if {$cast == 5} {#var cast 6; коэк $ctar}} {5} {default}

#action {%1 %2 осветились эльфийской красотой.} {#if {$cast == 6} {#var cast 7; cast щит $ctar}} {5} {default}

#action {Аура голубоватой энергии окружила %1.} {#if {$cast == 7} {#var cast 8; кол пла $ctar}} {5} {default}

#action {%1 %2 повысилась.} {#if {$cast == 8} {#var cast 9; кол пол $ctar}} {5} {default}

#action {Вы поднЯлись над землей.} {#if {$cast == 9} {#var cast 10; ковн $ctar}} {5} {default}

#action {%1, покачиваЯсь, взлетел%2 в воздух.} {#if {$cast == 9} {#var cast 13; кол инф $ctar}} {5} {default}

#action {Вы обрели возможность видеть невидимое.} {#if {$cast == 10} {#var cast 11; ковм $ctar}} {5} {default}

#action {Вы начали видеть голубое свечение вокруг магических объектов.} {#if {$cast == 11} {#var cast 12; ковл $ctar}} {5} {default}

#action {Теперь вы чувствуете ловушки.} {#if {$cast == 12} {#var cast 14; кол доб $ctar}} {5} {default}

#action {%1 получил%2 способность видеть в темноте.} {#if {$cast == 13} {#var cast 14; кол доб $ctar}} {5} {default}

#action {Вы начали доблестно сопротивлЯтьсЯ любым попыткам оглушить и парализовать вас.} {#if {$cast == 14} {#var cast 15; кол зак $ctar}} {5} {default}

#action {%1 выглЯдит доблестно.} {#if {$cast == 14} {#var cast 20; кол вну $ctar}} {5} {default}

#action {Ваша кожа стала твердой, как камень.} {#if {$cast == 15} {#var cast 16; кошд $ctar}} {5} {default}

#action {Ваша кожа стала прочной, как шкура дракона.} {#if {$cast == 16} {#var cast 17; кошт $ctar}} {5} {default}

#action {Ваша кожа стала толстой, как шкура троллЯ.} {#if {$cast == 17} {#var cast 18; коаз $ctar}} {5} {default}

#action {Прозрачный экран, отталкивающий любую магию, окружил вас.} {#if {$cast == 18} {#var cast 19; коэщ $ctar}} {5} {default}

#action {Вы защищены от влиЯниЯ вредных энергий.} {#if {$cast == 19} {#var cast 20; кол вну $ctar}} {5} {default}

#action {Ваше тело налилось теплом.} {#if {$cast == 20} {#var cast 21; кол пре $ctar}} {5} {default}

#action {%1 начал%2 излучать тепло.} {#if {$cast == 20} {#var cast 21; кол пре $ctar}} {5} {default}

#action {Вы предвидите будущее.} {#if {$cast == 21} {#var cast 22; копд $ctar}} {5} {default}

#action {%1 начал%2 предвидеть будущее.} {#if {$cast == 21} {#var cast 22; копд $ctar}} {5} {default}

#action {На вашей шее выросли жабры.} {#if {$cast == 22} {#var cast 23; кобо $ctar}} {5} {default}

#action {На шее у %1 выросли жабры.} {#if {$cast == 22} {#var cast 24; кол нев $ctar}} {5} {default}

#action {Ваша чувствительность к огню снизилась.} {#if {$cast == 23} {#var cast 24; кол нев $ctar}} {5} {default}

#action {%1 становит%2 невидим%3.} {#if {$cast == 24} {#var cast 25; котм $ctar}} {5} {default}

#action {Черные тени закрывают вас от врагов.} {#if {$cast == 25} {#var cast 26; кол дос $ctar}} {5} {default}

#action {%1 %2 окружилось подобием магического доспеха.} {#if {$cast == 26} {#var cast 27; колщ $ctar}} {5} {default}

#action {Хоровод смертельно холодных льдинок окружил %1.} {#if {$cast == 27} {#var cast 28; коощ $ctar}} {5} {default}

#action {Языки бушующего пламени окружили %1 обжигающей стеной.} {#if {$cast == 28} {#var cast 29; комс $ctar}} {5} {default}

#action {Вокруг вас поЯвилась мистическаЯ сфера.} {#if {$cast == 29} {#var cast 30; комс $ctar}} {5} {default}

#action {Небольшие шаровые молнии начали кружить вокруг вашего тела.} {#if {$cast == 30} {#var cast 0}} {5} {default}

#action {У вас зачесалось в носу в самый неподходЯщий момент. Все стараниЯ пошли прахом.} {повтор $ctar} {5} {default}

#action {На середине фразы волшебнаЯ сила покинула вас.} {повтор $ctar} {5} {default}

#action {Вы не смогли сконцентрироватьсЯ.} {повтор $ctar} {5} {default}

#action {Что-то отвлекло вас, и заклинание не удалось.} {повтор $ctar} {5} {default}

#action {Камешек закатилсЯ в вашу обувь и помешал сосредоточитьсЯ.} {повтор $ctar} {5} {default}

#action {У вас кончилсЯ в легких воздух, и вы с шумом перевели дыхание. Попробуйте еще раз.} {повтор $ctar} {5} {default}

#action {Вы закашлЯлись на середине фразы, заклинание сорвано...} {повтор $ctar} {5} {default}

#action {Не удалось.} {следующий $ctar} {5} {default}

#action {Вы не умеете.} {следующий $ctar} {5} {default}

#action {Вы не можете использовать это заклинание на других.} {следующий $ctar} {5} {default}
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 08.09.05, 14:34:53
2 Грелин:
Ахр@#ительный решпект. Столько набить!..
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Кирд от 29.09.05, 17:06:40
mmc не знаю коментировать не буду.
А на jmc буду:
+
Хорошо написано.
У меня практически такойже скрипт только в докаст сататсов в конце осуществяеться.
-
1. Скрипт не защищен.
#action {Вы не умеете.} {следующий $ctar} {5} {default}
при спаме ска *чар* Вы не умеете. он захлебнеться.
#action {^Вы не умеете.} {следующий $ctar} {5} {default}
2. Нет проверки на запущенность скрипта
#action {^Вы не умеете.} {#if {$autocast == 1} {следующий $ctar}} {5} {default}

P.S. Отличный скрипт если эго чуть чуть доработать.
P.P.S. Советую всем забить на кнопку команду #ignor она выключает/включает тригера.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 29.09.05, 17:57:03
камрад грелин, ты явно понял проблему, но слишком много буков в программе и вообще копипейста всяческого. но мне кажется всетки его можно сбить с толка. например ты кастиш что-то, и в этот же момент кто-то кастит тот же закл на вообще левого перца, твой скрипт перескакивает на следующий закл. теоретически возможны недокасты. собсно поэтому мне пришлось добавить в обкаст несколько социалов, чтоб определять точно имя персонажа в требуемых падежах и по ходу каста сверяться еще с именем. собсно кусочек одного из конфигов для ммц. перл я знаю плохо так что за всякие тупняки в коде прошу ногами не бить, написал как смог.

$obcast_step = 0;
$obcast_N1 = "";
$obcast_N2 = "";
$obcast_N4 = "";
$obcast_success = "";

@obcast_spells = (
("вынос", "1", "# выглядит более вынослив(ым|ой)."),
("дракон", "1", "# выглядит умнее."),
("добл", "1", "# выглядит доблестно."),
("полет", "1", "#, покачиваясь, взлетел[ао]? в воздух."),
("предвид", "1", "# начал[ао]? предвидеть будущее."),
("сила", "2", "Мускулы # налились силой."),
("быстро", "2", "Движения # ускорились."),
("прозор", "2", "В глазах # зажегся огонек мудрости."),
("эльф", "2", "Черты # осветились эльфийской красотой."),
("доспех", "2", "Тело # окружилось подобием магического доспеха."),
("щит", "4", "Аура голубоватой энергии окружила #."),
("упруг", "4", "Вы сделали # упруг(им|ой), как резина."),
("благо", "4", "Вы благословили #."),
("подвод", "2", "На шее у # выросли жабры."),
("невид", "1", "# становится невидим(ым|ой)."));

@obcast_N2list = ("бубубу", "шагать");
@obcast_N4list = ("попрош", "заряд", "конфетти", "хлопнуть");

@obcast_EndList = ("ву", "ул", "пиво", "кофе", "сигара", "ухблин");

trig {
$obcast_N1 = $1;
disable("OBCASTNstart");
obcast_step();
} '([\xC0-\xFF]+) (абсолютно здоров[aаоo]?|имеет несколько царапин|серьезно поцарапан[aаоo]?|слегка поранен[aаоo]?|имеет несколько глубоких ран|сильно ранен[aаоo]?|опасно ранен[aаоo]?|корчитс[Яя] от боли|истекает кровью|почти мертв[aаоo]?|УМИРАЕТ)\.', "-n:OBCASTNstart";

                 
trig {
$obcast_N2 = $1;
} 'Действия ([\xC0-\xFF]+) вызвали у вас аплодисменты.', "n:OBCASTN";
trig {
$obcast_N2 = $1;
} 'Вы громко охаете при виде ([\xC0-\xFF]+).', "n:OBCASTN";
trig {
$obcast_N2 = $1;
} 'Вы ворчите себе под нос .БУБУБУ., посматрива[Яя] в сторону ([\xC0-\xFF]+).', "n:OBCASTN";
trig {
$obcast_N2 = $1;
} 'Вы шагаете вокруг ([\xC0-\xFF]+).', "n:OBCASTN";


trig {
$obcast_N4 = $1;
} 'Вы хлопнули ([\xC0-\xFF]+) по спине.', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы просите ([\xC0-\xFF]+) одолжить вам немного денег.', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы подложили небольшой зар[Яя]д под ([\xC0-\xFF]+).', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы приветствуете ([\xC0-\xFF]+) радостными криками.', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы хлопнули в ладоши, раду[Яя]сь за ([\xC0-\xFF]+).', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Весело сме[Яя]сь, вы бросили в ([\xC0-\xFF]+) горсть конфетти.', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы поздравили ([\xC0-\xFF]+) с этим достижением.', "n:OBCASTN";
trig {
$obcast_N4 = $1;
} 'Вы спросили ([\xC0-\xFF]+) .Как\?.', "n:OBCASTN";

trig {
my $sline = $2;

if ($sline eq "Здесь таких нет.") {
disable('OBCASTNsccs');
} elsif (($sline =~ /$obcast_success/) || ($sline eq "Не удалось.")) {
disable('OBCASTNsccs');
$obcast_step++;
obcast_step();
} elsif ($sline =~ /^(У вас кончилс[Яя] воздух в легких|Что-то отвлекло вас|Вы не смогли сконцентрироватьс[Яя]|Вы закашл[Яя]лись|У вас зачесалось в носу|На середине фразы волшебна[Яя] сила|Камешек закатилс[Яя])/) {
disable('OBCASTNsccs');
obcast_step();
}
} '^(\#.*\>)?\s*(.*)$', "-n:OBCASTNsccs";

sub obcast_step() {
if ($obcast_step > 14) {
sendlp($obcast_EndList[int(rand scalar(@obcast_EndList))]." ".$obcast_N1);
return;
}
if (!$obcast_N1)  {
return;
}
if (($obcast_N2 eq "") && ($obcast_step == 3)) {
sendlp($obcast_N2list[int(rand scalar(@obcast_N2list))]." ".$obcast_N1);
}
if (($obcast_N4 eq "") && ($obcast_step == 8)) {
sendlp($obcast_N4list[int(rand scalar(@obcast_N4list))]." ".$obcast_N1);
}
sendlp("ко ".$obcast_spells[$obcast_step*3]." ".$obcast_N1);

my $thename = eval('$obcast_N'.$obcast_spells[$obcast_step*3+1]);
$obcast_success = $obcast_spells[$obcast_step*3+2];
$obcast_success =~ s/\#/$thename/;
enable('OBCASTNsccs');

echo("\003Clook for: ".$obcast_success);
}

sub obcast(@)
{
$obcast_N1 = shift @_;
$obcast_N2 = "";
$obcast_N4 = "";
$obcast_step = 0;
sendlp("взгл ".$obcast_N1);
enable("OBCASTNstart");
}

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Alanna от 29.09.05, 22:23:11
Если я подхожу к персонажу и говорю ему "обкасти" (например), а он автоматом начинает колдовать, без участия в том игрока, повторяю - повторяет, то это нарушение правила 6. О наказаниях - справка кодекс. Не важно, сидит ли за клавиатурой человек или отошел, это нарушение. ЛЮБЫЕ триггеры на взаимодействие с другими нарушают правила. Даже простейшие триггеры на еду/питье МОГУТ расцениваться как нарушение правил, если за счет них персонаж висит в игре, хотя игрок команд не отправлял уже час (игра должна была бы такого персонажа вывести).
Те же триггеры на еду/питье не расцениваются как нарушение, если персонажа не оставляют без внимания на длительный срок. Триггеры на подбор выбитого оружия нарушением не считаются. Любые триггеры, не отправляющие команд в MUD, нарушением не считаются (да и в принципе не отслеживаются =о) ).
Здесь я написала, как лично я понимаю пункт 6 правил. Большинство бессмертных воспринимают его так же. Правила - закон, если вы не согласны с моей точкой зрения, вы все равно будете наказаны, а потом уже будете обсуждать с Единым, правильно ли я понимаю правила. Почему приходится что-то понимать, а не прочитать просто, как "на самом деле"? Потому что правила компактны, и сделано это намеренно.
Зачем я все это написала? Просто чтобы те, кто захочет воспользоваться расписанными выше триггерами (при старте без участия игрока), понимали, что НАРУШАЮТ правила, и что минимальное наказание за это - 5 суток тюрьмы. Более комментировать в этой ветке не буду.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 30.09.05, 11:05:09
Аланна, твои комментарии внесли некоторую ясность, в равной степени как и неясность.
Цитировать
Если я подхожу к персонажу и говорю ему "обкасти" (например), а он автоматом начинает колдовать, без участия в том игрока, повторяю - повторяет, то это нарушение правила 6. О наказаниях - справка кодекс. Не важно, сидит ли за клавиатурой человек или отошел, это нарушение. ЛЮБЫЕ триггеры на взаимодействие с другими нарушают правила.

Ага, значит если триггер  инициирует другой персонаж[1], а не MUD сервер[2], то это - нарушение правил?
Цитировать
Даже простейшие триггеры на еду/питье МОГУТ расцениваться как нарушение правил, если за счет них персонаж висит в игре, хотя игрок команд не отправлял уже час (игра должна была бы такого персонажа вывести).

Упс... Получается если триггер сработал на строку MUD сервера, то это МОЖЕТ быть нарушением правил? Тогда остаются строки, инициирумые самим пользователем[3]. Таковые нарушением не являются?
Цитировать
Зачем я все это написала? Просто чтобы те, кто захочет воспользоваться расписанными выше триггерами (при старте без участия игрока), понимали, что НАРУШАЮТ правила, и что минимальное наказание за это - 5 суток тюрьмы.

Так ведь расписанные выше триггера без участия игрока не инициируются. Или ты имела ввиду слово "если"? Или мое понимание "старта без участия игрока" отличается от твоего и такие триггера являются нарушением правил? Тогда выходит, любой триггер МОЖЕТ быть нарушением правил?
Цитировать
Более комментировать в этой ветке не буду.

Я зря здесь распинался? Хотя... надо создать еще одну ветку и скопировать сей текст туда? Ах, да - последний вопрос уважаемым читателям.
Примечания:
[1] Если строка получена в результате прямых действий другого игрока. Например, игрок что-то сказал, что-то сделал, что-то изобразил.
[2] Если строка получена при отсутсвии прямых действий другого игрока и игрока, чей триггер рассматривается. Например, сообщения о жажде и голоде.
[3] Если строка получена в результате прямых дейсвий игрока, чей триггер рассматривается. Сюда относятся сообщения вида: "Вы попросили у Маслютика дать вам задание.", "Вокруг вас поЯвилась мистическаЯ сфера.", "Вы выкопали бронзовый рог." и т.п.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Gardiel от 30.09.05, 11:16:23
Если я подхожу к персонажу и говорю ему "обкасти"...

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

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

Ку?

P.S. Знаю, сейчас начнется "тогда игрок может ЛИЧНО запускать программу управления персонажем и идти спать/пить/etc", но это уже передергивания :) Мы-то про данный конкретный случай говорим.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Mirian от 30.09.05, 11:22:26
Цитировать
будете обсуждать с Единым

издеваешься?:) не смешно, Аланна. Морису до Арды дела никакого нет, а ты говоришь о том, чтоб в жизни игроков учавствовать :gigi:
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 30.09.05, 11:28:52
дык.
я ж привел только ФУНКЦИЮ обкаста, а не триггер который ее вызывает. просто сидя баффером после стотысячного баффа начинает задалбывать отслеживаение, что там не сработало и перебаффы. поэтому написана была функа. а функу эту я только сам руками пускал с помощью яльяса и не триггера... последний год во всяком случае :)

откопал триггера двухгодичной давности...

trig {
return if ($1 !~ /($allow_users)/);
echo('Обкаст для ['.$1.']');
sendl("встать");
obcast($1);
sendl("отд");
sendl("транс");
sendl("спать");
} '(^[\xC0-\xFF]+)\sшепч.*обкаст', "-n:AUTOOBCAST0";

trig {
$n = $1;
$w = $2;
return if ($1 !~ /($allow_users)/);
sleep_action('колд "'.$w.'" '.$n);
} '(^[\xC0-\xFF]+)\sшепч.*кастани ([\w\s\xC0-\xFF]*)', "-n:AUTOOBCAST0";

trig {
$n = $1;
$w = $2;
return if ($1 !~ /($allow_users)/);
sendl('встать');
sendl('од колб');
sendl('варить '.$w);
sendl('од посох');
sendl('дать potion '.$n);
sendl('спать');
} '(^[\xC0-\xFF]+)\sшепч.*свари\s+([\s\w\xC0-\xFF]+)\s*', "-n:AUTOOBCAST0";

trig {
$n = $1;
$w = $2;
return if ($1 !~ /($allow_users)/);
if ($w =~ /^\s*(\d+)\s$/) {  
sendl('шепт '.$n.' А '.$1.' пи**юлей тебе не апнуть?'); #вырезано цензурой для форума
} else  {
sendl('встать');
sendl('ко заколд '.$w);
sendl('дать '.$w.' '.$n);
sendl('спать');
}
} '(^[\xC0-\xFF]+)\sшепч.*апни\s+([\w\xC0-\xFF]+)\s*', "-n:AUTOOBCAST0";

trig {
sendl('горден &w(&genchanter&w) &z'.$1.', иду блин... заманали со своей ареной ,)');
go_arena();
} '(^[\xC0-\xFF]+)\sсказал(а|о)? ордену.*123арена', "-n:AUTOOBCAST0";

...


я просто плакаль, какие времена были... баффбот висел пол года не выходя из игры и никто его не банил. :eek:

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

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 30.09.05, 13:20:08
Theitan
Ничего себе: еще и диалоговые фразы прописывать!
Гм, Тейтан а ты часом не думал заняться разработкой искусственного интеллекта?

З.Ы, Я бы купил... :helloween: шутк.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 30.09.05, 15:08:37
шутки у тебя. :gigi:
а фигле я магистратуру заканчивал по этой теме? :lol:
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 30.09.05, 17:32:50
к Всем:
А можно ли как-то в Жабе прописать выполнение команды если какое-либо значение в строке состоЯниЯ ниже установленного? по примеру трусости.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 30.09.05, 18:46:44
#action {<%1/%2зд %3/%4ма %5/%6дв %7оп>} {#if {$1 < 50} {бежать}} {5} {default}
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Локхорн от 30.09.05, 18:58:55
Grelin
Спасибо :)
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 01.10.05, 12:22:18
Kird, спасибо за критику.
Что бы убрать рекцию на спам "ска *чар* Вы не умеете." нужно использовать регулярное выражение. Пример:
#action {/Не удалось\.$/} {следующий $ctar} {5} {default}Однако от эмоции это не спасет. Напрашивается пример:
#action {/^Не удалось\.$/} {следующий $ctar} {5} {default}Но в этом случае появится проблема, связанная с тем, что иногда строка приглашения сливается со следующей строкой в одну. Немного подумав, можно предусмотреть и эту ситуацию, не заморачиваясь с устранением самой проблемы:
#action {/(^|>)Не удалось\.$/} {следующий $ctar} {5} {default}В данном примере символ ">" - конец моей строки приглашения. Просто укажите ваш.
Проверка на запущенность скрипта есть:
Цитировать
#alias {следующий} {#if {$cast != 0} {#var cast {$cast + 1}; повтор $ctar}} {default}

И Theitan-у спасибо за критику и за идеи. По поводу критики могу сказать, что много буков - проблема оптимизации (нет предела совершенству), а если рядом кто-то кастит тот же закл, то таки да - возможны недокасты(когда мой каст не прошел). По поводу идей - у меня рацпредложение: определять имя персонажа в требуемых падежах из сообщений самого каста.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Vendal от 01.10.05, 12:41:41
у чаров могут быть разные промпты. поетому на цвет лучше проверять (). эмоциями не подделаешь полностью белую строку, а от теллов можно защититься регекспами и/или, спешл для теллов с убранной последней ковычкой:
#act { говорит вам '}{#nop} 0
конечно работает, если мультиэкшны вырублены.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 01.10.05, 14:00:50
Я тут подумал... не катит
Цитировать
#action {/(^|>)Не удалось\.$/} {следующий $ctar} {5} {default}
Это ж можно сделать так: "эмо >&WНе удалось.". Нужно задействовать первый символ строки приглашения. Получится:
#action {/^<*Не удалось\.$/} {следующий $ctar} {5} {default}Где символ "<" - начало моей строки приглашения.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Alanna от 01.10.05, 14:31:53
Цитировать
[1] Если строка получена в результате прямых действий другого игрока. Например, игрок что-то сказал, что-то сделал, что-то изобразил.
[2] Если строка получена при отсутсвии прямых действий другого игрока и игрока, чей триггер рассматривается. Например, сообщения о жажде и голоде.
[3] Если строка получена в результате прямых дейсвий игрока, чей триггер рассматривается. Сюда относятся сообщения вида: "Вы попросили у Маслютика дать вам задание.", "Вокруг вас поЯвилась мистическаЯ сфера.", "Вы выкопали бронзовый рог." и т.п.

Спасибо за попытку внести ясность. Ниже мое мнение в общем:
[1] - нарушение
[2] - может расцениваться как нарушение, если вы оставляете персонажа без внимания на длительный срок (поддержание присутствия персонажа в игре таким образом не допускается)
[3] - не является нарушением, если выполняются действия элементарные. Пример, что можно: попить из фляги, достать и съесть пирог (см. [2]!). Нельзя - бежать через полгорода для закупки пирогов. Нельзя пытаться выполнить квест, к примеру, полностью на триггерах. Это очень серьезное нарушение и наказывают за него соответственно. Даже ставить портал триггером на моба, которого вам назвал Маслютик как цель квеста, уже наказуемо
[4] - в принципе не является нарушением любой триггер, не отправляющий никаких команд на сервер MUD
Любой триггер, сообщающий что-то в общий канал (поздравление, к примеру), также будет нарушением. Впрочем, это, скорее, в соответствии с правилом 1, а не 6.
Совет: ваш MUD-клиент может заносить чье-то имя в переменную посредством триггера (например, "Вася простонал ..."), а далее вы можете по кнопке или с помощью алиаса, к примеру, сколдовать "поднять", используя значение этой переменной. Это не будет нарушением. Но не с триггера "поднять".
Общий подход у меня такой (по-моему, он достаточно разумен). Триггеры служат для удобства, и это хорошо. Но ваш персонаж не должен уподо***ться запрограммированному роботу, это ролевая игра, а не полигон для испытаний разработок по искусственному интеллекту =о)
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 01.10.05, 15:30:07
Цитировать
Даже ставить портал триггером на моба, которого вам назвал Маслютик как цель квеста, уже наказуемо

и как меня интересно ловить на этом будут? я бы посмотрел.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 01.10.05, 17:15:13
Цитировать
то ролевая игра, а не полигон для испытаний разработок по искусственному интеллекту

только улыбнусь.

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

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

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

(Добавление)
к вопросу о том что "ты это делаеш как бот". просто когда ты это делаеш стотысячапервый раз, то действительно делаеш все как бот. так что это не обоснование. вину игрока надо доказывать почаще и будете понимать, что не всегда то, что выглядит как бот - на самом деле бот.

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

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Гость от 04.10.05, 18:31:47
Цитировать
[1] - нарушение

В таком случае, триггера на догон запрещены? или мжет триггера на входящи, влетающих, вплывающих?
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Firi от 04.10.05, 20:06:50
Alanna
Цитировать
[2] - может расцениваться как нарушение, если вы оставляете персонажа без внимания на длительный срок (поддержание присутствия персонажа в игре таким образом не допускается)

Вот как раз об этом (поддержание чара в игре на автопилоте, встать/попить и сбегать за пирожками /поесть, я разговаривал с Морисом лично летом 2004-го года, я специально интересовался его мнением на этот счет.
Его ответ: если только попить в таве и сбегать к хоббиту за пирожком и покушать -- можно, и нарушением это не считается.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 05.10.05, 11:22:37
просто когда посадили мне одного чара за якобы обкаст на боте, хотя этого небыло и доказать это никак не могли, то сослались что я до этого сидел ел пиррожки на триггере. а это было доказано. вобщем тогда меня первый раз посадили за пирожки. с тех пор как я понял есть пирожки тоже запрещено. такие чрезмерные гонения начались где-то как раз летом 2004
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Квалин от 27.10.05, 14:25:26
имею один тригер на нападение на пк:kruto:.. это нарушение?
тригера имхо лишнее.. неужели обломно раз в час обкастица в ручную? )
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 27.10.05, 21:27:13
Ну, если себя, то конечно не проблема. Да и обкаст будет в таком случае индивидуальный. А вот когда ты сделал широкий жест, пригласив на обкаст в коридор всех желающих, то подобные триггера упростят процесс.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Antalos от 28.10.05, 11:33:18
Да на алиасах с подсветками сделать обкаст и все, имхо триггера тут на фиг не нужны.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 28.10.05, 12:22:20
да ну.. а вылавливать какой из заклов не прошел жуть как неприятно. а если каст не прокачан - это ж вообще мучение. +на время каста ты выключен из жизни если алиасом делать. а если скрипт - можно вставлять свловечки в орденский, например, между кастами.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Barkett от 28.10.05, 12:51:35
Цитировать
да ну.. а вылавливать какой из заклов не прошел жуть как неприятно. а если каст не прокачан - это ж вообще мучение. +на время каста ты выключен из жизни если алиасом делать. а если скрипт - можно вставлять свловечки в орденский, например, между кастами.


Зато не нарушаешь правил, если этот аспект кому-то еще важен...
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Халлар от 28.10.05, 13:49:59
Цитировать
да ну.. а вылавливать какой из заклов не прошел жуть как неприятно. а если каст не прокачан - это ж вообще мучение.

-это во-первых, и во вторых.
А в-третьих, можно экономить ману, если сразу кастовать только то, что еще не висит - актуально на невысоких уровнях, когда заклы действуют недолго и слезают неодновременно.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 28.10.05, 14:28:38
Цитировать
Зато не нарушаешь правил, если этот аспект кому-то еще важен...

??? типа скрипт, который инициируется вводом команды с клавиатуры, который просто ловит фейлы и перекастовывает их - это нарушение? бред. алиас на обкаст тогда тоже нарушение.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Antalos от 28.10.05, 15:18:35
Не ну это все можно реализовать динамическими алиасами, то есть триггера в мад ничего слать не будут, а будут перебивать алиасы =) Правила вроде как не нарушаются при таком раскладе, насчет гордена - имхо 15 секунд можно и без него посидеть, хотя кому-то это может и критично.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 28.10.05, 15:47:13
ага, а еще можно с телнета играть.
мсье знает толк в извращениях? (с)

аланна писала, что триггеры типа на каст слетевшей мистички разрешены. это ничуть не сложнее. а вообще, тут очень тонкая грань. пример 1: если мне дают квест, триг бежит убивает моба, реколлится и сдает задание - это ботинг. пример 2: а если мне дают квест, триг вылавливает с квеста нужную информацию, потом я пишу в командной строке "выполнить мой квест" и чар бежит точно так же убивает того же моба, точно так же реколлится и сдает задание. при наличии уже выловленной тригом инфы это реально сделать просто алиасом. я прекрасно понимаю, что ботинг необходимо как-то запрещать, но формально не вижу разницы примера 1 и примера 2, при наличии человека за клавиатурой.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Theitan от 28.10.05, 15:49:56
немного лирики... в варкрафте банально отключили все возможности вызова какго либо кода (модов) на основании получаемой инфы. начиная с некотой версии все макросы исполняются только после нажатия на кнопки. правда теперь люди навешали тот же функцонал на кнопку и ложат на нее кирпич :)
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: aldaril от 08.11.05, 20:14:41
когда игра надоедает (все и вся изучено и достигнуто), когда видишь, что дальнейшего развития в игре нет, не у чара, а у самой игры, но когда не можешь себя заставить забыть про игры, потому как посвятил ей все сознательное н-ное время, самый раз заняться исследованиями....
и если кто-то начинает заниматься исследованиями в ИИ (пусть так называется), то честь и хвала, кто-то пытается решать интересные задачи и работает серым веществом....
...усердное навязывание ролеплея еще нигде и никогда не привело к положительному результату, в игру приходят играть, и каждому видится своя роль в игре
"- эй, ты сюда не ходи, ты туда ходи, а то снег бошка попадет, савсэм мертвый будешь"

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

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

и еще вспомнил: клиент всегда прав.

гымс, даже если это ботанизированный мадклиент ;))))
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Tobur от 20.11.05, 00:14:27
Вот бы кто написал как хп отнятое во время боя считать(добавленое во время сна ) и чтоб выбивало там +34 или -99. У мну скрипт есть, но он не пашет, и как только пытаюсь запустить, выбивает ошибку и все закрываетьса.
to Grelin
когда ты к нам вернешся?
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 20.11.05, 02:08:38
Цитировать
У мну скрипт есть, но он не пашет, и как только пытаюсь запустить, выбивает ошибку и все закрываетьса.

скорее всего, у тебя жабка не установлена верным образом. переустанови с инсталлятора или можно ручками все прописать - тут на форуме где-то валяется рекомендация как это сделать.
а вообще не понимаю зачем для такой простейшей математической операции задействовать скрипты? тем паче, если жаба на скриптах вылетает. триггер и всего делов. у меня в жабковском конфиге это сделано триггером и работает, не жужжит.
Цитировать
Вот бы кто написал как хп отнятое во время боя считать(добавленое во время сна ) и чтоб выбивало там +34 или -99.

а это уже не вопрос, а поставленная задача (с) аааа
поройся в хелпах. для этого нужно пара команд и несложный синтаксис. вопрос 10 минут даже для новичка.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Tobur от 20.11.05, 12:33:52
1.что бы работало тригом, надо спамное сообщение, как минимум, вроде как.
Цитировать
переустанови с инсталлятора

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

(Добавление)

Цитировать
можно ручками все прописать

а как ручками?

(Добавление)
жабу зарегил, ручками....

(Добавление)
Grelin-спасибо;)

Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 20.11.05, 14:32:33
ну я так понимаю - уже не надо, но для совсем беспомощных в вопросе интернет-поиска:
http://jmc.mud.ru/install30.exe
качаем - английская версия 3.26 с полноценным инсталлятором
http://jmc.mud.ru/jmc_rus.zip
поверх установленной 3.26 распаковываем русскую 3.27
все.


(Добавление)
а про
Цитировать
1.что бы работало тригом, надо спамное сообщение, как минимум, вроде как.

так и не понял. тебе на промпт триг не поставить?
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Tobur от 20.11.05, 15:34:16
Все зделал:gigi:спасибо:
Гыжа, Грилин
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 23.11.05, 08:23:31
кстати, мало ли кто будет юзать. просматривал кусок кода грилина по жабе - наткнулся на багу
Цитировать
#action {%1 становит%2 невидим%3.} {#if {$cast == 24} {#var cast 25; котм $ctar}} {5} {default}

этот паттерн сработает только на другого с инвизом, не на себя. потому что для себя сообщение о невидимости звучит в арде как
Цитировать
Вы стали невидимым(ой)

разумеется, это не отвечает указанному в коде паттерну. логично - я бы переписал, как {%1 ста%2 невидим%3.}

далее. у меня очень криво работала команда #var в жабе. она имеет свойство периодически работать с числовыми переменными как с текстом. то есть в случае с
Цитировать
#alias {следующий} {#if {$cast != 0} {#var cast {$cast + 1}; повтор $ctar}} {default}

она запросто может присвоить переменной #cast (предположим, на данный момент она равна 13) значение "13+1"(текст), а не "14"(число). поэтому я бы использовал команду #math. синтаксис у нее, в данном случае, такой же. так что ничего даже мало-мальски менять не придется. но это просто рекомендация, мало ли у кого проблемы возникнут.
это то, что за 10 минут беглого ознакомления заметил.
а так вроде все должно работать.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 26.11.05, 01:04:18
Спасибо за обнаруженную багу, Urza. Что же касается #var, то #math конечно лучше - просто и так работает. Интересный результат получается:
#var a {1+1};#var b 2;#if {$a==$b} #showme {$a=$b}. Вот такая забавная зверушка эта jmc :)
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 26.11.05, 03:04:32
та да. все через одно место.
Грилин, ты будешь смеятся - я еще багу нашел :P
{#var cast 3; кол про $ctar}} {5} {default}
ПРОклятье по порядку идет раньше ПРОзорливости. если у кастера выучено проклятье - будет прокл вешать. добрый такой обкаст.
ну как правится объяснять не надо. "про" меняем на "прозор". там в нескольких местах, разумеется.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Грилин от 26.11.05, 12:01:34
Просто когда писались триггера, "про" соответствовало "прозорливости". Много воды утекло с тех пор. Например, раньше "ко не" вешало невидимость, а теперь создает светящийся шарик. А в Особняке что бы отпереть сейф достаточно было набрать "отп сей", а теперь - "отп 2.сей". Вообщем, Аланна хотела как лучше, а получилось - как всегда.
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Urza от 26.11.05, 20:16:21
Цитировать
Вообщем, Аланна хотела как лучше, а получилось - как всегда.

ай-ай попортили бедному триггеры :))
Название: Что должно быть в обкасте и как его повестить на триггер
Отправлено: Deyar от 26.11.05, 20:34:49
Цитировать
Вот как раз об этом (поддержание чара в игре на автопилоте, встать/попить и сбегать за пирожками /поесть, я разговаривал с Морисом лично летом 2004-го года, я специально интересовался его мнением на этот счет.
Его ответ: если только попить в таве и сбегать к хоббиту за пирожком и покушать -- можно, и нарушением это не считается.

Вот. Отсюда ответ на сабж Фили о боте и о том, можно ли, чтоб

Цитировать
В клановом складе сидит бот и пишет логи. По команде любого клановца он считывает инвест, время и данные того, кто дал команду. По мере надобности он встает, выбегает в соседнюю комнату, кастует грибочек, кушает и бежит обратно на пост. Это продолжается круглосуточно. Т.е. вечно.

Ответ: МОЖНО!

И Аланнино

Цитировать
 [2] - может расцениваться как нарушение, если вы оставляете персонажа без внимания на длительный срок (поддержание присутствия персонажа в игре таким образом не допускается)


НЕВЕРНО!!!