Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
22.02.2002 09:04

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

РУССКОМУ IF БЫТЬ!!!

Товарищи программисты! Сейчас обращаюсь к вам и только к вам.

Ясно как божий день, что сейчас нам нужна мощная и совершенная русская платформа, такая как Inform. После создание этой платформы игры потекут рекой, и к жанру будут привлечены многие сотни и тысячи людей.

Все мы пытаемся создать эту платформу. Но как?! Хотите скажу, что вы все делаете? Каждый из вас пытается создать СВОЮ собственную платформу. При этом многие бросают, многие хорошие идеи остаются за бортом, а те, кто всё-таки сделал что-то, не имеют достаточно времени продолжить и развить свой проект. Каждый программист по нескольку раз повторяет в своих проектах одни и те же блоки, которые пишут все. И в итоге проект либо откладывается в долгий ящик, либо загибается.

Нам срочно нужна мощная платформа. Поэтому предлагаю перейти от слов к ршительным действиям. Данная мессага - не просто очередное нытьё, а рельный призыв к действию.

Итак, что же я предлагаю?

1. Организовать СОВМЕСТНУЮ разработку одной платформы, которая бы стала основной в IF мире. Разработка будет вестись всеми программистами сразу, при этом мы обговорим, кто какие модули делает. Ведь действительно, IF система состоит из ряда совершенно независимых частей, каждая из которых может существовать и тестироваться отдельно от других. Например, это парсер, система обработки стандартныъх команд, интерпретатор, дебаггер и т.д.
Наша конечная цель - создать полноценный пакет для разработки IF. В него будут входить: собственно IF платформа (если угодно, IF плеер), интегированная среда разработки (совмещённая с средствами поиска ошибок и отладки), комплект вспомогательных утилит, развёрнутая детальная документация, расчитанная как на новичка, так и на профессионала.

2. Разработка должна вестись по системе Открытых Исходного кода. На специальной странице в сети будут лежать все исходники модулей проекта в том состоянии, в котором они пребывают на тот момент. Любое действующее изменение, которое кто-либо внёс в один их модулей проекта, немедленно становится доступно всем. Естественно, тут необходим координатор, которые будет принимать исправленные версии, а аткже пожелания/замечния тестеров промежуточных демо версий, и мгновенно отражать всё это в сети. В разработке могут принимать участие неограниченное число человек.
Я уже работал в системе Открытых Кодов, говорю официально: всё только на словах сложно, а на деле гораздо проще и легче. Именно система совместной разработки позволит нам довести-таки проект до конца.

3. Естественно, существует много вариантов будущего облика системы. В основном, расхождение вызывает язык и интерпретатор команд. WildWizard предлагает Python, я предлагаю OpenGL - подобную разметку, кто-то предлагает Паскаль-подобный язык. Но это ни в коем случае не должно мешать проекту! Ведь посудите сами. Неужели нельзя написать несколько модулей интерпетации команд, а потом в разных билдах программы подставлять их к всем остальынм модулям? Ведь это проще простого. Можно вообще интерпретатор команд организоваь в виде dll, а конечный пользователь пусть решает, что ему больше нравится, и соотвественно с тем языком и работает. В крайнем случае, можно сделать либо одну универсальную программу, которая понимает все языки, либо несколько разноязычных. Но ведь сделать это легко! Интерпретатор явяется одной пятой всего проекта, а после того, как будут сделаны первые четыре пятых, эти вопросы отпадут сами собой.
Самое привлекательное в процессе открытой разработки - это
1) Все программисты возьмут свои наработки и воплотят их не в гипотетической системе, которая будет сделана лет через десять, а в реальной системе. При желании, авторские права на отдельные модули будут сохранены.
2) Каждый будет видеть, над чем в данный момент работает другой, можно  будет помочь, подискутировать над сложными моментами, быстро протестировать и отыскать глюко-баги в новоиспечённом кусочке (!) кода.
3) Любые предложения по усовершенствованию будут обрабатываться уже на ранней стадии разработки, когда они пойдут только на пользу.

4. Слава Богу, что хоть в языковом плане мы с вами примерно однородны. Одни программируют на Паскале, другние на Делфи (что в принципе одно и то же). Так что проблем на этой почве не возникнет. Если кто-то будет писать модулm на другом языке - не беда, мы просто подключим его к уже существующей основе, как dll, и всё будет работать.

Итак, повторяю. Данный призыв является не очередным нытьём, а реальным действием, отнеситесь к нему пожалуйста соотвествующим образом. Будет платформа - будут и почитатели, и игры, и миры. А раз платформы нет, надо её быстро сделать.

Неактивен

0    0    #2
22.02.2002 10:00

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

    Совместные проекты тем трудны, что у каждого есть свое личное мнение на счет каких-либо вопросов, в котором он почему-то не хочет уступать. В итоге все тормозится.
     Но, в принципе, я согласен. К сожалению, моих знаний в программировании навряд ли хватит чтобы быть полезным в разработке именно программной части, хотя вот с идеями может и смогу помочь. Посмотрим на развитие проекта...

Неактивен

0    0    #3
22.02.2002 10:36

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

Мне странно слышать это от человека, уже долгое время пытается создать свою платформу. Я видел твою демку и читал твою статью - ты сделал великолепный и работоспособный парсер, а ещё говоришь, что плохой программист!
Поймите, что если мы будем и дальше говорить, а не делать, шанс того, что кто-то один сделает хорошую платформу практически нулевой. Все спорные вопросы можно решать либо голоосованием, либо "проверкой в бою". Ведь на страницах форума все эти вопросы уже неоднократно обсождались и приходили к единому мнению.
Я предлагаю всем, кто хочет составить "костяк" проекта, ответить на это сообщение.
Для начала нужно выработать единую систему сотрудничества и написать единый план развития проекта.
Разобъём конечный код на модули и распределим роли. Тебе я предлагаю заняться именно парсером, тем более, что ты его почти сделал.
Я могу взять на себя координацию проекта (собственно я не навязываюсь, а предлагаю), разработку интерпертатора для своей командной системы, а также глобальную объектную модель.
Если у кого-то не получилось до нас, то почему должно не получится у нас?
Если dcq` разумно организовать, мы добъёмся цели.
Чтобы подавить личные амбиции (а на начальной стадии проекта они будут), предлагаю сделать проект не детищем команды, а детищем этого сайта, т.ею. всей русской IF вселенной.
Итак, начнём?

Неактивен

0    0    #4
22.02.2002 11:31

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

    А почему бы и не попробовать? Можно на форуме отвести отдельную ветку посвященную именно этому вопросу.
     Для начала же неплохо было бы ознакомиться с твоими идеями касательно "командной системы, а также глобальной объектной модели". Можно здесь, можно мылом.
Я, в свою очередь, тоже постараюсь изложить свое вИдение русской IF-платформы.

Неактивен

0    0    #5
22.02.2002 11:54

Al Chipollino
Участник (+1)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 496

Re: РУССКОМУ IF БЫТЬ!!!

В программировании я вряд ли могу помочь, ибо для меня интересна теория, а чтобы сидеть и долгое время набивать код, нужно терпение, которого у меня нет. Могу изложить некоторые идеи по системе, которые кто-то может реализовать. Эх, где бы найти программеров...

Неактивен

0    0    #6
22.02.2002 11:57

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

К сожалению, как теория, оторванная от практики, так и идеи, оторванные от "кода", не всегда бывают удачными...

Неактивен

0    0    #7
22.02.2002 14:40

Al Chipollino
Участник (+1)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 496

Re: РУССКОМУ IF БЫТЬ!!!

Это смотря какие руки у реализатора.

А вот хороших идей о структуре IF-языка я пока не видел... поправте меня, если я не прав.

Неактивен

0    0    #8
22.02.2002 14:43

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

Olegus t.Gl. написал:

     А почему бы и не попробовать? Можно на форуме отвести отдельную ветку посвященную именно этому вопросу.
     Для начала же неплохо было бы ознакомиться с твоими идеями касательно "командной системы, а также глобальной объектной модели". Можно здесь, можно мылом.
Я, в свою очередь, тоже постараюсь изложить свое вИдение русской IF-платформы.

Я абсолютно согласен. Прошу администратора форума выделить отдельную ветку.
Свой вариант командного интерпретатора я уже постил в форуме. Вот он:
Мне кажется, он больше подходит для IF платформ, и проще и понятнее для новичков, и профи могут писать на нём гораздо быстрее.

place('Гробница фараона');
  setprop('west','Западный проход');
  object('Гроб');
       setflag('недвижимый');
  _object('Гроб');
_place('Гробница фараона');

Для тех кто не понял: командные скобки начинаются командой (например place), а кончаются командой с "_" впереди (_place). Всё, что внутри - относится к данному объекту или месту. Мне кажется, эта система намного удобнее и практичнее, нежели стандартная ООП. И писать намного меньше, и структура чёткая, в отличие от ненаглядного "TPlace.Add".

Конечно лично для меня будет проще и быстрее работать с свойствами и объектами, чем с командными скобками, но для непрограммистов и новичков - самое то. Как ты думаешь?

В общем, думаю можно начать с плана работ и укрупнённой блок-схемы взаимодействия модулей. Потом мы выработем стандарт сопряжения модулей (скажем, парсер будет принимать string, а выдавать переменные ГЛАГОЛ, ОБЪЕКТ, ДОП. ОБЪЕКТ, ВСПМ. ОБЪЕКТ, собственно как ты и предлагал). Ну а после этого можно приступать к разаработке.
У меня есть много идей и по поводу организации расширенного парсера, и по другим вопросам - всё это будем обсуждать на соотвествующих этапах работы.

Итак, первое - надо открыть дополнительную ветку на форуме. Я не знаю, кто этим занимается. Можешь попросить админов сайта сделать это?

Неактивен

0    0    #9
23.02.2002 01:58

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

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

Неактивен

0    0    #10
23.02.2002 08:39

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

А почему как бы? Я настроен весьма решительно.
По поводу твоего требования - ну что ж, это вполне выполнимо. Я согласен. Итак, может быть можно уже начать?

Неактивен

0    0    #11
23.02.2002 10:31

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

Поехали!
Только раз создан под это дело целый раздел, то можно уже разбивать обсуждение на отдельные темы.

Неактивен

0    0    #12
23.02.2002 11:13

Ozrik
Участник (-3)
Зарегистрирован: 15.02.2002
Сообщений: 23

Re: РУССКОМУ IF БЫТЬ!!!

И все-таки, я тут уже говорил это где-то, вы все зря заморачиваетесь с абсолютно новой платформой. Платформа HUGO полностью поддается русификации. Без издержек! И это потребует в сотни раз меньше человекочасов. Я - ничего не понимая в программировании - русифицировал ее наполовину. Дальше вышел затор - потому что 1. у меня сменилось отношение к подобным платформам вообще 2. там вышли затыки из-за моего программистского невежества
Но все реально спокойно совершенно русифицируется! К примеру. на раз удалось решить такую проблему. Когда человек садится на стул, на англ. обычно пишется "Bedroom (on the chair)". Покопавшись немного, я сделал так, что теперь пишется "Спальня (на стуле)"... Причем это теперь - в библиотеке, автору достаточно будет забить объект и его предложный падеж)... В общем, вы мне опять, наверное, не поверите... Хм,.. придется что ли все это как-то оформить и выложить на сайт...

Неактивен

0    0    #13
27.02.2002 12:45

Loured
Участник
Зарегистрирован: 11.01.2002
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

Hugo кстати неплохая идея перевести, возможности платформы впечатляют. Можно было бы заняться, только вот с английским пробелы.

Неактивен

0    0    #14
28.02.2002 18:03

flamer
Участник
Зарегистрирован: 28.05.2001
Сообщений: 13

Re: РУССКОМУ IF БЫТЬ!!!

Вопрос не в том, хочу ли я создания этой платформы. Вопрос в том, хватит ли моих знаний для ее создания, поскольку я ни разу этим всерьез не занимался и крутым суперхакером себя не считаю.

Что, если просто выложить по пунктам задачи и требования к данной задаче, чтобы любой кто захотел, мог бы попробовать ее выполнить, не пудря мозги другим.Если человек с этим не справится, то не понадобится переназначать того, кто, например, пишет парсер.(Хотя условно обозначить можно, если человек реально уверен в своих силах).

Неактивен

0    0    #15
03.03.2002 11:35

Al Chipollino
Участник (+1)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 496

Re: РУССКОМУ IF БЫТЬ!!!

> place('Гробница фараона'); 
>   setprop('west','Западный проход');
>   object('Гроб');
>   setflag('недвижимый');
>   _object('Гроб');
> _place('Гробница фараона'); 

А как автор будет прописывать возможные действия? Например, "пописать в гробницу фараона"?

Неактивен

0    0    #16
03.03.2002 14:34

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

Очень просто: как в Inform создаётся процедура-обработчик заданного события, глагола или глагольной формы.

Неактивен

0    0    #17
07.03.2002 17:15

Zverik
Участник
Откуда: Санкт-Петербург / Псков
Зарегистрирован: 30.08.2001
Сообщений: 57

Re: РУССКОМУ IF БЫТЬ!!!

Вы, главное, не загоняйтесь - русские названия команд смотрятся like in "logo" Ж)

В общем, когда я всё это нормально прочитаю, с радостью присоединюсь к проекту smile)

Неактивен

0    0    #18
14.03.2002 11:38

Namor
Участник
Откуда: Довольно Средняя Азия
Зарегистрирован: 03.05.2001
Сообщений: 33
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

А чё, я опоздал на эту тему? Она у меня чешется. Вернувшись в отчий дом я сразу задумал иф, но как водится сразу влетел в проблему "как писать". Наверно попробую на паскале. Исходники Пила поштудирую - и помолясь начну. А вот что вчера вечером родилось на моей бумажке.

Имеется локация, на ней стоит игрок, давший команду "выстрелить из ружья в Васю" и ещё два объекта:

ОБЪЕКТ Ружьё
ОН ЖЕ ружья
ОН ЖЕ ружью
ОН ЖЕ ружьём
ОН ЖЕ оружие
ОН ЖЕ носимое
ОН ЖЕ заряжено
ЕСЛИ заряжено И ДАНА КОМАНДА Выстрелить из ружья в (живой) ТО
  ВЫВЕСТИ "Бабах!"
  ТЕПЕРЬ НЕ заряжено

ОБЪЕКТ Вася
ОН ЖЕ Васю
ОН ЖЕ Васей
ОН ЖЕ человек
ОН ЖЕ живой
ЕСЛИ ДАНА КОМАНДА Выстрелить из (оружие) в Васю ТО
  ВЫВЕСТИ "Вася охнул и упал."
  ТЕПЕРЬ НЕ живой

В результате появится сообщение "Бабах! Вася охнул и упал.", объект "Вася" потеряет свойство "живой", а ружьё разрядится.

Большими буквами написаны ключевые слова. Обработчики команд находятся внутри самих объектов. Проблема склонений решается посредством алиасов "ОН ЖЕ". Алиасы-же помогают создавать команды, срабатывающие на нечётко заданные типы объектов, так что ружьё бабахнет и в оленя и в кого угодно "живого". А Вася подохнет и от лука, если лук будет "оружием". Операторы "ТЕПЕРЬ" и "ТЕПЕРЬ НЕ" могут задавать или отбирать у объектов алиасы, так что алиасы могут работать и как переменные. Короче вот простейший язычок, позволяющий обрабатывать взаимодействия предметов. Не знаю, будет ли работать на практике, но - хоть что-то.

Неактивен

0    0    #19
16.03.2002 06:04

WildWizard
Участник
Откуда: Россия, Красноярск
Зарегистрирован: 01.03.2001
Сообщений: 450
Вебсайт

Nobody expects the Spa.. Oh, never&&mind.

Re: РУССКОМУ IF БЫТЬ!!!

Долго думал, писать эту фразу, или нет. Все же решил, что стоит. Тем более на офтопик это мало похоже.
Hydra работает УЖЕ, и включает в себя большинство идей здесь прозвучавших.
ЗЫ просто для тех, кто почему-то пропустил темку про Hydra.
ЗЗЫ я, конечно, понимаю, что здесь собралась достаточно специфичная публика, которая предпочитает писать новые платформы, а не новые игры...

Неактивен

0    0    #20
16.03.2002 13:40

Namor
Участник
Откуда: Довольно Средняя Азия
Зарегистрирован: 03.05.2001
Сообщений: 33
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

Нет, тут дело не в том что хочется писать платформы, визард! Я лично этот подход для себя давно отмёл. Проблема в том, что ну не писать же на паскале! Я попробовал на с++ - чуть не взвыл. Hydra как я понял это голимый python? А синтаксис у неё русский? И готова ли эта Hydra? Если да - то я на всё плюю и перехожу на Hydra - только напишу под неё диблиотечку чтобы работать МНЕ стало удобнее. Главное что? Главно страшно начинать большую работу на хрен знает какой платформе, поэтому и выдумываешь что-то своё, чтобы если чё не так - сам бы и исправил. Визард, ты бы создал дистрибутив с подробной инфой по установке и страничку с кратким описанием основ, а? А то ведь и вправду тоскливо новую платформу создавать. Ты бы положил начало, а мы бы включились - совместными усилиями бы доделали Гидру, как америкосы развивали с++...

Неактивен

0    0    #21
16.03.2002 14:41

MasterK
Участник
Зарегистрирован: 18.12.2001
Сообщений: 15

Re: РУССКОМУ IF БЫТЬ!!!

WildWizard написал:

Долго думал, писать эту фразу, или нет. Все же решил, что стоит. Тем более на офтопик это мало похоже.
Hydra работает УЖЕ, и включает в себя большинство идей здесь прозвучавших.
ЗЫ просто для тех, кто почему-то пропустил темку про Hydra.
ЗЗЫ я, конечно, понимаю, что здесь собралась достаточно специфичная публика, которая предпочитает писать новые платформы, а не новые игры...

Я видел твою платформу. Пробовал. Щупал.  Неплохо, конечно, но ОЧЧень недоработатонно. Нормальные игры (я имею в виду с точки зрения хороших IF стандартов) на ней сделать пока невозможно. Ты сам писал, что у тебя уже улетучился энтузиазм. Знаешь почему? Потому что никто не сделал по твоей системе ни одной игры. Потому что она для этого пока мало приспособлена. Соответсвенно есть повод для раздумий об изменениях/улучшениях. И тем не менее пока нет ни одной нормлаьной русской IF плаформы. А значит надо её создать.  У тебя уже есть хороший базис - не спорю. Но для того, чтобы выбрать действительно самую лучшую платформу - нужна здорровая конкуренция. Чем больше будет проектов (реализованных конечно), тем лучше.

Неактивен

0    0    #22
16.03.2002 15:13

Namor
Участник
Откуда: Довольно Средняя Азия
Зарегистрирован: 03.05.2001
Сообщений: 33
Вебсайт

Re: РУССКОМУ IF БЫТЬ!!!

Визард, документация нужна! И пример игрушки с исходниками!

Ты говоришь что хочем писать платформы а не игры, а сам? Ты говоришь что гидра пашет? Докажи!  Как только появится исходник игрушки-примера который можно было бы переписать в свою игру - лично я тут-же примкну!

Неактивен

0    0    #23
18.03.2002 12:53

WildWizard
Участник
Откуда: Россия, Красноярск
Зарегистрирован: 01.03.2001
Сообщений: 450
Вебсайт

Nobody expects the Spa.. Oh, never&&mind.

Re: РУССКОМУ IF БЫТЬ!!!

Будут, будут вам примеры.
Со следующей версией будут около 6 маленьких примеров. И еще один человек обещал что-нибудь написать.
А пока - смотрите документацию. Она хоть и не дописана, и корявая, но представление о том, с чего начать и как это делать дает неплохое.
2 MasterK
Интузиазм у меня не улетучился - он просто пропадает время от времени, смещаясь в другие сферы деятельности.
А слова про "неприспособленность" Hydra, про то, что на ней нельзя сделать нормальные IF - это не правда. Объясни, пожалуйста, или извинись и откажись от своих слов.
Еще раз повторяю - на Hydra можно писать вполне высокоуровневые игры ПРЯМО СЕЙЧАС. Хоть еще и бета.

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru