Форум » » уроки URQ » Ответить

уроки URQ

qwerty: Они самые. предлагаю вести такую тему, где будет по шагам описано создание игры на досурке. UPD уроки по досурке (URQ_DOS от 30.11.04). Скачать её(досурку), а так же её описание можно здесь: http://urq.plut.info/soft (см ссылки: [quote]Скачать URQ_DOS от 30.11.04 - 132 Кб Описание URQL для URQ_DOS версии 1.35 от 23.11.2006 года от Корвина.[/quote] ) UPD(11.02.09, 0:59): оказался недостаточно организован, что бы вести уроки. НО с удовольствием отвечу в этой теме на любые вопросы по urq_dos. появляюсь на форуме не реже 1 раза в неделю

Ответов - 139, стр: 1 2 3 4 5 6 7 All

Malevi4: Пишу я квест на SMSquest, как понял для акурки =), с тем как вставлять мелодию немного разобрался, а насчет картинок надеюсь на вашу помощь. И еще один вопросик, как сделать так чтоб человек мог сохранить игру? И желательно чтоб он всегда имел возможность перейти в главное меню.

Chicago1920: Malevi4 Тебе картинки как нужно - просто отдельное окошко с картинкой чтоб появилось или вставить в окно проигрывателя в игру (как в вэб страничке?) Нужно ли наложение картинок? Т.е. Поверх главной картинки, в заданные места можно поверх нарисовать еще картинок (например для отражения места персонажа на карте)? Если что, пиши сюда, в личку, на мыло Chicago1920@mail.ru или аську 254881271.

noname: Chicago1920, вот свежая версия задачи1: ( проверено на dos32\urq_dos ) :1 invkill perkill ; ; параметры программы: ; координаты точки, ; и 'диаметр' квадратного заполнения ; xpixel= 50 ypixel= 50 zpixel= 50 diameter= 5 ; ; размер массива нам щазз неважен: ; он может быть хоть бесконечным во все стороны ; goto just_do_it end :just_do_it ; ; заполняем единицами кубическую область массива ; от cx1/cy1/cz1 = 45/45/45 ; до cx2/cy2/cz2 = 55/55/55 (включительно) ; cx2=xpixel+diameter cy2=ypixel+diameter cz2=zpixel+diameter cx1=xpixel-diameter :loop_cx cy1=ypixel-diameter :loop_cy cz1=zpixel-diameter :loop_cz проверка=проверка+1 ; кол-во точек элемент_x#cx1$_y#cy1$_z#cz1$=1 cz1=cz1+1 if cz1<=cz2 then goto loop_cz cy1=cy1+1 if cy1<=cy2 then goto loop_cy cx1=cx1+1 if cx1<=cx2 then goto loop_cx ; ; в циклах особой сложности нет- просто три вложенных цикла ; счётчики циклов- cx1,cy1 и cz1 ; сначала заполняем строчку от (cx1,cy1, zpixel-diameter) ; до ( cx1, cy1, z2) ; т е для начальных cx1 и cy1 заполняем весь диапазон по z ; затем- наращиваем cy1 на единицу, ; и- повторяем цикл по z сначала до конца ; когда и по y дойдём до конца- ; нарастим на единицу cx1 ; после чего опять повторим цикл по y с самого начала ; а в него вложен цикл по z ; ИТОГ: ; в цикле по X для каждого X будет выполнен с начала до конца цикл по Y ; в цикле по Y для каждого Y будет выполнен с начала до конца цикл по Z ; в цикле по Z элементу с текущими координатами cx1 cy1 cz1 присваиваем =1 ; ; таким образом в трёх циклах перебираются все элементы, ; а в их сердцевине производится всего два действия: ; проверка=проверка+1 ; кол-во точек ; элемент_x#cx1$_y#cy1$_z#cz1$=1 goto report end :report надо=(diameter*2+1)*(diameter*2+1)*(diameter*2+1) if проверка=надо then goto успех pln pln в программу вкралась ошибка, о повелитель! pln (да прославится твоё имя в веках) pln не вели казнить, вели слово молвить: pln Твои никчёмные рабы(да падёт позор на их головы) pln заполнили #проверка$ точек, вместо #надо$! end :успех pln pln о, великий, задание выполнено успешно! pln заполнено #проверка$ точек pln btn проверить, проверить end :проверить pln pln введите координату x: pln input cx1 pln pln введите координату y: pln input cy1 pln pln введите координату z: pln input cz1 pln pln элемент_x#cx1$_y#cy1$_z#cz1$ = #элемент_x#cx1$_y#cy1$_z#cz1$ $ pln btn проверить, проверить ещё end


qwerty: Chicago1920, вот задача2: (проверено на старой доброй досурке) :1 invkill perkill clrscr=1 urq_delay=0 ; ; параметры программы: ; координаты точки, диаметр заполнения ; xpixel= 50 ypixel= 50 zpixel= 50 diameter= 5 ; ; задаём кубическую область, в пределах которой ; будем проверять все точки на вхождение в шар: ; xmin= xpixel-diameter ymin= ypixel-diameter zmin= zpixel-diameter xmax= xpixel+diameter ymax= ypixel+diameter zmax= zpixel+diameter ; ; обращаться к элементам массива будем, например, так: ; элемент_x12_y10_y5=1 ; goto just_do_it end :just_do_it cx = xmin :loop_cx cy = ymin :loop_cy cz = zmin :loop_cz ; ; *** а вот здесь всё и происходит ; ; расстояние м/ду двумя точками вычисляется как корень суммы квадратов разниц координат ; r= sqrt( (x1-x2)^2 + (y1-y2)^2 + (z1-z2)^2 ; и если расстояние от текущей точки до центра заполнения не больше диаметра, ; то- присваиваем элементу с текущими координатами единицу ; ; НО на самом деле мы будем сравнивать квадрат диаметра с суммой квадратов разниц координат, ; так как корень на урке сделать- это уже другая задача, и лучше возложить её на движкоделов ; r= (xpixel-cx)*(xpixel-cx) + (ypixel-cy)*(ypixel-cy) + (zpixel-cz)*(zpixel-cz) if r <= (diameter*diameter) then элемент_x#cx$_y#cy$_z#cz$=1 & проверка=проверка+1 cls pln x= #cx$ из #xmax$ ; ; ; ; *** теперь осталось только 'закрыть' циклы ; cz=cz+1 if cz <= zmax then goto loop_cz cy=cy+1 if cy <= ymax then goto loop_cy cx=cx+1 if cx <= xmax then goto loop_cx cls goto успех end :успех pln pln задание выполнено успешно! pln заполнено #проверка$ точек pln btn проверить, проверить end :проверить pln pln введите координату x: pln input cx pln pln введите координату y: pln input cy pln pln введите координату z: pln input cz pln pln элемент_x#cx$_y#cy$_z#cz$ = #элемент_x#cx$_y#cy$_z#cz$ $ pln r= (xpixel-cx)*(xpixel-cx) + (ypixel-cy)*(ypixel-cy) + (zpixel-cz)*(zpixel-cz) ; pln квадрат расстояния от этого элемента до центра заполнения = #r$ if r < (diameter*diameter) then pln и он находится внутри области заполнения if r = (diameter*diameter) then pln и он находится на границе области заполнения if r > (diameter*diameter) then pln и он находится за пределами области заполнения pln btn проверить, проверить ещё end

Malevi4: У кого был опыт написания таких игр с помощью html кода. Плз обьясните в чем проблема. Пишу: <br><HR><br><p align="center"><font size=4 face= Comic Sans MS> <a href="btn:1">Начало игры</a><br> <br><br> Но шрифт не меняется

noname: Malevi4 пишет: У кого был опыт написания таких игр с помощью html кода. Плз обьясните в чем проблема. Пишу: <br><HR><br><p align="center"><font size=4 face= Comic Sans MS> <a href="btn:1">Начало игры</a><br> <br><br> Но шрифт не меняется а если взять название шрифта, в котором есть пробелы, в кавычки- работает: ;Версия 1.0 html true btn_visible false inv_visible false Music="\sound\A.mid" :0 <html> <div align="center"><img src="#quest_path$/pic/0.jpg" class="foto"></div><br> <HR><br> <p align="center"> <font size=4 face="Comic Sans MS"> Книга адресована детям 10 лет и старше.<br> Это книга-игра, где тебя ждет множество приключений, - на этот раз тебя похитили террористы.<br> Время от времени тебе придется делать выбор. Что принесет он? Успех или поражение? Твои приключения - результат твоего выбора. Тебе самому решать, куда пойти, что сделать.<br> И помни: назад пути нет! Поэтому хорошенько подумай, прежде чем действовать. Игра есть игра: ты можешь проиграть, а можешь и выиграть!<br></p> <br><HR><br><p align="center"><font size=4 face=Arial> <a href="btn:1">Играть</a><br> <br><br></html> end ............... кусок кода взят из книгры "похищены", только вместо ариала в первую локацию вставил комика только жирность шрифта надо убрать- ИМХО жирный шрифт плохо смотрится на комике тестировано на AkURQ1.28pre6 особенно заметно отличие жирных комика и ариала на букве "е" попробуй поискать игру "похищены", если у тебя её ещё нет

Malevi4: Я по ее коду и делаю, но чет не сработало ща попробую с кавычьками

Malevi4: Еще вопрос я пробую перевест на акурке квест в екзешный файл с помощью (утилиты-квест к движку) Но когда загружаю екзешный файл все картинки и музыка пропадают в отличии если просто проигрывать квест на акурке.

qwerty: 10.06.09 в 00:21 Malevi4 пишет: Почитаю мануалы но надеюсь тут тож напишут как вставить картинку и музыку это- не совсем хороший запрос. пересмотрел мануал(по Акурке). там про всё это есть. и про сохранения. хороший вопрос, это когда ты, ознакомившись с мануалом, пытаешься что-то сделать, а оно почему-то не получается- это другое дело а мануал сюда перепечатывать смысла не вижу. ссылок вполне достаточно Malevi4 пишет: Еще вопрос я пробую перевест на акурке квест в екзешный файл с помощью (утилиты-квест к движку) Но когда загружаю екзешный файл все картинки и музыка пропадают в отличии если просто проигрывать квест на акурке. вот, это- хороший вопрос. тока этой утилитой лучше не пользоваться, по причине, которую можно прочитать в предупреждении, которое видно при запуске утилиты думаю, достаточно распространять сам квест отдельно, а движок- отдельно. если у человека уже есть установленная AkURQpre6, то ему совсем не сложно скачать и запустить игру: она по-любому будет занимать меньше места, чем экзешник, и к тому же, в отличие от экзешника, файл *.qst не может быть заражён вирусом если у человека ещё нет AkuURQpre6, то скачать её (146кб в архиве) тоже просто таким образом, предлагаю распространять движок- отдельно; игры- отдельно --- ещё вопрос: а не является ли невозможность сделать экзешник досадным косяком Акурки отвечаю: да, так оно и есть. и исправляться Акурка уже не будет... остаётся надеяться на Firetonа с его FireURQ

Malevi4: Мда... Просто думал так легче будет тем кто не знаком еще с акуркой просто сделать екзешник шоб сразу мой квест на акурке выбило. Как например в игре Похищены.

Malevi4: А да и про картинки с мелодией я уже разобрался пишу html кодом

noname: Malevi4 пишет: просто сделать екзешник шоб сразу мой квест на акурке выбило. Как например в игре Похищены тем, кто не знаком с Акуркой- можно сделать как в игре Похищены: запуск ч/з start.bat --- хотя, ИМХО лучше бы игры с их файлами не валить в одну кучу с платформой, а сделать им отдельную подпапку games в папке Акурки, а в ней- игры каждая в своей подпапке. запустить Акурку и выбрать квест не так уж и сложно. в конце-концов текстовые игры теоретически ориентированы на людей, умеющих и любящих шевелить мозгой извиняюсь, не сочтите за наезд- просто констатация факта + моё личное мнение

Malevi4: так я вот и спрашиваю как сделать файл этот с расширением bat

qwerty: Malevi4, в отличие от экзешников(*.exe), файлы с расширением *.bat вполне можно писать, так же как и наши квесты- в блокноте в данном случае достаточно всего одной строчки: akurq.exe quest.qst при запуске bat-файла эта строчка сработает так же, как если бы ты ввёл её с клавиатуры, т е- запустится акурка, а в ней запустится квест quest.qst // важно!: чтоб это сработало, файлы akurq.exe и quest.qst должны быть в одной папке с твоим bat-файлом суть ИМХО из сообщ noname как раз в том, что такой способ не очень хорош- посмотри на архив Похищены: там папки игры свалены в кучу с папками Акурки. НО этого можно было бы и избежать. ведь автор квеста сам указывает относительные пути к картинкам и музыке опять же- неудобство запуска квеста посредством AkURQ.exe всё-таки сильно преувеличено: наверняка твои друзья сталкивались с прогами, в которых можно загружать какие-то файлы. это- элементарная вещь. НО хозяин- барин: делай, как хошь- буду рад помочь

Malevi4: Спс я наверна уже надоел. Но в мануале который у меня есть не смог найти команды для сохранения игры в определенном месте с помощью html кода. Если не сложно напишите или поищите, прийду с концультации по экзаменам тож в инете полажу.

noname: 1 в html вроде как нет команды сохранения (кроме того, что я плохо знаком с досуркой и акуркой, я ещё совсем не работал с html. разбираюсь на ходу). НО такая команда есть в Акурке 2 если в проге используется html-код, это вовсе не значит, что надо отказаться от всего, что он делать не позволяет (кста, на 4-й странице темы есть что-то про html в акурке) 3 вопрос с сохранением в html-коде- это очень хороший вопрос. буду разбираться 4 и да, помощь знающих людей всегда приветствуется. я ведь так- всего лишь энтузиаст 5 и когда наконец fireton сделает интерфейс к FireURQ?

Malevi4: блин гдеж мне найти эту команду

qwerty: Malevi4 пишет: блин гдеж мне найти эту команду перечитай описание Акурки ещё раз. особенно текст, после слов Сохранение текста, выделенных жирным крупным шрифтом. если не найдёшь- дам свою ссылку на то описание, которое у меня пример использования сохранения в html-квесте: (тестировалось на Акурке pre6) invkill perkill html true btn_visible false inv_visible false :0 <html> <br> как только ты вошёл в лабиринт, за твоей спиной со страшным грохотом закрылась тяжеленная решётка<br> <br> <a href="btn:1">дальше</a><br> <br> </html> end :1 <html> <br> преддверие лабиринта пещер<br> <br> <a href="btn:2">идти на север</a><br> <a href="btn:3">идти на запад</a><br> <a href="btn:4">идти на юг</a><br> <a href="btn:5">идти на восток</a><br> </html> end :2 ; ; так как после загрузки игрок попадёт сюда, то ; надо позаботиться о включении html-режима снова ; ( при загрузке он отключается ) ; html true ; вот так <html> <br> в центре пещеры- столб странного света<br> <br> <a href="btn:1">вернуться назад</a><br> <a href="btn:2сохр">войти в освещённый круг</a><br> </html> end :2сохр save 2 ; после загрузки игрок попадёт в локацию 2 <html> <br> игра сохранена<br> <br> <a href="btn:2">дальше</a><br> </html> end :3 <html> <br> решётка преграждает путь к свободе<br> <br> <a href="btn:1">дальше</a><br> </html> end :4 <html> <br> тупик<br> <br> <a href="btn:1">вернуться</a><br> <a href="btn:4">отдохнуть</a><br> </html> end :5 <html> <br> ты умер в жутких муках,<br> но не увидел того, что тебя убило<br> <br> </html> end

Malevi4: Я извеняюсь, уже вас точно задолбал своими вопросиками но немогли бы вы мне это написать на этом примере. html true btn_visible false inv_visible false Music="\mus\1.mid" :7.5 x=7.5 <html> <font size=4 face=Arial> <style type="text/css"> body {background-image: url(#quest_path$/pict/2.bmp);} </style> <div align="center"><img src="#quest_path$/pict/6.bmp" class="foto"></div><br> <HR><br> <p align="center"> <font size=3 face=Arial> Я сорвал цветок и постучался в двери.<br> Их открыла красивая молодая девушка. Я не дал бы ей больше 25 лет.<br> У нее были темные волосы и глаза зеленого цвета. Она была одета в белое платье. Наконец-то я увидел и хозяина дома. Мущина был полной противоположностью хозяйки. Он был блондином с синими глазами. У него было спортивное телосложение, видно что он любит повисеть на турничьке. Одет он был в черную майку и синие джинсы.<br> - Ну что ж ты так стучишь! Ах да, симпотичьные цветочки, надеюсь вы посадите их потом обратно. - пошутила девушка.<br> - Так вы наверно наш новый сосед? - спросил мущина. </p> <HR><br><p align="center"><font size=3 face=Comic Sans MS> <a href="btn:8">Ответить:да я ваш новый сосед, мое имя Том Хоукинс</a> <br><br> </html> end :8 x=8 <html> <font size=4 face=Arial> <style type="text/css"> body {background-image: url(#quest_path$/pict/2.bmp);} </style> <div align="center"><img src="#quest_path$/pict/7.jpg" class="foto"></div><br> <HR><br> <p align="center"> <font size=3 face=Arial> Вообщем так мы и познакомились.<br> Женщину звали Люси Вэст, а мужщину Дэниэль Вэст.<br> Люси работала медсестрой ( в одной из местных полеклиник), а Дэн был археологом<br> Семья Вэстов произвела на меня хорошее впечатления, надеюсь я на них тоже.<br> Я не заметил как пролетело время, было уже очень поздно. Допив чай я отправился домой<br> Уставший от разпаковки моих вещей, я плюхнулся на кравать и сразу же заснул.<br> Именно с этого сна все и началось... Все эти странные события.<br> </p> <HR><br><p align="center"><font size=3 face=Comic Sans MS> <a href="btn:9">Смотреть сон</a> <p align="center"><font size=3 face=Comic Sans MS> <a href="btn:sohr">Cохранить игру</a> <br><br> </html> end Допустим что локации 7.5 и 8 это 0 и 1

Malevi4: после сохранения надо чтоб назад на локцию 7.5 вернуло



полная версия страницы