1

Тема: повторяющиеся приемы

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

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

чо делать - хрен знает(

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

2 вопроса:
1) как сослаться на другой файл приемов?
2) как все же в одной строке осуществить пробежку бота по всем необходимым приемам, не тратящим ход? но при этом код должен занимать 1 из 20 слотов

2

Re: повторяющиеся приемы

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

У меня все работает, что я делаю не так ?

3

Re: повторяющиеся приемы

ммм а как их между собой разделить? просто ";"?

4

Re: повторяющиеся приемы

пробывал через else, не получилось

5

Re: повторяющиеся приемы

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

У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

то есть пасивный прием, а за ним активный(тратящий ход), а верно понял?

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

Re: повторяющиеся приемы

и реально ли сделать дабы заземлялка + в группе противников всегда юзалась в первого до 5 раз с задержкой в 10 ходов цели..............эт ваще на пол листа код должен быть))) tongue

8

Re: повторяющиеся приемы

Раз (Please log in or register to see this URL)
два (Please log in or register to see this URL)

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

У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

ZhEkA_BK пишет:

Раз (Please log in or register to see this URL)
два (Please log in or register to see this URL)

Нужно вписывать приемы так, чтобы они как можно реже были активными на одном ходу и удовлетворяли условию.


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

10

Re: повторяющиеся приемы

У меня нет магов персонажей, поэтому скрипт не могу  показать.
По воинам могу сказать, что можно в один слот вписывать колотые раны и усилки, т.к. после юза колотых усилки не работают 1 ход.
Второй момент, разве в БК слотов под приемы больше 20ти? Помоему 20, и в боте 20. Всего должно хватать. Один и тот же прием с разными условиями точно можно в один слот вставлять, т.к. он сам с собой конфликтовать не будет smile

У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

о количестве слотов под приемы я молчал neutral эт у создателя топика на 2 круга приемов не хватает)))и еще вопросик, а возможно ли пару ботов запускать одновременно?? писали куки надо чистить.....я удалял....не получается, выкидывает то одного, то второго  sadааа и совсем забыл, вот в пещерах боты есть у которых к примеру 100Нр а у элитных как правило в % Нр, и кое какие приемы....ну та же гравитация не срабатывает, что сделать в таком случае????буду премного благодарен smile

Отредактировано Хожу прицепом (2013-02-02 19:20:06)

12

Re: повторяющиеся приемы

поиск надо юзать smile
(Please log in or register to see this URL) 2й пост
На счет приемов на боссах можно разве что использовать условие по имени противника. Больше ничего в голову не приходит, т.к. с таким не сталкивался
Update: туплю...просто используй условие не по прямому количеству хп, а по процентному содержанию.

Отредактировано ZhEkA_BK (2013-02-03 02:21:08)

У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

ZhEkA_BK пишет:

просто используй условие не по прямому количеству хп, а по процентному содержанию.


if(top.Battle.oBattle.oEnemySlot.nHP > 950)
_name = "wis_earth_gravity10"; - сейчас так! сделать так: EnemySlot.nHP > 50%??

14

Re: повторяющиеся приемы

Вот тема по приемам, с которой должен ознакомиться каждый новичок (Please log in or register to see this URL)
вот так

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) > 50)
_name = "wis_earth_gravity10";
У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

Жека, тебе говорили что ты ЛУЧШИЙ!!! big_smile

16

Re: повторяющиеся приемы

ZhEkA_BK пишет:

У меня нет магов персонажей, поэтому скрипт не могу  показать.

Второй момент, разве в БК слотов под приемы больше 20ти? Помоему 20, и в боте 20. Всего должно хватать. Один и тот же прием с разными условиями точно можно в один слот вставлять, т.к. он сам с собой конфликтовать не будет smile

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

17

Re: повторяющиеся приемы

if((top.Battle.oBattle.arrRes["spirit"].innerHTML > 5) && typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_earth_shield"]) != "object")
_name = "spirit_block25";
{
if(top.Battle.oBattle.oMySlot.nMagic > 150)
{
if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"]) != "object")
{
_name = "wis_gray_manabarrier10";
}
else
{
    if(parseInt(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"].GetTitle().innerHTML.match("<B>(\\d+)<\\/B>")[1]) < 150)
        _name = "wis_gray_manabarrier10";
}
}
}
if((typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_earth_sign"]) != "object") && (top.Battle.oBattle.oMySlot.nMagic > 100))
_name = "wis_earth_sign";
if((top.Battle.oBattle.oMySlot.nMagic < 200))
    _name = "wis_white_meditation";

когда собрал все вместе, ваще слот не срабатывает.... мб дело в в маг барьере, т.к. у него есть скобочки после ;

а ваще посетила идея сделать настройки приемов путем добавления слотов в файл с настройками... smile

<?xml version="1.0" encoding="windows-1251"?>
<Methods>
  <Priem1>
  </Priem1>
  <Priem2>
  </Priem2>
  <Priem3>
  </Priem3>
  <Priem4>
  </Priem4>
  <Priem5>
  </Priem5>
  <Priem6>
  </Priem6>
  <Priem7>
  </Priem7>
  <Priem8>
  </Priem8>
  <Priem9>
  </Priem9>
  <Priem10>
  </Priem10>
  <Priem11>
  </Priem11>
  <Priem12>
  </Priem12>
  <Priem13>
  </Priem13>
  <Priem14>
  </Priem14>
  <Priem15>
  </Priem15>
  <Priem16>
  </Priem16>
  <Priem17>
  </Priem17>
  <Priem18>
  </Priem18>
  <Priem19>
  </Priem19>
  <Priem20>
  </Priem20>
  <Priem21>
  </Priem21>
  <Priem22>
  </Priem22>
  <Priem23>
  </Priem23>
  <Priem24>
  </Priem24>
</Methods>

добавить 25,26 итд... попозжу попробую)

18

Re: повторяющиеся приемы

Идея хорошая, может и прокатит smile Только лучше не в файл с настройками, а в файл учетной записи, и не забыть, что там синтаксис немного другой.

У меня все работает, что я делаю не так ?

Re: повторяющиеся приемы

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

if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"]) != "object")
_name = "wis_gray_manabarrier10";
else
if(parseInt(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"].GetTitle().innerHTML.match("<B>(\\d+)<\\/B>")[1]) < 100)
_name = "wis_gray_manabarrier10";


и вот такая примочка в конце почти каждого приема    _break = true;  по словам автора избавляет от круговорота мыслей в голове)))

Отредактировано Хожу прицепом (2013-02-10 21:13:53)

20

Re: повторяющиеся приемы

ZhEkA_BK пишет:

Идея хорошая, может и прокатит smile Только лучше не в файл с настройками, а в файл учетной записи, и не забыть, что там синтаксис немного другой.

не совсем понял, файл учетки разве содержит нужные данные? и что с синтаксисом? разжуй плз smile roll

Хожу прицепом пишет:

и вот такая примочка в конце почти каждого приема    _break = true;  по словам автора избавляет от круговорота мыслей в голове)))

дык маг барьер то я выложил выше(правда в своей редакции). а что за примочка? возвращает в начало списка приемов?

Отредактировано Rapidshe (2013-02-11 19:23:21)

21

Re: повторяющиеся приемы

В общем случае бот юзает за ход все приемы по соответствующей очереди . Но, если, например, в 7 слоте после приема добавить строчку _break = true; с необходимым условием, то, теоретически, бот, когда будет выполняться это условие, будет юзать приемы дойдя до 7го заново с первого, и так, пока не перестанет выполняться условие. Хотя я могу ошибаться.
Только что перечитал учетку, данные о приемах она содержит, но уже в зашифрованном виде smile Поэтому начинать нужно как ты и писал, с добавления приема в method файл. В нем уже синтаксис тоже не такой немного, вместо знака ">" надо ставить "gt", вместо "<" ставить "lt". Если не прокатит, такое добавление, то можно вставить лишний прием например в слот 6, сохранить настройки, зайти в файл учетки и в 6 приеме увидеть примерно следующее

<Priem6>MprbLZoRxcvW7hUqEkNtHogrT+OmGPT7ZMAOHH45PWMuI0geBnzJl54p1TPqqIRIbB5PtKenlSL9HHVcDL3kU7YRxqzi4yRwBPTlxKlRz6z5JBZ9+wZ9oYjmHuRaENE7nFJlxbi0VIVuuiHZOYk3VPedEu9NQ4cbFnzhk1COOxLOQ/LcDOsn9BZcHu8wFPqJbQKM2n5QYJ24JiSue8Wvanjjbd/YUfS0up5EVYDhWao5Xm2kTdFHCeoUl+DTXad+</Priem6>

Скопировать эту хрень, поменять тэг Priem6 на Priem26 и вставить в конце приемов. Ну это чисто догадки smile

У меня все работает, что я делаю не так ?

22

Re: повторяющиеся приемы

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

23

Re: повторяющиеся приемы

Я же говорю, можно, но при условии, что они не будут пересекаться.
Т.е. вписываешь например первым приемом усилки, если набралось 5 тактик атаки, затем через энтер вписываешь поступь смерти, если контрударов набралось 8 и получишь вот такое:
Если у бота 5 тактик атаки, то он заюзает усилки,
если 8 тактик котры, то он заюзает поступь,
НО если у бота 5 тактик атаки и 8 контры одновременно, то бот заюзает усилки, а про поступь забудет, и заюзает ее только тогда, когда будет выполняться только ее условие.
Лично я таким не пользуюсь, т.к. мне 10-12 слотов с головой хватает.
Если учесть, что в БК у персонажа максимум 20 слотов с разными приемами, то остается целых 5 слотов в боте на использование карманов и свитков. Неужели мало? smile
Разные условия под один и тот же прием 100% можно запихивать в один слот бота при любых комбинациях.

У меня все работает, что я делаю не так ?