Здравствуйте, гость ( Вход | Регистрация )

11 страниц V « < 5 6 7 8 9 > »   
Ответить в эту темуОткрыть новую тему
> Lua
WKnight
сообщение 11.9.2017, 18:12
Сообщение #121


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



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

От него как бы обычно строку ждут, а если он вместо нее число вернет, луа по-моему упадет.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 11.9.2017, 19:50
Сообщение #122


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Цитата
От него как бы обычно строку ждут, а если он вместо нее число вернет, луа по-моему упадет

А с чего ему падать то? Адреса кстати возвращаются не стрингом, а числом и ничего не падает (IMG:style_emoticons/default/smile.gif)


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 11.9.2017, 20:30
Сообщение #123


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Переделал.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 11.9.2017, 22:29
Сообщение #124


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



dl = dir("c:\\")
понял, что это надолго и нажал стоп скрипта. Пилот закрылся.

Тикет оказался актуальным:
table: 11
1 = "i:\!sandboxie\Crossout\drive\I\Crossout\bin\win64\steam_api64.dll"
2 = "i:\!sandboxie\Crossout\drive\I\Crossout\bin\win64\"
3 = "steam_api64"
4 = ".dll"
5 = "235600"
6 = "A"
7 = "01.12.2016"
8 = "0:51:52"
9 = "0"
table: 12
1 = "i:\!sandboxie\Crossout\drive\I\Crossout\bin\win64\xinput1_3.dll"
2 = "i:\!sandboxie\Crossout\drive\I\Crossout\bin\win64\"
3 = "xinput1_3"
4 = ".dll"
5 = "107368"
6 = "A"
7 = "18.04.2017"
8 = "20:18:24"
9 = "0"


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 11.9.2017, 23:33
Сообщение #125


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Кстати обрати внимание на поля. Опять лишние стринги (IMG:style_emoticons/default/smile.gif)


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 12.9.2017, 11:26
Сообщение #126


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Кнайт, у тебя плагины не отвалились? Опять сокеты ни в какую не могу завести... И дллки перекачивал, поставляемая с сокетом не захотела работать с пилотом(машина не стартанула с ней).


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 12.9.2017, 18:33
Сообщение #127


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



18:28:48 91 (autosaved_91.txt, 0): LuaSocket 2.0.2
18:28:50 91 (autosaved_91.txt, 0): 1 200 LuaTable HTTP/1.1 200 OK
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.9.2017, 2:42
Сообщение #128


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Пилот:

socket = require("socket")
log(socket._VERSION)
>LuaSocket 2.0.2

http = require("socket.http")
log(socket._VERSION)
>nil

socket = require("socket")
http = require("socket.http")
log(socket._VERSION)
>nil

http = require("socket.http")
socket = require("socket")
log(socket._VERSION)
>LuaSocket 2.0.2


Берем консоль поставляемую с плагином - проблем нет в любом сочетании, запросы шлет. Тут версии нет, запросы слать не пытается.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 13.9.2017, 18:14
Сообщение #129


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



После "require("socket.http")", "socket._VERSION" почему то перестает существовать, но запросы посылает. Проверял на шестой бете. Ведет себя точно так же как сейчас.
Код

--lua
socket = require("socket")
log(socket._VERSION)
local http = require("socket.http")
log(http.request{
    url = "http://uopilot.uokit.com/index_rus.php",
})


Сообщение отредактировал WKnight - 13.9.2017, 18:16
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 14.9.2017, 15:05
Сообщение #130


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Код
                tmp = {}
                findResult = findimage(
                    options.crds[1] .. " " .. options.crds[2] .. " " ..
                    options.crds[3] .. " " .. options.crds[4] .. " " ..
                    "(" .. options.path .. symbolName .. options.ext .. ") " ..
                    "%tmp " .. screenshot .. " " .. options.accuracy .. " -1 " .. options.deviation)
                --log("symoblName: ".. symbolName .. " findResult: " .. findResult)
                -- проверяем на возрват нуля или ошбики, со стрингом нормально не сравнить.
                if  findResult ~= "0" and string.find (findResult, "-") then
                    -- Напрямую вернуть таблицу в функцию нельзя из-за синтаксиса.
                    table.insert(crds,tmp)
                end

Кнайт, это просто вызов финдимиджа и проверка на < 1. Можно как-то поближе к реалиям? Параметры не через дикий стринг, результат тоже кстати приходит стрингом. Так же обрати внимание на таблицу - вроде бы приходит таблицей, но не исключаю, что и номера строк заданы стрингом и по сути это не массив, а таблица, тогда нарушается порядок нахождения изображений слева направо сверху вниз, т.к. таблица хранится не по порядку в отличии от массива. Результат нельзя вернуть в функцию, так же его нельзя вернуть во вложенный массив, например image.crds уже не даст никак.

При выбивании ошибки луа, она отображается за окном пилота, если он поверх всех окон - задалбывает еще больше, чем закрытие пилота после каждой остановки скрипта (IMG:style_emoticons/default/smile.gif)

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

Сообщение отредактировал DarkMaster - 14.9.2017, 15:07


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 14.9.2017, 17:10
Сообщение #131


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Кнайт, давай сделаем доп колонку в массиве от финдимиджа с процентом совпадения? Количество элементов в луа не актуально, т.к. #массив - вернет размер.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 18.9.2017, 12:37
Сообщение #132


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Код
crdsClear={{y=56,x=50,symbolName=3,},
{y=56,x=29,symbolName=2,},
{y=56,x=99,symbolName=2,},
{y=56,x=9,symbolName=5,},
{y=56,x=69,symbolName=5,},
{y=56,x=19,symbolName=4,},
{y=56,x=59,symbolName=4,},
{y=56,x=89,symbolName=4,},
{y=56,x=40,symbolName=7,},
{y=56,x=80,symbolName=6,},}



tmp2={}
ywf = 1
table.sort(crdsClear,
    function(a,b)
        tmp2[ywf]=""
        for i=1, #crdsClear, 1 do tmp2[ywf] = tmp2[ywf].."\t"..crdsClear[i].x end
        ywf = ywf + 1
        if  a.x <= b.x then log(a.x.." <= "..b.x.." true") else log(a.x.." <= "..b.x.." false") end
        return a.x <= b.x --  a.y <= b.y and
    end
)

-- Собираем строку
order=""
log(#crdsClear)
result = {[1]=""}
for i=1, #crdsClear, 1 do
    order = order..crdsClear[i].x.." "
    result[1] = result[1].. crdsClear[i].symbolName
end
log(order)
log(result[1])

Table.sort дает странный результат при <=
если поменять:
return a.x <= b.x
на:
return a.x < b.x
то порядок приходит в норму. В чем проблема?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 18.9.2017, 14:17
Сообщение #133


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26747
Пользователь №: 16.971
Возраст: 29



Непонятно какая там сортировка используется, вообще так получается:
Код
-- от меньшего к большему
if  a.x < b.x then return true else return false end
if  a.x >= b.x then return false else return true end  -- или так

-- от большего к меньшему
if  a.x <= b.x then return false else return true end
if  a.x > b.x then return true else return false end   -- или так
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 18.9.2017, 15:03
Сообщение #134


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Ситуация в целом дикая. Какое вообще дело оператору сортировки, как я получаю значение истина/ложь? Он вообще ничего этого не может видеть. Более того я разложил на < и = ифами, те же самые проблемы.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 18.9.2017, 15:42
Сообщение #135


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26747
Пользователь №: 16.971
Возраст: 29



50 < 50 - false
50 <= 50 - true
Логично что результат разный.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 18.9.2017, 17:00
Сообщение #136


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Цитата
50 < 50 - false
50 <= 50 - true
Логично что результат разный.

19 < 29
19 <= 29
Результат разный. Что логичного? Там нет одинаковых значений которые могли бы в итоге выдать разный результат, присмотрись к объявлению массива.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 18.9.2017, 17:39
Сообщение #137


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



return not (a.x > b.x)
тоже бред возвращает. Тут что логичного?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 19.9.2017, 2:16
Сообщение #138


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26747
Пользователь №: 16.971
Возраст: 29



Цитата
Там нет одинаковых значений которые могли бы в итоге выдать разный результат

log
Код
80 <= 50 false
69 <= 50 false
80 <= 69 false
29 <= 69 true
99 <= 69 false
69 <= 89 true
69 <= 59 false
9 <= 69 true
40 <= 69 true
19 <= 69 true
99 <= 69 false
69 <= 19 false
80 <= 89 true
99 <= 80 false
89 <= 99 true
19 <= 50 true
59 <= 19 false
50 <= 59 true
29 <= 50 true
40 <= 50 true
9 <= 50 true
50 <= 50 true
59 <= 50 false
50 <= 9 false
59 <= 19 false
40 <= 19 false
59 <= 40 false
29 <= 40 true
9 <= 40 true
40 <= 40 true
59 <= 40 false
40 <= 9 false
59 <= 19 false
29 <= 19 false
59 <= 29 false
9 <= 29 true
29 <= 29 true
59 <= 29 false
29 <= 9 false
59 <= 19 false
9 <= 19 true
10
9 19 59 29 40 50 69 80 89 99
5442735642

22 строка: 50 <= 50 true. Хз как оно сортируется.
Из описания функции: Если параметр comp задан, то он должен быть функцией, которая для двух получаемых параметров возвращает true если первый из них меньше второго.
По сути этим всё сказано, меньше, а не меньше или равно.
Цитата
return not (a.x > b.x)
тоже бред возвращает. Тут что логичного?

Дело не в логике, а принципе сортировки.
Код
return not (a.x >= b.x)
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 19.9.2017, 4:04
Сообщение #139


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27738
Пользователь №: 11.279



Цитата
Sorts list elements in a given order, in-place, from list[1] to list[#list]. If comp is given, then it must be a function that receives two list elements and returns true when the first element must come before the second in the final order (so that, after the sort, i < j implies not comp(list[j],list[i])).

Там вообще речи даже не идет про меньше или больше. Функция должна возвращать правду когда первый элемент должен идти перед вторым в финальном порядке.
Более того не понимая принцип данного поведения невозможно без опасений использовать оператор, особенно при ветвистых условиях сортировки. Тут ведь дело даже не в =>, при разложении на:
Код
if  val1 > val2 then
    return false
else
    return true
end

Мы тоже получим ошибку. Конструкция то примитивнейшая, а поведение отнюдь не ожидаемое.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 19.9.2017, 18:01
Сообщение #140


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21101
Пользователь №: 16.156



И что это ?

пс : инглиш продвинутого уровня )
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

11 страниц V « < 5 6 7 8 9 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 29.4.2024, 12:01
Designed by Nickostyle