Totoro
-
Публикации
1 950 -
Зарегистрирован
-
Посещение
-
Победитель дней
289
Сообщения, опубликованные пользователем Totoro
-
-
Из соображений набраться опыта в клиент-сервер ориентированной игрушке, предлагаю unity. Love потребует делать многое вручную, а там свои нюансы
Love многое дает в готовом виде. В принципе он даёт даже больше чем какой-нибудь LibGDX.
Плюс даст возможность познакомиться с типичным циклом работы видеоигры.
Инициализация -> (Эвенты -> Обновление -> Отрисовка) -> Завершение.
-
1
-
-
Задумка хорошая, мне нравится.
Главное чтобы хватило энтузиазма довести дело до конца.

В принципе вполне возможно писать программы под ОС и без операционной системы.
Но если будет удобная обертка над этим всем, которая предоставит какие-то крутые интерфейсы, это будет как минимум интересно.
-
1
-
-
Нашёл на жёстком диске афишу.

-
Хорошая идея.
Действительно, нафиг роботу ОСь?
Прошил - и отправил копать. =)
-
4
-
-
Корутины - такие корутины.. =)
-
Ага-ага, сходство 135%.
Учитывая, что за основу внешнего вида брался похожий файловый менеджер для DOS.
Собственно, всё ещё проще.
https://en.wikipedia.org/wiki/Midnight_Commander

-
Немного почитал код, и в голову пришло несколько советов.
--[[ opencomputers рыболов create serafim
"by serafim" надо. Иначе выходит, что это рыболов серафима создал, а не наоборот.
print("только роботы могут использовать эту программу") os.sleep(5) computer.shutdown()А зачем тут шутдаун? При любой ошибке игроку дается 5 сек. чтобы её прочесть, а потом комп/робот вырубается. На мой взгляд лучше просто без всяких слипов выйти из программы. Например через os.exit().
slot = i_c.getStackInInternalSlot(13)
Таки всякие внутренние переменные тоже стоит объявлять как local.
print("ошибка !") print("нет сигнала от датчика")Для таких комбинаций команд, которые часто повторяются вместе, удобно завести функцию. Типа log(message) или error(message).
_ = event.pull(60,'redstone_changed')
В случае, когда не важно вообще, что там функция вернёт, можно просто вызвать её, как обычную функцию. event.pull(60, 'redstone_changed'). Однако, имеет смысл подстраховаться, и проверить, что произошёл именно эвент. Если мне не изменяет память, есть возможность того, что функция просто вернёт nil вместо эвента (даже если его не было на самом деле).
lovka() drop()
И наконец, сочетание английского и транслита в одной программе терзает глаз.

-
2
-
-
Люблю я такие темы.

Под чипсы хорошо идут.
-
8
-
-
Итак, я обещал не забрасывать проект. И я его не забросил! Хе хе.
С присущей мне оперативностью, я выкладываю новый апдейт.
Игра приобрела вид minimum viable product. То есть геймплей по минимуму присутствует. Ящики падают, их можно лупить, можно выживать, можно проиграть.
Оружие робота было слегка переделано, добавлен магазин (с патронами который, а не внутриигровой) и перезарядка.
Слева отображается название текущего оружия. Предполагается, что по ходу игры его можно будет сменить. Когда-нибудь. =)

-
1
-
-
Крутая библиотека, и титанический труд!
Поздравляю с успешным завершением.
P.S. Через точку, а не через двоеточие - то есть, одновременно может быть открыт только один такой сокет?
-
Эх, как понимаю, "лингуй" никто не будет портировать на ОС? Жаль.
А смысл? Ведь сам LinGUI - это по сути порт MineOS под CC.
-
OpenOS - это не OS а DOS
Стоит отметить, что DOS расшифровывается как Disk Operating System.
-
2
-
-
...... print('- Arteminecrafter')Это самое главное.

Никогда не забывайте подписать авторство в своём вирусе!
Адрес электронной почты, настоящие имя и фамилия и мобильный телефон тоже не будут лишними.
-
6
-
-
Notch же както зделал мультиплеер в Minecraft
Чувак, ты о чём вообще?
Да, сделать мультиплеер возможно.
Да, можно сделать мультиплеер и в LittleTanks.
Но!
Это потребует довольно сильно переписать код игрушки, потому что, когда я её писал, я не включил мультиплеер в ТЗ.
Была цель сделать синглплеерную аркаду.
Если есть желание, ты можешь сам попробовать это сделать, и убедиться в моей правоте. (Ну или доказать обратное. =))
В случае Майнкрафта мультиплеер был заложен в проект с самого начала.
И даже несмотря на это, они очень сильно, и не один раз, переписывали код по мере выхода новых версий.
-
4
-
-
Майнтесту надо что-то с графикой делать. Сейчас он слишком какой-то картонный. Даже для мира где все такое грубовато кубическое, не достает ему живости, какой-то глубины, на мой взгляд.
В Майнкрафте такого почему-то не ощущается. Какие-то незначительные мелкие отличия, но дьявол-то в мелочах. =)
-
Маленькое обновление
Если бы ты еще написал, что именно обновилось, и какой-нибудь скришотик приложил, было бы веселее.

-
Сетевуху добавить надо
Мультиплеер? Гм.
Это потребует основательной перестройки кода. Эта игрушка рассчитана чисто на сингл.
Но если есть желание запилить поддержку самому - добро пожаловать! C радостью приму пулл-реквесты на GitHub.

-
2
-
-
...
О, сколько фидбека! =) Щас на все отвечу.
Камера, зум, колесико и прочее.
Над этим надо будет подумать, да. Возможно сделаю автоматический зум, когда робот отдаляется от поверхности, для начала.
Указатели на летящий мусор тоже можно будет приклепать.
Управление скоростью игры.
Для игры на скорость, ловкость и выживание - совершенно излишняя фича. Я представляю себе, как это можно сделать, но делать не буду. =)
Скорость и напряженность игры будет (если получится) расти по мере того как идет время. В начале легко - потом сложнее, и сложнее, и в конце геймовер.
Меню паузы.
Есть на кнопку P. Потом сделаю более удобный UI.
Скорость снарядов, отдача, реализм, топливо.
Скорость и траектория полета снаряда для таких вот "баллистических" типов оружия - зависит от положения мыши. Ближе - слабее, дальше - сильнее.
Отдачу сделаю позже. Для разного оружия она будет разной.
Топливо - это излишне пока. Может быть потом расширю геймплей менеджментом топлива. А пока и так непонятно, что выйдет. =)
Управление роботом.
Да, движение вниз можно добавить.
Масса будет изменяться слишком незначительно, не будет оказывать сильного влияния на геймплей, если только не "гирболизировать" его и не заострить на нем внимание.
Типа с пустым баком летаешь шустрее, но недолго. Но это уже отдельная история.
Реалистичной физикой заморачиваться не буду. Тут физика а-ля аркада-платформер. То есть он тормозит, если не нажимать на кнопки и падает на Луну.
Игра планируется быстрой, динамичной, поэтому не будет времени рассчитывать траектории и векторы тяги. =)
Добавить магазин, кучу нового оружия, бонусов и прочего.
Это само собой. В форме магазина, или случайных апгрейдов, или перков, или бонусов. Что-нибудь будет обязательно.
Только не все сразу. =) Я пилю игру довольно медленно. По паре часиков в день. Как видите уже не уложился в слоки конкурса.
Поэтому все будет добавляться и появляться, но не быстро.
-
2
-
-
Мне кажется что надо увеличить мощность робота, дальность лазера и кол-во кадров для 1 луча. Еще мне кажется стоит доработать % загрязнения(хотя это не мое дело). Там бочки которые не касаются луны тоже место занимают. Не думаю что это правильно.
Всегда рад советам.

Увеличить мощность, это в смысле? Скорость? Можно сделать его полегче, будет меньше инерция.
Это в общем-то и не лазер вовсе. =) Там время жизни "снаряда" сейчас 5 секунд. Но он очень быстро уничтожается при столкновениях с препятствиями и его не всегда видно. Надо будет что-нибудь с этим сделать. Например добавить вспышку взрыва.
Про загрязнение - да, учитывается часть ящиков, которые и не лежат непосредственно на луне. Хз, правильно это или нет. Вроде и не касаются, но с другой стороны - тоже захламляют же. =)
Обнаружил, что забыл залить одну картинку к снаряду. Сейчас поправил, можно перекачать.
-
Игра отпад! Отлично показывает, что можно сделать, используя Love2D. Определенно победитель! Весь этот блюр, плазмометы, и прочее.. Круто! Осталось магаз прикрутить и больше пушек и консумаблов всяких.
На Raspberry Pi 3 окно игры не создается, на GLX ругается

Насчет магазина подумаю. Я пока думаю просто по рандому бонусов накидывать всяких. С разным оружием и эффектами.
А про Pi ничего не могу поделать. =)
Там считалось что робот мусор. И он хавал проценты.
з.ы. Сделал из робота орбитальный лазер. Имба http://puu.sh/q4wcp/06d71cf2ff.jpg
А, да это косяк. Не настроил группы коллизий. Будет пофикшено.
P.S. Нефигово завалило =)
-
Убери из текстурки ящика тень и блик не очень красиво смотрится. Я помню ты делал сглаживание, почему здесь не сделаешь? ящики какими-то острыми кажутся.
Классно получается. И вообще топчик (как я понял из картинки)то что ящики могут вращаться.
Да, текстурка временная, когда рисовал не заморачивался с тем, откуда будет падать тень. Заменю чуть позже на что-нибудь более подходящее.
Со сглаживанием дело сложнее. Там походу надо шейдер алиасинга вешать на все.
Что-то в самом Love2D не нашел способа сгладить повернутую картинку.
Ящики могут вращаться и делать вообще все что захотят. Физика же. =)
На ящики и на робота действует гравитация луны, в остальном они свободны.
Робот не мусор(((Он не мусор, он главный герой. =)
P.S. Присобачил роботу простое управление на A-W-D или стрелки, и небольшой плазмомёт.


-
1
-
-
@@Totoro, ты не оставил шанса родится новому Брюсу Уилиссу


А я что-то наоборот так вдохновился этим списком, что обдумываю вариант запилить свою библиотечку. Приятно чувствовать поддержку от такого количества единомышленников.
-
Ура! Я уж думал что самому придется мир спасать от отсутствия графических библиотек.
(OC) DoubleBuffering или мощная графическая библиотека
(OC) Модульная оконная библиотека
Графическая библиотека "Граффити"
(OC) GUI Library. Vector graphics. beta 0.0.2
(OC) Image: глобальная библиотека для работы с изображениями
(OC) ColorLib: библиотека для работы с цветом
Формат картинок для OpenComputers
(OC) NeoX - Графическая библиотека
GUI библиотека (ComputerCraft)
Braille Bicycle - монохромные пиксели (OpenComputers)
Система визуального программирования FormsMaker
Комната виртуальной реальности

-
7
-
-
Обновил проект. Оживил интерфейс - теперь считается время, и обновляется уровень "загрязненности" поверхности.
Добавил робота. Управлять им пока нельзя, но можно попинать его ящиками.

-
1
-

Идеи для игр (кодинг, разработка)
в Флудилка
Опубликовано:
Есть низкоуровневая сеть:
https://love2d.org/wiki/Tutorial:Networking_with_UDP
Есть с либой:
https://love2d.org/wiki/lua-enet
http://leafo.net/lua-enet/