Teen_Romance
Пользователи-
Публикации
72 -
Зарегистрирован
-
Посещение
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Teen_Romance
-
А как вообще можно юзать дефолтные библиотеки в программах на этой os? Типа как написать какое то консольное приложение с io.read()? или как заюзать event.listen() дефолтный? они ведь лежат вроде рядом, но не понятно как их использовать
-
А как сейчас этой либой и смежными ей можно воспользоваться без установки MineOs? Попросил чатик, он мне написал простенький скрипт чтобы скачать все файлы на комп: Чета типо этого После установки я попробовал запустить простенькую программу: И при запуске у меня все время какие то ошибки в либах этих выскакивают: /lib/Event.lua: attempt to index a nil value (global 'computer') фиксишь его - потом еще в filesystem component nil, потом filesystem мне комп ломает почему то тем что из за ошибок я файлы редактировать не могу. Я не верю что на гите код какой то кривой лежит, но где меня чатик обманул? upd: я так понял не получится ничего потому что
-
Вообщем в тоге получилось если вот так энкодить русские строки перед отправкой: function urlencode(str) local encoded = "" for i = 1, unicode.len(str) do local char = unicode.sub(str, i, i) local byteSeq = {string.byte(char, 1, -1)} for _, byte in ipairs(byteSeq) do encoded = encoded .. string.format("%%%02X", byte) end end return encoded end И от так от декодить: URLDecoder.decode(body.get("field"), "UTF-8") Хотелось бы конечно как то на серваке указать что то чтобы оно без моего вмешательства разбиралсь че к чему, но не понятно же какую кодировку указывать. Тупа UTF-8 не пашет)
-
Почему именно в JSON? Тут же больше про саму lua как я понимаю, так как в консоль \ файл \ pastebin результат JSON:encode() выводится нормально. Я в итоге так и не могу прийти к решению этого всего)) Я понял что символы оно в какой то момент превращает в \uXXXX но я не понимаю в какой и как пофиксить и где. Перед самой отправкой в lua в консоли мне выводит а уже на сервере(java Spring boot) у меня {"field":"������, ���!"}
-
А можно более прямую наводку в виде ссылки или примера может быть?
-
Есть код который табличку тестовую конвертит в json строку и пытается отправить на сервер POST запросом: local function test() local url = "http://localhost" local headers = { ["Content-Type"] = "text/plain" } local body = { field = "поле" } local encodedBody = JSON:encode(body) local handle = internet.request(url, encodedBody, headers) for chunk in handle do print(chunk) end end Это все принимает эндпоинт мой и принтит в консоль. Дело в том, что русские символы как то плохо кодируются, и у меня в зависимости от хедера, на сервере получается %7B%22field%22%3A%22%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%22%7D= (без хедера) или {"field":"����"} (с хедером) Как мне зафорсить это все в utf-8 чтобы на сервере приходили нормальные символы? Это не проблема json библиотеки, потому что даже если строку "привет" передать в request() как body, то результат тот же. Плюс если я отправляю строку с русскими символами через postman то в консоли сервера тоже нормально отображаются русские символы
-
Спасибо! Скорее всего так и есть, потому что моды то я с сервера выгрузил пачкой 120+ шутк) Я на самом деле, уже думаю, что лучше руками(почти) их просто посоздавать. Потому что в ae2 у меня в основном на один предмет будет один рецепт. Если же выгружать их(рецепты) все пачкой, то тяжело потом будет разобраться какой рецепт использовать для посчета ресурсов, так как на один предмет может быть 2+ крафтов - интерфейс например.
-
Есть сервер с Open Computer 1.7.10. Я хотел бы сделать подобие AE2(часть про автокрафты, чтобы показывало скок чего не хватает на крафт чего то) но на компах. чтобы на варпе можно было пользоваться. Мне бы для этого базу каую то с рецептами. Кто то знает как можно экспортировать рецепты с игры в json? Чатик тут про minetweaker подсказывает. Я пытался скрипт написать чтобы в лог написал все рецепты либо в игре /mt recipes но в логах NPE случается. Понимаю что вопрос возможно вообще не по адресу и нужно бы больше деталей...
-
Где можно почитать как работать с PIM? Я чета вообще не могу понять как его подключить к компу + мэ системе. Нашел только его методы и какие то куски коды на гите типа local pim = proxy("pim") но что такое proxy - я не знаю. Я так понимаю, что proxy, это метод component. А как тогда proxy сделали глобальным методом? Я вот подключил pim через адаптер, но как с ним работать с мэ + ивенты слушать - пока что загадка в идеале мне нужно чтобы у меня пим стоял сверху, под ним мэ интерфейс и снизу адаптер. В общем чтобы только пим сверху торчал
-
Мда) Додуматься до этого было бы непросто. Спасибо!
-
@ProgramCrafter Содержимое библиотеки изначально: Добавляем строку в /lib/package.lua: Сохраняем и меняем библиотеку(меняем точку на 15): Сохраняем, запускаем изначальный код который юзает библиотеку: Результат тот же Я это все делаю в Ocelot эмуляторе, но не думаю что это влияет как то
-
Создал "библиотеку", положил в /lib/<name>.lua. Она работает. Изменил библиотеку, но изменения не учитываются при ее использовании после изменений. В документации нашел вот это: package это у нас библиотека для загрузки библиотек, понятно. Но "For unloading precached library, see package.loaded.", не очень понятное объяснение. В поле loaded лежит таблица с hardcoded стандартными либами. Я не понимаю, новые библиотеки тоже кешируются или только те что указаны? Если новые тоже кешируются, что вероятно, то как это офнуть?
-
@ECS спасибо за ответ. My bad я не до конца написал что хочу. Большой текст должен находиться на одном экране с текстом поменьше. В центре что то вроде счетчика и сбоку кнопочки и обычный текст. https://prnt.sc/-4Lfi8jY5bSP
-
Мне нужно нарисовать текст(не статический) размером 1\3 высоты экрана. Как бы это лучше всего реализовать? Есть идея построчно рисовать ASCII символами, но решил спросить тут. Должны быть варианты получше.
-
Блин. Два лучших ответа тут нельзя выбрать) Еще и стержень можно вернуть. Звучит отлично. Пока что самый оптимальный вариант. Вечером попробую провернуть
-
@whiskas интересные идеи. По поводу пустого слота. Я так понимаю, чтобы такое провернуть, нужна подходящая схема, в которой этот самый слот, не будет взаимодействовать со стержнями. Я не знаю как работает механика стержней, конденсаторов, теплоотводов и т.д, но в моей схеме для такого нужно будет убрать два стержня в углу каком то, если я правильно понял. В твоей схеме тоже вроде нужно два стержня убрать, чтобы оставить слот для конденсатора, который не будет ломаться.
-
В этом нет никакого смысла, исходя из информации, предоставленной @eu_tomat, если во время замены конденсаторов, происходит реакторный тик, то нагрев все равно произойдет
-
Конденсаторы ломаются от 0 до 10000, где 10000 это уже сломанный конденсатор и он пропадает. 1000 указана для теста, чтобы долго не ждать. Я так понимаю, ты неосознанно намекаешь на многопоточность, но к сожалению нормальной многопоточности, в прямом понимании этого термина в OC вроде как нет.
-
На форуме посвященному OpenComputers, я спрашиваю как менять конденсаторы, без остановки реактора. Ты предлагаешь все что угодно, кроме идей для решения моего вопроса
-
Да, я понимаю риски, но способ узнать все равно хочется. Теоретически. Значит на практике никто не проверял? И как узнать этот определенный момент?
-
Нет никаких проблем с тем, чтобы остановить реактор. Просто менять конденсаторы не останавливая реактор, конечно же эффективнее.
-
В том, что пока он остановлен, он не работает
-
Собственно любая информация о возможности менять конденсаторы без остановки, будет значимой. Про транспозер я понял. Значит его оставляю) Если возможность менять конденсаторы есть, это уже радует. Но не совсем понятно, что значит "универсальный рецепт отсутствует"? Вот пример самой простой программы для замены конденсаторов: Самый простейший алгоритм: достать и вставить. Но все равно не достаточно быстро Схема на обычных урановых стержнях с тремя столбиками конденсаторов.
-
Решил я тут попробовать написать программу для авто замены лазуритовых конденсаторов в реакторе. Выходит пока что не очень. Пока конденсаторы меняются, реактор успевает нагреться на 600 единиц. Я пролистал тему про "Очень много электричества" тут на форуме и не нашел ничего значительного. Я пробовал просто с транспозером в один сундук выкладывать конденсаторы, а из второго брать. Собственно вопрос: есть ли возможность менять их, не выключая реактор? Может какие то методы быстрее других? Может методы транспозера медленнее работает, чем например методы сундука для трансфера вещей или еще какие то тонкости есть? Или это вовсе невозможно?
-
1)У сундука и ME сети из Applied Energistics 2, разные метод и разные структуры возвращаемых таблиц, что касается данных о предмете в слоте. То есть, если я хочу узнать что лежит в 1 слоте в сундуке, я получу таблицу с одной структурой и если я хочу узнать что лежит в первом слоте в me сети, я получу таблицу с другой структурой. Собственно вопрос: есть какие то оптимальные подходы, чтобы сравнить эти две таблицы и понять, одинаковые ли предметы находятся в сундуке и в me сети? Есть конечно старый добрый брутфорс по выбранным захардкоженым полям, но чета это не то. Общая задача: в сундуке в первом слоте лежит пчела, мне нужно найти таких же пчел в me сети и переместить их в сундук. При этим, у пчел есть показатель поколений в неволе, который мне нужно игнорировать. 2)Еще побочный вопрос. Может где то можно достать все структуры всех таблиц для разных api из opencomputers? Потому что я могу только сидеть и принтом смотреть какая структура у таблицы, которую возвращает какой то метод, что не очень удобно.
