Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Игра на QBasic (http://forum.oszone.net/showthread.php?t=168899)

GordonG 01-03-2010 21:00 1359075

Игра на QBasic
 
Вложений: 1
Представляю вам свою первую игру - "Shotgun". Графика конечно так себе, но я старался как мог. Инструкция и QB прилагается!

Итак, пишите всё, что думаете об игре - хочу увидеть побольше отзывов. По вашему что можно изменить/добавить в игру чтоб получше смотрелась/игралась? И нужно ли вообще продолжать работу, а то мож забросить всё на? Есть ли у игры шансы?

Заодно задам вопросы знающим людям (если бейсиком ещё кто-нибудь здесь занимается):
1. Как сделать задержку не через FOR...NEXT, а через таймер на 1 мс? Или чтоб эту 1 мс выполнялся цикл?
2. После того, как программа стала более 1400 строк QBasic 4.5 отказывался её компиливовать, так как недостаточно ему памяти! Можно как-нибудь это исправить?
3. Много ли в коде бардака и читаем ли он вообще?

Вот ещё на всякий случай ссылка, если аттач работать не будет:
http://www.filehoster.ru/files/er9763

Только отписывайтесь побольше=)

Delirium 02-03-2010 01:10 1359222

Под Windows 7 Даже не запустится. Выдаст
Цитата:

---------------------------
C:\Users\Del\Desktop\shotgun\QB.EXE
---------------------------
Эта система не поддерживает работу в полноэкранном режиме.
---------------------------
ОК
---------------------------

lxa85 02-03-2010 02:06 1359238

GordonG, по коду.
Используйте конструкцию CASE при обработке кодов поступивших с клавиатуры.
QBasic поддерживает процедуры и функции. Они гораздо удобнее, чем sub'ы.
Как первая программа очень даже хорошо, но по хорошему ее следует переписать заново и грамотно.
Повторов слишком много, это сбивает.
Сам код оформлен хорошо, читать можно. Т.к. программа простая, то понять можно, но иногда хочется комментариев.
По поводу задержек, посмотрите исходники nibbles и gorilas.
Досконально не вчитывался, смотрел по диагонали.

GordonG 02-03-2010 15:29 1359546

Цитата:

Цитата Delirium
Под Windows 7 Даже не запустится »

Можно попробывать под DOS BOX - эмулятор DOS под винду. Только медленно работать будет. Если что, вот ссылка на старую версию игры, там специальный экзешник для Dosbox'а есть. Инструкция по запуску внутри
http://bit16.ru/index.php?modules=go&cat=vb&id=1835
Цитата:

Цитата lxa85
GordonG, по коду.
Используйте конструкцию CASE при обработке кодов поступивших с клавиатуры.
QBasic поддерживает процедуры и функции. Они гораздо удобнее, чем sub'ы.
Как первая программа очень даже хорошо, но по хорошему ее следует переписать заново и грамотно.
Повторов слишком много, это сбивает.
Сам код оформлен хорошо, читать можно. Т.к. программа простая, то понять можно, но иногда хочется комментариев.
По поводу задержек, посмотрите исходники nibbles и gorilas.
Досконально не вчитывался, смотрел по диагонали. »

Да я и 50% операторов языка не знаю. Как соберусь доделывать, так найду какой-нибудь учубник по QB в интернетах и поизучаю про этот CASE. А где взять исходники эти?

lxa85 02-03-2010 18:25 1359685

Цитата:

Цитата GordonG
А где взять исходники эти? »

Вообще, как и сам QBasic, они идут вместе с DOSом. Найдите полную версию DOS 6.22, там должны быть.
Там же и справка должна быть. Полезная вещь.

GordonG 04-03-2010 14:05 1361144

Нашёл какой-то DOS 6.22, но папка с ним весит всего 4.26 Мб, а внутри 10 файлов, из которых 3 штуки - IMG (внутри фигня какая-то). Нигде нету BAS файлов, наверное это не полная версия?

А что, так никто игру и не включил? А жаль...

v12345 04-03-2010 20:28 1361374

Цитата:

Цитата GordonG
Нашёл какой-то DOS 6.22, но папка с ним весит всего 4.26 Мб, а внутри 10 файлов, из которых 3 штуки - IMG (внутри фигня какая-то). Нигде нету BAS файлов, наверное это не полная версия? »

Вот молодежь не поверит, что 15-20 лет назад на три дискетки входила целая операционная система с приложенным языком программирования. Хотя мне почему-то кажется, что в полном последнем досе дискеток действительно было побольше трех, кажется, шесть. :lol:

А по существу - если вы начинаете изучать программирование, то какой смысл в наш век его изучать на примере QBasic? Это полупустая трата времени.

Поставьте уж тогда последний Visual Basic - для начала младшую редакцию. Если вы еще школьник, можно начать со Small Basic - есть у Microsoft такой детский продукт для изучения программирования. А если склоняетесь в сторону именно создания игр, поищите современные специализированные бэйсикоподобные среды для игростроительства - есть таких несколько.

GordonG 05-03-2010 14:21 1361755

Ну что сказать... Я уже создал одну игру на Blitz Basic, но хочется и первую довести до ума. Вот и лазаю по форумам, чтоб подсказали насчёт задержек всяких, и работу мою посмотрели. Вот когда закончу, так и ещё одну игру писать сяду (наверное на VB всё таки). Повышаю кругозор!
PS. Ну да, школьник, но уже в 10-ом классе. Так что уже не школота)))

lxa85 05-03-2010 19:48 1361959

GordonG, эх школьники... все за вас делать надо :)
http://telcontar.net/Misc/Gorillas/Gorillas.bas
http://library.thinkquest.org/19436/...la/gorilla.bas
http://www.jefflewis.net/archive/pro...ng/nibbles.bas
http://www.codinghorror.com/blog/files/donkey.bas.txt

Далее обращаем внимание на код:
В Gorrilas
Код:

SUB Rest (t#)
  s# = TIMER
  t2# = MachSpeed * t# / SPEEDCONST
  DO
  LOOP UNTIL TIMER - s# > t2#
END SUB

В Nibbles :
Код:

    startTime# = TIMER                          ' Calculate speed of system
    FOR i# = 1 TO 1000: NEXT i#                ' and do some compensation
    stopTime# = TIMER
    speed = speed * .5 / (stopTime# - startTime#)

    curSpeed = speed
            'Delay game
            FOR a# = 1 TO curSpeed:  NEXT a#

Сам код тоже почитайте, это будет хорошим учебником по программированию.

GordonG 06-03-2010 19:39 1362503

lxa85, огромное Вам спасибо! Вы мне действительно ОЧЕНЬ помогли!

Drunk_Kojote 25-03-2010 12:56 1376799

Всем привет.
Я тоже давно хотел написать свою первую игру, и как то не хватало времени и умения. И благодаря Гордону , его игре, у меня получилось это сделать. Он вдохновил меня написать игру. Сам на бейсике только основные операторы знаю со школьной программы, поэтому тоже пользовался процедурами типа Gosub (подсмотрел у Гордона).

Классическая игра Тетрис - 5 уровней, с каждым уровнем растет сложность, скорость падения блоков.
За полученные деньги можно покупать вещи типа бомбочек.
http://www.filehoster.ru/files/ex7510

Бейсик под ДОС до сих пор еще актуален - его изучают во многих уч.зав. стран СНГ. И он легок в изучении для новичков.

GordonG 26-03-2010 12:30 1377636

Ухты, Тетрисъ! Ещё один порт знаменитой игры Алексея Пажитонова! Причём очень удачный. Понравились разные бомбочки - значительно облегчают игру! Посмотрел код - действительно кое-что у меня подсмотрено (например переменные PX и PY и то, что игра скинута на файлхостер.ру))). Особо не разбирался - жутко боюсь массивов=))
Не ожидал, что моя поделка сможет кого-то вдохновить. Но раз уж это произошло, значит игра у меня удалась!

Drunk_Kojote 08-04-2010 15:53 1388012

Доработал Тетрис на QBasic 4.5
Изменил старые процедуры GoSub на процедуры и функции Sub, Function
Полностью изменил графику. Создал процедуру по загрузке 16цветных bmp картинок. Есть 2 эффекта взрыва. :)

http://www.filehoster.ru/files/fa6967

Архив содержит исходник и картинки bmp.

GordonG 08-04-2010 18:17 1388120

Не качает

Drunk_Kojote 08-04-2010 19:55 1388198

все скачивает. я только что скачал!

kirik0099 14-06-2015 12:10 2518434

НЕПОНЯТНАЯ ИГРА!!!!


Время: 02:37.

Время: 02:37.
© OSzone.net 2001-