1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Как сделать платформер

Тема в разделе "Мастерская", создана пользователем Dimouse, 28 окт 2013.

  1. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Там есть один подвох. Большинство современных обучаловок (так меня грузили на педагогических курсах заезжие щвейцарцы) сознательно не позволяют пойти дальше приведенных в них примеров. Это только замануха. Хочешь серьезных знаний/навыков - сначала войди в цеховое братство.
     
  2. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Bato-San, ой, как интересно. А я-то думал, что Dave написан на Turbo C, а это, видимо, вообще для прикола там:
    Код:
    seg000:8B45                 align 2
    seg000:8B46
    seg000:8B46 ; =============== S U B R O U T I N E =======================================
    seg000:8B46
    seg000:8B46
    seg000:8B46 sub_18B46       proc near               ; CODE XREF: _main+EB↑p
    seg000:8B46                 mov     ax, 3509h
    seg000:8B49                 int     21h             ; DOS - 2+ - GET INTERRUPT VECTOR
    seg000:8B49                                         ; AL = interrupt number
    seg000:8B49                                         ; Return: ES:BX = value of interrupt vector
    seg000:8B4B                 mov     word_39CBE, bx
    seg000:8B4F                 mov     ax, es
    seg000:8B51                 mov     word_39CC0, ax
    seg000:8B54                 push    ds
    seg000:8B55                 push    cs
    seg000:8B56                 pop     ds
    seg000:8B57                 assume ds:seg000
    seg000:8B57                 mov     dx, offset loc_18BB7
    seg000:8B5A                 mov     ax, 2509h
    seg000:8B5D                 int     21h             ; DOS - SET INTERRUPT VECTOR
    seg000:8B5D                                         ; AL = interrupt number
    seg000:8B5D                                         ; DS:DX = new vector to be used for specified interrupt
    seg000:8B5F                 pop     ds
    seg000:8B60                 assume ds:dseg
    seg000:8B60                 retn
    seg000:8B60 sub_18B46       endp
     
  3. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    MisterGrim > Может он имел в виду версию под Мак?
     
  4. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    INHELLER, а, ну та-то точно должна быть на QBasic!
     
    Steel Rat нравится это.
  5. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    MisterGrim > Пути мыслей Bato-San-а неисповедимы. :unknw:
     
  6. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    MisterGrim, А в чем проблема перехвата клавиш? Клавиатура+Пользователь - самое тормозное устройство из возможных. "QBasic c клавишами" - например, те же Змейки. Методика перехвата 9-го прерывания и встраивание кодовых кусков в BASIC - описана уже в Журдене. Более того, с мышкой в комплекте шел драйвер, из которого народ узнал, как добавить мышку в программы, работать с ней не умеющие.
     
    Bato-San нравится это.
  7. Ulysses

    Ulysses

    Регистрация:
    28 апр 2011
    Сообщения:
    1.516
    Угу, обработка устройств ввода, по-моему, простейшее в написании игр под ДОС. См. соответствующую литературу тех лет.
     
    Bato-San нравится это.
  8. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Много игр сложнее «змейки» есть на QBasic?

    И давайте не путать QBasic, что шёл вместе с DOS, и даже не умел компилироваться, с платным QuickBasic.

    ---------- Сообщение добавлено в 00:26 ---------- Предыдущее сообщение размещено в 00:25 ----------

    Что же касается всевозможных библиотек/фреймворков/конструкторов. Вот создателю Spelunky должно быть стыдно за GameMaker?

    ---------- Сообщение добавлено в 00:29 ---------- Предыдущее сообщение размещено в 00:26 ----------

    Это так только кажется. Напрямую с железом вообще очень приятно работать… до возникновения проблем.
     
    Чёрный Думер и Dimouse нравится это.
  9. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    MisterGrim, "за деревьями - леса не видно" - это про твои докапывания. :) И, да, я знаю на чём написан DD и как происходит обработка клавиатуры. Кусок ты правильный нашёл, но вот смысла его не понял именно в приложении к QB. И, видать, подзабыл, как конкретно клавиатура обрабатывает ввод на уровне железа. :)

    Испортила народ многозадачность... :(
     
  10. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Через INKEY$, да.
    Сложно понять смысл кода на C в приложении к QB.
     
  11. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    А надо сильно сложнее? Помню, даже сделал на GWBASIC по спецзаказу тест Сонди, а там была нужна нехилая графика. Вообще же на 486 (которые 95-й вешал намертво) QBasic летал как бешеный. Компилятор? А кому это дерьмо было надо? Проще было критический кусок в кодах написать.
    Выходное железо обычно паскуднее - те же звуковухи...

    Вообще, главная проблема написания игр не в поиске инструмента, а в поиске идеи этой самой игры.
     
    Bato-San нравится это.
  12. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Да, хотелось бы. Всю жизнь играть в змейку неинтересно. Что-нибудь хотя бы уровня Apogee'вских платформеров есть?

    ---------- Сообщение добавлено в 00:50 ---------- Предыдущее сообщение размещено в 00:46 ----------

    Нет, даже не надо платформер. Вот такую Paganitzu (1991, DOS) игру теоретически можно действительно на бейсике сделать. Примеры есть?
     
  13. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    А здесь предлагается писать игры такого уровня?
    Зачем в змейку? Было много BASIC-стратегий и -тактик.
    А аркады? В них были главными вселенная и графика, а не язык на котором они были написаны. Уже где-то тут поминал, симулятор-RTS, написанный мною на TURBO PASCAL (а он не на много лучше бейсика).

    ---------- Сообщение добавлено в 23:56 ---------- Предыдущее сообщение размещено в 23:54 ----------

    Что и требовалось доказать. Честно говоря, я сильно подозреваю, что многие игры тех времен были написаны на Бейсике и откомпилированы только из лицензионных соглашений.

    Но это все оффтоп. Речь не о выяснении того, почему народ тогда не удовлетворился Бейсиком, а о том, почему мы с таким восторгом принимаем возврат на тот уровень.
     
    Последнее редактирование: 30 окт 2013
  14. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    Ну, вообще то, реализация данного оператора будет совпадать в любом языке того времени почти на 98%. Так что реверсером эта конструкция опознаётся однозначно всегда.
    на спектруме дофига подобного. На PC как то меньше, но в принципе - чего сложного то ? Часть диалектов бейсика умела вполне прилично работать со спрайтами даже. Многомерные массивы - не проблема. Тайлы - в чём вопрос вообще ?

    Для БК есть тексты Арканоида и Вертолёта на бейсике.
     
  15. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Она написана на C.
    Да, мною предлагается.
    То есть игр, где быстродействие не столь важно (да и графика тоже).
    Для игрока, конечно, язык был не важен.

    ---------- Сообщение добавлено в 01:06 ---------- Предыдущее сообщение размещено в 01:04 ----------

    INKEY$ работает со стандартным обработчиком клавиатуры вообще-то.
    На бейсике, ага...
    Вопрос я уже задал — где эти игры?
     
  16. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Но Вы признаете возможность написания ее на QBasic. Большего и не надо.
    Это к топикстартеру и автору упомянутой им статьи.

    При чем тут это? Быстродействия QBasic на 486 хватило бы и на большее.

    Скажу по секрету. Для программиста тоже язык не важен (если только язык не относится к особо им нелюбимым, а денег дают мало).

    А для аркады большего и не надо.

    На него Вам уже ответили - это не вопрос темы. Это голимый флуд.
     
  17. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    Ни в коем случае. Но разве это не пример того, как хороший художник получил возможность реализовать игру?

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

    А при своём уровне графики у неё не самые скромные требования, что наверняка бы смутило программера, разве нет? Создавалась-то игра поначалу в 7-й версии GM, а позже автор перешёл на 8-ю. Там народ после публикации исходников выяснил, что 7-й недостаточно. Ну и требования для своей графики у неё, как по мне, высокие.

    Но, ещё раз, для художника это замечательно. Интересно, что я уже троим знакомым художникам (мечтающим делать игры) предлагал GM, но все трое предпочитают договориться с программистом. К сожалению.
     
  18. Ulysses

    Ulysses

    Регистрация:
    28 апр 2011
    Сообщения:
    1.516
    Sword of Aragon написана на QuickBASIC. Управление и графика вполне на уровне.
     
  19. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
  20. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    А также я признаю возможность её написания на PL/I и Ada.
    Да, особенно удобно с помощью INKEY$ обрабатывать несколько одновременно нажатых клавиш (для аркады обычно дело так-то).
    Не мои слова ведь, а первый ответ в теме:


    ---------- Сообщение добавлено в 01:35 ---------- Предыдущее сообщение размещено в 01:33 ----------

    О том и речь. А у нас как всегда (и в этой теме тоже): на GameMaker некомильфо, на C не умеем, а вот раньше трава была зеленее, и QBasic просто летал... а игр как не было, так и нет.
     
    Steel Rat нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление