Автор | Сообщение |
|
Отправлено: 12.03.10 08:00. Заголовок: Нужен учебник для QSP!!!
Идея создания текстовых игр мне нравится. Фактически это можно рассматривать и сам процесс создания игры как игру. Это творческий процесс. Я только второй день пытаюсь разобраться в QSP. Я потратил 4 часа чтоб понять как сделать переход на другую локацию, хотя проблема была пустяковая. Справка по большей части ставит в тупик нежели позволяет разобраться, как было сказано на форуме это список команд. Думаю все кто заниматься текстовыми играми желает видеть больше людей в этом деле. Для этого нужно, чтоб человек легко мог разобраться в редакторе. Пусть по прохождению обучения. Учебник должен быть по строен как можно более дотошно. Нужно объяснить что делает та или иная функция, где ее можно применить. Курс обучения может представлять собой создания первого квеста за ручку (сюжет пусть придумывает сам, НО схему игры ему предоставят). При этом с начало квест пусть будет простеньким в техническом плане. После чего его начнут углублять. Кроме технических процессов создания квеста (игры) нужно описать и предворительные моменты. И способы ускорения создания игры за счет экономии времени.
|
|
Профиль
Цитата
Ответить
|
Ответов - 47
, стр:
1
2
3
All
[только новые]
|
|
|
Отправлено: 12.03.10 08:48. Заголовок: :sm52: На чну пожа..
На чну пожалуй сам. В QSP я прован. Но логики не лишен в принципе. И в самой разработки игр немного понимаю, в прочем как и в написание сюжетов. В обоих случаев если желания затягивать творческий процесс нету то нужен предварительный план. Квест простой ( так я умею только переходит из локации в локацию, подбирать предметы и выкидывать ( не более), и выводить дополнительный текст на экран.) Для первого квеста я решил сильно неморочеться. Квест будет простым выбраться из лабиринта. Лабиринт тоже сам не рисовал, на шел в интернете Задача квеста пройти лабиринт. Каждая развилка и тупик у нас являются локациями. Начало и конец 2 - локации, и развилки 34 локации, тупиков 27 штук. И того у нас 63 локации. Многовато Но раз не чего кроме перемещения нам в лабиринт делать нечего, то и страшного в общем сильно нет. Но все же можно облегчить себе работу так на локациях "Тупик" мы всегда возвращаемся назад. А значит не обязательно создавать все локации можно прибегнуть к логическим хитростям: -Первая это создать одну локацию переходя на которую ты всегда будешь возвращаться обратно, но такой способ мне неизвестен. - Второй способ не использовать локацию вовсе. Команда перехода (действие) на другую локацию будут выводить дополнительную текст и убираться из списка доступных действий. ( его я и буду использовать) Задача довольно простая. Соединить все локации (перекрестки) между собой, и расставить ложные переходы в тупик. Тут все просто создаем нужное количество локаций пример "Развилка" и добавляем в конце ее номер. Тут пригодится карта, на которой напишем номера каждой из развилок. Все что нам останется это создать команду Пойти-на юг,север,восток,запад. И копировать туда формулу ( goto 'Развикла№' ) просто изменяя номер нужно нам развилки.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 09:42. Заголовок: Насколько я понима..
Насколько я понимаю, перед переходом на локацию тупик, нужно создать переменную локации на которой ты находишся. После на локации тупик, просто нужно зделать переход на эту переменную. Переменную нужно обновлять перед каждым переходом на эту локацию. Главное на мой взгляд разобраться как устроена система переменных, так как они во всех языках состовляют самую функциональную основу. А учебник, я также считаю нужен, ибо я тоже долго разбирался.
|
|
Цитата
Ответить
|
|
| moderator
|
|
|
Отправлено: 12.03.10 10:55. Заголовок: Учебник по QSP я нач..
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:27. Заголовок: :sm36: О рад, что ..
О рад, что тут есть люди)) Давайте все же попробуем написать учебник целиком)) Nikitakomandir пишет: цитата: | А учебник, я также считаю нужен, ибо я тоже долго разбирался. |
| Я сейчас пытаюсь разобраться)) Вопросов куча, а ответов под рукой нет.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:29. Заголовок: :sm51: к стать у м..
к стать у меня старая версия QSP 2.1 Я скачал новую (5). Но, что не получается открыть редактор.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:40. Заголовок: Тэк... Насчет тупика..
Тэк... Насчет тупика, можно 27 локаций тупика превратить в 1 локацию. Одна локация "тупик" На всех остальных локациях (там где ходим по лабиринту) пишем: $loc = $curloc Скрытый текст $loc - создает переменную loc. А значек $ обозначает то что эта переменная имеет текстовое значение = $curloc - $curloc это переменная которая хранит текущую локацию. И наша $loc принимает значения текущей комнаты в лабиринте (локации)
| Потом, в тупике пишем: p 'Тупик' act 'Вернутся': goto $loc Скрытый текст p 'Тупик' - выводит на экран текст "Тупик" act 'Вернутся' - создает действие "Вернутся" :goto '$loc' - к действию "Вернутся" идут команды - goto $loc. А как мы помним, $loc - это у нас та локация на которой он был до тупика.
|
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:40. Заголовок: Фух.... Вроде бы пон..
Фух.... Вроде бы понятно(
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:47. Заголовок: :sm12: Мне не понр..
Мне не понравился подход к созданию учебника. Как излагается материал. 1) Должно быть описание меню и деталей редактора. Без нажимания кнопок. Просто описание. Дальше не нужно "выдумавший бреда". Человек хочет создавать игру, а не заниматься ерундой. По этому и нужно создавать маленькую игру, но потом не переходить к новой игре, а усложнить старую.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:47. Заголовок: :sm12: Сейчас попр..
Сейчас попробуем.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:49. Заголовок: loc - это может быт..
loc - это может быть любое слово? Или конкретная команда?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:50. Заголовок: Любое...
Любое.
|
|
Профиль
Цитата
Ответить
|
|
|
Отправлено: 12.03.10 11:50. Заголовок: Это переменная. Ее м..
Это переменная. Ее можно назвать как хочешь.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:53. Заголовок: :sm36: так понятно..
так понятно с этим. $loc = $curloc Вот это куда пихаем?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:57. Заголовок: На каждой локации ла..
На каждой локации лабиринта. Кроме тупика. Оно на каждой локации лабиринта, запоминает ее, и если попадаешь в тупик, то вспоминает, и возращается туда.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 11:59. Заголовок: :sm36: это я понял..
это я понял. Где это писать? Выполнить при посещении? Или Действия на локации?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:01. Заголовок: При посещении ясен п..
При посещении ясен пень.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:03. Заголовок: :sm67: не для меня..
не для меня)))
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:04. Заголовок: :sm51: вы дает оши..
вы дает ошибку 4003 Локации $loc нету.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:10. Заголовок: goto $loc а не goto ..
goto $loc а не goto '$loc' Вот.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:18. Заголовок: :sm36: Все класс. ..
Все класс. Работает.
|
|
Профиль
Цитата
Ответить
|
|
| moderator
|
|
|
Отправлено: 12.03.10 12:18. Заголовок: Ziohekx ты по трем п..
Ziohekx ты по трем первым урокам-то не делай выводов.
|
|
Профиль
Цитата
Ответить
|
|
|
Отправлено: 12.03.10 12:20. Заголовок: :sm12: Как сделат..
Как сделать дверь которая открывалась ключом?
|
|
Профиль
Цитата
Ответить
|
|
| moderator
|
|
|
Отправлено: 12.03.10 12:21. Заголовок: Ziohekx заходи на на..
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 12:24. Заголовок: Предмет Ключ. Подбир..
Предмет Ключ. Подбирать предметы как я понял уже умеешь. На локации дверь: if obj 'Ключ': (Если есть обьект Ключ, то...) act 'Открыть дверь: (Действие "открыть дверь") gt 'ololo' (При действиее Открыть дверь, идет на локацию ololo) end (Заканчивает If) end (Заканчивает Act)
|
|
Профиль
Цитата
Ответить
|
|
| демиург
|
|
|
Отправлено: 12.03.10 12:28. Заголовок: Да, тут много людей ..
Да, тут много людей :)))
|
|
Профиль
Цитата
Ответить
|
|
| демиург
|
|
|
Отправлено: 12.03.10 12:45. Заголовок: Ziohekx Ну напиши св..
Ziohekx Ну напиши свой, чем сможем - поможем.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 14:05. Заголовок: Nex пишет: Ziohekx ..
Nex пишет: цитата: | Ziohekx ты по трем первым урокам-то не делай выводов. |
| Я не говорю про качество учебника. Я говорю про манеру предоставления информации.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 14:17. Заголовок: Ajenta пишет: Ziohe..
Ajenta пишет: цитата: | Ziohekx Ну напиши свой, чем сможем - поможем. |
| Да, что писать то? Я сам познакомился пару дней с программой. Есть куча вопросов у самого. Я могу пока говорить только о системном предоставлении информации. При котором информация будет подаваться от дельным блоком. Проще говоря нужно показывать отдельную фишку - объяснять как ее применять, для чего она нужна, где ее можно применять. При этом информация должна быть легко усвояемая. К примеру игру можно создать и при помощи только переходов с локации на локацию. Что на подобие интерактивного рассказа. Плюс этого способа в простоте. Главный интерес тут будет ложится на сюжет игры.
|
|
Профиль
Цитата
Ответить
|
|
| демиург
|
|
|
Отправлено: 12.03.10 14:49. Заголовок: Ziohekx Ты давай зад..
Ziohekx Ты давай задавай вопросы, изучай, а потом и напишешь свой учебник :) Нас учить писать бестолку, легче самому написать, раз знаешь как надо. ;)
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 14:54. Заголовок: :sm38: Это дано пр..
Это дано проверенная истина, хочешь чтоб что получилось делай сам, не жди от других. Вопросов куча. Но их нужно систематизировать. подумаю и на пишу.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 15:06. Заголовок: :sm12: Вот такой..
Вот такой вопрос. Хотел создать, что на подобие диалога. В одной локации. Появлялись новый текст в описании, добавлялись новые действия (варианты ответа), и убирались старые. Не могу соорудить цыпочку. Она обламывается.
|
|
Профиль
Цитата
Ответить
|
|
|
Отправлено: 12.03.10 15:22. Заголовок: большой диалог в одн..
большой диалог в одной локации делать сложно - нужно очень большую вложеность в действиях и много дополнительного кода (очистка описания и действи) - легко запутаться или что-то забыть лично я бы поделил диалог на фазы обмена репликами и вынес каждую фазу на отдельную локацию и использовал переход на новую локацию с параметром, чтобы определить что именно показывать #loc1 '- Реплика' act 'Ответ 1': $selact xgt 'loc2',1 end act 'Ответ 2': $selact xgt 'loc2',2 end - #loc2 ! первый ответ if args[0] = 1: 'Новая реплика' act 'Ответ 1': $selact xgt 'loc3',1 end act 'Ответ 2': $selact xgt 'loc3',2 end end !второй ответ if args[0] = 2: 'Новая реплика' act 'Ответ 1': $selact xgt 'loc3',3 end act 'Ответ 2': $selact xgt 'loc3',4 end end - и так далее
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 16:51. Заголовок: :sm51: Расскажите ..
Расскажите как пользоваться переменёнными и что с их помощью можно делать. Просьба разбивать на примитивные блоки. Как их собрать потом соображу.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 12.03.10 17:29. Заголовок: У меня есть опыт соз..
У меня есть опыт создания длинных диалогов в одной локации. Правда в основном прямолинейные, но было и по паре разветлвений. Смысл таков. Задаешь некую переменную, которая отвечает за развитие диалога в локации. Например talk. При этом каждый ответ персонажа задает следующее значение talk. При этом, если предполагается большое ветвление, то можно использовать прием "удесятерения". Как это работает. Например, у тебя сначала есть двойная развилка. Значит talk может быть равен 1 и 2. Далее в первой ветке идет, например, три выбора и тут talk принимает значения 11, 12 или 13. При этом первая цифра означает выбор на первой развилке, а вторая - выбор на второй. На третьей развилке снова умножаем число которое ведет на нее на 10 и добавляем номера вбора. Например если мы выбрали 12, то будет 121, 122, 123 и так далее. Для лучшего понимания приведу конкретный пример создания разветвляющегося диалога без необходимости вложенных IF: Скрытый текст
цитата: | !НУЛЕВОЙ УРОВЕНЬ РАЗГОВОРА IF talk = 0: CLA CLR 'Незнакомец смотрит молча на вас.' ACT '- Привет!': talk = 1 GT curloc END ACT '- Чего уставился?!': talk = 2 GT curloc END ACT 'Уйти прочь': talk = 0 GT 'Начало' END END !ПЕРВЫЙ УРОВЕНЬ РАЗГОВОРА IF talk = 1: CLA CLR 'НЕЗНАКОМЕЦ' '- Ну и тебе привет, коли не шутишь.' ACT '- Какие могут быть шутки, дружище?': talk = 11 GT curloc END ACT '- Шучу. Вообще мне плевать': talk = 12 GT curloc END END IF talk = 2: CLA CLR 'НЕЗНАКОМЕЦ' '- Ничего...' ACT '- Ну и все!': talk = 0 GT 'Начало' END ACT '- Есть чо по деньгам?': talk = 21 GT curloc END END !ВТОРОЙ УРОВЕНЬ РАЗГОВОРА IF talk = 11: CLR CLA 'НЕЗНАКОМЕЦ' '- Ну ладно, хорошо. Меня Вася зовут' ACT '- А я <<$player_name>>. Ну что Вася, выпьем за знакомство?': talk = 111 GT curloc END ACT '- Ну, пока, Вася.': talk = 112 GT curloc END END IF talk = 12: CLR CLA 'НЕЗНАКОМЕЦ' '- Ну и катись тогда отсюда!' ACT '- Ладно-ладно. Ухожу...': talk = 0 GT 'Начало' END ACT '- Ты чо борзый такой, а?! (Начать драку)': talk = 0 GT 'Драка' END END IF talk = 21: CLR CLA 'НЕЗНАКОМЕЦ' '- Не братан, вообще ни копья нет.' ACT '- А если найду, значит мое будет?': talk = 0 GT 'Грабеж' END END !ТРЕТИЙ УРОВЕНЬ БЕСЕДЫ IF talk = 111: CLA CLR 'ВАСЯ' '- А у нас есть что выпить?' ACT ' - Конечно! (Достать бутылку портвейна)': talk = 0 GT 'Бухач' END END IF talk = 112: CLA CLR 'ВАСЯ' '- Ну пока, братан.' ACT 'Уйти': talk = 0 GT 'Начало' END END |
|
| ЗЫ: А вообще для вопросов есть отдельная тема. Давайте не будем офтопить
|
|
Профиль
Цитата
Ответить
|
|
| moderator
|
|
|
Отправлено: 12.03.10 17:37. Заголовок: Я переместил из темы..
Я переместил из темы про учебник сюда сообщения Ziohekx и ответы, здесь более подходящая тема.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 10:04. Заголовок: Yashko пишет: Пред..
Yashko пишет: цитата: | Предмет Ключ. Подбирать предметы как я понял уже умеешь. На локации дверь: if obj 'Ключ': (Если есть обьект Ключ, то...) act 'Открыть дверь: (Действие "открыть дверь") gt 'ololo' (При действиее Открыть дверь, идет на локацию ololo) end (Заканчивает If) end (Заканчивает Act) |
| Так дверь открывать я на учился. Но как отбирать ключ при его использование?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 10:52. Заголовок: delobj 'Ключ'..
delobj 'Ключ'
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 15:26. Заголовок: а что, разве если во..
а что, разве если воспользоваться ключом, то он исчезает?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 16:49. Заголовок: Ну, у Ziohekx так за..
Ну, у Ziohekx так задуманно, что да =)
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 20:28. Заголовок: я понимаю, но на чём..
я понимаю, но на чём такая задумка основана? не понимал таких вот вещей в играх, когда использованный предмет исчезает. но если это так важно, то мой совет обыграть это как-то, а не просто ключ выкинуть и забыть. ну например можно с юмором "вы так торопились открыть дверь ключом, что погнули его и он застрял в замке. слава яйцам, что дверь всё-таки открылась"
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 13.03.10 20:34. Заголовок: >_> omg..
>_> omg
|
|
Профиль
Цитата
Ответить
|
|
|
Отправлено: 14.03.10 10:35. Заголовок: Hertz пишет: я пони..
Hertz пишет: цитата: | я понимаю, но на чём такая задумка основана? |
| Даже страну увидеть такой ответ. Мой лабиринт линеен, от часть. То есть пройдя за дверь, игрок в принципе не будет возвращаться за нее. НО, я недавно стал изучать купс. И как понимаю Объект "Дверь" и предмет "Ключ" условны. На их месте может быть все что угодно, к примеру вместо "двери" может быть сундук. Это не принципиально. По этому я спрашиваю не только о конкретной вещи, но и самом прицепе работы.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 14.03.10 10:43. Заголовок: :sm12: К стать у м..
К стать у меня появилась одна идее по учебнику. Как Я понял его в принципе не существует. По этому пока его нет сгодится и любое пособие по Купсу. Таким образом можно открыть тему на форуме, где любой желающий сможет выкладывать различные примеры на писания кода с подробными комментарии, если это еще не было описано в теме. Для чистоты учебника можно сделать две тем 1) черновая, туда пишут кто хочет, и 2) Закрытая тема для чтения, где модератор будет переносить посты и систематизировать их по уровню сложность, от простого к сложному. Посты думаю стоит писать в одном формате. Название приема (что он делает) Более детальное описание. Набитый код. Коментарии. Примеры использование. Так, при возникновение вопросов, человек может заглянуть в такой учебники, и найти нужный парагроф. ( в окончательном варианте можно добавить содержания, чтоб проще было искать)
|
|
Профиль
Цитата
Ответить
|
|
| moderator
|
|
|
Отправлено: 14.03.10 11:08. Заголовок: Ziohekx ты хочешь сд..
Ziohekx ты хочешь сделать сборник HOWTO - одобряю. Мы, правда, по возможности скоро переедем с этого форума.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 14.03.10 11:18. Заголовок: Переехать это будет ..
Переехать это будет хорошо. Я вообще думал, что борда уже давно загнулась. Так нет, живет еще.
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 16.03.10 07:45. Заголовок: В каком смысле пе..
В каком смысле переедет?
|
|
Профиль
Цитата
Ответить
|
|
Отправлено: 16.03.10 10:01. Заголовок: Ziohekx переедет в д..
Ziohekx переедет в домен qsp.su и станет частью каталога файлов.
|
|
Профиль
Цитата
Ответить
|
Ответов - 47
, стр:
1
2
3
All
[только новые]
|
|