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

Totoro

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

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

  • Посещение

  • Победитель дней

    289

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

  1. Надо посмотреть, чего там намудрил в коде Фингер, и запилить: Компьютер, который будет отрисовывать информационный дисплей. Как-нибудь красиво. Программу для планшета, который будет роздан участникам. Там тоже инфа, всякие полезности, и кнопки для телепортации по ключевым точкам арены (четыре стороны света и крыша) Программу, которая будет отрисовывать инфу на голограммах в центре арены. Инфу по командам и общее время, например. Тоже как-нибудь красиво.
  2. Можно конечно. Как написал Фингер, в ближайшее время доведём её до ума, и выложим.
  3. Круто! По поводу команд. На команды делиться не будем. Нас 10 человек, арена вмещает 4 игрока (у каждого 4 робота) за один раз. Чтобы не было толкучки, и полного фарша из роботов. К самой битве возможно подтянется кто-то ещё, либо наоборот кто-то не сможет участвовать, так что скорректируем на месте. В общем и в целом, я думаю перед битвой потянем "соломинки" перетасуемся, и сразимся в несколько этапов, чтобы выявить одного асолютного победителя. Если брать текущий состав, можно сражаться матчами по трое. Из каждой тройки выходит один победитель, которые потом борются в финале. Можно четвёрками - но тогда шансы будут неравномерные, т.к. кто-то вступит в бой только в финале. Можно как-то раскидать чтобы участвовать в матче не один раз. Предлагайте свои варианты.
  4. Спасибо за предложения. =) Вроде пока всё на мази, пишем тестим. Скоро будет карта. В принципе можно начинать писать уже код для своих роботов понемногу.
  5. Totoro

    MoonScript

    В таком случае - попробуй что-нибудь написать на нём. Может прийтись по вкусу, может наоборот. На мой взгляд MoonScript добавляет в Lua немного функционального духа. И делает синтаксис немного более математическим.
  6. Сейчас ведущий архитектор - @Fingercomp. =) Строим на секретном полигоне.
  7. Это рационально как чугунная гиря. Я с интересом следил за предыдущей темой, и не мог не заметить, что после написания самогенерящегося лабиринта там всё сдохло. Поэтому, после воскрешения, я выкинул все лишние сложности. Раунды у нас будут по совершенно разным правилам и на совершенно раных аренах. Построить под каждый случай арену не составит особого труда, и позволит оформить её креативно. Написание генерящего алгоритма под каждый случай, да чтобы оно ещё было и креативно - это двойная работа. В случае песочницы арена вообще не представляет из себя ничего особенного, для чего там пожет потребоваться генератор. Это будет огромная пустая комната, с парой тройкой колонн, прямоугоьной или восьмиугольной формы. На полу будет располагаться около 4 стартовых площадок. Каждая будет снабжена воронками, которые буту уходить под землю, к сундуку. У сундуков будут стоять датчики связанные с компьютером, который будет играть роль Сервера. Над ареной будет площадка для игроков-зрителей и большой дисплей для инфы.
  8. Поле как раз не будет генерироваться. Оно будет строиться вручную, и перед раундом будет выложено в общий доступ в виде карты.
  9. Totoro

    MoonScript

    Заморочился и добавил MoonScript for OpenCoputers в репозиторий. Теперь MoonScript можно установить на ваш компьютер одной командой: hpm install moon P.S. Я правда не проверял, работает ли оно как надо. =) Возможны очепятки. Поэтому если кто проверит пакет moon - буду благодарен.
  10. Ну а в принципе, контроллёр инвентаря подвести - не велика проблема. Сундуки команд будут в известном и фиксированном месте и количестве.
  11. Сегодня поиграл в lava-runner, поставив его через репозиторий. Ссылка на установку не заработала прямо через run, почему-то, но в два этапа всё установилось успешно. После этого, я просто установил с репозитория игрушку, без лишних хлопот. Запускаем! Разумеется, добром это не кончилось. :P P.S. @electronic_steve, шедевральная игрушка! Но генерация пещер заставляет откладывать кирпичи иногда =)
  12. Осталась какая-то мелочь. Написать абстракцию полноценных потоков над корутинами, потом над ней абстракцию real-life сокетов, и будет готова сетевая библиотека нашей мечты! Наконец-то мы сможем сократить эту громоздкую конструкцию: modem.send(message) Ура, товарищи!
  13. Ну, тут гарантировать ничего не буду. Это уже как получится.
  14. У меня вопрос собственно. Что это за хрень и почему мне надо 400 строчек кода, чтобы послать сообщение по сети? :P Вооружившить вот это цитатой из первого поста: "операционная система должна упрощать разработку ПО", я реквестирую пример использования этой хрени.
  15. Команда monitor как раз и предназначена для того, чтобы переводить выполнение программы на другой монитор полностью. Тебе надо использовать монитор как периферийное устройство. Пример: peripheral.call( "top", "write", "Hello World!" ) Пишем на монитор над компом "Hello World!". Другой пример: local monitor = peripheral.wrap( "top" ) monitor.write( "Hello World!" ) Тут мы переопределили переменную monitor. Теперь в ней хранится ссылка на объект монитора который сверху. И на ней можно вызывать методы для печати, или что-то ещё.
  16. Во, это уже лучше. Это близко к тому как оно щас. Мы сейчас готовим арену и софт. Когда будет готова - карта с рабочим сервером будет выложена, чтобы участники могли тестировать роботов на правильную работу. И там уже сами участники следят, чтобы всё было правильно. А на турнире (или демо-матче, как получится) уже пойдут дисквалификации и снятия команд.
  17. Мы шагаем в ногу со временем. Всемирно знаменитый пакет left-pad уже в нашей репе! https://hel.fomalhaut.me/#packages/left-pad
  18. Это потребует от организаторов влезать в код чужих программ. Это предложение мне не нравится по нескольким пунктам. Во-первых, это не этично. =) Во-вторых, придётся читать тонны говнокода, и смущать автора. Потом, автор может обвинить тебя, что ты "испортил" его код, и из-за этого он проиграл. И докажи потом, что ты не верблюд. Это всё равно остаётся глючным способом, где многое может пойти не так. И так далее.
  19. А теперь раскрываем карты и показываем, как этим чудом можно пользоваться. С мордой всё понятно: идёте на сайт, юзаете его, дивитесь эпичности проекта. Вот сам фейс, к слову. API находится на сервере тут. Там настолько всё скучно, что по ссылке даже нет страницы. Так быть и должно: что этот сервер делает, описано в вики. Клиент для OpenComputers требует, как ни странно, опенкомпьютер. Просто запускаете эту команду: $ pastebin run vf6upeAN Hpm бодренько поставится и обновится до последней стабильной версии. Если сломается hpm, перезапустите эту команду. Скорее всего, случился очередной breaking change, такое бывает. Весь проект зарелизен под лицензией MIT. 2016 © Fingercomp, Totoro
  20. Для разработчика, который желает, чтобы мир узнал о его программе, Hel тоже имеет несколько приятных плюшек. Зарегистрировав в два клика аккаунт на сайте, вы получаете удобный интерфейс для создания пакетов. Специально для LeshaInc у нас интерфейс оформлен в Material Design. Пакет легко версионируется (мы юзаем стандарт SemVer для этого). Вы можете использовать любой другой пакет в hel (например, библиотеку) в качестве зависимости для своей программы. Описание к пакету поддерживает разметку Markdown (включая подсветку синтаксиса Lua, MoonScript и ещё 20 языков). Кроме того, описание можно подкрепить несколькими контент-тегами, чтобы облегчить поиск. Останется только указать лицензию (или не указывать её вообще) и залить парочку скринов. Всё! Пакет будет тут же доступен в репе, его можно будет посмотреть и скачать. Смысл репозитория — не только хранить, но и искать! Так что поиск у нас тоже есть, который вмиг отыщет из любого уголка репозитория нужный вам пакет, если он, конечно, существует. В наличии поиск по имени/описанию, поиск по автору и поиск по контент-тегам. Отдельно заметим, что сами файлы репозиторий не хранит, только метаданные пакета. Вы можете спокойно разрабатывать свой проект в GitHub, или Pastebin, или на своём собственном хосте. А клиент hpm с помощью метаданных из репозитория будет сам скачивать нужные файлы откуда угодно.
  21. В принципе, да. Некий общий интерфейс, который с одной стороны могли бы использовать программы, а с другой стороны реализовывать разные имплементации сетей не помешал бы. Тут главное его не усложнять и сделать максимально простым и гибким.
  22. Да, возможно ты прав. =) Но мы пока не ставим сложной алгоритмической задачи (хотя Серёга мне в чат уже писал о "задаче коммивояжера" ). Тут главное это дело организовать, посмотреть какие проблемы всплывут, ну и просто устроить робо-сабантуй коллективный, веселья ради. Кто-то может просто обкатать алгоритмы движения и ориентирования по арене, которые потом заюзаем в ДМ, в следующем раунде. Насчёт команды "пауза" и прочих таких штук можно тоже подумать. Но это вещь которая потребует реализации со стороны участника, в софте робота. И она может быть забагована, робот может быть занят другими вычислениями в помент сигнала на паузу и т.п. Потребуется больше отладки, будет больше условий к софту. Одно дело - просто стартовать по общему сигналу - и потом свободно распоряжаться ресурсами робота. Другое дело - дополнительные условия к софту и алгоритму. Но в каком-нибудь раунде можно и такую штуку сделать.
  23. Круто =) Только краска у него не "Бугатти" совсем что-то Где лак-блеск-хром?
×
×
  • Создать...