Перейти к публикации
Форум - ComputerCraft

Fingercomp

Гуру
  • Публикации

    1 441
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    150

Все публикации пользователя Fingercomp

  1. Эм, здрассьте. Предлагаю поглядеть на новое обновление мода. Очень толстого обновления. Отрегулировали частоту выполнения хука, который шлёт этот ненавистный "too long without yielding", так что теперь и скорость исполнения кода должна гораздо возрасти, и с ошибкой этой код падать реже. Мы проверяли: некая гуи-либа с 1.6 fps до 2.5 fps только благодаря этому работать стала. Оптимизировали производительность ещё и записи на диск. Пошустрее будет — обещают, что в 5–500 раз. Сетевой разделитель (сплиттер) стал компонентом. Можно программно теперь отключать куски сети. Жёсткие диски стало возможным делать Read-Only. Компьютеры CC могут читать сигналы бандлед-редстоуна OC. И наоборот. Функции [il]debug.getlocal[/il] и [il]debug.getupvalue[/il]: возвращают они лишь только имя переменной, но не значение её. И мне кажется, что это уже давно было завезено. Геолайзеры получили методы [il]isSunVisible[/il], [il]canSeeSky[/il] и [il]detect[/il]. Неплохо. В [il]computer.beep[/il] можно писать морзянку. [il]computer.beep("---.---")[/il]. [il]redstone.setOutput[/il] научился ставить значения больше 15. Клавиатуру можно цеплять к монитору, если ещё поставить к непередней стороне блока. Наконец-то. [1.12] Вернули поддержку Project Red. Через адаптер можно теперь работать с камерой реактора IC2. У серверных дисководов тоже есть теперь гуишка (пкм в мире или внутри интерфейса стойки). Торговый апгрейд обзавёлся методом [il]getMerchantId[/il]. Полезно, если жителей куча. [1.12] Вернули поддержку энергии AE2. В конце-то концов: дебаг-карте добавили [il]scanContentsAt[/il]. Больше инфы возвращается для предметов из Draconic Evolution. Вейпоинты стало можно ставить вверх или вниз. Это действительно было слишком контринтуитивным. Связанные карты можно скрафчивать вместе (повяжет на новый канал их). Плюс получать адрес канала при скане стэка. Можно теперь менять цветовой код сундуков Ender Storage. Связанные карты также научились будить компьютер по сигналу, как модемы. Белый и чёрный списки измерений для чанклоадера. Метод [il]disk_drive.media[/il], которым можно получить адрес дискеты внутри дисковода. Поддержка Forge Energy для зарядки предметов вроде батареек и планшетов. Анализатор показывать будет по клику на адаптер ещё и содержащийся в нём компонент. Событие [il]redstone_changed[/il] показывает, какой цвет поменялся на бандлед-кабеле. По шифт-клику компоненты закидываются в соответствии с их уровнями. Подрезали немного шум в логе от OC. Методы вроде [il]robot.suck[/il], [il]robot.suchFromSlot[/il] и [il]transpoer.transferItem[/il] теперь возвращают вместо [il]true[/il] число перемещённых предметов. Немного уменьшили назойливость частиц наномашинок. Жёсткий диск 3 уровня в режиме без ФС стал иметь по умолчанию не 6, а 8 пластин. Улучшили рендер кабелей как-то. Такие же "как-то" улучшения произошли с инвентарём роботов, апгрейдом крафта, методами [il]swing[/il] и [il]use[/il], взаимодействием с жидкостными баками. С модами получше работать должны. Чанклодыри можно ставить в микроконтроллер теперь. Расширили покрытие юникода шрифтом. Стандартный биос стал есть меньше памяти. Мониторы глючить должны поменьше. Пофиксили обнуление содержимого инвентарей блоков мода при крашах. Ещё некий краш при установке микроконтроллеров починили. Команду [il]/oc_nm[/il] вправили в место и заставили работать. Дюп роботов убран. Команды перемещения теперь говорят, успешно или безуспешно вызов завершился. Форсирование [il]LuaJ[/il] не форсировало эту архитектуру. [il]transferItem[/il] проверял не ту сторону. Починили Unknown error при попытке залить чего-то в некие машинки. Дюп дронов тоже починили. Выкорчевали возможную ошибку при запуске вместе с IC2. Роботы перестали потреблять ингредиенты при крафте, которые не потребляются. Апгрейд ангельский стал работать. Пофиксили торговый апгрейд. Его прямая задача исполнялась кривовато. Роботы не перемещались, когда нужно было. Дюп предметов дронами и роботами. Дискету network тоже можно ставить через install теперь. Дюп жидкостей, конечно, тоже был и тоже пофикшен. Дроны не реинициализировались после включения по сообщению модема. И вели себя очень странно. Всякие фиксы в интеграции с AE2. Опять некий дюп EEPROM. Удалён. Краши при загрузке с Applied Llamagistics. Краши при нетрадиионной установке компьютеров. Краши (но на клиенте), связанные как-то с кабелями и загрузкой чанков. [il]enableNanomachinePfx[/il] не имела эффекта. Роботы стали вызывать обработчики модов при получении опыта. Вводящие в заблуждение сообщения анализатора о выключенных компьютерах стали вводить в заблуждение в меньшей степени. Микроконтроллеры свою начинку теперь тоже выключают вместе с собою. Всякие ошибки кидал апгрейд поводка вместе с некоторыми модами. Фиксед. [1.10+] Починен рецепт крафта карточки с мировым датчиком. Экран планшетов теперь не зависает. Терминальные серверы ненормально цепляли удалённых терминалов на себя. Ошибки освещения с шейдерами. В OpenOS ещё отметить можно: Команда [il]reset[/il], которая ресетит разрешение. Ошибки сервисов пишутся в /tmp/event.log. Можно теперь ловить ошибки по Ctrl-Alt-C (жёсткие прерывания) путём переопределения функции в [il]process.info().data.signal[/il]. Копипаст в [il]edit[/il]: Ctrl-K — вырезать, Ctrl-U — вставить строку. Процессы закрывают файлы при завершении. Ссылочка на гитхаб, откуда можно скачать мод.
  2. Ну, собственно, 40 минут назад фичу запилили. В 1.7.3 будет метод component.disk_drive.media(), который будет возвращать адрес дискеты. Пока что можно скачать билд с ci.cil.li.
  3. Пробежался по коду и не нашёл где-либо маппинга адреса дисковода в адрес дискеты, из-за чего поставленная задача кажется невозможной. Отправил тикет на баг-трекер OC пока что. Возможно, там что-либо подскажут.
  4. Я поражён, если честно, выдержке, которая потребовалась для написания такого. Я бы уже на втором энде запилил строку вроде [il]"#${}<>*?$!':@+`|="[/il], а потом делал бы [il]characters:find(gpu.get(4 + i, 3))[/il]. По скриншотам выглядит неплохо. Вообще, круто, что проект до релиза доведён. Некоторые (глазами упираюсь в @LeshaInc) и такого не достигают. P. S. К слову — я, наверное, этим разочарую — но даже с таким крупным текстом, как в первых постах, без очков я не разгляжу толком что-либо, к сожалению. Укатились старания в вену.
  5. П О Ч И Н И Т Е (умоляю) ломание нормальных юникодовских символов в emoji! Не должны такие красивые символы, как: "—", "–", "ツ" (и, подозреваю, остальные символы японской каны) — биться в пикчи, которые ведут в NaN.png. Зачем?
  6. Многие игроки здесь видели или хотя бы слышали про огромный дронодом, который построил @Asior в былые времена на сервере RoboCraft. С тем чтобы прояснить происхождение этой хаты и оставить о ней заметку в этом клубе, специально для «Новостей подполья» @Fingercomp обратился к создателю постройки и попросил рассказать про неё. Редакция представляет обработанную версию истории. История начинается в начале мая 2016 года, когда запустился сервер RoboCraft, на который сразу же хлынули толпы игроков, хотевшие «поскорее стать топовыми игроками, обладателями гор ресурсов и, конечно же, новых идей и программ». Туда попал и герой нашего рассказа. Развитие было довольно сложным. «Поначалу я хотел, как обычно, отстроить бункер и спокойно, потихоньку наращивать силы», но этому воспрепятствовал случай: система автоматического расселения игроков закинула Asior невесть куда — в середину заражённого биома. Очевидно, что герой этому не обрадовался. Ему потому пришлось бегать в поисках нового места. Конечно, Asior таки организовал себе временное убежище и начал стремительное развитие в игре. Но в чате игроки часто оставляли ссылочки на скриншоты своих невероятно красивых палат с невероятно крутых ракурсов. Он перерыл огромное число чертежей домов, замков, статуй — и решил построить дрона. Дрона из OpenComputers. Ведь сервер специально разрабатывался для этого мода. Asior зашёл в сингл и долго, упорно воздвигал новые варианты постройки и безжалостно крушил старые. Наконец, он определился с тем, как именно должно будет выглядеть его будущее жилище. Оставалось лишь воспроизвести это всё на сервере. Но здесь и возникла основная проблема: как добыть такое огромное количество ресурсов для строительства? Разрешена она была путём не самым чистым: Впрочем, и того, что он раздобыл, сполна хватило на постройку основного корпуса дрона. Это потребовало огромного числа строительных лесов и невероятных акробатических способностей и дополнительно осложнялось тем фактом, что полученные вечные блоки не перемещались из хотбара. Но стиснув зубы и получая подкормку от щедрых игроков Asior таки построил дрона. Потому пришлось придумать, как расширить жилище. Некоторые предлагали соорудить какое-нибудь здание, к которому был бы «привязан» дрон, но, увы, это не вписывалось в местность. Далее настала очередь внутренней отделки: ставились перегородки, размещалось оборудование. А монументальное сооружение, памятник роботу и дрону, стал пользовался большой популярностью, чему создатель не противился: «я был не против, чтобы все желающие посмотрели, как я живу, уточнили какие-то вопросы или помогли чем-нибудь». С тех пор сервер RoboCraft давно закрыт, но память о роботе и дроне жива до сих пор. Редакция присоединяется к пожеланию героя остроить то, что поражало бы воображение и отпечаталось в приятных воспоминаниях десятков игроков. И мы всё так же мы призываем вас оформить подписку на «Новости подполья». Годноты здесь много было, есть — а то ли ещё будет.
  7. Fingercomp

    анналы кк.ру История одного дронодома

    Ничего будет. А не будет печенек.
  8. Fingercomp

    анналы кк.ру История одного дронодома

    Надо. Это такой обряд посвящения. Подписался — значит, свой.
  9. Нет, новый движок мне больше нравится, если честно. Хотя он и тормозит жутко у меня теперь, но выглядит как-то приятнее, что ли. Но вот по вопросу BB-кодов поддерживаю @eu_tomat: возможность просмотра поста в "сыром" виде крайне полезна. Я использовал неонократно при каких-то глюках, а также для коллаборационного написания постов (например, топики про Hel и UT#2).
  10. Кратко переписываю ошибки, ибо мне кажется, что на них уже забили. Не настроены права нормально. В настройках уведомлений нельзя менять опции для настройки «Кто-либо комментирует публикацию, на которую я подписан». В настройках уведомлений нельзя менять свичи сайтовых уведомлений для настроек личных сообщений. Leaderboard недоступен. Нельзя изменить сообщение в чате. Владелец клуба не имеет доступа к скрытым в блоге этого клуба публикациям. Нужна форумская модерка. Посмотреть, кто ставил лайки посту, могут только гуру и выше. Медальки толстенькие пожаты до стандартного форм-фактора. Выглядит юродиво. Недостаточно реакций, которые оставляемы под постом. Сейчас, кроме сердечка, всё хрень какая-то стоит ненужная. Тире (— U+2014) заменяются на битые картинки. Нет вкладки «Блоги» сверху, в навбаре. У блога клуба нельзя сменить баннер. Нужна кнопочка со списком ББ-кодов. Вдобавок б хотелось провести голосовалку по степени закругления аватарок. Хотя бы ради интереса.
  11. Вроде же бросил плюсики намедни. Какая-то импульсивная у тебя любовь. Но сам я и не против. Или C++, или Java. А можно и на Rust, и на Haskell, и даже на Idris попробовать.
  12. В списке смайлов, которые ставить можно в качестве лайков, наблюдается явная нехватка эмоций. И... они страшные слишком все. Медальки пожаты.
  13. Я так смотрю, сегодня @NEO прямо-таки по-крупному везёт: давно как-то не было уже шанса наехать на Тотору прямо и по делу. Однако я здесь про скруглёныши хотел отметить. Стараясь не защемить снова нерв некоторым людям своими квадратными взглядами, я хочу отметить, что после апгрейда заметное количество выставленных уже ав выглядит уродливо. У @Totoro оказалась порезана зверски сова, после чего её дополнительно вбок сжали. Он ещё всякие альтернативные варианты предлагал для моей подниковой картиночки: там везде нещадно отпилена верхняя часть головы, куда волосы приделываются. Может, здесь любители таких издевательств в большинстве, но я верю и искренне надеюсь, что это не так. Отмечу, что заявления вроде "так у всех", "это мода такая", а также утверждение богоподобности разрабов нового движка и безусловной правильности их решений я как аргумент принять не могу принципиально. Как минимум, я пока не в состою в культе поклонения этим разработчикам и дизайнерам. Впрочем, сильно жизнь скруглёныши не испортят, конечно. Особенно с учётом каких-то с квадратированием сопряжённых проблем.
  14. Заодно можно ещё /leaderboard включить всем, как на oc.cil.li. Оракуля по ошибке, такая страничка-то есть, но простым смертным недоступна. P. S. А, да, можно авы вернуть на квадратики, милые глазу? У всех почему-то мода пошла на скруглёныши, в которых вписать что-то красивое в большинстве случаев невозможно.
  15. @Krutoy когда-то писал про IDE для Lua, но с тех пор, я надеюсь, всё достаточно преобразилось, чтобы снова подошло время задать следующий вопрос: «Какие есть окружения разработки для Lua?» Желательно интегрированные. Иными словами: редактор кода полноценный (само собою); автодополнение (уже никуда без этого); дебаггер; поддержка множества окружений Lua (так, чтобы можно было и OpenOS встроить); неубогий вид; линтер, автоформаттер; статический анализатор кода; инструменты рефакторинга; сборка, запуск, деплой; конфигурируемость и удобность. Неплохими примочками была бы ещё поддержка C, C++ на уровне, но здесь, впрочем, можно и CLion/Eclipse поставить. Если есть опыт использования, интересно было бы услышать его тоже. Например: vim — из списка только 2 пункта есть: первый и последний. Творить лютую жесть можно (для однотипного изменения есть и реплейс по регексу полноценный, и макросы, которыми я довольно часто пользуюсь), к тому же, он легковесный и шустрый очень. Но без остальных пунктов как-то печально писать код.
  16. Первым делом, сохраняйте панику. Так интереснее. У нас есть группа в ВК, которая, в отличие от параллельных — тупиковых веток эволюции — жива и даёт продукт в виде постов. Очень интересных. Не любите ВК? Я тоже. Имеем мы канал в IRC: зайти можно даже с телнета. Но лучше с помощью какого-то клиента: HexChat, WeeChat, Quassel. Контактные данные для них: Сервер: irc.esper.net Порт: 6697 TLSv1.2 Канал: #cc.ru Впрочем, присутствует и веб-клиент для обитателей двумерного денежно-временного мира. Надо сказать, у нас даже дискорд-клуб где-то был. Однако не только флуждением занимается Хэш cc.ru. Мы завели организации вот тут: На GitHub. На GitLab. В Trello. Под кроватью. А ещё подпольные мудрости тщательно и бережно схороняются на свалку нашего цитатника, так что башорг вам больше не нужен. Не забудьте, по пути куда-нибудь находясь, записаться в читателей этого элитного клуба. Потому что здесь мы будем писать. Что-то. Отлично. Наши цепкие объятия уже ждут-поджидают вас.
  17. Fingercomp

    hash-cc.ru Что делать, если вы провалились под пол

    @NEO Неее. Ты зайди в группу-то по ссылке. Она, конечно, не такая древняя, но почитать там хватает. Там не копипаст постов с форума или конкурентной группы. Там эксклюзивный материал. Забавные фичи, нереально крутые программки, полноценные интересные репортажи. Несколько редакторов. И, конечно, неформальщина всякая. Группа дополняет и агрегирует другие средства коммуникации, которые у нас есть. Поэтому призываю подписаться на неё.
  18. Именно! Почему-то куча народа вместо того, чтобы воспользоваться одной из десятков утилит, включённых в OpenOS, изобретают эти проги снова и снова. Если себя узнали по описанию, то, как только дойдёте до опенкомпа, пропишите, ради кода, ls /bin. И поизучайте содержимое.
  19. Да, именно. Любители кучу текста осиливать могут и "Войну и мир" перечитать. А на форуме если хочется обсуждения и лайков побольше, то надо к осмысленному, логически корректному и интересному тексту добавить изображений — также осмысленных, корректных в контексте и интересных.
  20. Fingercomp

    кладбище Ethel

    Да! О том я, собственно, на протяжении всего поста и писал. Так что можно было не говорить.
  21. Fingercomp

    кладбище Ethel

    Мегапроекты, мегаобсуждения, огромная мотивация... Ну, конец истории вы уже поняли. В этом посте посетим могилу Ethel — моей игры, которой было суждено не быть. Начать надо с понятий. Ethel — это платформер. Естественно, 2D и скроллинговый. На скрине выше: Красные — это враги. При контакте с ними персонаж дохнет. Жёлтый прямоугольник — это персонаж. Голубенький квадратик — это точка спаун поинта. Серенький — это каменья. По ним можно ходить. А остальное — небо. Затея сделать игру приняла форму действия 30 мая 2017 года и (моими усилиями) стремительно нарастала фичами. Из реализованных фич: Самые тупейшие враги. Они идут в одну сторону — и в другую при коллизии о стену или своего товарища. Передвижение базовое. Можно прыгать и ходить. Дебаг-экран, отключаемый по F1. Загрузка всех ресурсов из файлов. Карта выше была загружена из файла с данными карты. И спрайты, и тайлы. Физика какая-то. Примитивная, конечно. Как-то коллизии умудряется определять и ускорение рассчитывать. Главное меню. Куда ж без него? 20 FPS на опенкомпе. Вроде бы. Хотя это, скорее, из-за того, что нереализованного дофига. 2D и скроллинг. Для адекватности в скорости использовалась либа doubleBuffering. Все компоненты соединяются посредством либы событий libaevent, которую я тогда достаточно любил, потому что довольно удобная штука она есть. Но тут параллельно мы поднимали свой сервачок MC, для которого, очевидно, нужен был свой сайт. Сисайт. Иначе несолидно. А так как 2 любительских проекта параллельно одновременно я вести не умею, выжить должен был один из них за счёт второго. И так получилось, что вторым стал ethel. Уже через 3 недели после начала энтузиазм куда-то иссяк — и 27 июня был запушен коммит, который оказался последним. С тех пор обновлений не было. Какую мораль я вытащил из этого потонувшего проекта? Я не умею делать нормальные архитектуры. Но это я и так знал. То же для физики. Казалось бы, что там сложного-то: радиус-вектор, вектор скорости и вектор ускорения. Но вот я и в них как-то запутался. Там самым запарным было из этих трёх векторов сообразить нормальный интерфейс программный. Во-первых, действующих на спрайты сил было несколько. Как минимум, там есть гравитация. В теории могли бы быть всякие пружинки. Во-вторых, движение врагов, на самом деле, задаваться должно не ускорением, а простой скоростью. Я там как-то накостылял, и оно даже работало, но удовольствия от этого я не получил. И коллизии. Просто так на них прочекать тоже не столь и сложно, но запары все возникали при использовании результата проверки в методах, задающих поведение спрайтов. Костыли — это плохо. Ну, то есть, всё как обычно. Посмотреть на останки можно здесь. Можно даже попробовать запустить это — но сначала сделайте git checkout HEAD^^ (в мастере там какие-то блохи). А, ещё надо будет откуда-то достать либу буферную. И lua-objects скопировать в /usr/lib/lua-objects/lua_objects.lua. Ethel — это лишь один из множества руин некогда поражавших воображение своей амбициозностью проектов. В этом элитном клубе мы намереваемся продолжить копаться в исторической пыли и вытаскивать на свет из-под неё и другие павшие проекты. Поэтому ненастойчиво убеждаем вас подписаться на сей чудесный блог, тыкнув на соответствующую кнопку — ту, что повыше. А можно нажать и на обе.
  22. "Беседка для программистов" почему-то оформлена как вопросник. Хотя там абсолютно не вопрошательный характер обсуждений идёт. Рядом построенная общая беседка, тем более, содержит обычные темы, не вопросы.
  23. Ну, не. Так можно сказать, что и блок "записи в блогах" есть на главной. А я говорил про список блогов именно. Он же в четверг даже висел сверху там, отдельной вкладкой: тык — и список. Но вот зачем-то убрали. Нафига — вот это узнать я и желал бы.
  24. Не знаю, не знаю. Он там какую-то бяку с гуглофонтов зачем-то тащит, в чате какой-то хренью занимается (Механик писал, что у него он вообще ошибку выкидывает в консольку). И очень долго всякие скрипты грузит, тащит, выполняет. Неясно зачем. Ещё вопрос. Куда делись блоги? Вернее, ссылка на них. Я понимаю, что в них полгода я не постил, но не стоит же просто так их выкидывать поэтому.
×