PDA

Просмотр полной версии : Пращу помощьи с macro-сом


TEXAS
23.01.2007, 01:36
Проблема в @go
Мне надо макрос что бы продавал лут и лител на карту Но проблемма в том что на карту можно попасть через команду @go вот что смог зделать
вернее переделать.

### @Autoloot
automacro autoloot {
weight >= 1
call autoloot_cmd
run-once 1
}

macro autoloot_cmd {
do c @autoloot 100
}

automacro pereves {
location lou_fild01
weight > 50%
call sell
}

macro sell {
do relog 20
do c @warp prontera 113 42
do autosell
}

automacro whenrespawn {
location prontera
weight < 60%
call warp
}

macro warp {
do c @go 14
pause 2
do c @autoloot 100
pause 0.5
do move lou_fild01
eval AI::clear("sellAuto");
@release pereves
}

терь проблеммы:
1) при весе 50 не летит в пронту а просто останавливается и пишет Initiating auto-sell.

2)Не продаёт лут вроде тут прописано куда нести но он не продаёт даже если прилетел на карту.

Может что то надо подправить в config.txt ВЫРУЧИТЕ подскажите и помогите подправить и конфиг и макрос.
Заранее спосибо.

4epT
23.01.2007, 02:21
1. Тут можно и поменьше поставить, например 5. Кстати, а зачем релогиневаться?
do relog 20
2. Твой сервер поддерживает команду "@warp prontera 113 42" (другими словами если в клиенте это ввести он варпнится в пронту на кординаты 113 42)?
3. Тут нужно поменьше поставить (примено вест твоего этвипа + если ты закупаешь поты + 5% для "навсякий случай"):
weight < 60%
4. А эта строчка вообще нужна? Я бы удалил.
eval AI::clear("sellAuto");
5. @release pereves << правильно писать "release pereves"
6.в config.txt должно быть прописано

itemsMaxWeight 80
itemsMaxWeight_sellOrStore 80# << это чтоб он у тебя сам не пошёл продавать
(по конфигу так сказать)
itemsMaxNum_sellOrStore 99
cartMaxWeight 7900

sellAuto 0
sellAuto_npc payon_in01 5 49# << тут координаты нпц в пронте


СОВЕТЫ:
1. Напиши себе подсказки где бот запарывается и проставь паузы, чтоб успевать за макросом:
automacro pereves {
location lou_fild01
weight > 50%
call sell
}
macro sell {
log пересес, перелогиневаюсь
pause 3
do relog 5
log перелогинелся
log буду пытаться варпнуться =)
pause 3
do c @warp prontera 113 42
log варпнулся или пропустил этот пункт =)) такое бывает
log иду продавать
pause 3
do autosell
log продал
log макрос sell закончен
pause 3
}
Когда макрос заработает, все "log" можно удалить, а паузы сократить до 1 сек, либо тоже удалить
2. Разберись сначало с 1 макросом потом приступай ко 2-му. Приди на локацию lou_fild01 и набери в консоле macro sell - бот должен выполнить макрос от начала и до конца, если нет то смотри ошибки и исправляй их.
Для обновления макроса сначало сохрани изменения в файле macros.txt, затем в консоле набери "reload macro" иногда бывает, что автомакросы почему-то не обновляются (засоряется Иск.Инт.) - от этого спасает команда "ai clear".
3. См. пункт 2 и тоже самое со вторым макросом.
Кстати лучше не использовать automacro whenrespawn, иначе он всегда, когда будет в пронте и у него вес <60%, то будет варпаться.. Лучше это приобщить в первому макросу:

macro sell {
do relog 5
do c @warp prontera 113 42
do autosell
pause5
do c @go 14
pause 2
do c @autoloot 100
pause 0.5
do move lou_fild01
release pereves
}

ЗЫ: надеюсь ничего не упустил

TEXAS
23.01.2007, 18:45
4epT,
"@warp prontera 113 42" нет не поддерживает тока @go
prontera 113 42 а это продавец пронты

еще бывает пишет:Escape failed no portal found.
А кргда наберёт 50% то пишет Initiating auto-sell. и выходит из игры
приходится вручную писать команду @go 0 и приходится писать macro sell и только тогда идёт авто-продавать и варпатся на @go 14 и ити на карту собирать лут. И так всегда 50% и все заново самому делать.
Ты скажи что те надо знать про сервер и варпы я те скажу,вроде макрос работает но что что пропущено или может в txt файле поменять у меня там прописан координаты продавца тоже.
ВОТ что написано в txt
itemsTakeAuto 2
itemsTakeAuto_party 0
itemsGatherAuto 2
itemsMaxWeight 89
itemsMaxWeight_sellOrStore 89
itemsMaxNum_sellOrStore 99
cartMaxWeight 7900

lockMap lou_fild01

я просто всего 3 день с ботом разбираюсь и честно вообще в макросах не шарю и как их писать, пытался прочесть как их писать да только запутался.
Очень прошу допешите этот макро.
Что есть на сервере:
Работает только @go
Мне надо чтобы он с пронты варпался на @go 14 перешол на карту lou_fild01 собрал лут, варпнулся в пронту продал лут (продавец) prontera 113 42 и обратно варпнулся на @go 14 и перешол на lou_fild01 опять бил собирал и опять варпался в пронту @go 0 (Пронта) и так по кругу
Помогите написать.

4epT
24.01.2007, 00:52
попробуй так:

###@Autoloot###
automacro autoloot {
weight >= 1
run-once 1
call {
do c @autoloot 100
}
}

automacro pereves {
location lou_fild01
weight > 50%
run-once 1
call sell
}

macro sell {
log перевес 50%
log буду пытаться варпнуться =)
pause 3
do c @go 0
log варпнулся
log иду продавать
pause 3
do autosell
log продал
log буду варпаться на локу
pause 3
do c @go 14
log варпнулся
log иду в lou_fild01
pause 3

do move lou_fild01
log макрос sell закончен
release pereves
}
#©4epT

"lockMap lou_fild01" лучше очистить (оставить просто lockMap)
в config.txt должно быть так:


lockMap
lockMap_x
lockMap_y
lockMap_randX
lockMap_randY

saveMap
saveMap_warpToBuyOrSell
saveMap_warpChatCommand

sellAuto 0
sellAuto_npc prontera 113 42
sellAuto_standpoint
sellAuto_distance 5

storageAuto 0

хз надеюсь ничего не упустил...
тести, отпишешься

TEXAS
24.01.2007, 03:45
Блин ошибка лезет что то там с plugins/Macro/Parsr.pm

4epT
24.01.2007, 04:40
ну это уже совсем по минимуму урезаный:
automacro autoloot {
weight >= 1
run-once 1
call {
do c @autoloot 100
}
}

automacro pereves {
location lou_fild01
weight > 50%
run-once 1
call sell
}

macro sell {
do c @go 0
pause 1
do autosell
pause 1
do c @go 14
pause 1
do move lou_fild01
release pereves
}

чё за ошибка-то хоть? скопировал бы errors.txt
давай тести бягом я щас спать пойду

TEXAS
24.01.2007, 04:43
OpenKore version 1.9.3
Loaded plugins:
plugins/alertsound.pl (alertsound)
plugins/doCommand.pl (doCommand)
plugins/macro.pl (macro)
plugins/recordWarpNpc/recordWarpNpc.pl (recordWarpNpc)

Malformed UTF-8 character (fatal) at plugins/Macro/Parser.pm line 35, <FILE> line 29.
at plugins/Macro/Parser.pm line 35
Macro::Parser::parseMacroFile('control/macros.txt', 0) called at D:/Для игр/matrixro/БОТ VanRO/На золото/plugins/macro.pl line 102
macro::parseAndHook('control/macros.txt', 'HASH(0x3d078fc)') called at D:/Для игр/matrixro/БОТ VanRO/На золото/src/Settings.pm line 333
Settings::load(46) called at D:/Для игр/matrixro/БОТ VanRO/На золото/plugins/macro.pl line 66
macro::onstart3('start3', 'undef', 'undef') called at D:/Для игр/matrixro/БОТ VanRO/На золото/src/Plugins.pm line 374
Plugins::callHook('start3') called at openkore.pl line 193
main::__start() called at start.pl line 127

вот все что там есть

может у меня что то с файлами pm не то мож обгрейдить надо =\

4epT
24.01.2007, 04:49
понятно твой бот не воспринимает вообще никак русский шрифт:
Malformed UTF-8 character (fatal)
в файл config.txt помести строку "serverEncoding Russian", например:

master
server
username
password
char
sex

serverEncoding Russian

TEXAS
24.01.2007, 04:58
как ты сказал прописал
master
server
username
password
char
sex

serverEncoding Russian

нажимал на wxstart.exe выскакивало та же ошибка, окошко с ошибкой щас запустил через start.exe в окне написано:
This program has encountered an unexpected problem. This is probably beca
of a bug in this program. Please tell us about this problem.

The error message is:
Malformed UTF-8 character (fatal) at plugins/Macro/Parser.pm line 35, <FI
line 36.

greynext
24.01.2007, 17:57
TEXAS
У меня была подобная проблема.
Проверь, чтобы в файле config.txt содержалось следующее:
macro_readmanual red/chili
macro_nowarn 1
macro_orphans reregister
macro_debug 1
autoTalkCont 0
по крайней мере я вставил это и все заработало))
и еще добавь в файл timeouts.txt
macro_delay 5

teacher
28.01.2007, 00:08
сохрани все файлы в которых ты чтото изменял и писал на русскм языке чтото в кодировке UTF-8. неужели так трудно понять на что жалуеться программа?
ЗЫ надо было программирование в школе изучать...... ну или изучай если еще пока не закончил....
ЗЫЫ в одной из тем это было написано модером, что КИРИЛИЦУ НЕ НАДО использовать, или сохранять файлы в кодировке UTF-8.
Подсказка: один из плагинов тотал командера может это делать

RagnarokBot
28.01.2007, 09:08
teacher, сохранять в UTF можно также простым блокнотом.