Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
31.10.2003 20:11

Trifle
Участник
Зарегистрирован: 13.05.2003
Сообщений: 11

Пишу IF, помогите!

                          Вот, решил написать что-нибудь свое. В качестве платформы выбрал Microsoft Quick C Compiler 2.5. Так как мои познания в “Си” носят весьма поверхностный характер (зря я лекции прогуливал wink), то практически сразу возник вопрос: как реализовать функцию save/load в программе? Пробовал спрашивать у своих знакомых, ответы варьировались от привычного: “Ну, я так сразу не скажу”, до издевательского: “Да там не сложно, сам разберешься”. В общем, жду Ваших советов/предложений.   

Неактивен

0    0    #2
03.11.2003 13:17

HIman
Участник (+1)
Откуда: St. Oskol
Зарегистрирован: 23.01.2003
Сообщений: 164
Вебсайт

Я выбираю QSP !

Re: Пишу IF, помогите!

1. Выбери платфому из уже существующих. (RTADS/QSP)
2. см пунтк 1.

Неактивен

0    0    #3
03.11.2003 15:20

dennis
Участник
Зарегистрирован: 10.06.2003
Сообщений: 159

Re: Пишу IF, помогите!

Могу сразу сказать, что выбор платформы, увы, неудачный. smile

А на вопрос "как реализовать сохр./восст." невозможно ответить без подробного знания, как реализована сама игра. В каком виде там хранятся данные? Если в виде массивов, то их и надо сохранять, и т.п.

Одно из преимуществ уже существующих ИФ-систем, вроде ТАДС или Информа, в том, что там все эти проблемы решаются автоматитчески и забесплатно.

Неактивен

0    0    #4
03.11.2003 16:59

HIman
Участник (+1)
Откуда: St. Oskol
Зарегистрирован: 23.01.2003
Сообщений: 164
Вебсайт

Я выбираю QSP !

Re: Пишу IF, помогите!

Вот вот...
Тут каждый второй начинате писать IF cо своего движка  :-/
И заканчивается .... плачевно вобщем...
Лучше потрать время на детальное изучение сущевующих движков, выбери наилудшим образом подходящий и вперед!
Бесплатный совет smile Начинать надо с сюжета!
8)

Неактивен

0    0    #5
04.11.2003 02:11

dyx
Участник
Зарегистрирован: 15.12.2001
Сообщений: 99

Re: Пишу IF, помогите!

  Народ, помогите! У меня жесточайший кризис, из которого я безуспешно пытаюсь выбраться уже два месяца. За компьютером сижу час в неделю, и то играю в игрушки... Как вернуть любовь к программированию и текстовым играм?..

   А еще я придумал новый вариант создания квестов: сначала придумать энное кол-во головоломок, потом на это нарастить сюжет, ну а потом - дело техники. Советую.

   Отчаянный Дух (ОДИН)

Неактивен

0    0    #6
04.11.2003 08:53

HIman
Участник (+1)
Откуда: St. Oskol
Зарегистрирован: 23.01.2003
Сообщений: 164
Вебсайт

Я выбираю QSP !

Re: Пишу IF, помогите!

Впринципе головоломки придумываются по ходу создания сюжета, за одно и вплетаютс в него самым наилудшим образом.
    Например:
Вы нашли хорошо укрытую пешеру, зайдя в которую видна металлическа дверь, обследовав близлежащие стенки обнаружили небольшое углубление.
А вот чтобы открыть эту дверь, нужно вставить перстень мага Ордрога который жил в лесу вот уже 300 лет и живет по сей день, он вам естно не даст кольцо и тем более превратит в дерево, если заикнетесь про найденый тайник не для вас ведь он предназначен smile и т.д. накручивается сюжет.
   А головоломка здесь в кольце у которго 3 разноцветных обрамления которые можно покрутить но в определенное время они соединяются, что и позволяет октырть ту металлическую дверь, но крутить не так просто если неправильно накруить и вставить кольцо то ... smile и т.п.

Неактивен

0    0    #7
04.11.2003 22:48

Trifle
Участник
Зарегистрирован: 13.05.2003
Сообщений: 11

Re: Пишу IF, помогите!

     В том, что “Си” является даалееко не идеальной платформой для создания IF, я никогда не сомневался, и без малейших угрызений совести променял бы старичка на INFOTM, TADS или HUGO. Но проблема в том, что они не так уж милы, прозрачны и легки в освоении как, например, ADRIFT. А если с английским не настолько хорошо чтобы читать без словаря длиннючие мануалы, то процесс может затянуться не на один месяц.  Язык то за это время, конечно, изучишь, а вот, желание что-либо писать может поотпасть. 
      Теперь сделаю небольшое отступление и расскажу, собственно, об игре. С начала я планировал сделать обычную адвентюру в фэнтезийном стиле с рыцарем, похищенной принцессой, замком и цветущими окрестностями. Все это сдобрить изрядным количеством паззлов, гобеленами, хитрой системой рычагов и порталов, плотно закрыть крышкой, взболтать и выдать готовую поделку к новогодним праздникам. И тут я вспомнил, что всегда любил РПГ, так почему бы не…
      Почему бы для создания  РПГ не воспользоваться движком какого-нибудь MUD’а. На .www лежат исходники, движок и редактор создания зон, пожалуй, лучшего (не хочу никого обидеть это всего лишь IMHO) русскоязычного МПМ "Былин”. После первого знакомства сразу понимаешь, что это то, что так долго искал: простота (исключительная) + широкие возможности. Я, конечно, понимаю, что должно быть, говорю очевидные вещи, но вдруг не все посетители форума сталкивались с МПМ, так что я постараюсь быть последовательным и рассказать обо всех плюсах (как я их вижу) такого решения.     
      Движок и редактор зон распространяются как freeware. Для запуска MUD’а необходимо скачать (можно с того же сайта) zMUD или JABA. Движок содержит в себе одну из зон реального МПМ “Былин”, 12 профессий для отыгрыша персонажа (колдун, волхв, витязь и т.д.), около 100 магических заклинаний и приблизительно 40 боевых (и не только) умений (сбить противника щитом, парировать атаку, украсть и проч.). Тут необходимо сделать еще одно отступление: все заклинания и умения являются лицензированными, свободно использовать разрешено только программный код движка, а все скилы и спелы придется придумывать самому (или переименовывать те, что уже есть). Процесс создания зоны (в данном случае игры) в редакторе – сплошное удовольствие. Вводим в специально отведенные графы описания комнат (аналог ADRIFT’а), расставляем в нужных местах NPC (торговцев, квестовых персонажей, противников). Вот, здесь, как говорится, вся соль. Каждому NPC можно задать ряд присущих только ему характеристик и умений, за счет чего каждый враждебно настроенный оппонент становится уникальным, требуя к своей персоне отдельного внимания и тактики ведения боя.       
      К примеру, зеленый дракон. Для начала просклоняем его, по всем известным в русском языке, падежам. Теперь выставляем флаги-ограничения. Очевидно, что дракона нельзя подсечь, обокрасть, парировать его атаки, сбить щитом не стоит и пытаться (разве что в цирке wink) и т.д., зато от его атак можно уклоняться, кидать в последнего колюще-режущие предметы и перечень из 100 заклинаний. В свою очередь Змей-Горыныч тоже покастовать не дурак, и молнией засветит и от файерболла даст прикурить. Кроме того, он может позвать на помощь NPC с других клеток или банально сбежать. И все это мы сделали за 3 минуты, расставив десятка два галочек в нужных полях! А ведь еще существуют различия по фазам луны. К примеру, ведьмы на кладбище появляются только по ночам или 13 числа, а может в новолуние?
      Теперь о паззлах: они, безусловно, есть (или могут появиться под Вашим чутким руководством) и реализуются по средствам набора задаваемых триггеров. Пока что не могу сказать, как именно все происходит. Но если кому-нибудь будет интересно, обещаю разобраться и представить письменный отчет. smile

Неактивен

0    0    #8
05.11.2003 07:54

GrAndrey
папа RTADS и Бяка (+48, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1201
Вебсайт

меньше слов

Re: Пишу IF, помогите!

Trifle написал:

  Без малейших угрызений совести променял бы старичка на INFOTM, TADS или HUGO. Но проблема в том, что они не так уж милы, прозрачны и легки в освоении как, например, ADRIFT. А если с английским не настолько хорошо чтобы читать без словаря длиннючие мануалы, то процесс может затянуться не на один месяц. 
...
         Почему бы для создания  РПГ не воспользоваться движком какого-нибудь MUD’а.

Во-первых с мануалами не так всё плохо - для ТАДС мануал большей частью уже переведён.
Про МУД я хочу сказать, что он не даёт таких возможностей как IF. Загадки вялые, изучение мира хилое. Можно в нём "осмотреть потолок" или "ощупать стены", или ввести совершенно дикие глаголы? МУД для других целей.

Неактивен

0    0    #9
05.11.2003 23:20

Trifle
Участник
Зарегистрирован: 13.05.2003
Сообщений: 11

Re: Пишу IF, помогите!

Не буду ничего доказывать (пока что), а приведу пример честно прихваченный из МПМ “Былин” Да простят меня его создатели…
В одной из зон перед нами ставилась задача по очистки русской земли от падшей богини. Убить просто так ее нельзя, сперва нужно достать порошок света, отыскать очаг возгорания адова пламени (основной источник сил нашей блудницы smile) и подбросить лекарство в костер. А вот как это все будет выглядеть
“изнутри”.


(описание комнаты)
[28866] /*номер комнаты*/ Прямо по центру зала горит костер, горит без дров, огромные камни кровавого цвета лежат в основании костра и создают это жадное злое пламя.
/*Для каждой комнаты можно задать десятки различных параметров: скакун сюда не пройдет, на комнату не влияют погодные условия, в комнате темно и т.д. Кроме того комната может иметь дверь (открытую, закрытую, запертую,) */
Комната содержит объект: [28801] огромное пламя

(объекты)
[28801] огромное пламя
/*Для начала просклоняем объект по падежам, определим тип материала из которого он создан: органика, укажем вес, таймер и свойства*/
[28814] порошок света  … триггер [28805] бросить порошок

(триггер)
[28805] бросить порошок
wait 1
if (%actor.realroom%==28866) && (%world.curobjs(28801)%)==1
oecho Только порошок коснулся языков пламени, так сразу началось что-то
oecho странное - порошок не горел, не улетучивался, а пламя стало гаснуть
oecho и гаснуть, пока полностью не погасло.
oecho Откуда то с юга раздался крик страшной боли и ужаса.
calcuid hobj 28801 obj
opurge %hobj.name%
opurge %self.name%
end

Если нам хочется просто “осмотреть потолок” или “ощупать стены”, то нужный триггер уместится в три строчки, а на его описание уйдет пара минут дрогоценного билдерского времени. wink

Неактивен

0    0    #10
06.11.2003 17:24

GrAndrey
папа RTADS и Бяка (+48, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1201
Вебсайт

меньше слов

Re: Пишу IF, помогите!

Так почему тогда IF пишут на специальных платформах, а не на движках для МУДов?

Неактивен

0    0    #11
09.11.2003 22:19

Trifle
Участник
Зарегистрирован: 13.05.2003
Сообщений: 11

Re: Пишу IF, помогите!

       Больше никаких мнений на этот счет не будет ?

Неактивен

0    0    #12
10.11.2003 10:10

GrAndrey
папа RTADS и Бяка (+48, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1201
Вебсайт

меньше слов

Re: Пишу IF, помогите!

Я думаю, то, что у тебя получится, будет МУДом. Или РПГ.
Но это не будет IF.
Впрочем, ты можешь на практике доказать обратное. Ждём этого аргумента  smile

Неактивен

0    0    #13
20.03.2004 19:31

Markus
Гость

Re: Пишу IF, помогите!

     Хм, ну как там игра? Идея-то вроде была не плохая... Заглохло дело, да? :-/

Powered by PunBB
© copyright 2001–2026 iFiction.Ru