Вернуться   МПМ Былины - Мир Древней Руси > Для игроков > Клиенты для игры

Клиенты для игры Все что связано с клиентами для игры. Jmc, MMC, ZMud etc...

Ответ
 
Опции темы Опции просмотра
Старый 15.01.2008, 11:16   #1
Перелес
Новичок
 
Регистрация: 28.08.2007
Сообщений: 19
По умолчанию Сканер локации

Играю в жабе, захотелось сделать что-то вроде сканера локи, чтобы скажем в доп.окне видеть, кто находиться в локе, кто пришел, кто ушел.
Даже будет достаточно, чтобы инфа отображалась без выводов сообщений о приходе\уходе.
Внимание вопрос: КАК узнать что в локе находится моб, они же не просто стоят??? кто бегает, кто разнюхивает...
Перелес вне форума   Ответить с цитированием
Старый 15.01.2008, 12:57   #2
Мичурa
Мадер
 
Регистрация: 10.09.2004
Сообщений: 167
По умолчанию

Цитата:
Сообщение от Перелес Посмотреть сообщение
Внимание вопрос: КАК узнать что в локе находится моб, они же не просто стоят??? кто бегает, кто разнюхивает...
Помоему нормально никак, т.к. вроде описание что в клетке моб может быть произвольным по фантазии билдера, и бывает что при команде "смотреть" нельзя понять на какое имя откликнется эта "куча чего-то копошащяяся тут".
Мичурa вне форума   Ответить с цитированием
Старый 15.01.2008, 13:44   #3
Перелес
Новичок
 
Регистрация: 28.08.2007
Сообщений: 19
По умолчанию

А не нормально, это перебирать че ли? должны же быть какие-то команды клиенту посылаться о том, что кто-то есть.

Последний раз редактировалось Перелес; 15.01.2008 в 13:45. Причина: не полное
Перелес вне форума   Ответить с цитированием
Старый 15.01.2008, 14:18   #4
Meles
Отличник форума
 
Регистрация: 13.11.2005
Адрес: Пермь
Сообщений: 822
По умолчанию

А что, "см" нажать лень и проанализировать кто в клетке стоит ?
Meles вне форума   Ответить с цитированием
Старый 15.01.2008, 14:19   #5
Лыдвицa
Отличник форума
 
Регистрация: 22.02.2006
Адрес: Славный город на берегах великой реки Ангары
Сообщений: 525
По умолчанию

Клиенту посылается только то, что ты видишь у себя на экране (плюс коды цветов).
Твоя задача решается созданием полной базы мобов.
Впрочем, если не учитывать мобов, которые просто стоят и ничего не делают, то можно ограничиться обработкой строк "пришёл-ушёл" и "сражается с".
Лыдвицa вне форума   Ответить с цитированием
Старый 15.01.2008, 22:30   #6
Devastator
Отличник форума
 
Регистрация: 18.10.2005
Адрес: Пермь
Сообщений: 273
По умолчанию

есть более менее ) прошлагодняя база мобов ) поищи на форуме автостаб от Ладона. хорошая штука кстати ) для откачки
__________________
Владение орфографией русского языка - это как кунг-фу, истинные мастера которого не применяют его без надобности.
Devastator вне форума   Ответить с цитированием
Старый 19.01.2008, 03:22   #7
Ladon
Отличник форума
 
Регистрация: 06.03.2004
Сообщений: 505
По умолчанию

Цитата:
Сообщение от Devastator Посмотреть сообщение
есть более менее ) прошлагодняя база мобов ) поищи на форуме автостаб от Ладона. хорошая штука кстати ) для откачки
автостаб это прошлый век... теперь время интеллектуальных тригеров пришло... Ж)

Код:
my %autoarg = ();
my $autoagrfile = "auto.txt";


sub get_color($$) {
# Параметры: строка с цветами в формате внутренних цветов mmc
# и номер символа в ней.
# Возвращаемое значение: цвет этого символа в диапазоне A..P
	return chr(ord(substr($_[0], 2*$_[1]+1, 1))+ord('A'));
}


trig {
	
		if (get_color($;, 1) eq 'J') {
			if (($tryDetectTarget == 0)) {
					echo("tryDetectTarget $tryDetectTarget");
					if (!defined($learnagr{$_})) {
						
						$tryDetectTarget = 1;
						echo("tryDetectTarget $tryDetectTarget");
						$detectString = $tryString = $_;
						
						$learnagr{$_} = $_;
						tryAgr();
				} else {
								$detectString = $tryString = $_;
								$safeagr = $learnagr{$_};
								if ($U::autotrip) {
									sendl("поднож $safeagr");
								}
								if ($U::autohide) {
									sendl("спрят");
								}
								echo ("бьем по базе - закол $safeagr");
								sendl ("закол $safeagr");
					}
			} else { #есть в базе
					
								$safeagr = $learnagr{$_};
								if ($U::autotrip) {
									sendl("поднож $safeagr");
								}
								if ($U::autohide) {
									sendl("спрят");
								}
								sendl ("закол $safeagr");
				
				}
		}

	} '(.*)', '1000fn-:LearnAgr';




sub tryAgr () {
	if ($tryDetectTarget == 1) {
		if (length($tryString) == 0) {
			echo("кончился tryString");
			$tryDetectTarget = 0;
			delete $learnagr{$detectString};
		} else {
			my @t = split(/[\,\s\-\.]/,$tryString);
			my $safeagr = $t[0];
			$safeagr =~ s/^(.*?).$/$1/;
			$target = $safeagr;
			echo("пробуем $safeagr");
			sendl ("закол $safeagr");	
			$tryString = "";
			for (my $i=1; $i<=$#t; $i++) {
				$tryString .= $t[$i]." ";
			}
			echo ("осталось в tryString $tryString");
			
		}
	}
}

trig {
	if ($tryDetectTarget == 1) {
		echo("нето, надо еще раз попробовать");
		tryAgr();
	} else {
		delete $learnagr{$detectString};		
	}

} '^Кого Вы так сильно ненавидите, что хотите заколоть \?', '1000fn-:LearnAgr';
	
trig {
	if ($tryDetectTarget == 1) {
		echo("заносим в базу \'$detectString\'  - $target");
		$learnagr{$detectString} = $target;
		$tryDetectTarget = 0;
	}
} '^(Вы мастерским ударом|Вы нанизали|Вам не удалось нанизать|Вы не смогли заколоть|.*просто передернуло от боли.|Вы воткнули)', '1000fn-:LearnAgr';


sub autoagrload {
		%autoarg = ();
		open (FILE,$autoagrfile);
		echo ($autoargfile);
		while (<FILE>) {
				
				chomp;
				my @f = split(/\|/);
				$learnagr{$f[0]} = $f[1];
				echo($_);
				#echo ("pkl $f[0] $f[1] $_ $pklist{$_}");
			}
		close FILE;
}
sub autoagrsave {
	open (FILE,">$autoagrfile");
	foreach (keys %learnagr) {
		print FILE "$_|$learnagr{$_}\n";
	}
	close FILE;
}


alias {
	autoagrload();
	} "агрзагрузить";

alias {
	autoagrsave();
	} "агрсохранить";
	
alias {
	enable('LearnAgr');
	autoagrload();
	} "агрда";
alias {
	disable('LearnAgr');
	autoagrsave();
	} "агрнет";
Ladon вне форума   Ответить с цитированием
Старый 19.01.2008, 03:25   #8
Ladon
Отличник форума
 
Регистрация: 06.03.2004
Сообщений: 505
По умолчанию

Если вкраце то этот набор тригеров пытается стабануть все что видит в клетке. Перебирает слова из описания моба усекая слово на 1 символ что бы не стабануть случайно какогонить чара. Все это дело сохранется в файл при желании. Файл можно править руками если очень хочется.
При обучении будет куча левого спама, но когда локация изучена тригами то стабы будут проходить быстро и безболезненно.
Главное не запустить автоагр гденибудь в городе, будет скорее всего больно.

примерный файл если бегать вокруг родовых будет выглядеть так:

Код:
(летит) Маленький мотылек кружит над головой.|мотыле
Лось бредет здесь, сшибая ветви развесистыми рогами.|Лос
Большой сом плавает здесь.|со
Маленький цыпленок ходит здесь.|цыплено
Грустный карп медленно плывет здесь.|кар
Хищная куница норовит незаметно подкрасться к жертве.|куниц
Черный, как смоль, грач важно вышагивает здесь.|гра
Большой пес возится здесь.|Большо
Подсобный рабочий, великовозрастный отрок стоит тут.|Подсобны
Усатый сом залег здесь на дне.|Усаты
(летит) Перепел с шумом выпорхнул у Вас из-под ног.|Перепе
(летит) Черный ворон кружит над полем.|воро
Крестьянка работает здесь.|Крестьянк
Пустельга перескакивает с кочки на кочку.|Пустельг
Серый лесной волк злобно рыча вынюхивает чьи-то следы.|Серы
Коршун высматривает добычу здесь.|Коршу
Веселый ерш играется в воде.|ер
Старший Агафон думает думку здесь.|Старши
(летит) Голосистый дрозд порхает с ветки на ветку.|дроз
Гадюка извивается у Ваших ног.|Гадюк
Белка сидит здесь.|Белк
Бестолковый Агафон тянет оглоблю влево.|Бестолковы
Летучая мышь спит вниз головой, зацепившись за стропила.|Летуча
Возница стоит здесь, дожидаясь очереди на мельню.|Возниц
Дикий степной конь вольно пасется здесь.|Дики
Сторож амбара, поигрывая мускулами, стоит тут.|Сторо
Крупный глухарь важно шествует мимо Вас.|глухар
Ползучий гад скользит в траве, выискивая поживу.|Ползучи
Дородный крестьянин похаживает здесь.|Дородны
Маленький сморщенный человечек прячется тут.|Маленьки
(летит) Тетерев-косач сидит на ветке здесь.|Тетере
Мелкая букашка копается здесь.|букашк
Молодой разбойник стоит тут.|Молодо
Небольшой бурундук с любопытством смотрит на Вас.|бурунду
Пугало отгоняет сорок от огорода.|Пугал
Рогатый жук ползает тут, покачивая рожками.|жу
Маленькая змея прошмыгнула у ног.|Маленька
(летит) Сова высматривает очередную жертву своими огромными глазами.|Сов
(летит) Длинноногий журавль гордо пролетает здесь.|журавл
Свинья роется в корыте.|Свинь
Охотник высматривает добычу здесь.|Охотни
Степной волк пробегает мимо.|Степно
Корова отмахивается от насекомых здесь.|Коров
(летит) Майский жук сидит тут.|Майски
Кабан роется под деревом, отыскивая молодые побеги.|Каба
Дятел сидит на дереве и долбит своим клювом по коре.|Дяте
Зеленая гусеница ползет здесь, извиваясь.|Зелена
(летит) Маленький воробей летает здесь.|воробе
Пушистый колонок вылез из-под корней в поисках добычи.|колоно
Жирный котяра вальяжно проходит тут.|котяр
(летит) Белый лебедь изящно выгнул шею.|лебед
Полевая мышка пытается скрыться в траве.|мышк
Темный силуэт навсегда неподвижно застыл в этом месте.|Темны
Маленький зайчик весело носится здесь.|Маленьки
Большой баран уперся в стену здесь.|бара
(летит) Белая чайка ловит рыбку здесь.|Бела
Разбойник крадется мимо Вас.|Разбойни
Петух важно вышагивает здесь.|Пету
Робкий тушканчик скачет здесь.|тушканчи
Большой дикий бык величаво пережевывает траву здесь.|дики
Молоденький лисенок играет здесь.|лисено
(летит) Дятел долбит ствол дерева своим крепким клювом.|Дяте
Черный паук плетет паутину здесь.|Черны
Гусеница ползет здесь, изгибаясь.|Гусениц
Хорек вынюхивает добычу.|Хоре
Юркий жерех плавает здесь.|жере
Рыжая лиса пробегает здесь, вынюхивая жертву.|Рыжа
(летит) Стрекоза летает тут, громка жужжа крыльями.|Стрекоз
Ежик шуршит в траве.|Ежи
Олень робко выглядывает из-за ветвей.|Олен
Маленький муравей тащит что-то в свой муравейник.|мураве
Пятнистый олень стоит здесь.|Пятнисты
Оскалившись, местный пес злобно смотрит на Вас.|пе
Голодная собака смотрит на Вас, виляя хвостом.|собак
Степной заяц пробегает здесь.|зая
Рыжая белка с пушистым хвостом скачет с ветки на ветку.|белк
Худой крестьянин плетется, уныло оглядываясь.|крестьяни
Лягушка квакает здесь.|Лягушк
(летит) Аист величаво кружит в небе.|Аис
Черный волк трусит мимо, выискивая поживу.|Черны
Мерин стоит привязанный здесь.|Мери
Усталая лошадь стоит, понурив голову.|Устала
Северянин Матовий стоит здесь. |Матови
...светится ярким сиянием |
(летит) Рябчик прыгает среди веток.|Рябчи
(летит) Дупель прячется среди веток здесь.|Дупел
(летит) Шмель жужжит у Вас над головой.|Шмел
(летит) Белобокая сорока выискивает, где что не так лежит.|сорок
Распряженный конь пожевывает зерно здесь.|Распряженны
Навья явилась из Царства мертвых, дабы не дать потревожить неупокоенные тела.|Навь
Тощая корова жадно жует гнилой клок сена.|коров
Карась плавает здесь.|Карас
Злая собака рычит на окружающих.|Зла
(летит) Кукушка сидит высоко на ветке здесь.|Кукушк
Вы заорали от боли, когда охотник схватил Вас горящими руками. |В
Кряжистый мукомол, во всем белом стоит здесь.|мукомо
(летит) Пестрый тетерев вспорхнул из-под Ваших ног.|тетере
(летит) Белобокая сорока кружит над огородом.|сорок
Батрак работает здесь.|Батра
Крестьянин работает здесь.|Крестьяни
Малиновка пробегает мимо Вас.|Малиновк
Маленькая пеструха снует между Ваших ног.|пеструх
Мышь-полевка бегает здесь.|Мыш
Рябчик прыгает среди веток.|Рябчи
Голодный волк пробегает в поисках поживы.|вол
Умертвие не в силах обрести вечный покой.|Умертви
Загорелая крестьянка недоверчиво осматривает Вас.|крестьянк
(летит) Летучая мышь проносится мимо.|Летуча
Волк отдыхает здесь. |Вол
(летит) Седоголовый лунь кружит в поисках добычи.|лун
Пятнистая рысь изогнула спину перед прыжком здесь.|Пятниста
Тонкий елец плавает здесь.|еле
Небольшой сурок трусливо выискивает, куда бы спрятаться.|суро
Рыжая плутовка-лиса пробегает мимо.|Рыжа
Бекас спрятался в траве.|Бека
(летит) Большой рой комаров мешает тут Мише.|ро
(летит) Куропатка спряталась здесь.|Куропатк
Серая мышь пытается юркнуть в подходящую норку.|мыш
(летит) Куропатка бродит по полю, выискивая зерна.|Куропатк
(летит) Шмель летает тут, грозно жужжа.|Шмел
Колючий ежик семенит на коротких лапках.|ежи
Глухарь сидит на ветке.|Глухар
Дятел долбит ствол дерева своим крепким клювом.|Дяте
Маленькая юркая ласка прошмыгнула мимо Вас.|ласк
Гусь злобно шипит на Вас.|Гус
Юркая длиннохвостая ящерица норовит прошмыгнуть мимо Вас.|ящериц
Худая кобыла покусывает удила.|кобыл
Быстрый окунь проплывает здесь.|окун
Взрослый разбойник внимательно осматривается здесь.|Взрослы
Северянин Вислоус стоит здесь. |Вислоу
(летит) Сойка перескакивает с ветки на ветку, выискивая укромный уголок.|Сойк
(летит) Сапсан кружит здесь, высматривая добычу.|Сапса
Быстрый таракашка бегает тут.|таракашк
Речная крыса прошмыгнула у Ваших ног.|крыс
(летит) Хищный коршун камнем падает вниз, заприметив цель.|коршу
(летит) Чибис волнуется в траве.|Чиби
(летит) Черный, как смоль, грач важно вышагивает здесь.|гра
Курица кудахчет и ищет корм.|Куриц
Овечка отдыхает здесь.|Овечк
(летит) Крупный ястреб зорко осматривает окрестности в поисках жертвы.|ястре
Рыбка с красным пером резвится здесь.|Рыбк
Зеленый кузнечик прыгает по травкам.|кузнечи
Камышовый кот тихо крадется мимо Вас.|Камышовы
Охотничий пес выслеживает добычу.|Охотничи
Небольшая безногая ящерица проскользнула у Ваших ног.|ящериц
(летит) Нахохлившаяся сова сидит на ветке.|сов
Волк готовится к нападению здесь.|Вол
Белый гусь громко зашипел на Вас.|гус
(летит) Летучая мышь спит вниз головой, зацепившись за стропила.|Летуча
Огородник-работяга ухаживает за огородом.|Огородни
(летит) Остроглазый сокол высматривает очередную жертву.|соко
Утка плавает здесь, мерно крякая.|Утк
(летит) Небольшой канюк кружит в поисках добычи.|каню
Небольшая степная лиса пробегает мимо.|Небольша
(летит) Белый журавль гордо пролетает здесь.|Белы
Заведующий амбаром слепо щурится на Вас.|Заведующи
Скользкий налим плавает здесь.|нали
Заяц-русак сиганул через полянку.|Зая
*Мертвяк стоит здесь. |*Мертвя
Шустрая норка прошмыгнула мимо Вас.|норк
Полоз скользит в траве.|Поло
Выпь орет здесь не человечьим голосом.|Вып
Маленькая мошка надоедает своим жужжанием здесь.|Маленька
Сильный Агафон ковыряется вилами в носу.|Сильны
Маленький паучок пробует сплести паутину здесь.|Маленьки
Улитка медленно ползет здесь.|Улитк
Маленький муравей что-то несет.|Маленьки
(летит) Стремительный кречет гоняет здесь полевых жителей.|крече
Заяц бегает по огороду.|Зая
(летит) Грач ищет зерна в земле.|Гра
(летит) Маленький комар так и норовит укусить Вас здесь.|Маленьки
Бешеный пес смотрит вокруг красными глазами.|Бешены
Красный маленький муравей ползает здесь.|Красны
(летит) Черный ворон с недобрым глазом ищет добычу здесь.|Черны
Теленок отдыхает здесь.|Телено
(летит) Крупная дрофа неуклюже вспорхнула из-под Ваших ног.|дроф
Суслик встал на задние лапы, настороженно озираясь.|Сусли
Бурый медведь пробирается между ветвей.|медвед
Заяц проскакал мимо, запутывая след.|Зая
Паучок ползает здесь.|Паучо
(летит) Ворона пролетает здесь.|Ворон
(летит) Перепел прячется здесь.|Перепе
Мышь-полевка быстро бежит к своей норке.|Мыш
Медленный рак ползает по дну.|ра
(летит) Черный шмель летает от цветка к цветку.|шмел
Робкая косуля пугливо смотрит по сторонам.|косул
Зеленая лягушка раздувает здесь свои пузыри.|Зелена
(летит) Черный грач кружит над огородом.|гра
Злобная щука плавает здесь.|Злобна
Грациозная косуля робко щиплет травку, внимательно оглядываясь по сторонам.|косул
(летит) Белая капустница летает тут.|Бела
Барсук сноровисто копается в земле в поисках пропитания.|Барсу
Тур проходит мимо, ломая сухой кустарник.|Ту

Последний раз редактировалось Ladon; 19.01.2008 в 03:31.
Ladon вне форума   Ответить с цитированием
Старый 19.01.2008, 22:06   #9
Devastator
Отличник форума
 
Регистрация: 18.10.2005
Адрес: Пермь
Сообщений: 273
По умолчанию

А я ждал когда ты запостишь новый автостаб))
__________________
Владение орфографией русского языка - это как кунг-фу, истинные мастера которого не применяют его без надобности.
Devastator вне форума   Ответить с цитированием
Старый 23.01.2008, 18:24   #10
Ladon
Отличник форума
 
Регистрация: 06.03.2004
Сообщений: 505
По умолчанию

думаю тебе больше автостабы не потребуются
этого хватит до конца Былин.
Ladon вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 04:06.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot