Список форумов
Гипат.org
Найдется место всем!


:: В чате сейчас никого нет
Инстукция по базе данных скрипт команд.
   Список форумов -> Все остальное
Автор
Сообщение
Nivea
Смерть гоблинов


Пришел: 21.12.2001
Сообщения: 266
Откуда: Samara
Добавлено: 26 января 2002, 14:17 [?] [PM] [M] [w]   [«»]

Мне то-же кажется ,что под повесть нужно местечко отвести. Формат мне по-шарам в независимости от популярности какого-то страшного или ужасного или популярного языка,а база Сану нужна для конструктора скриптов.

images/smiles/icon_smile.gif
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 14:23 [?] [PM]   [«»]

Vasya.
Я не знаю язык Паскаль.
Я не понял, что ты хочешь сказать о названии функций у Нивала. То, что это абсолютно правильно написанные названия функций? Или мы должны продолжать идентифицировать их с ошибками, путая понятия и признаки?
Ты хочешь сказать что, например если в функцию вставить Сундук: «61 GetObjectID ( objUnit : object ): float» то, Сундук это: «objUnit»?
Может все-таки задумаешься? Или мне объяснишь поподробнее.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 14:25 [?] [PM]   [«»]

Конечно, можно писать и с примечанием ниже строки команды. Только выберите стиль, что бы было понятно, что это третье поле: Комментарий.
Nivea
Смерть гоблинов


Пришел: 21.12.2001
Сообщения: 266
Откуда: Samara
Добавлено: 26 января 2002, 14:32 [?] [PM] [M] [w]   [«»]

предлагаю желающим сдесь сформировать классификацию напиcания названий полей,
чтобы соблюдалась вся строгость стиля и правильность:
idUnit или UnitId или Unit_id images/smiles/icon_rolleyes.gif
Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 26 января 2002, 14:34 [?] [PM]   [«»]

sun

Я, честно говоря, тебя тоже не понял. images/smiles/icon_smile.gif Видимо, это судьба. images/smiles/icon_biggrin.gif

В скриптах есть типы данных Object, Group, float, bool. Чтобы не перепутать номер игрока (типа float) с типом данных group, не стоит включать слово "group" в название переменной. Мне кажется, у Чейза все переменные очень хорошо обозначены. "nPlayerA" - "номер игрока А".

Слово Player в командах SetPlayer, GetPlayer и многих других перевести иначе, как "игрок", я не могу. И именно это слово я предлагаю использовать в названии переменной.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 14:41 [?] [PM]   [«»]

Да, но ведь это номер ГРУППЫ юнитов (врагов в том числе), а не только игроков.
Или я не прав?
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 14:44 [?] [PM]   [«»]

...
Получается, что ты в переменной указываешь номер игрока в группе, а не номер группы.

И ещё…
Группа представляется как объект? Это отдельный класс?
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 14:57 [?] [PM]   [«»]

Вообще-то, база данных в ПЗ идентифицируется несколько иначе, чем названия у функций и команд. Например: игровые объекты идентифицируются на следующие группы, это: Units и Pers. Что дословно обозначат как: Единицы и Персонажи.
Наверное, слово «Pers», понимается как синоним «Player».
Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 26 января 2002, 20:02 [?] [PM]   [«»]

sun

Игрок (player) - это, фактически, группа юнитов, для которой устанавливается единая дипломатия с другими аналогичными группами. Все юниты одного игрока всегда являются союзниками друг друга.

Каждый игрок имеет свой номер - вещественное число (на самом деле, целое неотрицательное).


Группа (group) - это отдельный тип данных. Переменная этого типа может содержать произвольное количество произвольных юнитов (по крайней мере, про ограничения пока ничего не известно).

Получить группу юнитов данного игрока можно с помощью функции GetPlayerUnits (nPlayer).
KalbasKa
Неторопливый черный админ


Пришел: 20.12.2001
Сообщения: 2348
Откуда: КрасногорсК
Добавлено: 26 января 2002, 22:39 [?] [PM] [M] [w] [m]   [«»]

я не из вашего племени, поэтому не буду вгрызаться тут в полено, но кое-что сказать имею. есть такое понятие, как "логический игрок". оно означает группу юнитов, находящихся под управлением компа и равноправную с игроком человеческим. т.е. если передать Зака и компанию под управление компа, получится логический игрок.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 26 января 2002, 23:37 [?] [PM]   [«»]

Я искренне сожалею, что мы не можем прийти к общему знаменателю.

«Игрок (player) - это, фактически, группа юнитов»
Странное упорство с твоей стороны. Что значит: «…фактически»? Или группа или игрок! И незачем выдавать одно за другое? Может, в том контексте стоит хотя бы написать: «Players»? Хотя тогда потеряется смысл….

И я снова хочу тебя спросить: А если сравнить свойство дипломатии группы юнитов врагов, это тоже номер игрока?
Моё личное, субъективное мнение:
«GetPlayerUnits (nPlayer)» - Я считаю, что эта функция должна была выглядеть так: «GetGroupUnits».
Мне кажется, мы будем путаться в признаках и понятиях, если не утвердим очевидное.
Я прекрасно понимаю, что объект «Group» это собственный класс данных.

Пожалуйста, почитай внимательно, что я пишу в предыдущих сообщениях и в этом в том числе. Ты не отвечаешь на мои вопросы. Я тебе говорю, что Нивал неверно идентифицировал в названиях функций понятие Группа и Игрок. И я не хотел бы повторять дальше их ошибки – двойственного толкования. В МП играют до шести игроков, но все они принадлежат одной группе. Понятие «nPlayer» подходит для внутрегруппной идентификации, а также для номера помощника в группе игрока в сингле.

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

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


Пришел: 20.12.2001
Сообщения: 2348
Откуда: КрасногорсК
Добавлено: 27 января 2002, 00:18 [?] [PM] [M] [w] [m]   [«»]

я знаю, что их может быть до 9. это ты слегка не понимаешь images/smiles/icon_sad.gif
я имею в виду, та группа живности, которой можно поставить дипломатию относительно другой группы живности, называется логическим игроком. логический игрок 1, логический игрок 2, и так далее.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 27 января 2002, 00:41 [?] [PM]   [«»]

КалбасКа.
Ну, вообще не о том...
Да причем здесь оправдания как можно представить себе нечто. У меня достаточно фантазии чтобы понять, что могут быть некие виртуальные, логические игроки.
Читай внимательно мое сообщение и задумайся по существу. Я не буду больше повторять одно и тоже….

И к вашему сведению в ПЗ существует только одно значение nPlayer – это «0».
Неужели вы не видите в теме у Чейза: «Функции для работы с группами» противоречий? Посмотрите повнимательнее….
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 27 января 2002, 00:55 [?] [PM]   [«»]

И ещё одно уточнение nPlaeyr, по значению всегда совпадает с nGroup для Игрока. То есть Зак (и его помощники) как игрок - 0 и как Группа где он находится - тоже 0. Других игроков групп в ПЗ не существует, даже в МП на каждой машине Игрок равен 0. Если вы не измените своё понимания по отношению скриптовым командам, то столкнётесь с ошибками в идентификации и других функций.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 27 января 2002, 01:28 [?] [PM]   [«»]

У меня несколько вопросов и просьб:
Нам нужна база данных, а не повесть о консольных командах и процедурах. Я прошу Вас, осмысливайте каждую запись, а не переписывайте у Чейза все в подряд. Обязательно несколько раз проверяйте лично все команды. Очень хочется, чтобы небыли ошибки в нашей базе.
Итак, будем внимательными. Например, поступила проверенная функция от вас:

«GetDiplomacy ( nPlayerA : float , nPlayerB : float )»

«nPlayerA», - может быть дать имя параметру: nGroupA?
Слово «Player» - обозначает участник игры, игрок. Монстры на карте это не группы игроков, значит с группой монстров эту функцию использовать нельзя? Если нельзя то – оставить.

Стиль записи:
Если известно, что вы пишите функцию тогда, в одном стиле оформляйте, какой тип данных она возвращает. А также, идентифицируйте функцию с моим списком, чтобы получилась база данных. Запись в вашей таблице в виде Функции должна бы выглядеть так:

053 GetDiplomacy (nGroupA: float , nGroupB: float ) : float
056 GetLeader () : object



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

Затем создавайте следующий список - описания и примечаний в том же стиле:
Первое поле - код из моей таблицы базы данных, и второе поле - примечание. Например:

053 Возвращает (значение) тип(а) дипломатии: кем является игрок номер nPlayerA (группа юнитов номер nGroupA) для игрока номер nPlayerB (группы юнитов номер nGroupA).
Возможные значения (типы значения дипломатии):
____1 - союзник
____0 - нейтрал
____-1 - враг
____© CHaSE (проверено) (Совершенно необязательно засорять авторством права первой ночи: тогда ещё нужно указать, что эту функцию создала компания Nival. Можете об этом указать отдельно в конце сообщения.)

З.Ы.:
С тем списком, что вы сейчас создаете работать сложно. И кстати очень похоже на «повесть» о консольных командых и скриптовых процедурах как на сайте у Чейза.
Нам нужна база данных, которую можно будет использовать в конструкторе уровней.
Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 27 января 2002, 01:56 [?] [PM]   [«»]

Вопрос такой: а зачем нам база данных? Разве команды нужны не для тех, кто будет программировать различные события аддона?

В любом случае, как мне кажется, нужно и то, и другое (и база, и "повесть").
цитата
Цитата:
GetDiplomacy (nGroupA: float , nGroupB: float ) : float

Принимаем формат Паскаля, а не Си? Ну ладно, я не против, хотя Си - более популярный язык.

Группа юнитов и игрок - это совсем разные понятия (и разные типы данных). Названия процедур и функций явно дают понять, что имеется в виду в каждом конкретном случае. Например, GetPlayer : float выводит именно игрока (как можно иначе перевести слово "player"?), а GetPlayerUnits : group - группу юнитов игрока.

[ 26 января 2002: Изменил: Vasya ]

Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 27 января 2002, 13:47 [?] [PM]   [«»]

sun
Ну, непонимание с моей стороны - это нормально, надо уже привыкать. images/smiles/icon_biggrin.gif

Ладно, насчёт дипломатии. Насколько я понимаю, это свойство задаётся только тем группам, которые обозначены, как player'ы. То есть, нельзя выделить произвольную группу юнитов (например, командой UnitSee) и задать дипломатию для неё. С этим ты согласен? И разве нельзя по этому принципу разделить player и group?

Честно говоря, я не знаю, что такое "собственный класс данных", я бы сказал, что group - это контейнер класса object. (Object - тоже не лучшее название для класса, но ничего не поделаешь.) При этом, видимо, player (в ниваловском пониманиии) - это класс, ассоциированный с group по принципу 0..1 - 1. Не каждая group соответствует некоторому player, но каждому player соответствует group. У объекта класса player есть атрибут "номер", который его однозначно идентифицирует (в пределах игровой зоны), а у объекта класса group такого атрибута нет. Поэтому я не понимаю, что ты подразумеваешь под nGroup. images/smiles/icon_confused.gif

цитата
Цитата:
в ПЗ существует только одно значение nPlayer – это «0».

Это я вообще не понял. Где существует? Что значит "существует"?
цитата
Цитата:
Неужели вы не видите в теме у Чейза: «Функции для работы с группами» противоречий?

Стараюсь, но не вижу. images/smiles/icon_smile.gif
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 27 января 2002, 13:58 [?] [PM]   [«»]

У меня открылись глаза...
Я понял. Спасибо.
images/smiles/icon_smile.gif
Alexy III
Оружейник


Пришел: 22.12.2001
Сообщения: 198
Откуда: Ярославль
Добавлено: 27 января 2002, 18:57 [?] [PM] [M]   [«»]

Ok.
sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 28 января 2002, 00:47 [?] [PM]   [«»]

Vasya.
Видимо стОит поподробнее написать…
images/smiles/icon_smile.gif

Ты раскрыл мне глаза, что заниматься дальше объяснением моей точки зрения тебе, в форме диалога - есть бессмысленное занятие. Я заметил, что ты практически никогда не задаешь вопросов, в которых ты не компетентен, а если и задаешь, то сам же на них и отвечаешь, и к тому же даешь советы. Я ждал от тебя вопросов по существу проблемы, а ты перешел в частности. В твоем последнем сообщении, на мой взгляд, слишком много ошибок в методике классификации структуры ПЗ, да и сквозит раздражение…. Логично было, отвечая «…Стараюсь, но не вижу.» на мой вопрос, задать встречный вопрос, но этого не последовало. И мне осталось только развести руками…
У меня сложилось впечатление, что тебе психологически очень трудно признавать свои ошибки. images/smiles/icon_sad.gif

Я попытаюсь на форме, в виде монолога, довести тебе моё виденье структуры ПЗ и классификацию терминов и понятий консольных команд, процедур и функций для скрипитов. Я обязательно буду использовать ваш опыт из темы «Разбор скриптовых команд.».
Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 28 января 2002, 01:30 [?] [PM]   [«»]

sun

Вот и ладушки. images/smiles/icon_biggrin.gif

Alexy III

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


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 28 января 2002, 13:18 [?] [PM]   [«»]

sun

Я согласен с тобой в том, что лучше меня ни о чём не спрашивать, когда хочешь доказать свою точку зрения, а сразу написать всё полностью с объяснениями. Фраза "стараюсь, но не вижу" тоже намекала именно на то, что надо мне показать пальцем на конкретные противоречия (я ведь так стараюсь images/smiles/icon_wink.gif ). Я просто в скрытой форме предолжил тебе продолжить мысль.

Ошибки мне признавать, пожалуй, трудновато. У меня о себе самом сложилось такое впечатление images/smiles/converted/re_16.gif , что я редко выношу необдуманные суждения, поэтому, чтобы показать мне их ошибочность, надо постараться. images/smiles/converted/re_16.gif
Vasya
Привратник


Пришел: 20.12.2001
Сообщения: 338
Откуда: Москва
Добавлено: 01 февраля 2002, 14:58 [?] [PM]   [«»]

sun

Я давно прочитал статью и согласен с тобой во всём. Раньше я действительно не задумывался о том, что кроме игроков (дип. групп) есть и партии, точнее, одна партия. Видимо, во многих командах, где у Чейза стоит nPlayer, надо написать idParty с комментарием, что этот параметр всегда должен быть нулём. Но не уверен, что всегда можно определить наверняка, где речь о дип. группе, а где - о партии.

Хотя после опытов Sagrer'а я опять начал путаться.

[ 01 февраля 2002: Изменил: Vasya ]

sun
Опытный воин


Пришел: 22.12.2001
Сообщения: 673
Добавлено: 02 февраля 2002, 04:22 [?] [PM]   [«»]

Я думаю, что мы обсудим детальнее этот вопрос….
На самом деле я и сам сомневаюсь в правильности моего представления о структуре ПЗ. Считаю, что в функциях работающих с уровнем дипломатии Партий, лучше использовать имя параметра: nPlayer, но осторожно, а в Дипломатических группировках, что-то похожее на: nPlayerGroupDiplomacy. Моя статья теоретическая, я многого того, что написал, самостоятельно не проверял.
В дальнейшем я напишу по вашим исследованиям новый список команд, и мы все ещё раз обсудим.

То почему Сагрер сделал такого рода выводы я так и не понял.
Показать сообщения:   
   Список форумов -> Все остальное
Версия для печати
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы
Вы можете скачивать выложенные файлы
Перейти:  
Часовой пояс: GMT +4:00