Page 2 of 19
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-07-24 08:08:48
by Juicy Fruit
Gromiz wrote:а "мультитть" клиент инжектом научите автоматом?

Если только кнопочку сделать в лаунчере, что–то типо «сделать мульти») это рассматривалось, но пока что не делали)
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-03 23:48:35
by semolo13
Вам акк мой нужен? ) Или можно забрать, бо мне крафт нужен))))))
я заберу, окей? Там все равно авторегистрация 4 акка на айпи..
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-05 11:18:08
by Андрюха из Одессы
Есть ли возможность запилить передачу информации из клиента в журнал инжекта, без костылей, как хотелось реализовать
здесь?
Еще бы радовала возможность сворачивать условия, циклы, массивы или целые скрипты, если много скриптов в одном файле. Либо сделать интеграцию в notepad++ или sublime text.
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-05 13:10:01
by Juicy Fruit
Андрюха из Одессы wrote:Есть ли возможность запилить передачу информации из клиента в журнал инжекта, без костылей, как хотелось реализовать
здесь?
Еще бы радовала возможность сворачивать условия, циклы, массивы или целые скрипты, если много скриптов в одном файле. Либо сделать интеграцию в notepad++ или sublime text.
В скриптовом модуле есть некоторые функции по работе с файлами статики:
Code: Select all
UO.SetMulPath(Path) - Установить путь к папке с *.mul файлами (map*.mul, statics*.mul, staidx*.mul, tiledata.mul). Path - строка.
UO.SetShowZ(Mode) - Установить режим отображения Z координаты в информации. 0 - отключить, 1 - включить. Mode - число.
UO.GetLandscapeTile(X, Y, Map) - Получить ИД тайла земли в координатах X,Y на карте номер Map. X, Y, Map - числа. Возвращает строку.
UO.GetStaticTiles(X, Y, Map) - Получить ИД всех тайлов статики в координатах X,Y на карте номер Map. X, Y, Map - числа. Возсращает строку.
UO.GetTileFlags(TileGroup, TileID) - Получить флаги тайла соответствующей группы (TileGroup=0 - Landscape Tile, TileGroup=1 - Static Tile). TileGroup - число, TileID - строка. Возвращает строку.
Contains(Source, Flag) - Узнать, входит ли Flag в набор Source. Source, Flag - числа. Возвращает 1 если Source содержит Flag и 0 если нет.
GetLandscapeTile возвращает информацию в формате TileID, при включенной ShowZ в формате TileID(Z)
GetStaticTiles так же, как и GetLandscapeTile, но перечисляет все тайлы статики, находящиеся в заданных координатах через запятую. Если тайлов статики не обнаружено - вернет пустую строку.
При ошибке возвращают строку -1.
Можно через эти функции сделать автомарк не сходя с места, вот пример как пользоваться:
Code: Select all
sub Test()
uo.setmulpath('E:\Ultima Online') #Путь к мулам
UO.SetShowZ(true)
var tileid = uo.getstatictiles(uo.getx(), uo.gety() + 1, 0) #Сюда вписываем координаты, где искать тайлы
uo.print('tileid='+tileid)
if tileid=='' then
uo.print('Тут нет статики.')
return
endif
dim tiles[20] #20 хватит думаю
dim tinfo[2] #Буффер для tile_id, tile_z
var l=Str2Tiles(tiles,tileid)
var i
if l>0 then
for i=0 to l-1
if (tiles[i]==tree_tile) then
Str2IDZ(tinfo,tiles[i])
#Это тайл дерева, пишем его в файл или куда-то там в формате (tinfo[0] X Y tinfo[1])
#tinfo[0] - это TileID, tinfo[1] - это TileZ
endif
next
endif
end sub
Sub Str2Tiles(a,s)
var i,l=len(s),b='',ptr=0
if not l then
return 0
endif
for i=0 to l-1
if s[i]<>',' then
b=b+s[i]
else
a[ptr]=b
b=''
ptr=ptr+1
endif
next
a[ptr]=b
ptr=ptr+1
return ptr
end sub
Sub Str2IDZ(a,s)
var i,l=len(s),b='',ptr=0
if not l then
return 0
endif
for i=0 to l-1
if s[i]<>'(' and s[i]<>')' then
b=b+s[i]
else
a[ptr]=b
b=''
ptr=ptr+1
endif
next
return ptr
end sub
Не запускал, но по-идее должно работать, это всё в цикл сунь на нужную дистанцию и для каждого тайла смотри, что там есть.
Список тайлов деревьев где-то был, в скрипте вот указатель на тайл дерева tree_tile
Сворачивалку/разворачивалку сделаем когда до скрипт.дллки доберемся. Пока что инжект.длл и лаунчер насилуем)
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-05 13:21:03
by Андрюха из Одессы
Спасибо, буду разбираться с тем, что ты предложил.
Сворачивалка не к спеху, чисто в качестве косметического тюнинга будет хороша.
С sublime`ом я сам поковыряюсь. Уж очень мне запал в душу этот редактор.
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-08 20:39:56
by Gromiz
все скачивается нормально о.О
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-08 23:31:20
by CxC
Mirage wrote:эммм парни, а куда вы дели запятую перед командами?
Juicy Fruit wrote:Ага, он теперь _
В конфиге поменяй на старый, это для новых клиентов, там с , пишет в чат))
это где что поменять?

Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-08 23:41:04
by RL_ka
CxC wrote:Mirage wrote:эммм парни, а куда вы дели запятую перед командами?
Juicy Fruit wrote:Ага, он теперь _
В конфиге поменяй на старый, это для новых клиентов, там с , пишет в чат))
это где что поменять?

injection.xml
prefixchr="44"
вроде 44, забыл уже точно
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-08 23:42:54
by semolo13
Я вас люблю!

Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-09 15:30:54
by SilverOZ
А в следушем релизе зделати штоб инжект сразу можна была запустити пару окон можна будит?
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-10 11:12:37
by CxC
реализуема ли функция как "On\Off Hotkeys"? Половина клавиатуры биндов, писать в игре крайне неудобно. А так бы снял галочку и пиши, поставил - бегай ) Если б еще это и через команду вкл\выкл - вообще шикарно
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-10 12:15:39
by RL_ka
CxC wrote:реализуема как "On\Off Hokeys"? Половина клавиатуры биндов, писать в игре крайне неудобно. А так бы снял галочку и пиши, поставил - бегай ) Если б еще это и через команду вкл\выкл - вообще шикарно
Когда-то, когда я ещё не занимался инжектом я делал всё намного проще.
Я биндил через опции клиента, а не через хоткеи инжекта... и кнопки работали, и макросы:)
say ,exec blablabla
А по поводу реализуемо или нет - пока еще не смотрел:)
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-10 14:18:08
by Juicy Fruit
Вполне реализуемо, может быть в сл. релизе сделаем, пока с гампами хочется соорудить конструкцию, саппорт 5 последних хотяб
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-10 19:52:08
by VeL
В версии 1308.08 появился досадный баг, после перемещения предмета из одного места в другое, через некоторое время перемещенный предмет отрисовывается на старом месте, например кидаю через massmove предметы из пака в контейнер, после переброски некоторые предметы как бы лежат в паке, но на самом деле их там нет, при повторном открытии пака они исчезают. Так же часто стало крашить...
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-10 20:13:54
by CxC
VeL wrote:В версии 1308.08 появился досадный баг, после перемещения предмета из одного места в другое, через некоторое время перемещенный предмет отрисовывается на старом месте, например кидаю через massmove предметы из пака в контейнер, после переброски некоторые предметы как бы лежат в паке, но на самом деле их там нет, при повторном открытии пака они исчезают.
да, есть такое, тоже заметил
насчет крашей - крашнуло за весь день 1 раз ни с чего. отключил TWI, пока без него пробую.
еще такой вопрос. эту версию инжекта надо пускать через совместимость и дуалкор лаунчер? )
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-12 15:26:13
by pussaley
Придумайте что-нить, чтобы можно было с журналом работать полноценно.
Пример:
Есть строка местоположения игрока I'm in Nujelm ( координаты ). Возможно ли запилить в инжект что-нить, чтобы из этой строки убрать ненужное I'm in и координаты и оставить только Nujelm.
В прогах EasyUO и OpenEUO есть такая возможность, в инжекте что-то не знаю подобного ... возможно ли сделать такое?
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-12 15:49:40
by Mirage
это можно сделать скриптом.
Например посмотреть конду лопате или деньги на чеке
Code: Select all
sub DeedCond()
var name, ob = '0x4036E779', X=300 ; минимальное количество
UO.TextOpen()
UO.TextClear()
uo.DeleteJournal( )
UO.Click( ob )
wait(1000)
name = UO.GetName( ob )
name = explode (name, ' Gold', 0)
name = explode (name, 'on ', 1)
if val(name) < X then
UO.Print( name )
else
UO.TextPrint( 'Чеее?!?!?!? Нет денег!!!!!' )
endif
endsub
sub ItemCond()
var name, ob = '0x40E34CC4', X=50
UO.TextOpen()
UO.TextClear()
uo.DeleteJournal( )
UO.Click( ob )
wait(1000)
name = UO.GetName( ob )
name = explode (name, '[', 1)
name = explode (name, ']', 0)
if val(name) == X then
UO.TextPrint( name )
else
UO.TextPrint( 'чё то не так' )
endif
endsub
Sub explode( string, pattern, num )
var i, counter = 0, entry = 0
for i=0 to strlen( string ) -strlen( pattern )
if mid( string, i, strlen( pattern ) ) == pattern then
counter = counter + 1
if num == counter-1 then
return mid( string, entry, i-entry )
endif
entry = i + strlen( pattern )
endif
next
if entry == 0 then
return false
endif
return mid( string, entry, strlen(string)-entry )
endsub
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-16 20:51:41
by wap
Вот так сюрприз.

P.s. Рекомендую включить на форуме "быстрый ответ" - удобная штука и совершенно безобидная. Для включения нужно активировать опцию и в глобальных настройках, и в настройках каждого раздела в отдельности.
Опция появилась в стандартном phpbb3 в версии 3.0.6.
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-23 14:15:02
by Yoko
memberlist.php?mode=viewprofile&u=23970Dear yoko, thankyou for you great efforts on uo and injection,
i just wanna ask you if it is possible todo or not adding fallowing function on injection.
adding a send packet command with usage scripting function thus, some servers have connector software and this software send special packets to confirmation and stay connected just after choosing character and logging into world, if adding send packet command we can write and small script and can fake this msj to use injection and its benefits.
Regards.
here is the example data sending from connector to server via client.
18:30:40.326 Client -> Server: 0x12 (Macro/Cast), frequ: 4, len: 0x6F
0000: 12 6F 00 FB 39 38 33 32 63 39 63 33 61 30 31 37 ->.o..9832c9c3a017
0010: 66 39 34 30 30 36 39 63 62 32 65 61 34 33 63 64 ->f940069cb2ea43cd
0020: 62 64 38 30 36 62 33 61 64 64 36 30 2C 32 38 37 ->bd806b3add60,287
0030: 66 37 39 38 30 62 32 39 31 64 64 37 39 39 31 35 ->f7980b291dd79915
0040: 30 62 62 62 65 64 62 33 39 62 64 30 61 31 35 66 ->0bbbedb39bd0a15f
0050: 34 34 32 61 65 2C 30 30 30 36 37 32 36 36 30 30 ->442ae,0006726600
0060: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 00 ->00000000000000.
Re: [Обновление! / Update!] Injection 2013
Posted: 2013-08-26 15:03:19
by RL_ka
Обновление (26.08.13):- Исправлен баг с обновлением скилла Алхимия в инжекте. Теперь он реагирует на изменения в игре
- Исправлен/устранён лаг при использовании Buy/Sell функций инжекта
- Исправлен баг ilaunch из-за которого у некоторых пользователей не запускался инжект
- Исправлена команда infogump. Иногда она обрезала первый и последний символы в информации о гампе
- Исправлен баг последней версии инжекта из-за которого он не всегда регистрировал сообщения сервера
- Исправлен баг с "дублированием" перемещённых предметов. Временный фикс, требует дальнейших доработок
- Ilaunch теперь имеет свой собственный номер версии, чтобы избежать путаницы в дальнейшем
- Добавлена команда SaveHotKeys Filename или uo.savehotkeys(Filename) для сохранения настроек горячих клавиш персонажа. Настройки сохраняются в %InjectionDir%/Hotkeys/%Filename%
- Добавлена команда LoadHotKeys Filename или uo.loadhotkeys(Filename) для загрузки настроек горячих клавиш персонажа. Настройки загружаются из %InjectionDir%/Hotkeys/%Filename%
- Добавлена команда help или uo.help() для имитации нажатия на кнопку Help клиента
- Добавлена команда infogumps [num]. Аналог infogump. Выводит информацию о последних 5 гампах. При использовании параметра num выводит информацию о гампе номер num
- Добавлена команда uo.LastGumps(). Аналог uo.LastGump(). Принимает те же параметры что и LastGump, плюс несколько своих:
uo.LastGumps('count') - возвращает количество последних гампов сохранённых в памяти инжекта.
uo.LastGumps('text',0,4) - Вернет строку текста под индексом 4 из гампа с номером 0. Последний гамп будет всегда под номером 4.
Порядковые номера гампов с самого старого до самого последнего {0, 1, 2, 3, 4}
Скачать полный установщикUpdate (26.08.2013):- Fixed a bug with updating Alchemy skill inside Injection. Now it will react to in game changes.
- Fixed a lag when using Injection Buy/Sell functionality
- Fixed an ilaunch bug that would not start Injection in some cases
- Fixed infogump command. It no longer truncates leading and trailing character in gump information.
- Fixed a bug with that affected recent Injection versions when it would not always register server messages properly.
- Fixed a bug with “doubling” items on move. Still a temporary fix that needs additional work
- Ilaunch now has a separate revision numbering to avoid possible confusion in future
- Added SaveHotKeys Filename / uo.savehotkeys(Filename) command for storing characters hotkey settings. Settings are written to %InjectionDir%/Hotkeys/%Filename% folder.
- Added LoadHotKeys Filename / uo.loadhotkeys(Filename) command that loads hotkey settings for the character. Loads from %InjectionDir%/Hotkeys/%Filename%
- Added new help or uo.help() function that imitates pushing paperdoll “Help” in the game client
- Added infogumps [num] command similar to infogump that retrieves the information about the recent 5 gumps. If num parameter is supplied prints the information about gump number specified.
- Added uo.LastGumps() command similar to uo.LastGump(). It accepts all LastGump arguments plus a few additional:
uo.LastGumps('count') - returns a total number of gumps stored in Injection memory.
uo.LastGumps('text',0,4) - would retrieve a text line with index 4 from gump number 0 with current gump always being 4.
Gumps are ordered 0-4 from the oldest to the mosts recent.
Download full installer