Войти на сайт

Авторизация, ждите ...
×
  • Страница:
  • 1
  • ...
  • 5
  • 6
  • 7
  • 8
  • 9

ТЕМА: Дневник разработчика YuryOl

Дневник разработчика YuryOl 6 года 2 мес. назад #105618

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
ZX_Lost_Soul пишет:
Интересное решение) Выглядит очень сочно, главное чтобы не тормозило, канвасные отрисовки гораздо медленнее чем webgl наложения. Если в боевых условиях это не просаживает fps, то шикарно)

с этим пока борюсь и тестирую :mad:
Комп со средними хар-ками пока с погоревшим блоком питания, поэтому потестить на нем возможности нет. А вот на слабом ноуте если понизить количество частиц с 40 до 30, а их обновление - раз в 7 кадров вместо 10-ти, то фпс понижается до 30 фпс (пустой проект на этом ноуте запускается в 40 фпс). Хар-ки:

- видюха Intel HD Graphics 400,
- 4 ядра по 1,44 мГц
- оперативка 4 гига

пока у меня и холст канваса на весь экран игры, и с цифрами не сильно игрался, может оптимизировать получится.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Maximka68

Дневник разработчика YuryOl 6 года 2 мес. назад #105702

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
рано радовались, не справился с оптимизацией :)

даже на хорошем компе фпс провисает уже при трех огнях, а на слабом компе фпс провисает даже при одном :silly:
Администратор запретил публиковать записи гостям.

Дневник разработчика YuryOl 6 года 2 мес. назад #105703

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Учитель2 место ОраторПрограммист JavaScript Даритель СтимкеяПроект месяца 1 местоПроект месяца 3 местоПрограммист RubyВетеранПаладин
Попробуй разобраться с pixi particles. Может сможешь адаптировать под мейкер, чтобы было легко создавать свои эффекты. Будет весьма полезный плагин.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Дневник разработчика YuryOl 6 года 1 мес. назад #106001

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
вот сидишь, кодишь плагин, а потом понимаешь, что код ужасен, и нельзя просто так продолжать писать его дальше. Проще его переписать полностью и с нуля. С одной стороны - это круто: значит ты развиваешься. С другой стороны, плагин топчется на месте, а ты выполняешь черновую работу. К чему это?


Позавчера начал в 6-ой раз переписывать свой плагин боёвки (АБС). Друзьям шучу, что по количеству переписываний АБС я считаю свой уровень в жаваСкрипте. А значит сейчас я программист 6-ого левела! Убрал переменные, заменив их на свойства объектов. Вместо выражений типа "a = (f > lkjkk.x && f<= lkh) ? p : q" сделал "ифы".

Что уже переписано:

- выстрелы в разных направлениях/разными траекториями
скачать гифку
- настройка траты HP или MP при выстрелах
- перезарядка оружия (использования итемов как патроны)
- оружие "бумеранг" (на графу не обращайте внимания)
посмотреть гифку
- оружие "хукшот". Ты можешь цепляться "цепью" за объекты и притягиваться к ним.
посмотреть гифку
либо наоборот цеплять врагов,итемы и притягивать их к себе (как скорпион из МК).
посмотреть гифку
- телепорт в нужную клетку по вводу цифр координат на клавиатуре
посмотреть гифку
- резкий бег вперед
- переход сквозь стены
посмотреть гифку
- настройка звука при выстрелах, экипировке
- настройка графики,анимации при выстрелах, экипировке
- изменение тайлов при попадании (разрушаемые стены, мебель)
- разъединении партии
- привязка скиллов к оружию

Что еще готово,почти готово в предыдущих версиях?

- второй игрок
- пиксельное движение
- прыжок
- щит
- "рикошеты"
- типы оружия и щитов (одни устойчивы к физическому оружию,другие наносят урон огнем и т.д.)
Последнее редактирование: 6 года 1 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, DK, Cabbit, KageDesu, Doctor_Bug, Aiaz Marx, NeKotZima

Дневник разработчика YuryOl 6 года 1 мес. назад #106002

  • Doctor_Bug
  • Doctor_Bug аватар
  • Вне сайта
  • Светлый дракон
  • Из горизонта события! ▪_■
  • Сообщений: 573
  • Спасибо получено: 896
  • Ветеран3 место в КодировкеПроект месяца 3 местоПроект месяца 1 место3 местоПрограммист Ruby
Код можно вечно совершенствовать и улучшать. Но иногда стоит остановится и двигатся дальше. Чтобы не стать заложником улучшений, иначе и правда с места не сдвинешься. Возможно даже кривой код, будет лучше, чем постоянные изменения работуещего кода. Юр а так красавчик, совершенствуешься! %)
Баг изучает Godot Engine. А слушает эту музыку ~~> Мое сердце
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: DK, yuryol, NeKotZima

Дневник разработчика YuryOl 6 года 1 мес. назад #106019

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Doctor_Bug пишет:
Код можно вечно совершенствовать и улучшать. Но иногда стоит остановится и двигатся дальше. Чтобы не стать заложником улучшений, иначе и правда с места не сдвинешься. Возможно даже кривой код, будет лучше, чем постоянные изменения работуещего кода. Юр а так красавчик, совершенствуешься! %)

Спасибо!

Он был такой,что для добавления нового функционала,например динамита, пришлось бы править функций 10, вставляя в них проверки чтоб ничего не сломать) сейчас пока нужно поменять только две функции.

Плюс анимации и звуки добавлялись внутрь разных функций, теперь же у них отдельные функции :blush:
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: DK, Doctor_Bug

Дневник разработчика YuryOl 6 года 1 мес. назад #106021

  • Seibur
  • Seibur аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 371
  • Спасибо получено: 308
  • РазработчикВетеран
Описанное выше значительно расширит возможности рпг мейкера!
Плюс каждый раз очень интересно следить за темой, особенно с анимированными картинками, которые знакомят нас с наработками. В общем - автор молодец, очень увлекательно все описал!
А крюк на самой первой гифке (где он показан) чем-то напомнил бумеранг из боевки Фалко)
Будь таким, каким хочешь казаться.
Последнее редактирование: 6 года 1 мес. назад от Seibur.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol, Doctor_Bug

Дневник разработчика YuryOl 6 года 1 мес. назад #106027

  • KageDesu
  • KageDesu аватар
  • Вне сайта
  • Мастер
  • Сообщений: 101
  • Спасибо получено: 346
YuryOl, сложно разрабатывать свою ABS? Это будет отдельный плагин для общего пользования или только часть игры?
Сколько строк кода занимает текущая версия ABS?
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Дневник разработчика YuryOl 6 года 1 мес. назад #106036

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Сейбур,спасибо! Ага, убиваю двух зайцев: и сам прогнать учусь, и для других мукеристов инструмент для игр сделать :blush:
KageDesu пишет:
YuryOl, сложно разрабатывать свою ABS? Это будет отдельный плагин для общего пользования или только часть игры?
Сколько строк кода занимает текущая версия ABS?

Учитывая, что прогаю всего года два с половиной, то да. Причём пол года назад вообще по пол месяца одну функцию писал)

Будет отдельный плагин для общего пользователя, правда требующий два сторонних плагина: фабрика событий от местного Амфилохия и "тайл свап" от пещерного. Сейчас несколько человек тестят,находят баги,советуют как сделать лучше, понятнее.

Строк у текущей версии пока 1100,у предыдущей 1400, но в предыдущей не было функций анимации, звуков, перезарядки.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: DK, KageDesu

Дневник разработчика YuryOl 6 года 1 мес. назад #106040

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 683
  • Спасибо получено: 350
Ну-ка, чо за тайл свап? Можно линк что ли?

А вообще начинает напоминать Кхас, так глядишь и годную абску для мв напишешь будет хоть повод игры на нем делать.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol, NeKotZima

Дневник разработчика YuryOl 6 года 1 мес. назад #106048

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Paranoid пишет:
Ну-ка, чо за тайл свап? Можно линк что ли?

Держи! тык
благодаря этому плагинчику в абс разрушаемое окружение - после выстрела из огнемета горит стол, гранатометом разрушаются стены, забор рушится при ударе ломом :mad:
А вообще начинает напоминать Кхас, так глядишь и годную абску для мв напишешь будет хоть повод игры на нем делать.

спасибо! надеемся. как перепишу ее, начну по-маленьку выкладывать ее демки - подобие мини-игр.
Последнее редактирование: 6 года 1 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.

Дневник разработчика YuryOl 6 года 1 мес. назад #106400

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
медленно, но верно пилю АБС. сейчас 1230 строчек,но это не значит что написано всего 130, ибо также переписал некоторые функции чтоб они стали еще понятнее =З

Что новенького?

1) "Разрушаемые" тайлы.

При попадании в определенный тайл можно настроить, что он исчезнет. Анимацию при попадании и звук также можно настроить, но пока лень вставлять в проект
посмотреть гифку

Есть возможность, чтоб тайл сменился на другой, включился переключатель или изменилась переменная
посмотреть гифку

2) "Рикошеты"

Например, при попадании во врага пули отлетают вправо от него
посмотреть гифку

Или же обратно в героя:
посмотреть гифку

А можно настроить рандомное отражение
посмотреть гифку

3) Дрожание экрана

Как можно увидеть из предыдущих гифок, при попадании во врага возможно дрожание экрана. Отлично подойдет для боссов или при разрушении важного тайла (напрмиер вражеских ворот). Или чтоб показать мощь особого оружия

4) Направление выстрелов и количество пуль
Возможность выстрелить:
- прямо
- назад
- прямо и назад одновременно (например при выстреле из пистолетов с двух рук как в крутых боевиках)
- вперед двумя пулями по диагонали
- тремя пулями вперед одновременно (привет, "контра"!)
посмотреть гифку

- вперед,влево,вправо одновременно
- в четыре стороны
- в четыре стороны по диагонали
- в 8 сторон
- вперед двумя пулями
посмотреть гифку

5) Примитивный второй игрок
Пока он ненамного продвинутее "крыски" из моей игры "Для живых"
- может бегать вперед-назад-лево-право.
- стрелять!
- уязвима для выстрелов противников
- умеет прыгать
- есть свое здоровье, мп, другие параметры (берутся из "актера" в БД, ИД которого автор может указать сам в настройках плагина)
посмотреть гифку

Из минусов:
- инвентарь пока общий. Но можно прикрутить плагин на "сундуки" (ссылку искать лень), при этом второй игрок будет по сути сундуком, которому можно давать вещи и оружия или у которого можно их забирать.

Ближайшие планы

1) Полностью переработать "хукшот". В старой версии он нестабилен и порой выдает ошибки
2) Добавить динамит, гранату
3) Добавить "размер" противникам. сейчас все противники одноклеточные. В старой версии сделано костыльно, в новой же думаю подглядеть плагин Пещерного "биг евент" и попробовать сделать подобное


На этом всё, как обычно спасибо моим учителям ДК, Деме, Ирену, Мур, Амфи, Пещерному, Диржу :blush:
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, I_LORD, Cabbit, Doctor_Bug, Aiaz Marx, WhitePaper

Дневник разработчика YuryOl 6 года 1 мес. назад #106403

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 683
  • Спасибо получено: 350
Чет у тебя все больше на стрельбе сосредоточено, неужели нельзя будет просто взять старую добрую биту и начистить врагам рожи без этих ваших пулек?
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Дневник разработчика YuryOl 6 года 1 мес. назад #106404

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Paranoid пишет:
Чет у тебя все больше на стрельбе сосредоточено, неужели нельзя будет просто взять старую добрую биту и начистить врагам рожи без этих ваших пулек?

можно. но без анимации спрайта подобное показывать скучно :unsure:
а анимацию пока еще со старой версии не перенес, чтоб не мешалась в коде
Администратор запретил публиковать записи гостям.

Дневник разработчика YuryOl 6 года 1 мес. назад #106407

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 683
  • Спасибо получено: 350
Можно былоб наложением биты для начала сделать или как в первой зельде, перед героем появляется оружие, а враг отталкивается.
Администратор запретил публиковать записи гостям.

Дневник разработчика YuryOl 6 года 1 мес. назад #106467

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
диалог с параноидом [ Нажмите, чтобы развернуть ]


"Многоклеточные" враги

И в текущей, и в старой версии враги были размером только 1*1 клетку. И если для столкновения с другими событиями и героем подходил плагин Caveman's event tuning [MV] , то коллизии пуль с врагами пришлось писать самому

Где и как

Где и как указать "размер события? В подобных плагинах обычно пишут комментарий на странице, поэтому тут вопросов не было. А вот над "как" пришлось подумать

У того же Пещерного чтобы сделать врага 2*2 надо написать в комменте (для примера один из параметров опустим):
[bbox|0|1|0|1]
Я нубопрограммист, поэтому не очень понимаю зачем всё это писать в квадратные скобки, а потом регулярками выуживать данные? Ну и главное - до изучения регулярок я никак не доберусь.
Поэтому сделал проще:
b0101

Со строкой мы и так можем работать как с массивом, а потому код для считывания коммента в событии становится значительней для меня легче по сравнению с кодом Кейвмана:

1) Проверка тот ли это коммент:

У пещерного:
if (comment.indexOf("[bbox") >= 0)
У меня:
if (comment[0] == 'b')

2) Присваиваем свойствам объекта данные из коммента:

У пещерного:
var re = /\[[Bb][Bb][Oo][Xx]\|(.+?)\|(.+?)\|(.+?)\|(.+?)\|(.+?)\]/;
var match = re.exec(comment);
this._xSub = Number(match[2]);
this._xAdd = Number(match[3]);
this._ySub = Number(match[4]);
this._yAdd = Number(match[5]);
У меня:
this._xSub = Number(comment[2]);
this._xAdd = Number(comment[3]);
this._ySub = Number(comment[4]);
this._yAdd = Number(comment[5]);

Разные коллизии столкновений и урона при попадании пули

Некоторые могут возразить: "теперь придется для задания коллизий писать два коммента, а не один, если б ты сделал в точности как у Пещерного.

Это так. Но зато теперь коллизии столкновений и урона при попадании пули можно делать разными.

К примеру, можно создать циклопа размером 3*5, который будет топтать тебя когда ты стоишь у него на пути. Но при этом чтоб убить его надо стрельнуть только в клеточку где у него глаз, а не в весь прямоугольник 3*5

Направление

Враги часто одного размера спереди и другого сбоку. К примеру пчела из моей игры если смотрит вперед, то размером 1*3, т.е. по высоте она больше чем по ширине. А вот когда поворачивается боком, то ее тело вытянуто по оси X и размер становится равным 4*2.

Поэтому решено добавить размер события в зависимости от направления. Например, чтобы сделать пчелу размером указанным выше, необходимо будет написать комментарий
b0002-2201
, где первые 4 цифры - размер когда пчела смотрит вверх или вниз. Вторые 4 цифры - смотрит вбок

ИТОГ:

Теперь их можно делать и большего размера! Отлично подойдет для боссов, работает как для недвижимых событий, так и для событий с маршрутом

Гифки

Коллизии врага когда событие смотрит вперед
посмотреть гифку

И когда пчелка боком
посмотреть гифку
Последнее редактирование: 6 года 1 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: I_LORD, KageDesu, Aiaz Marx, NeKotZima, Noxmils

Дневник разработчика YuryOl 6 года 1 мес. назад #106468

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 683
  • Спасибо получено: 350
Как работают такие враги? Если враг 2 тайла в высоту и ему надо зарядить в голову, то снизу пуля летит дольше чем сверху от врага?
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol

Дневник разработчика YuryOl 6 года 1 мес. назад #106469

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Paranoid пишет:
Как работают такие враги? Если враг 2 тайла в высоту и ему надо зарядить в голову, то снизу пуля летит дольше чем сверху от врага?

ну да. Получается пуля будет лететь снизу на один тайл дольше чем если стреляли сверху

Но в этом случае выстрелы сверху или снизу не так разнятся, как выстрелы от героя, который стоит слева или справа от него. Так как несмотря на высоту врага в две клетки попасть нам будет надо только в одну.

Вот пример с трехклеточным врагом. допустим враг циклоп, а ходить мы можем только по голубоватым клеткам



в этом случае мы можем попасть в циклопа только с этих отмеченных красным цветом кружков.



А если бы коллизии совпадали, то количество сбоку клеток с которых мы попадали во врага утроилось бы

Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Paranoid, Noxmils

Дневник разработчика YuryOl 6 года 1 мес. назад #106470

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 683
  • Спасибо получено: 350
Да уж, в перспективе мейкера стрельба очень плохо смотрится. С ближним боем все нормально, надо просто быть на одном уровне с врагом. А вот стрелять приходится уже как бы за персонажа если ты сбоку.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol, Noxmils

Дневник разработчика YuryOl 6 года 1 мес. назад #106473

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • 1 место в Готв2 место Организатор конкурсов3 место ГотвПобедитель конкурсаУчительКомпозиторОратор
Paranoid пишет:
Да уж, в перспективе мейкера стрельба очень плохо смотрится. С ближним боем все нормально, надо просто быть на одном уровне с врагом. А вот стрелять приходится уже как бы за персонажа если ты сбоку.

так никто же не заставляет делать высоких врагов если не нравится. Если пример тебя смущает можно взять ту же пчелу, у которой допустим урон наносится только если стрелять в голову



Поэтому тут скорее вопрос дизайна врагов. Возьми боссов в подобных играх - они не зря обычно или сплюснутые, или вытянутые по горизонтали. А если все-таки где-то встречаются высокие, то как правило они стоят в верху экрана и сбоку к ним не подойти.

ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Seibur
  • Страница:
  • 1
  • ...
  • 5
  • 6
  • 7
  • 8
  • 9
Время создания страницы: 0.346 секунд