Плохо! Плохо!:  0
Страница 1 из 6 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 51

Тема: How to create... или базовая реализация идей в Scirra Construct Classic

  1. #1
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию How to create... или базовая реализация идей в Scirra Construct Classic

    Громогласно

    Это маленький закуток, в котором я буду демонстрировать уже реализованную механику различных идей / фишечек / плюшек (называйте как хотите). Все работы будут иметь, как скомпилированный exe-файл, так и исходники, дабы любой желающий мог их изучить, расширить, придумать что-то своё, ну или же кинуть в меня тухлым помидором (ничего нельзя исключать).

    Цель этих... примеров (уроками сложно назвать) заключается в том, чтобы продемонстрировать местным обитателям, что при помощи Scirra Construct можно быстрее и лучше сделать всё то, что вы делаете в Rpg Maker.

    Мотивация предельно проста - привлечь людей к большему трудолюбию в работе над своими проектами, расширить жанровую составляющую этих проектов, отказ от поиска чужих RGSS скриптов (которые, бывает, конфликтуют), и, наконец, сделать Валере щелчок по носу, дабы начал признавать другие движки, кроме Rpg Maker.


    Пример 01: Погодные условия

    Чует сердце, что мейкеристы тут же заявят, что погодные условия реализованы в стандарте Rpg Maker, да и различных скриптов уйма. Но! Многие ли из вас хорошо разбираются в RGSS? Уверен, что нет.

    Что дают нам самописные погодные условия? Возможность к постоянным улучшениям спец-эффектов, более широкие возможности в настройках, а так же всё, что душа пожелает.

    Пример погодных условий

    В данном примере используются 3 глобальные переменные:
    Effect - Номер эффекта (1-3 - Дождь, 4-5 - снег)
    Force - Сила ветра
    Random - Время до вспышки (молнии) во время "Грозы". Генерируется случайно.

    Так же используется 1 частная переменная, которая определяет время жизни каждой капли или снежинки - Y.

    В примере вы можете изменять настройки при помощи интерфейса.


    Пример 02: Туман войны

    Ну какая современная стратегия или кошерная RPG от Bioware обойдётся без тумана войны? Вопрос риторический - отвечать не обязательно.
    На самом деле, реализованная механика далеко не идеальна, и гораздо проще реализовать её через canvas, но, если уж говорить о классическом решении, то прошу любить и жаловаться:

    Пример Тумана войны

    Объяснять эту механику гораздо сложнее, поэтому я ограничусь описанием самого принципа, а не реализации:
    Персонаж имеет определённую дистанцию - обзор. Сам туман войны делится на 2 элемента: туман (неразведанная территория) и тень (разведанная, но вне поля зрения персонажа).

    Самым простым вариантом будет определять через дистанцию те элементы тумана, которые в поле зрения и убирать их с экрана. Но! Если мы хотим чтобы туман представлял собой не набор квадратов, а сегменты разной формы нужно проверять соседние "туманинки".
    Для этой самой проверки следует использовать массивы, которые будут хранить информацию о состоянии тумана в каждый момент времени.

    В своём примере, я реализовал проверку по 4 соседям (сверху, снизу, слева, справа). Для более красивой отрисовки можно проверять ещё проверять соседей по диагонали, но это вы и сами сможете уже реализовать.

    Управление:
    ЛКМ - двигать персонажа
    Стрелки - двигать экран


    Пример 03: Псевдо 3Д

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

    Пример Pseudo 3D

    Оптимизация данного примера хромает на обе ноги. Так как я для этого использую 100 кадров анимации для фона и для ящика. На самом деле можно сэкономить и размеры спрайта (ящик) и размерами фона (ну или количеством кадров). Для этого вам потребуются полностью симметричные текстуры.

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

    Управление:
    Стрелки влево/вправо - Вращать экран


    Пример 04: Змейка (по заказу Злодея)

    Реализация классического механизма игры "Змейка" Используя глобальную переменную Speed - вы можете увеличить скорость игры. Переменная Length - отвечает за длину змеи.

    Пример Змейки


    Управление:
    Стрелки - поворачивать змейку.


    Пример 05: Арканойд

    Реализация змейки вдохновила меня на работу над другой классической игрой - Арканойдом. Можете откровенно смеяться, когда вы откроете исходник. Но код игры до безбожия короткий.

    Пример Арканойда


    Управление:
    Мышь - Двигать "ракетку"
    ЛКМ - Запустить шарик


    Пример 06: 3D или First Person Rpg Map Movement

    А это уже вполне работоспособный движок, который можно использовать для создания рпг вроде первых Might and Magic, Pool of Radiance, Wizardry или же Bard's Tale.

    Пример 3D

    Управление в движке:
    Стрелки вверх / вниз - Двигаться вперёд / назад
    Стрелки влево / вправо - поворот влево / вправо

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

    Управление в редакторе:
    ЛКМ - Поставить / убрать стену
    S - сохранить карту
    L - загрузить карту

    Игра автоматически загрузит созданную вами карту.

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


    Open your eyes

    А это, планомерная реализация геймплея игры Baldur's Gate. Этот проект будет с закрытым исходным кодом. То бишь только exe-файл.
    Создаётся сие творение из ностальгии по рухнувшему проекту Archerian Nox.
    С каждым обновлением я буду обновлять лог в этом посте, указывая что было добавлено, и как это посмотреть.

    Baldur's Gate 2 Engine

    -- 04.02.2013 --
    Реализованы базовые функции Лог-окна (диалогового окна):
    - Увеличение / уменьшение размеров при помощи GUI.
    - Скроллинг сообщений при помощи ползунка и кнопок GUI.
    - Для теста используются 4 сообщения (их количество определяется внутреигровым контентом и, в принципе, не ограничено).

    Управление:
    Сообщения отображаются при нажатии клавиш на NumPad'е 1, 2, 3, 4.

    Post scriptum

    Присылайте свои вопросы и идеи для реализации. Наиболее интересные идеи я буду реализовывать и выкладывать на всеобщее обозрение.
    Последний раз редактировалось Narcotic Truth; 09.02.2013 в 18:23.
    --- Yellow House Studio ---

  2. #2
    Познающий Аватар для mephis
    Информация о пользователе
    Регистрация
    27.01.2011
    Адрес
    Новосибирск
    Сообщений
    330
    Записей в дневнике
    8
    Репутация: 34 Добавить или отнять репутацию

    По умолчанию

    Очень годная, прекрасная задумка темы.

    Касаемо идей. Так их есть у меня.

    1. Недавно поднималось. Сложно ли сделать мост, чтобы и под ним пройти можно и по нему.
    2. Освещение, как в Khas Awesome Light Effects. Вопрос производительности. Вопрос возможности отбрасывания продвинутых теней по картам нормалей, как например в Ethanon Engine
    3. Форматирование сообщений, как в Ccoa UMS. Т.е. поддержка в сообщениях разнообразных тегов оформления текста, задержка по времени вывода и прочее.
    4. Есть ли отладчик, в котором можно проверять и устанавливать значения переменных во время теста игры.

  3. #3
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию

    Обновлено: см. 1 пост.

    2mephis
    1. Нет. Персонажа можно перемещать по слоям.
    2. И да, и нет. Для отбрасывания тени используется объект Light, а объекты отбрасывающие тень используют поведение Shadow caster. Но Тени исключительно одноцветные и без градиентного эффекта. С другой стороны можно сделать тень вручную, используя спрайт этой самой тени, но это осложняется тем, что надо учитывать каждый источник света для проецирования тени (коль хочется динамичных теней).
    3. Форматирование отсутствует, но вывод можно сделать либо сразу весь текст, либо со скоростью 1 символ в указанный промежуток времени. Вернее ты можешь отформатировать весь текст в едином стиле. То есть сделать какое-то отдельное слово жирным / другого размера / другого цвета не получится.
    4. Да. Когда тестируешь проект можно выбрать Run All - запустить весь проект, Run layout - запустить выбранную локацию, Debug All - запустить весь проект с отладчиком, Debug layout - запустить выбранную локацию с отладчиком.
    Но тут надо помнить - выставлен у тебя Fullscreen или нет. В полноэкранном режиме отладчик ты не увидишь.
    --- Yellow House Studio ---

  4. #4
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию

    Обновлено: см. 1 пост.
    --- Yellow House Studio ---

  5. #5

    По умолчанию

    Самые слабые снег и дождь почти незаметные. С направлением ветра, конечно, забавно.
    Туман, помню, ещё Ранда на 2к3 делала ...
    А с всевдо-3D-таки практически сжульничали-с - с кучей фонов-то %)

  6. #6
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Otter Посмотреть сообщение
    Самые слабые снег и дождь почти незаметные. С направлением ветра, конечно, забавно.
    Сделано, как в Baldur's Gate.

    Цитата Сообщение от Otter Посмотреть сообщение
    Туман, помню, ещё Ранда на 2к3 делала ...
    Ну... она программист и к.т.н., кто из местных обитателей этим может похвастать?

    Цитата Сообщение от Otter Посмотреть сообщение
    А с всевдо-3D-таки практически сжульничали-с - с кучей фонов-то %)
    На то оно и псевдо)
    --- Yellow House Studio ---

  7. #7
    Маститый Аватар для Рыб
    Информация о пользователе
    Регистрация
    12.11.2008
    Адрес
    [ДАННЫЕ УДАЛЕНЫ]
    Сообщений
    1,421
    Записей в дневнике
    50
    Репутация: 55 Добавить или отнять репутацию

    По умолчанию

    bug report:
    GUI некорректно отслеживается положение курсора мыши при нажатии на кнопки скролла.

    остальное круто, кроме разве псевдо 3д. Его можно было сделать одной большой( 360 градусов) панорамой(что сэкономило бы место)
    И такой вопрос в Constraclte разве нет поддержки OpenGL или она вшита очень глубоко?
    Twitch <- Тут иногда делаю вид, что умею играть или работать, в прямом эфире
    GitLab <- Тут иногда делаю вид, что умею программировать
    Github <- Еще какая-то дичь, тут иногда появляется, но с мукером не связана
    Notion<- Тут иногда делаю вид что умею планировать

  8. #8
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Рыб Посмотреть сообщение
    bug report:
    GUI некорректно отслеживается положение курсора мыши при нажатии на кнопки скролла.
    Детали, скрины или демонстрацию в скайпе.

    Цитата Сообщение от Рыб Посмотреть сообщение
    остальное круто, кроме разве псевдо 3д. Его можно было сделать одной большой( 360 градусов) панорамой(что сэкономило бы место)
    Мысль интересная, но даже если так - мой пример лишь показал то, что все эти вещи реализовать не сложно, а это никто не использует.

    Цитата Сообщение от Рыб Посмотреть сообщение
    И такой вопрос в Constraclte разве нет поддержки OpenGL или она вшита очень глубоко?
    Есть поддержка 3д, примитивы ещё нормально работают, а вот подключение собственной модели - просто упорото. Лучше уж псевдо делать - надёжнее)
    --- Yellow House Studio ---

  9. #9
    Маститый Аватар для Рыб
    Информация о пользователе
    Регистрация
    12.11.2008
    Адрес
    [ДАННЫЕ УДАЛЕНЫ]
    Сообщений
    1,421
    Записей в дневнике
    50
    Репутация: 55 Добавить или отнять репутацию
    Twitch <- Тут иногда делаю вид, что умею играть или работать, в прямом эфире
    GitLab <- Тут иногда делаю вид, что умею программировать
    Github <- Еще какая-то дичь, тут иногда появляется, но с мукером не связана
    Notion<- Тут иногда делаю вид что умею планировать

  10. #10
    Маститый Аватар для Narcotic Truth
    Информация о пользователе
    Регистрация
    29.04.2008
    Адрес
    RUSSIA
    Сообщений
    1,280
    Записей в дневнике
    2
    Репутация: 26 Добавить или отнять репутацию

    По умолчанию

    Понял. Посмотрю)))
    --- Yellow House Studio ---

Страница 1 из 6 123 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
How to create... или базовая реализация идей в Scirra Construct Classic