|
Русский Revision и мануал для Sphere Server 0.56 |
|
|
DihlofozzZ |
13.12.2004, 4:39
|

          
Администратор форума
Сообщений: 5.602
Регистрация: 8.3.2003 Группа: Администраторы Наличность: 0 Из: Москва Россия
Пользователь №: 237

|
Есть мелкие недочеты, кое что недопереведено, но читать уже более менее можно. Замечания, исправления в переводе просьба постить ниже (IMG: style_emoticons/default/smile.gif) Код ---- 0.56a -------------------------------------------------------------------- ---- * выпущена
06-10-04, Vjaka - Удалено DISGUISE(NAME/VERSION), текущая версия переименована в 0.56a.
07-10-04, Vjaka - Удалено AGREE использовать эту линию далее нет смысла, т.к. это больше не R* серия. - Добавлена поддержка map*,statics*,staidx* файлы найдены и загружены (T2A, LBR, AOS, SE). - Удалено EF_New_Maps так как это объединено теперь с источниклм, пакет посылается тогда, когда нужно. - Перемещение на другую карту сейчас перемещает туже самую карту на сервер. Но это в настоящее время не использует кэширование и перечитывает информацию тайла от файлов карты каждый раз. Кэширование тех же самых секторов, но в различных "mapplanes" (планах карты) будет сделано в будушем. Вы должны добавить и регионы для этих карт, и поместить соответствующие файлы в место где располагаются все остальные *.mul файлы. - Изменены значения EXPERIMENTAL флагов, чтобы удалить пустые щели между предметами.
08-10-04, Vjaka - Пофикшена утечка памяти, вызванная удалением кэширования карты. - Пофикшен экран клиента при смене карты.
08-10-04, Furio - Добавлен PROMPTCONSOLE, делает клиент незамедлительным (как при запросе страницы) и посылает ответ, как аргумент пользовательской definied функции (синтаксис функции отзыва PROMPTCONSOLE, сообщение, чтобы вызвать).
10-10-04, Furio - Добавлены RESDISP свойства аккаунта. Принятые значения = 0 (клиент до T2a (preT2a)), 1 (T2A), 2 (LBR), 3 (AoS), 4 (Samurai Empire). Это используется чтобы идентифицировать тип загруженного клиента. По дефолту это значение равно 0, но если клиент T2A, то это число автоматически меняется сферой на 1. LBR, AoS и SE клиенты не ставятся автоматически. - Добавлено к CHARDEF свойствам RESLEVEL, RESDISPDNID, RESDISPDNHUE. Первое свойство отвечает из какой версии UO берется анимация. Второе свойство отвечает за показ анимации ID у старых версиях клиента. Третье свойство отвечает за показ цвета (hue) старым клиентам (если 0 или пустой, то используется дефолтный цвет (hue) анимации). - Модифицирован пакет скриптов (scriptpack) чтобы отразить изменения для T2A монстров.
22-10-04, Vjaka - Добавлен <dVALUE> как сокращенное к <eval <VALUE>> чтобы получить десятичное значения единственного expr как переменного. Отметьте, это немного затрагивает EF_Intrinsic_Locals. - Команды с .command и с пробелами после будут рассматриваться как без пробелов, так как дополнительные пробелы приводят чаров с плевелом к раскрытию (!?). - Добавлен TAG.PARTY_CANLOOTME для компании. Если 1, позволяет компании лутить себя. - Добавлен триггер @Kill (SRC-убийца, ARGO-убитый) - Добавлены секторные функции ALLCHARS,ALLITEMS подобные ALLCLIENTS. Для регионов вы можете использоватьe SECTORS.ALLCHARS, SECTORS.ALLITEMS. - Изменен GODPORT, чтобы принять номер порта лучше. Старые значения ( <=0 = отключает, 1=ServPort+1000) работают по прежнему. - Добавлен SYSCMD и SYSSPAWN команды, чтобы использовать внешние апликации. Верните к <0 если есть ошибка. Первый блокирует, пока программа запущена, второй спаун и завершает дейтсвие скрипта. Из-за очевидной чувствительности охраны (Due to obvious security fear) в этих командах, они отключены, если OF_FileCommands не задан. До 9 командной линии аргументы передаются внешним аппликациям (!?).
23-10-04, Furio - Пофикшены незначительные вещи в grayproto. - Обновлен grayproto (список/размеры пакета Uo в сфере). - Закончен и отлажен новый crypt engine (для crypt клиентов). В настоящее время к последнему текущему клиенту, использующимуся на OSI - клиент 4.0.5a.
25-10-04, Vjaka - Пофикшено исключение в записи файла (writefile), когда нельзя открыть файл. - Добавленное имя аккаунта делает исключение при отправке пакета (!?) Added account name output when packet dispatch generated an exception.
25-10-2004. Furio - Необходимо обновить grayproto, с новой информацией о пакете.
26-10-04, Vjaka - Пофикшена ошибка разрешения SMSG[u]. - Пофикшено <dSOMEVAL> предоставлено некоторых hex результатов. - Добавлено обновление для предметов, перемещенных NPCами, когда они блокируют их дорогу.
27-10-04, Vjaka - Теперь Windows будет пытаться использовать winsock 2.0 если доступно вместо 1.1. - Добавлен числовой аргумент (amount) для NEWITEM (newitem i_gold,45). По дефолту - 1. - Удалена одна из аказий с созданием дополнительного лога не в логфайл путь.
27-10-04, Furio - Пофикшен баг в показывании больших диалогов в новых клиентах (4.0.X). - Пофикшен баг, когда при добавлении предмета у некоторых клиентов происходил краш.
28-10-04, Vjaka - Disabled string 'q'/'Q' to be said by privileged accounts. It is due the fact that default macro for repeat is Ctrl+Q, and one less Ctrl press will lead to GM to reveal self existance around, which really is not good.
31-10-04, Furio - Несколько фиксов, связанных с созданием аккаунта и хаком банкбокса. - Удален EF_AgeOfShadows. Это будет повторно добавлено с новыми особенностями и полной совместимостью для старших клиентов, когда включено. - Пофикшен другое деяние с (exploit with) Bullettin Boards. Спасибо Balkon за сообщение об этом.
01-11-04, Vjaka - Добавлен .pid файл, чтобы получать уведомление (existance notification) о двойном запуске сферы.
02-11-04, Vjaka - Теперь уровень света для секторов сохранен как LIGHT вместо LOCALLIGHT. - One more cause for long default message string lookups removed. - EQUIPHALO теперь берет аргумент - время, чтобы воздействовать на персону. - Исправлен баг, всегда при подсчете дающий кол-во итемов в секторе 0. - Добавлен триггер @Destroy для предметов.
04-11-04, Vjaka - Быстрый фикс OF_Magic_PreCast - теперь нет прекастов у NPCов. - Consume теперь может взять больше 65k сразу. - Добавлен триггер @CreatePlayer, используется после того как чар был создан игроком.
05-11-04, Vjaka - Теперь "Admin" показывается вместо "GM", если персона админ или овнер в титуле.
06-11-04, Vjaka - Добавлена функция сектора ALLCHARSIDLE подобная ALLCHARS, но прокручивающаяся (!?) при disconnected/mounted/и т.д. чаров, не поддерживалось в ALLCHARS. - Добавлен автоматический фикс карты, устанавливающий к нулевой карте, если за пределами. Пожалуйста отметьте, это может вызвать некоторые проблемы с использованием MOREM. (!?) Added auto map fix to zero map if it is out of bounds. Please note, that this can cause some problems with MOREM usage as well.
25-11-04, Furio - Пофикшено: encryption - логин клиента. - Пофикшено: dVALUE оценка, когда VALUE уже int. - Пофикшено: EQUIPHALO <timer> не делает пропадания света. - Обновлена поддержка клиентов до 4.0.6a. - Удалена мессага "Cannot move here!". - Добавлено больше информации о ошибке "MOVE: empty region". (uid и point)
30-11-04, Furio - Пофикшено: MOREM автоматически переделывается в 0 из-за новой особенности мультикарты. - Добавлен MasterUid свойство для гильдстоунов.
02-12-04, Furio - Пофикшено: Gm Page меню не посылает gms на сраницу выбора (!?). - Пофикшено: Lord показан без пробела(!?). - Пофикшено: TAGAT пытается получить доступ к не существующмм TAGам. - Изменено: Только предметы с аттрибутами 08000 могут быть перемещены в spherestatics.scp. - Изменено: Overskillmultiply теперь 0 по дефолту.
08-12-04, Furio - Пофикшено: EvaluatingIntel при 0 int NPC-ов. - Пофикшено: EQUIPHALO свет пропадает при Dispel-е.
08-12-04, Vjaka - Пофикшено деяние, предоставляющее недействительное количество (amount) в покупаемом покете, дающим халявные ресурсы (спасибо Breaker и Fallout за сообщение об этом). - Пофикшен canmove, чтобы принять DIR значения (0..8) в дополнение к письменным аргументам. Те же самые изменения затрагивают другие места, как команда движения и т.д. - Результат старого "ACCOUNT accname" команда меняет на более инфомационный. - GMы должны логиниться с инвулем и без allshow флагов. - Если набор ссылки к OBJ/NEW не существует, ноль будет поставлен вместо него. И напротив, если уже удалено, то значение OBJ/NEW будет очищена к 0 (!?). - Пофикшено исключение в f_onaccount_login.
08-12-2004, Various authors - Пофикшено нескольно скриптов - Vjaka. - Добавлены новые скрипты и фиксы - Tattooed Corpse.
--------------------
|
|
|
|
|
  |
Ответов
DihlofozzZ |
15.12.2004, 2:54
|

          
Администратор форума
Сообщений: 5.602
Регистрация: 8.3.2003 Группа: Администраторы Наличность: 0 Из: Москва Россия
Пользователь №: 237

|
Код
Диалоги в Sphere Server 0.56a
Переведено на русский язык - DihlofozzZ: 14-12-2004
Проэкт Sphere Ultimasoft
http://sphere.uokit.com
*********************************************************************
- Добавлен TAG.DIALOG_NAME к MEMORY_GUMPRECORD. Таг содержит название открытого
диалога. Специальный случай - .admin гамп (клиент лист), гамп краски волос (hairdye), гильдийный
хард-код гамп (guild) и если названия не найдено (undef). Надейтесь, что это поможет в проверке,
какие гампы открыты на экране клиента.
- Добавлена команда SDIALOG. Это работает, как DIALOG с различием в том, что она откроет диалог
только, если не его не будет присутствовать на экране клиента.
- Команда DIALOGCLOSE. Первый аргумент - название диалога, второй аргумент - кнопка, которая
должна быть вызвана на диалоге - 0 если не указано. (пример: DIALOGCLOSE d_my_dialog). Вы можете
поместить ее, как одну из первых команд секции диалога (DIALOG), чтобы гарантировать, что только
один диалог данного типа на клиенте.
- Главная секция для диалогов (DIALOGs) теперь полностью интерпретируется, как другие скрипты,
разрешая вам добавить логигу в ваш диалог, использовать IF и т.д. Единственное ограничение в
настоящее время - то, что команды гампа позволяются только в секции диалога (DIALOG), а не в
пределах функций (FUNCTIONs), но это лучше.
- Диалоги больше не будут находиться в конфликте друг с другом, это учитывает постоянные
диалоги на экране. Работы INPDLG также, видит, что может быть только одно окно INPDLG
на экране всегда.
- Чтобы сделать написание диалогов проще, добавил курсор и относительные координаты:
dorigin 50 50 // устанавливает расположение в x=50, y=50
Используя "*" около координат делает это относительно расположения и перемещает расположение
на некоторые значения:
dtext *0 *10 0 расположение теперь x=50 y=60, итак это последнее расположение
Используя "+" около координат делает это относительно последнего местоположения w/o изменением
расположения.
dtext +10 - 0 добавляет 10 к X (y=150, o.y=100)
Как пример, примерно напишите список текста с 3 колонками, каждый seperated через 200 x и 20 мест
между каждым рядом:
dorigin 10 10
// первый ряд
dtext *0 - 5 1:
dtext +10 - 0 текст для ряда1, колонки1
dtext *200 - 5 2: // x расположение = 200
dtext +10 - 0 текст для ряда1, колонки2
dtext *200 - 5 3: // x расположение = 400
dtext +10 - 0 текст для ряда1, колонки2
И теперь нужно только один раз спуститься по одному ряду и дальнейший текст будет подобным.
Это не слишком легко, чтобы объяснить, это здесь для того чтобы кто-нибудь мог бы найти это
полезным (!?). Если вы не поняли как использовать это, игнорируйте :)
- Изменен textadd (добавление текста) и gumptext (гамп текста), чтобы разрушить равные вереницы
текста к тому же самому индектсу. Так что если вы используете:
gumptext 10 20 Это экземпляр.
gumptext 10 40 Это экземпляр.
gumptext 10 60 Это экземпляр.
Это сгенерирует один (ONE) id текста. Теперь не нужно иметь seperate секцию текста (TEXT).
Такая секция полезна для того чтобы держать вереницы в одном месте (в этом случае это было б
полезным), но эт больше не принудительно, это становится просто вопросом стиля/выбора.
- Вы можете теперь открыть диалог в определенной странице, с DIALOG d_dialog_name pagenumber.
Это фактически невозможно с клиентом UO - повторно вычисляет числа страницы/кнопки диалога
так, чтобы отобранная страница была первая. Это полностью невидимо, хотя, и работает совершенно.
- Добавлена новая команда - DTEXT - к гампам, которая делает обработку ID текста для вас
(d поддерживает динамический):
dtext x y color Фактически здесь находится текст :).
Текс добавляется с помощью gumptext, добавленного в [DIALOG ... TEXT] секцию. Если вы используете
данную вереницу текста однажды, то это фактически быстрее используется, чем использование "text" и
добавляет это в TEXT секцию диалога. Симмилар команды DCROPPEDTEXT и DTEXTENTRY, находились
там же, беря текст вместо индекса. DHTMLGUMP находится также в, но уведомление, что синтаксис
подходит на HTMLGUMP, за исключение того, что вы берете ID и добавляете текст в конец.
С этими изменениями, вы можете полностью взять [DIALOG ... TEXT] секцию диалога. Только те
веретеницы, которые обычно используются в диалоге, вы должны вставлять в [DIALOG ... TEXT] секцию.
Внутренне и gumptext и textadd просто добавляют матерьял к диалогу, если необходимо, и посылают
нормальные команды "text" клиенту, так что их бехопастно использовать. Но они освобождают вас
от необходимости держать след длинного списка чисел, и позволять вам формировать и изменять
ваш диалог w/o с id текста.
- Теперь вы можете использовать функции в гампах диалогов. Так что вы можете делать свои алгоритмы с гампами!!! Смерть диалогам "режь и вставляи".
- Измененные секции кнопки (BUTTON) диалога
ON=min max для обобщения любых кнопок с номерами между min и max(включительно).
Кроме того, argn1 это buttonID, который был фактически отобран (даже когда определяют только buttonID,
а не диапазон, как обчыно). С buttonID в argn1 вы можете написать больше родовых функций с небольшой
суетой.
- "return 1" в пределах диалога (DIALOG) секция останавливает диалог от того, чтобы фактически быть
посланной.
- Добавленны аргементы диалогам, в этой форме: "DIALOG d_dlg 0 blabla", и <args> и <argv[x]> может
использоваться. <argn> число страницы (второй аргумент)
--------------------
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|