PDA

Просмотр полной версии : Пишу бота, нужна помощь


cvillian
08.09.2017, 21:02
Привет всем кто ещё здесь появляется :)
Есть вопрос - как внедрить карты подземелий, т.е. как понять когда нужно подсунуть нужную карту? Есть какой-то пакет с кодом локации?

SeregaZ
08.09.2017, 21:05
эм... а разве третья координата в loc - как раз не высота? по ней наверное ориентироваться над. ежели ниже по высоте, значит под землей - каты.

cvillian
08.09.2017, 22:07
Да, но речь идёт не только о катах, а например о ТоИ или круме. Волкер и L2Net как-то могут показывать карты этажей и не понятно как огранчить радиус действия карты по X Y.

Вот ещё есть системное сообщение о Проклятом Оружии. В нём даются координаты, надо как-то перевести их в локацию :(


LA2: "SystemMessage" size: 35 prot: 268 $10C
Addr: Size: Type: Description: Value:
0000 2 word psz 35 | $0023
0002 1 byte ID 98 | $62 'b'
0003 4 integer MsgID $s2 was dropped in the $s1 region. ($00000717)
0007 4 integer typesCount 2 | $00000002
000B 4 integer type 7 | $00000007
000F 0 vardat caseTypeZone
000F 4 integer x 7218 | $00001C32
0013 4 integer y -17066 | $FFFFBD56
0017 4 integer z -3632 | $FFFFF1D0
001B 4 integer type 3 | $00000003
001F 0 vardat caseTypeItem
001F 4 integer ItemID Demonic Sword Zariche ($00001FFE)

SeregaZ
09.09.2017, 00:53
эм... как бы я сделал: взял скриншот карты ладвы. и побежал бы в один из краев. куда можно добежать. кароче нашел бы самые большие значения Х и У, так-же самые малые. что-то типа креста на карте получилось бы. вот от них уже потом и строй примерное местоположение меча.

твой бот l2ultra случаем шифрацию не обходит? :)))

Smwr
09.09.2017, 11:08
вся карта поделена на регионы.

public static int WORLD_X_MIN = 15;
public static int WORLD_X_MAX = 26;
private static short getRegionOffset(int x, int y)
{
int rx = x >> 11; // =/(256 * 8)
int ry = y >> 11;
return (short) (((rx + Config.WORLD_X_MIN) << 5) + (ry + Config.WORLD_Y_MIN));


подсмотреть значения x/y min можно в исходниках явы своих хроник (код выше из lucera interlude). вообще, мне кто то говорил, что они везде одинаковы, однако значения с интерлюда не подошли к хф (хотя вероятно я где то накосячил), но т.к. я у себя карты не использую забил на это дело.

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

ScythLab
09.09.2017, 12:13
Я отдал это на откуп пользователю, если в текущем регионе несколько слоев карт, то пользователю показывается ComboBox с выбором слоя, не думаю что ты сможешь это грамотно разрулить в автоматическом режиме.
Игровые координаты в координаты игровой зоны переводятся очень просто:
BlockX = (X div 32767) + OffsetX

cvillian
09.09.2017, 13:11
эм... как бы я сделал: взял скриншот карты ладвы. и побежал бы в один из краев. куда можно добежать. кароче нашел бы самые большие значения Х и У, так-же самые малые. что-то типа креста на карте получилось бы. вот от них уже потом и строй примерное местоположение меча.
про многоэтажные локации: пробежаться по ним, глянуть высоту на каждом этаже и выдавать карту в зависимости от высоты.

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

твой бот l2ultra случаем шифрацию не обходит? :)))
Шифрация это не про меня :)

покопался немного в L2Net - там используется файл такого формата: 19_18.jpg|19|18|-4599|32767, т.е. по всей видимости карты действительно подсовываются по высоте.

С сообщением о проклятом оружие пока не понятно

Smwr
09.09.2017, 14:13
С сообщением о проклятом оружие пока не понятно

в клиенте есть метод

wchar_t *__thiscall FL2GameData::GetZoneName(FL2GameData *this, float, float, float)


либо ручками из датника (скорее всего, ZoneName-e.dat)

cvillian
09.09.2017, 16:14
в клиенте есть метод

wchar_t *__thiscall FL2GameData::GetZoneName(FL2GameData *this, float, float, float)


либо ручками из датника (скорее всего, ZoneName-e.dat)

судя по разбору скорей подходит HuntingZone-e.dat

id hunting_type level unk_1 loc_x loc_y loc_z extra affiliated_area_id name
4 1 25 0 5106.00000000 126916.00000000 -3664.00000000 a, 1 a,Cruma Marshlands\0

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

Но конечно если не разобрать 1 системное сообщение - то не страшно :)

SeregaZ
09.09.2017, 20:30
кстати! а можно ли как-то узнать коим образом файлы клиента запакованы? user.ini хочу с валхаком - так как не тормозит, когда там все полосами вместо текстур. прям кайф играть и на замесах, ну и на последнем месте конечно видно за стеной всех врагов. этой цели даж и не было... но файлик чем-то сверху накрыт и file edit'ы - ни один из всей кучи не читает. там даж хедера нет. обычно там пишет линейдж 413 скажем. а тут-же нет такого. вот хотелось бы расковырять, подставить эти вх параметры и запаковать. попытался взять незапакованный user.ini с вх и вписал туда айпи сервера и подсунул. логин прошел, а вот дальше пишет что user.ini изменен, дескать пройдитесь обновлятором клиента для восстановления. хотя раз логин прошел, значит клиент может понимать и стандартную запаковку... просто где-то стоит проверка на размер или хэш файла - как узнать где и как исправить?

ScythLab
10.09.2017, 01:23
SeregaZ, гварды перехватывают функцию чтения файлов, смотрят начальную сигнатуру, если файл зашифрован гвардом, то файл расшифровывается и возвращается движку в готовом виде, если сигнатура не гвардовская, то управление передается оригинальной функции ла2 и дальше все работает как-будто гварда здесь и не было.

SeregaZ
10.09.2017, 18:18
и все-же он залупнулся, что дескать файл изменен и не пустил дальше. видимо надо искать не столько момент распаковки\запаковки, сколько некую таблицу где лежит например размер файла. изменив значение там - система успокоится.

cvillian
16.09.2017, 17:52
Обнаружил странную фигню. Допустим я передаю другому чару или кладу на склад предметы, которых нет у второго чара(или на складе), допустим 5 передаю, а 10 у меня остаётся.
Тогда мне приходят 2 пакета InventoryUpdate - 1-й добавляет мне в инвентарь 5 предметов с новым обжект ай-ди, а второй изменяет количество предметов на 10 у старого обжект ай-ди. И получается что у меня в инвентаре после этого 2 одинаковых предмета.
Никак не пойму как разрулить...

Получается как-бы что сервер создаёт у меня в инвентаре новый предмет с новым обжект ай-ди и его передаёт. Но как мне его отфильтровать не понятно

SeregaZ
16.09.2017, 18:52
сложно понять о чем ты :) инвентори апдейт 2 штуки не может приходить. приходит 1 на персонажа. второй значит на 2 персонажа. тогда все верно и путанницы нет.

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

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

cvillian
17.09.2017, 11:43
В том-то и дело что одному персу приходят подряд два пакета.

Добавлено через 13 часов 38 минут
Возможно это особенность конкретного сервера.
Сделал пока так:

if (item.isStackable)
{
L2Item duplicate = Vars.Inventory.GetItemByID(item.id);
if (duplicate != null && item.objId != duplicate.objId)
continue;
}

SeregaZ
17.09.2017, 14:28
тада второй пакет это не инвентори апдейт - может это пакет диалога передачи? когда торгуешь с другим персонажем - ты сначала по одному выкладываешь разные итемы в торг. видимо вот то что ты выкладываешь ты сам и видишь тоже, в смысле это движение пакетов что из инвентаря убрали столько то. то есть некий промежуточный момент. после подтверждения торга ничо не происходит, так как инвентарь уже предварительно отминусованный, а ежели нажать отмену, тогда согласно моей теории должен прийти опять инвентари апдейт, но уже с плюсом.

cvillian
24.09.2017, 21:03
Сейчас вот думаю как хранить настройки - такие как атковать или нет моба, спойлить или нет и т.п. Я сделал сохранение настроек в XML - если сериализовать весь список мобов да ещё с настройками - будет ппц наверное. Чего бы придумать...

alexov
25.09.2017, 04:41
Я тоже храню настройки в XML, у меня самый жирный файл настроек на фулл-пати вместе с типами мобов спойлом и всем чем только можно придумать занимает 25kb. не считаю что это много. тем более что при прокачке через сеть он сжимается до 2kb

cvillian
25.09.2017, 11:21
а как хранится настройка на 1-го моба? Это отдельный класс?

Smwr
25.09.2017, 12:29
если сериализовать весь список мобов да ещё с настройками - будет ппц наверное. Чего бы придумать...
у тебя хард на 2мб наверное?

SeregaZ
25.09.2017, 14:11
не в харде дело, а в оптимизации. хоца чтоб находило что надо со скоростью света :) а когда массив будет боооооооооооооооольшой, то это надо впустую пол массива перебрать, чтоб нашелся тот что нужен.

Smwr
25.09.2017, 15:34
и как это относится к хранению?

ScythLab
25.09.2017, 17:20
SeregaZ, формат данных и способ хранения данных - немного разные вещи.
Если ты собираешься хранить инфу по всем игровым объектам, то можно использовать какую-нить легкую БД, либо сделать свое сортированное хранилище, сложность (читай скорость) поиска в таком хранилище логарифмическая.

alexov
25.09.2017, 18:46
Я немного не улавливаю зачем хранить инфу о игровых объектах? они же уникальны для игровой сессии. В конфиге для кача нужно хранить только ID типов мобов которых надо бить. Их от силы пару штук

<MonsterIDs>
<int>1001234</int>
</MonsterIDs>

Вот у меня эт выглядит как-то так. это что много? :D

SeregaZ
25.09.2017, 19:19
так и я о чем :) а то некоторые заладили 2 мегабайта 2 мегабайта :)

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

alexov
25.09.2017, 21:36
А у меня иконка большую часть занимает)) WPF тупой её копирует несколько раз, для файла, для приложения для окна. 3-4 штуки получается.

Smwr
26.09.2017, 00:04
Я немного не улавливаю зачем хранить инфу о игровых объектах? они же уникальны для игровой сессии. В конфиге для кача нужно хранить только ID типов мобов которых надо бить. Их от силы пару штук

<MonsterIDs>
<int>1001234</int>
</MonsterIDs>

Вот у меня эт выглядит как-то так. это что много? :D

у меня всё хранится в json (с индентацией), чистые настройки ~25кб, до сегодняшнего дня даже не знал, сколько это весит, ибо до фени.
не о том заморачиваешься

SeregaZ
26.09.2017, 00:45
пили структуру :)
мобайди
имяеслинадо
спойл
атака


а я чот подумал про свою песню в ехешнике... я ж лепил везде не разбираясь 4 байтную .i - может надо было .a - 1 байтную. типа если нота у меня от 0 до 95. вполне в .a влазит. там от 0 до 255. повтыкал где можно эту .a, посмотрел на результат - 60 килобайт выиграл... тьфу :) лучше бы насчет анимации думал. чот пока не получается эта сраная анимация...

alexov
26.09.2017, 04:22
Smwr, ты не то зацитировал) Вопрос то не я задавал. я отвечал)

ScythLab
26.09.2017, 16:59
alexov, информация может быть двух видов:
1) настройки автоматики - это байты и килобайты
2) какие-либо полезные данные об игровых объектах (списки мобов, умений, предметов)
(2) может занимать сотни кБ и даже несколько МБ, но в любом случае, данных не слишком много и даже самые жирные списки исчисляются в пределах 10-20 тысяч записей.

cvillian
27.09.2017, 16:53
пили структуру :)


у структур пролема с привязкой к элементам управления, придётся классы

SeregaZ
27.09.2017, 17:58
эм... вобще меня не слушай :) я французским не владею... классы или структуры разницы не знаю. в моем PureBasic все просто, я думал везде так просто :)

типа:
structure mob
id.i
flagaataka.a
flagspoil.a
name$
endstructure
Dim MassivMoby.mob(1000)

хотя было бы удобней, если в ладве мобы бы шли по порядку по возрастанию айди. но там как попало какая-то часть есть, где-то провал. в идеале было бы сделать чуть по другому - узнать максимальный айди и влепить размер массива по максимуму. то есть массив гонять тогда в цикле не нужно, пока нужный id попадет. а сразу id чтоб был номером в массиве. неудобство что из-за этих провалов в нумерации - стотыщьпятсот ячеек в массиве будут незаполнены.
structure mob
flagaataka.a
flagspoil.a
name$
endstructure
Dim MassivMoby.mob(100500)

alexov
27.09.2017, 20:09
было бы удобней, если в ладве мобы бы шли по порядку по возрастанию айди. но там как попало какая-то часть есть, где-то провал. в идеале было бы сделать чуть по другому - узнать максимальный айди и влепить размер массива по максимуму.

Dictionary (https://ru.wikipedia.org/wiki/Ассоциативный_массив) тебе в руки.

SeregaZ
27.09.2017, 21:20
пробежался глазами... мало что понял с моими то тремя классами церковноприходской...

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

на сервере скажем 3 моба в файле:
id="3" mob="skelet"
id="5" mob="zombi"
id="6" mob="vampir"

первый вариант, массив меньше, но время доступа больше из-за необходимости цикла для кручения айди по массиву в поисках нужного:
Enumeration
#File
EndEnumeration

Structure mob
id.i
name$
spoilflag.a
atackflag.a
EndStructure

Dim Moby.mob(0)


If ReadFile(#File, "D:\moblist.txt")
; мотать файл до конца
While Eof(#File) = 0
; обнуление переменных
id = 0
name$ = ""

; читать строчку текста до символа перевода каретки
tmp$ = ReadString(#File)

; разбор строчки текста
id = Val(StringField(tmp$, 2, Chr(34)))
; Val() - превращение текста в цифру
; StringField - разбитие текста tmp$, по символу - Chr(34), то есть это кавычки
; и возврат 2 блока при разбитии
; сама текстовая строка выглядит так:
; id="3" mob="skelet"
; при разбитии по кавычкам:
; id= 1 блок
; 3 2 блок
; mob= 3 блок
; skelet 4 блок

name$ = StringField(tmp$, 4, Chr(34))

If name$
; если в переменной name$ что-то есть,
; то значит разбор прошел успешно
; надо увеличить массив на 1 единичку
size = ArraySize(Moby()) + 1
ReDim Moby(size)

; и внести туда данные
Moby(size)\id = id
Moby(size)\name$ = name$

EndIf

Wend

; закрыть открытый файл
CloseFile(#File)
EndIf

; теперь когда массив готов и приходят с сервера id мобов,
mobid = 3

; то получаем о них инфу:
For i = 0 To ArraySize(Moby())
If mobid = Moby(i)\id
Debug Moby(i)\name$
Break
EndIf
Next




вариант второй - цикл получается не нужен, чтение будет быстрее... но сам размер массива будет в разы больше с кучей пустых ячеек - в данном случае пустые будут 1, 2 и 4, а сам размер массива будет равен самому максимальному id.
Enumeration
#File
EndEnumeration

Structure mob
;id.i id в структуре становится не нужен. удаляем
name$
spoilflag.a
atackflag.a
EndStructure

Dim Moby.mob(0)


If ReadFile(#File, "D:\moblist.txt")
; мотать файл до конца
While Eof(#File) = 0
; обнуление переменных
id = 0
name$ = ""

; читать строчку текста до символа перевода каретки
tmp$ = ReadString(#File)

; разбор строчки текста
id = Val(StringField(tmp$, 2, Chr(34)))
; Val() - превращение текста в цифру
; StringField - разбитие текста tmp$, по символу - Chr(34), то есть это кавычки
; и возврат 2 блока при разбитии
; сама текстовая строка выглядит так:
; id="3" mob="skelet"
; при разбитии по кавычкам:
; id= 1 блок
; 3 2 блок
; mob= 3 блок
; skelet 4 блок

name$ = StringField(tmp$, 4, Chr(34))

If name$
; если в переменной name$ что-то есть,
; то значит разбор прошел успешно
; надо увеличить массив до числа id
size = ArraySize(Moby())
If size < id
ReDim Moby(id)
EndIf

; и внести туда данные
Moby(id)\name$ = name$

EndIf

Wend

; закрыть открытый файл
CloseFile(#File)
EndIf

; теперь когда массив готов и приходят с сервера id мобов,
mobid = 3

; то получаем о них инфу без цикла, используя id как номер в массиве:
Debug Moby(mobid)\name$

а вот с хранением инфы об галках атаки и спойла будут проблемы :) ежели всюююю инфу писать в файл, аналогично как лист мобов, то есть:
id="3" ataka="1" spoil="0"
id="5" ataka="1" spoil="1"
id="6" ataka="0" spoil="0"
то при изменении одного галимого параметра - придется переписывать веееееееесь файл. а что если во время записи произойдет ошибка? столько лет внесения в базу флагов атаки и спойла - все на смарку :)

можно конечно будет создавать отдельный файл с id в названии 3.txt:
ataka="1" spoil="0"
тогда изменение будет записываться в один маленький файл. удобно писать, удобно при потере информации - потеряется только 1 файл, основная база останется целой. но стописят тыщь файлов по 1 килобайту - жесткий диск скажет тебе большое "спасибо". он такую мелочь не любит.

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

alexov
27.09.2017, 21:32
пробежался глазами... мало что понял с моими то тремя классами церковноприходской...

Плохо пробежался, там есть пример для PureBasic:

; Создали ассоциативный массив.
NewMap Country.s()

; Заполнение массива данными.
Country("GE") = "Germany"
Country("FR") = "France"
Country("UK") = "United Kingdom"

Debug Country("FR") ; Вывод результата "FR" в отладочное окно.

; Перебор всех элементов с отображением их значений в отладочном окне.
ForEach Country()
Debug Country()
Next


У тебя просто проблема с базовыми типами данных, нужно взять книгу по твоему языку и почитать первые несколько глав, это сильно поможет.
И вообще, если не секрет, зачем разрабатываешь на такой экзотике? переходи на C++, Delphi, C# или Java лучше. Тогда проще будет ответы на вопросы находить

SeregaZ
28.09.2017, 14:48
так я не занимаюсь профессионально. на заре моих занятий херомантией стоял вопрос в том, что мне были нужны вин апи для автоматизации запуска наших непутевых налоговых программ. типа хочу чтоб все запускалось с 1 клика, а в стоке там надо было нажать туда, суда, ввести пароль и тд и тп. вот и попалась ссылка на этот PB... так и застрял :) за NewMap Country.s() спасибо, видимо действительно проглядел... пойду товарища на форуме пытать как это работает. не верится мне что все так просто :) зная раздолбайство разработчика моего недоязыка - думаю там все-таки цикл спрятан.

Добавлено через 15 часов 28 минут
посовещались на своем форуме :) скорость все-таки будет ниже из-за того, что обращение к массиву идет по текстовой переменной. с цифрами все-ж быстрее. но так очень удобно - не нужно следить за размером массива и удобно удалять. обычный массив в PB, если нужно удалить ячейку где-то в середине - потребует кучу танцев.

alexov
28.09.2017, 20:38
Возьмусь предположить что обращаться к словарю совсем не обязательно по текстовой переменной, подойдет любой объект. Если это не так, то автор языка действительно мудак. Но повторюсь, я в это не верю.

А вот типы которые лежат в словаре указываются при его создании, пример который я сбросил там .s - строка, все написано в документации (https://www.purebasic.com/documentation/reference/newmap.html), совсем не обязательно спрашивать товарища на форуме)

SeregaZ
28.09.2017, 21:08
так он на этом языке собаку съел :)

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

alexov
28.09.2017, 21:58
Шедевр на бейсике, ну это врядли :D Впрочем, удачи))

SeregaZ
28.09.2017, 23:29
шедевр шедевр :) онлайн база мелодий и саундэффектов сега игр для замены оригинальных звуков и мелодий Dune:
https://www.youtube.com/watch?v=P9FIDzWZNyQ

редактор графики юнитов:
https://www.youtube.com/watch?v=Qy2O9IMuoos

это причем из нового. а старого там уже на 50 тыщ строчек кода :) шедевр!

alexov
28.09.2017, 23:45
Много кода не всегда хорошо) это значит много копипасты. У меня вот бот на 4000 строк, раньше был на 10000. После следующего прохода рефакторинга я думаю останется 2000

SeregaZ
29.09.2017, 00:17
ну когда начинаешь - там да. много не оптимизированного в начале, но работает. потом смотришь и если совсем уж архазим, то переделываешь. когда мне нужны были биты - типа эвакуация кериолом с поля боя или еще чего, а там получается один байт отвечает за 8 параметров - биты. вот переводил это число в строку вида "00000000". отрезал в этой текстовой переменной нужное количество символов, делал условие если = "1" именно как текст в кавычках... то потом дали бит функции :) во многих местах пришлось переделывать, но скорость заметно возросла. с тех пор этот участок кода кочует из проекта в проект без изменений. очень удобно :)

ScythLab
30.09.2017, 16:03
alexov, сколько у тебя занимай блок автоматики? И примерно какой функционал там реализован?

SeregaZ
01.10.2017, 00:24
а я прям ну совсем бота так и не сделал :) у меня автоассистеры были. и тоже про оптимизацию кода не слышал никада :))) дичайший разбор инвентаря в поисках манны, но работал :)))
//разбор инвентаря для получения айди манны
#$1B:begin
countitem:= readh(4); //количество всех итемов
it1:=12;
it2:=13;
it3:=14;
it4:=15;
it5:=30;
base1item:=it1+(28*countitem);
iditema:=pck[it1]+pck[it2]+pck[it3]+pck[it4];

repeat
if (iditema=HStr('D8 02 00 00'))
then begin
idmana:= pck[it1-4]+pck[it2-4]+pck[it3-4]+pck[it4-4];

buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS('банки манны есть');
SendToClient;
break;
end;

it1:= it1 + 28;
it2:= it2 + 28;
it3:= it3 + 28;
it4:= it4 + 28;
it5:= it5 + 28;
iditema:=pck[it1]+pck[it2]+pck[it3]+pck[it4];

until it1 > base1item;
end;

alexov
01.10.2017, 13:35
alexov, сколько у тебя занимай блок автоматики? И примерно какой функционал там реализован?

657 строк на всю автоматику.
Но тут следует уточнить что это не чистые строки текстовых файлов, которые я даже не знаю как просуммировать кроме как руками, а строки которые считает инструмент Code Metrics. Он не считает переносы строк, скобочки, юзинги, енумы. Но например считает строки конечного автомата в который компилятор разворачивает async await. Как бы то ни было метрика хороша, потому что такой способ подсчета строк лучше коррелирует с его поддерживаемостью.

Так мало строк получилось потому что все написано в функциональном стиле. То есть на реализацию одной определенной функции уходит 1-10 строчек на Linq.

По функционалу писал уже в своей ветке, но можно повториться:
Килл мобов, спойл, манор. Фильтрация/сортировка целей по аггресивности, жив/мертв, ассисту сопартийцев, наложенным эффектам, хп, ID, расстоянию, проспойоленности/проманоренности/просвипанности. Бафы, снятие дебафов, оффпати, возврат в точку, следование за персонажем, убегать от агров к своим, сесть/встать на реген, хил, речарж, рес, сбор дропа
В привате по техническим причинам остаются пока уведомления о всевозможных событиях и по политическим причинам часть автоматики.

ScythLab
01.10.2017, 17:02
alexov, компактненько, хотя конечно Linq реально уменьшает некоторый код, но все равно компактно)

SeregaZ
02.10.2017, 01:38
ни у кого браузер не переходит на левые сайты, будучи здесь на coderx? у меня походу редиректит сам по себе.

alexov
02.10.2017, 03:27
Ищи вирусы на компе) Хотя щас бывает и сами сайты болеют, но этот вроде пока цел))

cvillian
04.10.2017, 20:11
А в каком пакете взять список скилов самона\пета ?

alexov
05.10.2017, 04:41
Когда мне нужно что-то узнать о пакетах я запускаю l2phx на виртуалке, захожу в игру и смотрю чо там ходит. Сначала сбрасываю фильтры потом ненужное фильтрую. Несколько релогов и все находится.
А вообще не уверен что такой пакет есть. Это у персонажа скилы нужно учить, поэтому сервер вынужден тебе присылать список. А скилы самона зависят только от лвл-а и профы, которые клиенту уже сообщили при логине. Так что по факту клиент может это сам вычислить., и я думаю он так и делает.

SeregaZ
05.10.2017, 14:57
а вдруг там шифрация? :) лпх может не помочь.

alexov
05.10.2017, 16:07
Ну для написания функционала смотришь на сервере без шифрации., а потом юзаешь где надо

ScythLab
05.10.2017, 17:42
На сколько помню все скиллы хранятся в самом клиенте (в каком-то из dat-файлов), а ты из этой таблицы по уровню питомца и его id получаешь список доступных.

Breadfan
05.10.2017, 18:57
ActionName-e.dat

SeregaZ
05.10.2017, 19:24
опять таки, некоторые горе-админы с прибабахом, которые "2 года закрытой разработки" - портят файлы клиента своей дополнительной шифрацией файлов клиента. в результате играть на таких серверах на старом компьютере невозможно :) слайдшоу. если на нормальном сервере аховое положение с фпсом спас бы валхак, то на таком "шифрованом" такое уже не прокатит.

Breadfan
06.10.2017, 08:12
Не переживай, это касается не только старых компьютеров.

Smwr
08.10.2017, 16:29
Много кода не всегда хорошо) это значит много копипасты. У меня вот бот на 4000 строк, раньше был на 10000. После следующего прохода рефакторинга я думаю останется 2000
4000 - это совсем чуть чуть :D.
у меня примерно столько (не считая кода сгенерированного дизайнером) с месяц назад занимала форма настроек (~ 700 контролов).

Не переживай, это касается не только старых компьютеров.
это всё корейцы

cvillian
09.10.2017, 00:41
ActionName-e.dat
Формат у него какой-то жуткий :)

Smwr
09.10.2017, 07:02
Формат у него какой-то жуткий :)

ничего жуткого, формат как и у всех других.
http://prntscr.com/guzylu
cat2_cnt - количество id, c[i] = id

alexov
09.10.2017, 07:40
4000 - это совсем чуть чуть :D.
у меня примерно столько (не считая кода сгенерированного дизайнером) с месяц назад занимала форма настроек (~ 700 контролов).

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

cvillian
11.10.2017, 13:52
ничего жуткого, формат как и у всех других.
http://prntscr.com/guzylu
cat2_cnt - количество id, c = id

да, только у некоторых cat2_cnt стоит отрицателное значение, -2, -3
как это разобрать непонятно

[I]Добавлено через 6 минут
вроде то что относится к сумону имеет type -1 и category 4,5

SeregaZ
11.10.2017, 15:14
может тип переменной не тот? типа вместо -1 должно быть что-то типа $FFFF, то есть 65535 если тип другой.

cvillian
11.10.2017, 23:40
такие цифры в файле

FrankJScott
06.05.2025, 22:03
For the guy talking about 4d slot login, cara main game online slot, game slot online, judi toto, tajir4d slot, situs situs slot terbaik, aplikasi judi slot uang asli, aplikasi bermain slot, slot online, situs judi slot resmi, I highly suggest this great tajir4d link alternatif tips (https://anthony3k26wfs3.wikissl.com/user) or game slot online resmi, togel dan slot online, habanero slot online, agen toto slot, daftar situs togel online terpercaya, judi casino online terpercaya, situs togel aman dan terpercaya, slot via pulsa, situs casino online, situs slot asli, not to mention this top rated login tajir4d url (https://alexander6o14pcm9.thebindingwiki.com/user) on top of nama situs slot online, slot situs online, slot joker gaming, situs slot terbagus, situs slot yang mudah menang, situs judi slot mudah menang, main slot apa, situs judi, nama situs judi slot, situs casino terpercaya, bearing in mind this that guy on tajir4d link alternatif link (https://maroonbookmarks.com/story19398714/slot-terbaru-dan-togel-online-terpercaya) which is also great. Also, have a look at this useful login tajir4d link (https://bookmark-nation.com/story19327750/toto-togel-slot-dan-situs-toto-slot) alongside all slot pragmatik play, web judi slot, game slot judi uang asli, aplikasi togel dan slot, judi slot online adalah, game pragmatic terbaru, deposit pulsa togel tanpa potongan, togel game online, deposit judi, bermain slot, not to mention this my latest blog post for tajir4d link (http://amachip.top/space-uid-36646.html) as well as bandar togel slot terbesar, situs game slot terpercaya, situs permainan slot, situs agen togel terpercaya, situs slot judi terpercaya, cool training on (https://augustnlfw09876.blogrenanda.com) alongside all slot bersama, situs2 slot, slot online joker, prediksi slot pragmatic, online situs, for good measure. Check more @ Great Tajir4D Link Alternatif Site (http://www.881.cz/forum.php?mod=viewthread&tid=1064&extra=) c285688

Добавлено через 4 часа 39 минут
In reply to the person talking about facials in florida, facial laser skin resurfacing, red light spa treatment, dermaplane skin treatment, laser for skin care, best facial led light therapy, dermal fillers for wrinkles, facial for fine lines and wrinkles, getting fillers, chemical peels body, I highly suggest this more tips here about laser treatment results info (https://bigboxdirectory.com/listings719228/best-facial-and-treatment-cellulite) or light treatment, matrix co2, dermal fillers where on face, best non surgical treatment for skin tightening, microneedling and makeup, best laser skin tightening, derma spa, best face laser treatment, botox dermal fillers, skin tightening spa treatments, alongside all this useful laser facial Sarasota link (https://limawebdirectory.com/listings733028/red-light-treatment-and-pdo-thread-lift) on top of skin tightening threads, about dermal fillers, tightening skin care, med spa service, best cosmetic fillers, red light therapy and dermal fillers, red light therapy sarasota, tissue tightening, treatment vampire facial, about lip fillers, not forgetting sites such as this web site for laser treatment spots face Sarasota info (https://phrasedirectory.com/listings13192005/skin-aesthetics-and-platelet-rich-plasma-therapy-facial) which is also great. Also, have a look at this new laser treatment in my area forum (https://directory-fast.com/listings930385/co2-face-laser-and-perfect-facial) as well as derma peel treatment, best pdo threads, plump lip injections, rich plasma facial, skin chemical peels, plasma therapy for skin tightening, rejuvenate 528 regenerative aesthetics medical spa, lip filler why, dermaplane peel, perfect derma peel treatment, on top of this killer deal about laser facial skin tightening site (https://joseph5e69aei6.wikiitemization.com/user) bearing in mind chemical peel for your face, best laser treatment for scars on face, best non surgical, lip fillers and lip flip, pdo threads for face, read what he said about (https://andretpja00987.articlesblogger.com) bearing in mind platelet rich plasma facial, non invasive aesthetics, skin care led light therapy, laser skin tightening face, skin care spa treatments, for good measure. Check more @ Top Rated Laser For Face Treatment Info (https://odessamama.net/forum.php?mod=viewthread&tid=351095&pid=459350&page=1&extra=#pid459350) 8568867

FrankJScott
15.05.2025, 21:13
In response to the people asking about massage down, lymphatic drainage massage what does it do, relax massage, i health massage, the best massage spa, lymphatic massage therapists near me, best day spa in, massage daily, rejuvenation therapeutic massage, massage with services, I highly suggest this see on Pyeongtaek business massage advice (https://ayden1b10peu7.thelateblog.com/profile) or melbourne massage services, body services spa, swedish massage, promoting lymphatic drainage, difference between deep tissue and therapeutic massage, massage reviews, hands down massage, the relax center, in the moment massage, muscles after massage, together with this enquiry for Pyeongtaek business massage tips (https://zhilexue.site/space-uid-37182.html) not forgetting sites such as rejuvenate through massage, proper massage, place to get massage, relaxation and therapeutic massage, touch massage and wellness, good massage and spa, powerful massage, body massage at home, relieve massage, deep tissue massage center, not to mention this new Pyeongtaek business massage info (https://webtechdirectory.com/listings13184285/business-trip-suwon-and-pyeongtaek-massage-review) which is also great. Also, have a look at this top rated Pyeongtaek business massage link (https://isaiah6k89bbb3.blogrelation.com/profile) bearing in mind western massage, spa for couples melbourne, jin massage spa, massage therapist come to my home, massage daily, therapeutic massage near me now, lymphatic drainage massage therapist, lymphatic drainage massage what is, massage therapist book, different massage therapies, not forgetting sites such as this agree with for Pyeongtaek business massage blog (https://arlinkdirectory.com/listings13206613/massage-phone-and-massage-specialist) together with massage jing spa, the weekend spa melbourne fl, massage ing, lymphatic drainage massage therapists near me, deep tissue massage reviews, read full report on (https://gregoryywqb32086.blogdomago.com) not to mention go for massage, best deep massage, excellent massage reviews, good massage reviews, massage good for you, for good measure. Check more @ Great Ad Blocker Tips (http://fantasticbombastic.net/cuckforum/index.php?topic=57565.new#new) c285688

FrankJScott
27.05.2025, 20:39
In reply to the people inquiring about link judi togel, slot terbaru online, link slot terpercaya di indonesia, permainan slot pg, di situs, joker gaming slot online, situs togel online terbesar dan terpercaya, slot gampang menang, di slot, daftar judi online, I highly suggest this additional hints on DVLTOTO forum (https://caidenyoai80358.evawiki.com/9593496/30_best_news_on_deciding_on_dvl_toto_sites) or situs togel terbesar, bandar togel dan slot terpercaya, slot game baru, slot yang terpercaya, situs online slot terbaik, game slot adalah, slot online 4d, situs judi yang terpercaya, slot online joker123, judi online situs, alongside all this more tips here for DVL TOTO advice (https://jaredtlan53108.atualblog.com/41589701/30-new-advice-on-picking-dvl-toto-sites) on top of slot online pragmatic play, jenis judi slot, permainan tembak ikan online, daftar judi slot terpercaya, slot pg soft terpercaya, link game judi slot online, situs bandar darat togel, slot online terbesar dan terpercaya, situs to slot, bandar togel dan slot terpercaya, and don't forget this learn more here about DVLTOTO details (https://judahaykk38270.blog5.net/80229786/30-recommended-suggestions-to-deciding-on-dvltoto-websites) which is also great. Also, have a look at this he said for DVLTOTO forum (https://claytontenw74185.fireblogz.com/66538942/30-best-facts-to-picking-dvl-toto-sites) together with link situs judi slot online, slot gampang menang, situs agen togel terpercaya, joker slot, joker slot login, judi slot online terbaik, permainan casino online, kumpulan situs judi slot, pendaftaran slot online, kami slot link alternatif, together with this helpful resources about DVLTOTO info (https://trentoniwbd16173.eveowiki.com/1521789/30_handy_info_to_deciding_on_dvl_toto_sites) as well as prediksi angka togel, slot pragmatic play, daftar slot online terpercaya, game tembak ikan online, slot game adalah, i loved this for (https://reidwmak81482.wikiworldstock.com) which is worth considering with web togel terbaik, online casino indonesia, slot game pg soft, daftar link slot online, bandar judi terpercaya, for good measure. Check more @ Top Laser Treatment In My Area Guide (https://fk.kjwzd.com/forum.php?mod=viewthread&tid=5887&pid=7418&page=1&extra=#pid7418) 5688670

Добавлено через 9 часов 42 минуты
For the guy inquiring about link pg slot, agen togel terbaik, slot bandar togel, daftar judi slot, slot online slot, slot situs, situs togel online terpercaya, game judi indonesia, menang menang judi slot, permainan joker slot, I highly recommend this advice for TAJIR4D Login advice (https://mysterybookmarks.com/story19572113/joker-gaming-slot-dan-situs-judi-online-terpercaya) or daftar judi slot online terpercaya, togel slot, judi slot terbaik, microgaming slot, game slot joker yang mudah menang, kumpulan situs slot online terbaik, link slot spadegaming, situs judi terbesar di indonesia, soft slot, slot uang asli, not to mention this do you agree for TAJIR4D Login blog (https://bookmarkinglog.com/story19612361/cara-main-slot-dan-master-togel-login) not forgetting sites such as slot dan togel terpercaya, link judi slot, situs judi slot terpercaya, judi slot itu apa, bermain togel, situs judi casino online terpercaya, permainan judi online, spadegaming slot, agen online terpercaya, slot microgaming, and don't forget this recommended TAJIR4D Login tips (https://andrew2l31hli5.kylieblog.com/profile) which is also great. Also, have a look at this cool Tajir4D forum (https://directory-nation.com/listings13484140/slot-mudah-menang-dan-situs-judi-slot-terpercaya) alongside all link situs slot terpercaya, slot pragmatic, slot game yang mudah menang, kami slot link alternatif, situs to slot, slot online situs, situs togel paling terpercaya, bermain togel, daftar situs togel online terpercaya, judi slot online terbaru, on top of this helpful hints for TAJIR4D Login link (https://yourbookmarklist.com/story19784184/togel-casino-dan-dewa-togel-online) not to mention situs judi terbesar dan terpercaya, slot link alternatif, slot terbaru online, slot judi terbaik, slot casino indonesia, he has a good point for (https://milormga11000.estate-blog.com) together with bandar togel casino, situs slot uang asli, situs bandar online, joker alternatif, ini slot, for good measure. Check more @ Great Tajir4D Guide (https://mem168new.com/forum.php?mod=viewthread&tid=205&pid=190869&page=436&extra=#pid190869) 8_4a201

Добавлено через 2 часа 11 минут
In response to the person talking about judi slot game, da slot, bandar judi slot online, game slot online terbaru, agen judi online terpercaya, situs game pragmatic, main slot menang, agen judi slot online terpercaya, I recommend this TAJIR4D Login (https://www.tajir4d.com/) for situs slot gampang menang, slot online resmi, situs togel online terpercaya di indonesia, situs slot sbo, togel situs, game online togel, situs judi slot online gampang menang, judi slot itu apa, also.
To the people asking about 10 situs togel terpercaya toto, permainan slot, agen resmi togel terpercaya, situs togel onlen, kami slot login, judi online situs, slot judi adalah, situs togel terpercaya di indonesia, I can vouch for this DVL TOTO (https://dvl22toto.com/) for judi online terlengkap, situs togel dan slot terlengkap, situs judi slot paling banyak menang, game slot yang gampang menang, situs togel bonus, slot yg gampang menang, bandar judi togel online, judi mesin slot online, also.
To the guy asking about keluaran togel singapore, angka keluar togel sgp, angka keluar sdy 2022, data angka keluar sgp hari ini, data togel singapore 2022, sgp pools live draw, hasil angka keluar hk, hasil keluaran sgp hari ini, I recommend this 7 RAJA TOGEL (https://7rajalottery.com/) for daftar situs togel terpercaya, angka togel yg keluar hari ini, angka togel singapura, keluaran togel singapore, keluar angka singapura, data togel singapore hari ini, hasil keluaran hk hari ini, prediksi no togel sgp hari ini, also. See More Great 7 RAJA TOGEL Site (https://ccc.dddd.kengracing.com/index.php?topic=5733.new#new) 50c5b33

Добавлено через 13 часов 36 минут
For the man asking about rugs and carpets for living room, best place to buy rugs for living room, carpet with a rug, rugs to hang on walls, joining carpet together, rug 1, best carpet for, rugs manufacturing process, carpet over carpet, floor rugs for home, I highly suggest this here are the findings about house cleaning service info (http://mutinyhockey.com/profile.php?mode=viewprofile&u=590897) or made to order area rugs, unique accent rugs, home interior rugs, carpet rug company, rug st, rug on carpet interior design, custom rug ideas, custom area rugs near me, project carpet, floor to floor carpet, together with this agree with about house cleaning service details (https://directorystumble.com/listings733639/maid-service-cost-and-house-cleaning-services-prices-in-australia) alongside all living room area rug size guide, carpet on carpet floor, room size area rugs cheap, best carpet for home, popular living room rugs, carpet ideas for home, luxury area rugs for living room, carpet in the wall, pattern carpet for living room, best place to buy wall to wall carpet, together with this updated house cleaning service url (https://gabriel9f93zaa6.dreamyblogs.com/profile) which is also great. Also, have a look at this top house cleaning service advice (https://directory-boom.com/listings13256844/window-cleaners-and-whole-house-carpet-cleaning-in-australia) on top of area rug with carpet, carpet beauty, living room carpet rug, links rug, local rug shops, difference of rug and carpet, pinterest rugs, floor carpet rug, carpet on carpet design, the rug company rugs, on top of this new house cleaning service url (https://directoryreactor.com/listings13195237/move-in-move-out-cleaning-and-ndis-approved-cleaners-near-me-in-australia) which is worth considering with pretty living room rugs, premium rugs, best size carpet for living room, carpet with pattern designs, carpet love, our site on (https://edwinkppm77788.illawiki.com) on top of cheap flooring carpet, carpet design floor, custom color rugs, colorful tufted rug, rug on the carpet, for good measure. Check more @ Updated Kasino Online Info (http://forum.2tpower.com/viewtopic.php?f=29&t=6522&p=58505#p58505) ef87f13

FrankJScott
29.05.2025, 19:12
In response to the lady talking about tropical aquarium fish species, live fish online store, lots of snails in fish tank, shrimp sellers, fish for home tank, cheap aquarium fish, cool looking aquarium fish, aquarium fish delivery uk, online snail store, freshwater fish distributors, fish of fresh water, water for snails, tropical fish breeders near me, shrimp for my fish tank, cheap cherry shrimp for sale, best fish for my aquarium, fish tank aquarium snails, live fish for sale online, tropical aquarium fish for sale, planted tank shrimp, I can vouch for this i loved this on freshwater shrimp species url (https://www.bigdogsbighearts.com/tropical-shrimp-for-sale-how-to-find-healthy-shrimp-for-your-aquarium/) for tropical fish for sale near me, aquarium fish aquarium fish, live freshwater fish, fish tank with snails, fish for home tank, tropical aquarium fish uk, freshwater invertebrates for sale, fish fish aquarium, fish to buy for tank, fresh water exotic fish, freshwater fish cool, exotic fish for sale uk, live red shrimp, buy fish tank fish online, cheap freshwater fish for sale, live fish, freshwater fish breeders, amazing freshwater fish, buy live shrimp, best snails for tropical fish tank, long freshwater aquarium fish, shrimp in aquarium with fish, live amano shrimp for sale, also. See More Cool Nutrition Supplements Guide (https://usaxii.com/forum.php?mod=viewthread&tid=2546&pid=11763&page=1&extra=page%3D1#pid11763) 130c9ac

FrankJScott
06.06.2025, 03:55
For the man asking about rtp slot untuk semua situs, situs resmi game slot, situs slot baru gacor, situs slot yang mudah menang, hari gacor slot, putaran slot hari ini, agen slot terpercaya gacor, menang banyak slot, mudah slot, slot fokus, I highly recommend this her comment is here on Kasino Chilli6 url (https://jeffreyzobm42075.dailyhitblog.com/40894913/30-handy-reasons-for-picking-kasino-online-websites) or situs casino88, game online gacor, slot seru, no slot, situs slot gacor hari ini terpercaya, para slot, slot rtp live, situs slot populer, permainan pilihan, apa itu rtp slot, as well as this my review here for buku mimpi tips (https://alexisurlc21008.collectblogs.com/80220774/30-pro-suggestions-for-picking-kasino-online-indonesia-websites) and don't forget slot gacor saat ini, situs hari ini, permainan slot yang mudah menang, slot game terbaik, website slot tergacor, popular slot, slot yang dapat bonus, to di slot, rtp slot gacor hari, situs slot promosi, not forgetting sites such as this my latest blog post on Chilli6 online info (https://elliottswac34556.birderswiki.com/1487920/30_free_reasons_for_deciding_on_main_slot_pakai_pu lsa_websites) which is also great. Also, have a look at this updated blog post on login kasino online info (https://spencervobj93681.wikimidpoint.com/5399318/30_great_ways_for_deciding_on_chilli6_online_websi tes) not forgetting sites such as situs game slot terpercaya, link to slot, link game slot terpercaya, rtp slot hari ini gacor, situs slot banyak promo, permainan slot yang gampang menang, situs slot yang resmi, macam macam situs slot online, slot gacor ini, permainan casino, alongside all this top rated slot online link (https://remingtonbtks24679.iamthewiki.com/8854918/30_great_tips_for_deciding_on_rtp_tinggi_sites) not forgetting sites such as nama situs slot online terbaik, situs besar slot, situs slot paling banyak bonus, game slot, game seperti slot, click for source for (https://elliotrnke22090.wikisona.com) on top of link gacor, situs rtp tinggi, games gacor, info gacor slot, sistem slot, for good measure. Check more @ Useful Investment Administration Planning Info (https://uokana.net/mybb/showthread.php?tid=616087&pid=1834952#pid1834952) 335_454

FrankJScott
13.06.2025, 04:59
In reply to the people talking about crypto growth, crypto payment website, start a crypto, web 3 in crypto, crypto meaning, payment by crypto, crypto customer support, crypto tel, career in crypto, website crypto, I highly suggest this i loved this on unigox non-custodial wallet forum (https://cristianmgyn54320.national-wiki.com/1542838/30_excellent_ways_for_deciding_on_unigox_blockchai n) or growth of crypto, p2p in crypto, payment by crypto, p2p crypto meaning, crypto company meaning, web 3 and crypto, crypto as payment, https crypto, growth crypto, crypto and web3, alongside all this see post for unigox p2p exchange info (https://raymondqgvh81471.yourkwikimage.com/1543922/30_new_ways_for_choosing_unigox_p2p_exchange) together with career in crypto, crypto payment meaning, krypto web, p2p crypto meaning, websites for crypto, growth of crypto, web3 payment, crypto as payment, p2p in crypto, starting in crypto, together with this sources tell me about unigox usdc wallet tips (https://damienfbqb69258.azzablog.com/35804710/30-great-tips-for-choosing-unigox-wallet) which is also great. Also, have a look at this official source about unigox wallet link (https://daltonivht64297.mysticwiki.com/1540056/30_free_pieces_of_advice_for_picking_unigox_usdt_e xchange) bearing in mind crypto growth, p2p in crypto, cool crypto websites, the meaning crypto, start crypto, crypto start, be meaning crypto, crypto payment website, career in crypto, start a crypto, and don't forget this excellent unigox wallet info (https://archeroerc08642.blogprodesign.com/56865511/30-best-suggestions-for-picking-unigox-trading-platform) not forgetting sites such as crypto company meaning, crypto contact, crypto growth, cryptocoin website, crypto paid, your input here for (https://lanexlsx36924.wikienlightenment.com) which is worth considering with crypto payment website, crypto how to start, crypto helpline number, the meaning crypto, crypto growth, for good measure. Check more @ Useful Ai Stock Predictions Platform Blog (https://diabolotreff.de/forum/showthread.php?tid=77&pid=54945#pid54945) 5688670

FrankJScott
14.06.2025, 16:40
To the person talking about living trust checking account, i need a good bank, best bank with, i need us bank, first financial bank loan application, best banks for checking accounts in florida, big bank companies, banks with trust departments near me, ratings of banks in usa, first financial bank checks, I highly recommend this high rated asset management url (https://x1490.com/20-pro-ideas-for-deciding-on-business-asset-administration-planning/) or first financial loan reviews, banks in san antonio texas, royal bank trust account, best financial banks, 1 united bank, open a private bank, bank lakeland, usa all bank name, great banks, trustco checking account, alongside all this top rated Cypress Jacksonville blog (https://ratingcasinobonuses.com/20-handy-pieces-of-advice-for-picking-business-banking-administration-advice/) not forgetting sites such as banks with trust services, best banks in san antonio, good bank to have, bank america, www trustco online banking, good bank reviews, f1rst financial bank, money in your bank account, trust savings account, best banks for online banking, on top of this web site on business banking in Jacksonville FL url (https://flintfable.co.uk/20-great-suggestions-for-choosing-business-asset-administration-planning/) which is also great. Also, have a look at this top bank near me in Melbourne FL site (https://datainquotient.com/20-new-pieces-of-advice-for-picking-business-portfolio-management-advice/) not forgetting sites such as best trust fund banks, community trust bank order checks, bank digital usa, corporate banking products, online banks with best customer service, community bank login, banks with online banking, bank community bank, bank recommendations, best banks to join, and don't forget this cool wealth management site (https://urbansgrovepro.com/20-great-pieces-of-advice-for-picking-business-wealth-management-planning/) alongside all top banking news, united bank online banking, top rated banks in texas, digital banking company, trust fund bank account, here are the findings on (https://elliotdwlw47035.iyublog.com) not forgetting sites such as us bank estate account, commercial bank & trust, first financial bank number, different banks, best banks in florida, for good measure. Check more @ Excellent Business Banking In Winter Haven Fl Info (https://wap2p.com/f/showthread.php?tid=16&pid=46323#pid46323) 2856886

Добавлено через 36 секунд
For the man inquiring about trustee savings accounts, investment banking system, first bank login, best bank to buy stock, christian banks in usa, top 10 banks to bank with, top 10 rated banks, online bank with best customer service, company bank, private trust bank, I highly recommend this experienced about bank near me in Jacksonville FL site (https://creativeboostplatinum.co.uk/20-handy-ways-for-choosing-business-wealth-administration-advice/) or type of bank accounts in usa, us trust bank, revocable trust bank account, best online banking system, 10 best banks, top financial company, acc banks, commercial bank and trust company, future of digital banking pdf, online trust account, which is worth considering with this excellent trust administration Winter Haven FL link (https://audioztorrent.net/20-great-facts-for-picking-business-portfolio-management-advice/) on top of best online banking companies, royal bank trust, first national bank private banking, best banks in austin texas, the bank loan, access to financial services, trustee savings accounts, best rated bank near me, banks all over the us, us bank trustee, as well as this top rated wealth management url (https://wanderwave.co.uk/20-best-suggestions-for-picking-business-banking-administration-advice/) which is also great. Also, have a look at this read this on portfolio management Winter Park FL advice (https://peakesvitality.com/20-excellent-ideas-for-picking-business-banking-management-planning/) as well as trust it bank, financial services pdf, good credit banks, www trustco online banking, digital financial services, banking services, community banks in florida, top rated bank in the us, banks in marshall texas, number 1 bank, on top of this from this source for portfolio management Naples FL link (https://casinosforus.com/20-top-reasons-for-choosing-business-wealth-administration-planning/) and don't forget trust services in banking, texas business bank, all digital banks, clear lake bank and trust clear lake, digital bank usa, find on (https://elliottlxis63186.wikipresses.com) bearing in mind security bank wealth management, big banks in florida, best east coast banks, usb bank online, top banks in miami, for good measure. Check more @ New Cypress Bank & Trust Jacksonville Website (https://mircalemi.net/showthread.php?tid=204086&pid=486314#pid486314) 2856886