Перейти к содержимому

Лидеры


Популярный контент

Показан контент с высокой репутацией 12.09.2021 в Сообщения

  1. 4 балла
    обменник руды с поддержкой словаря руд ( ore dictionary ) https://pastebin.com/jaYhuD0k или pastebin get jaYhuD0k exchange требуется мод OpenPeripheral после запуска обязательно снять клавиатуру с экрана Ложем в сундук руду (например медную индастриал крафт и получаем два медных слитка индастриал крафт или меди из других модов) множитель Х2 можно настроить под отдельные руды слитки будут в том же сундуке, обменник заберёт ровно столько руды сколько может обменять слитков из МЕ на экран выводится список принимаемой руды, множитель, а также сколько слитков доступно в МЕ сети также к МЕ можно поставить переработчик руды (дробилка + печка) чтоб сеть сама пополняла запас слитков Поскольку список руд ручками составить тяжело, написал прогу для формирования списка https://pastebin.com/0JSr91DQ или pastebin get 0JSr91DQ list Требования: пк второго уровня (золотой) видеокарта второго уровня адаптер 2 штуки база данных первого уровня МЕ интерфейс сундук Пример сборки:
  2. 1 балл
    Прога показует кто в онлайне из перечисленных игроков код скрин изменить здесь + настройте под свой сервер групы) (кто шарит изменит кто не шарит напишите ниже я сам изменю) Нужно чтото изменить или добавить пишите в коменты
  3. 1 балл
    Нашел материал на русском: Курс «Операційні системи» / «Операционные системи» (vseloved.github.io) Взято отсюда: teachyourselfCS-RU/Teach_yourself_cs-2020-RU.md at master · ilmoi/teachyourselfCS-RU (github.com)
  4. 1 балл
    Та достаточно иметь MinGW и тот же гит для догрузки субмодуля argparse. Собрал х64 версию и добавил batch враппер (ибо стандартный враппер для Линукса), но для него также нужно установить FFMPEG. После достаточно скопировать ролик в папку с программой и кинуть ролик на скрипт, а полученный файл уже проигрывать плеером. Его я чуть подредактировал: оригинальная версия падала с ошибкой если не было стримера (хотя "немой" режим там предусмотрен). ice-kit.zip
  5. 1 балл
    Писать код мне лень уже. Потому оставлю только инфу. В мире минекруфта очень мало казиков было сделано. Самое лучшее это мое с кровьякой 1). Казино (мое с кровякой). Сылка - https://github.com/salimAbdulIt/OpenComputers-Casino Поставить изично. Работать будет. Из сложностей это запустить игру на вещи. Скрин не последней версии потому количество игр и меню может отличатся Скрин: 2. Казино из серверов MCskill. Создатель SkyDrive_ сылка - https://pastebin.com/Zmyfjetp. Поставить сложностей нету. Только проблема в том что казино админское. Потому нужно будет переписать немного кода. Скринов нету.
  6. 1 балл
    Если рассуждать глобально, то в Майнкрафте любые программы бесполезны. Самым ценным является опыт их создания. Обычно идея о написании новой программы или системы приходит так: Нам нужна программа с определённым свойством. Ничего подобного мы не видели. Давайте напишем сами. Но бывает и так: А давайте напишем свою операционку. Какой она получится, не важно. Главное, мы в процессе создания научимся чему-то новому. Похоже, что в этой теме речь идёт о втором случае. Сама-то по себя идея достойная, но меня смущает этот момент: Без чёткой идеи коллективная разработка сложного ПО невозможна. Кто будет координировать работу? Какое правило позволит оценить, что одни правки кода лучше других?
  7. 1 балл
    Сколько бы вас там ни было, нет смысла создавать тему в разделе "Программы" без самих программ. Переношу тему в Беседку. В чём именно поучаствовать? В чём суть этой системы? Чем она будет отличаться от других?
  8. 1 балл
    Написал, вот, утилитку для форматирования кассет из аддона Computronics для OC. Вообще, эта утилита планируется как часть программного пакета для упрощения работы с кассетами, но её я решил выложить заранее. Процесс форматирования не быстрый и упирается он, в основном, в моё незнание преобразования форматов в Lua. Так как я не нашёл способа преобразования массива в строку, пришлось использовать вот такой костыль: x = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" В итоге, я тупо храню в коде строку с 256ю терминальными нулями, которыми и забивается кассета (чистые кассеты из мода ими и заполнены). Именно 256 символов за 1 проход цикла я выбрал просто, чтобы не забивать код простынёй нулей, как только я найду способ реализовать это менее банально, планирую увеличить количество терминальных нулей в строке до 512 или 1024. Это ощутимо ускорило бы работу программы. Ссылка на пастебин: https://pastebin.com/3ucbj3fr Скриншотов не прилагаю, так как интерфейс программы прост, как палка. З.Ы. Это далеко не финальная версия утилиты, выставил её на всеобщее обозрение я только, чтобы получить несколько дельных советов по улучшению проги.
  9. 1 балл
    Ехх. А это была моя первая прога которую я написал с 0. Та первая версия что я выложил. Код ппц какой гавнокод. Но идея топ проверять что игрок на сервере добавлением его в комп. Кто знал что майнкрафт сделает из меня программиста.
  10. 1 балл
    @_bongo_ достаточно отредактировать этот блок: local users = { {"Creeper","Owner"}, {"Zombi","Member"}, {"Skeleton","Member"}, {"Ghast","Member"}, {"Blaze","Member"}, {"Witch","Member"} } Просто заменяем текущие имена на требуемые. Также можно изменить группу, к которой принадлежит игрок. Также можно удалить лишние записи или добавить недостающие.
  11. 1 балл
  12. 1 балл
    О каком из вариантов программы идёт речь?
  13. 1 балл
    помоги изменить пж программу под мод состав сервера:
  14. 1 балл
    Можно использовать сервис https://api.minetools.eu/query/ip/port , если нет возможности вручную записывать ники всех игроков
  15. 1 балл
    По просьбе сделал монитор онлайна игроков (овнеров и мемберов) Подвох был в том что они были залогинены на ПК и не отображались https://pastebin.com/fgVyP3LK или pastebin get fgVyP3LK u
  16. 1 балл
    Выложу свой вариант монитора онлайна избавленный от ряда недостатков: ПК в случае лагов мог залочится и тогда снять его мог только админ Отрисовка списка в сортированном виде Выход по кнопке Ctrl https://pastebin.com/LaJHZAns или pastebin get LaJHZAns v
  17. 1 балл
    Критика принимается? Вот и отлично, пора бы мне набивать количество постов здесь. Итак, что мне не нравится. Хотя нет, сначала отмечу, что эта утилита является велосипедом с tape.lua (см. tape wipe). А теперь отбросим этот факт в сторону и проедемся уже по коду. Стиль кода необычный. Обычно люди так ифы делают: -- Вариант 1 if condition then doCode() end -- Вариант 2 if condition then doCode() end Хотя я второй вариант не люблю и так не делаю. Ещё по стилю: всякие операторы типа ==, ~= и т. д. лучше отбивать пробелами. Дальше буду проходиться по порядку строк в пасте. Сначала будет номер строки, потом комментарий, затем под спойлером оригинальный код, а потом как надо. L3. Я сомневаюсь, что "Event" будет работать. Замени на "event" local event = require("event") L11-12. Переменные size и label объявлены без указания local, поэтому они стали глобальными. Глобальные переменные редко когда требуются, а чаще они просто мешают и творят лишние баги. Поэтому когда без них можно обойтись, делайте переменные локальные. local size = tape.getSize() local label = tape.getLabel() L14-19. Ветки отличаются лишь тем, что при not label пишется "N/A". Дальше нигде отсутствие значения не используется, поэтому код можно сократить, просто присвоив "N/A", если соблюдается not label. Для таких ситуаций офигенно подходит оператор or (подробнее). Кроме того, print уже и так ставит \n, поэтому лучше разделить на два принта. label = label or "N/A" print("Tape label: " .. label) print("Size: " .. size .. " bytes") Кроме того, зачем просить пользователя самому отмотать кассету в начало, если то же самое делается одной строчкой кода? tape.seek(-math.huge) L28. Для повторения одного символа несколько раз используется функция string.rep. Переменная опять не локальна. И что значит "x"? local blockSize = 256 local block = string.rep("\0", blockSize) L30-31. Используем вместо 256 переменную blockSize. И устанавливаем её в качестве шага цикла (0, 256, 512, 768, 1024, ...), потому что так логичнее. И мы не цикл итерируем, поэтому имя у переменной i не соответствует цели использования. for pos = 0, size, blockSize do L32-33. Используем переменную block. tape.write сама уже отматывает кассету на позицию, следующую за последним записанным байтом, зачем ещё раз отматывать? tape.write(block) L34. Нет, конечно, можно дать ему заспамить всю консольку прогрессом, но я бы предпочёл немного украсить: заставить его прогресс писать на одной и той же строке. Для этого можно использовать функцию term.clearLine (библиотека term) для очистки строки и io.write вместо print, чтобы не переносился курсор на следующую строку. Первый кусок, который с require, надо поместить в начало файла, где остальные реквайры. local term = require("term") term.clearLine() io.write(pos .. "/" .. size) L37. С ней проблем нет в оригинальном коде. Однако мы изменили вывод прогресса, так что после выхода из цикла на строке, где стоит курсор, будет находиться ещё какой-то текст с прогрессом. Поэтому надо очистить её перед принтом. term.clearLine() print("Tape has been wiped.") Конец. Итого мы получаем вот такой код мечты: local component = require("component") local event = require("event") local term = require("term") local tape = component.tape_drive if tape.getSize() == 0 then print("Tape drive is empty!") os.exit(1) end local size = tape.getSize() local label = tape.getLabel() label = label or "N/A" print("Tape label: " .. label) print("Size: " .. size .. " bytes") print("Press [Y] to wipe the tape. It may take a while.") local _, _, keyCode = event.pull("key_down") if keyCode ~= 121 then os.exit(1) end tape.seek(-math.huge) local blockSize = 256 local block = string.rep("\0", blockSize) for pos = 0, size, blockSize do tape.write(block) term.clearLine() io.write(pos .. "/" .. size) end term.clearLine() print("Tape has been wiped.")
  18. 1 балл
    Я же не об этом совсем. Тут люди старались, изобретали, вкладывали время и силы. Изобрели вдвоём, или одновременно - в разных частях света. Тут вообще нет проблемы. Случай о котором говорю я - это если бы Эйнштейн изобрёл теорию относительности, а Вася Пупкин её перепечатал без изменений и выдал за своё открытие. Ты же не будешь называть теперь теорию относительности - теорией Эйнштейна-Пупкина?
  19. 1 балл
    А я к тому, что всё это авторское право - довольно размытое понятие. И точно определить кто автор нельзя. Взять ту же физику, сколько открытий названы именами двух учёных? Получается авторское право не может противостоять великой силе вероятности. Им приходится признать поражение и считать авторами двух учёных, которые в одно время произвели схожие открытия в разных точках Земли. Я думал это называется обучением. Что например мешает мне создать клон какой нибудь игры? Я же получается украду идею. Или сыграть на гитаре какую нибудь известную песню. (не кавер, а именно чужую песню) За это меня кто-то посадит? За то что я играю чужую музыку у себя во дворе? Может ко мне придёт Бетховен и засудит за то, что я сыграл Лунную сонату? Вы бы слышали, как испоганили русские локализаторы известную песню The Animals - House of the Rising Sun Вот оригинальный перевод, а вот самодельный и получивший популярность у дворовых "музыкантов". (даже на ютубе она есть) Ничего, что в оригинале пелось про вред азартных игр, а в русском аналоге весь смысл песни перевернули. Теперь "дом восходящего солнца" - райский уголок в русской песне. Это может сколько угодно бесить, но это не значит, что надо запрещать и наказывать тех, кто поёт чужие песни.
  20. 1 балл
    Вроде и да, но всё относительно. Для тебя это простая программа. А для них - серьёзный проект, который потребовал много сил и времени. Так что если хотят выяснить - пусть выясняют. Я лишь хотел сказать, что надо выяснять не флудом и метанием кактусов друг в друга, а объективно. Побайтовым сравнением исходников. =) А свободное ПО не отменяет чувства обиды от того, что кто-то нифига не делает, и юзает плоды твоих трудов в своих целях, отрицая твою причастность к общему делу =) Да, мелочно, но типично по-человечески. =)
  21. 1 балл
    Да кому это нужно. Если бы они написали какую-то большую прогу и сделали их схожими, то тогда я понимаю смысл враждовать. Но тут всего лишь маленькие проги с маленьким смыслом и малым затраченным трудом. Да такие проги проще переписать самому, чем брать чужие наработки и писать самостоятельно. Кроме того, можно учесть тот факт, что правила написания программ для всех схожие. А это может значить, что чем проще программа, тем больше шансов на то, что две программы от разных разработчиков будут иметь схожий, чуть ли не идентичный, код. Например названия переменных у многих программистов одинаковые, алгоритмы тоже. Что мешает случайно произойти такому событию? Авторское право решает случаи, когда в разных точках планеты используют программу, в котором используется один и тот же алгоритм например генерации простых чисел? Кто их автор? Все люди которые сами составили этот алгоритм? Или может тот человек, что первым высказал мысль о таком алгоритме? К кому относятся права на интеллектуальную собственность программы по нахождению простых чисел, если у n количества авторов идентичный код и все они утверждают, что сами разработали этот алгоритм? Мне кажется идея свободного ПО как раз и борется за то, чтобы авторское право не было слишком жестоким.
  22. 1 балл
    Отчасти Кверти прав. Нет смысла ссорится из-за ерунды, опенсорс и т.д. Но опенсорс тоже имеет лицензии, и авторские права. Наверное все слышали о гениальном творении под названием Bolgen OS. =) Поэтому, если вы хотите действительно узнать, чей код есть чей - предлагаю Антону тоже залить свой исходник, а затем сверить расхождение побайтно. Ну или - cut that crap!
  23. 1 балл
    Ты прав, но ты просто не знаешь что было до этого)
  24. 1 балл
    Твой код был слишком прост, в него нельзя было просто так впилить юзера + отрисовка была не автоматическая и т.д. Насчёт дизайна, как попросили, так и сделано, дизайн можно хоть задом на перёд делать, это самая малая часть кода.
  25. 1 балл
    Прога то простая - шанс, что они окажутся схожими большой. И не надо больше на счёт этого враждовать. Нормальный программист не станет из-за таких пустяков беспокоится. Написал сам или позаимствовал и дополнил, да какая разница. В этом то и суть свободного ПО. Вместо вражды нужно радоваться, что исходники свободные и возможно они помогли какому-то человеку лучше изучить этот язык программирования. Как по мне, это большой плюс свободного ПО, а вы тут по этому поводу начинаете враждовать.
  26. 1 балл
    Ты просто переписал прогу, которую я писал пол года назад, исправив проверку онлайна через дебаг карту, на проверку через добавление юзеров, какой молодец. Или может ты объяснишь, как же так вышло, что твоя прога, магическим образом, выглядит в точности как моя ?)
  27. 1 балл
    Это моя программа, и версия фактически копипаст моей самой первой версии, и авторские права везде мои. И выглядит красивее самая последняя. P.S. Не стоит выдавать не свой код за свой.
  28. 1 балл
    Точно не написал бы ?) И кто же сказал, что автор не против продвижения ? Удалить авторские права из проги и выложить её от другого имени - да вы гении)
  29. 1 балл
  30. 1 балл
    Выложу тогда другую, более интересную прогу другого нашего игрока, который не против продвижения программы, но сам бы вряд ли тут написал. Программа приятнее на вид, чем то что скинул whiskas, и в неё можно добавлять новых юзеров через очки не выключая саму программу. Код. Скрин
  31. 1 балл
    А потом в середине проверки комп вырубается...
  32. 1 балл
    сначала прога была на дебаг карточке потом идея пришла как сделать без нее
  33. 1 балл
    Да просто сам факт использования функции не по назначению впечатляет. Можно мониторить онлайн и оповещалки делать. Автоматизировать что то, когда нужный игрок в онлайне, например включать турельку Или просто записывать время входа-выхода игрока, с таймером проверок в минуту. На счёт стабильности, на крайний случай можно сделал удаление всех пользователей с компа при перезапуске. Или по таймеру от эвентов, что ещё лучше будет. Дабы никто не остался чужой из хозяинов компа. А вообще меня удивляет OpenComputers. Получается, я могу передать дискету с "игрой" игроку, дискета заприватит на меня комп и заразит вирусом например комп. И ничто не мешает создать вирус-приват подобный. При этом, в отличии от линукса, не нужны root права для каких то важных операций, вроде привата компа. Не нужно вбивать sudo и вводить пароль для подтверждения что это действительно ты. И это удивляет. Казалось бы, такой умный мод, а тут дыра огромная в защите компа.
  34. 1 балл
    local debug = computer.addUserЭта строчка сильнее других провоцирует у меня расстройство сознания.Ну, почему «debug»? И далее: prov=debug(name) ... computer.removeUser(name)И почему тогда не сделано что-то типа: local bug = computer.removeUserТо есть, сначала обезжучили пользователя, а потом снова его нажучили.
  35. 1 балл
    Люблю рыться в чужом коде Кстати, круто придумано запросами добавить игрока проверять онлайн. Как я до этого не додумался раньше
  36. 1 балл
    Всё равно надо было убрать/замазать.... За это и забанить могут.....
  37. 1 балл
    Мож потому что я там играю и там ее написал?
  38. 0 баллов
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...