Определение ГМа
Moderators: Murderator+, Murderator
Определение ГМа
Можно ли определить плеер или ГМ перед тобой? Может у ГМов какой-то специфичный тип или еще что-нить...
По имени не катит, потому что ГМ может отключить приписку.
По имени не катит, потому что ГМ может отключить приписку.
Re: Определение ГМа
Stain wrote:Можно ли определить плеер или ГМ перед тобой? Может у ГМов какой-то специфичный тип или еще что-нить...
По имени не катит, потому что ГМ может отключить приписку.
проще всего по сериалу. при появлении гма ,info на него и в скриптах просто проверяешь, нет ли рядом конкретно его.
Ну это разве что на гма не в инвизе покатит, заходящего всегда одним чаром со своего стафф-акка + прийдется всего стаффа сериалы записывать... Да и тут зависит от эмулятора, никто ведь не заставляет сериалы именно использовать статический, можно при каждой загрузке из сейва заново раздавать всем объектам, а внутри базы данных использовать свою нумерацию, экономя место и т.п.... А тип гм-тела есть специфический с робой, да... Опять таки что стафф с этим телом бегать никто не заставляет. Так что нет, нельзя надежно никак разумеется.
Unkind wrote:Ну это разве что на гма не в инвизе покатит, заходящего всегда одним чаром со своего стафф-акка + прийдется всего стаффа сериалы записывать... Да и тут зависит от эмулятора, никто ведь не заставляет сериалы именно использовать статический, можно при каждой загрузке из сейва заново раздавать всем объектам, а внутри базы данных использовать свою нумерацию, экономя место и т.п.... А тип гм-тела есть специфический с робой, да... Опять таки что стафф с этим телом бегать никто не заставляет. Так что нет, нельзя надежно никак разумеется.
я искренне надеюсь, что ты понял, что сказал по поводу динамических сериалов. на любом сервере даже со среднем количеством онлайна это будет занимать огромное количество времень - перебрать все объекты мира и раздать им новые серийники, кроме того встанет огромный вопрос, а кому собственно из чаров и какой пакет слать, после смены серийников. да и инжект заточен под конкретные сериалы конкретных чаров, и если сериал на данном сервере у чара будет не тот при релогине - то в инжекте запросто могут слететь к чертовой матери все hotkeys для данного чара, а так objects, что может весьма осложнить игру, но таких вещей почему то не происходит, если конфиг инжекта был своевременно сохранен, после настройки.
теперь о главном. разработчики эмуляторов уо, как и osi, ни в коем случае не обязаны заботиться о различных thrd party программах, которые игроки могли бы использовать во время игры, но вопрос производительности конкретного сервера и скорости сохранения мира, которая всегда имеет немалое значение, остается открытым (последнее к osi, по видимому, не относится, ибо у них кластер, а не отдельная машина). ибо, в случае с динамическими сериалами уже сам процесс смены сериалов может занимать довольно большое количество времени, ведь объектов в мире на каждом сервере не 100 и не 200, и даже не 1000, а в десятки, а кое где и в сотни раз больше. можешь сам попробовать написать программу, которая читалабы какой-либо здоровенный конфиг (записей эдак на 65000-100000), после чего меняла бы какую-либо информацию в каждой записи, после чего сохранять её обратно в файл, и естественно замерять время, затраченое на операцию. скажу сразу - получится немало.
Unkind wrote:Ну это разве что на гма не в инвизе покатит,
а кого-либо (неважно pc или npc), ушедшего в хайд до того, как появился в предполагаемом поле твоего зрения, найти в принципе невозможно, ибо сервер вовсе необязан посылать клиенту, да и не посылает если это нормальный сервер, информацию о спрятавшемся народе до тех пор, пока его не детектнут, или он сам из хайда не вылезет. но если он был виден тебе и ушел в хайд при тебе - то совсем другое дело.
Yoko wrote:да нет так сделать элементарно и никакой особой нагрузки
ну элементарно это естественно по меркам опен-соурс эмуляторов типа вульфпака
я не стану спорить, так как хорошо представляю, о чем говорю, и тут не имеет значения, что за эмулятор и как он работает. кроме того, кроме аоп, я не слышал ни про один еще сервер современный, который работал бы не на сфере, рануо, или пол. мы говорим об общем положении дел, а не о частных случаях. и уж точно ни какой распрекрасный вольфпак не справится за преемлемое время с переназначением сериалов для пары сотен тысяч предметов. это окромя всяких там кучек чего-либо, которые и так сериалы меняют всякий раз, как в них добавляют, или вынимают из них n-ое количество...
и инжект заточен под конкретные сериалы конкретных чаров, и если сериал на данном сервере у чара будет не тот при релогине - то в инжекте запросто могут слететь к чертовой матери все hotkeys для данного чара
Чушь, ничего он не заточен таким образом, умный скрипт должен содержать минимум абсолютных сериалов, без которых уж совсем совсем никак, а то и вовсе не содержать.
кого-либо (неважно pc или npc), ушедшего в хайд до того, как появился в предполагаемом поле твоего зрения, найти в принципе невозможно, ибо сервер вовсе необязан посылать клиенту, да и не посылает если это нормальный сервер, информацию о спрятавшемся народе до тех пор, пока его не детектнут, или он сам из хайда не вылезет.
Где я этому противоречил, умный ты наш? Вчитайся внимательно в первую строку моего первого поста в данном топике, 10 раз перечитай.
В качестве экскурса в историю, во время оочень раннего то-ли ОСИ, то-ли Grayworld или TUS, точно уже не помню где конкретно сие было, таки посылалась клиенту инфа о инвизных/хайднутых чарах, и сокрывались они чисто клиент-сайдно. В результате в UOExtreme появилась опция всех видеть...
но если он был виден тебе и ушел в хайд при тебе - то совсем другое дело.
И чем же другое? Как максимум можно заставить не исчезнуть фигурку на том месте, где он захайдился, чтоб точно знать точку отправления. Далее, любой, опять таки нормальный сервер, ни одного пакета о захайдившемся, даже в твоем поле зрения - не отошлет.
Веселуха это когда у предмета несколько серийников и каждому клиенту отправляется свой.
прикинь, сколько памяти надо, а?
Ну вообще чуш пошла, о подобном маразме нигде не говорилось, говорилось о раздаче серийников на старте при загрузке состояния мира. И уж естественно ни на байт больше памяти результат не займет чем загрузка тех же серийников статически сохраненных.
да и просто комп с ума сойдет перелопачивать все эти сотни метров мусора, будь у него хоть сколько процессоров, разумеется если эмулятор заточен под это дело. =)
Ахинея, представляешь ты себе это явно куда туманнее, чем хочешь убедить всех. Мизерно мало повлияет на производительность.
я не слышал ни про один еще сервер современный, который работал бы не на сфере, рануо, или пол.
Можно только посочувстовать жуткой узкости кругозора и соответвенно познаний.
Походу насколько я помню какраз на РанУО реализован то-ли частичный сериалайз-десериалайз _некоторых_ объектов, то ли оно там происходит по какому-то алгоритму, в результате которого серийники все равно более-менее постоянные выдаются, но не хранятся статически. И уж естественно, какая жуть, каждый раз компиляция при старте net frameworkom, так это в твоем представлении наверное никаких мощностей не хватит. Походу, насчет памяти, занимаемой там же на хранение объектов, читал помню посты на форуме, .net frameworkу вроде как по-умолчанию не более 1гб отводится, большие сервера давно уперлись в лимит, в-общем описывалось как до 2-х или 3-х гб расширить лимит... И все себе успешно ворочается гигабайтами, и никаких супер-кластеров вычислительных особых не надо.
Unkind wrote:и инжект заточен под конкретные сериалы конкретных чаров, и если сериал на данном сервере у чара будет не тот при релогине - то в инжекте запросто могут слететь к чертовой матери все hotkeys для данного чара
Чушь, ничего он не заточен таким образом, умный скрипт должен содержать минимум абсолютных сериалов, без которых уж совсем совсем никак, а то и вовсе не содержать.
во-первых, инжект хранит hotkeys для каждого чара отдельно (см. injection.xml, если не веришь), а чаров запоминает во все том же пресловутом конфиге по их серийникам, то есть если ты создашь на одном акке кучу чаров с одинаковым именем, то hotkeys у каждого будут свои, ибо серийники разные. далее насчет скрипта. как ты выразился "умный"" скрипт действительно должен содержать по минимуму точной информации, но если мы хотим отследить появление кото-то определенного - то мы вынуждены это делать. на этом разговор о целесообразности того или сего закончим.
Unkind wrote:кого-либо (неважно pc или npc), ушедшего в хайд до того, как появился в предполагаемом поле твоего зрения, найти в принципе невозможно, ибо сервер вовсе необязан посылать клиенту, да и не посылает если это нормальный сервер, информацию о спрятавшемся народе до тех пор, пока его не детектнут, или он сам из хайда не вылезет.
Где я этому противоречил, умный ты наш? Вчитайся внимательно в первую строку моего первого поста в данном топике, 10 раз перечитай.
В качестве экскурса в историю, во время оочень раннего то-ли ОСИ, то-ли Grayworld или TUS, точно уже не помню где конкретно сие было, таки посылалась клиенту инфа о инвизных/хайднутых чарах, и сокрывались они чисто клиент-сайдно. В результате в UOExtreme появилась опция всех видеть...
ты немного не по адресу. с экскурсами в историю - пожалуйста на форум, посвященный развитию серверной части уо. =)
и потом, если ты внимательно будешь относиться не только к своим словам, но и к чужим - то заметишь в моем посте слово "НОРМАЛЬНЫЙ". это не пустой звук. а о том, что там было раньше - я и без ваших ушей в курсе.
Unkind wrote:но если он был виден тебе и ушел в хайд при тебе - то совсем другое дело.
И чем же другое? Как максимум можно заставить не исчезнуть фигурку на том месте, где он захайдился, чтоб точно знать точку отправления. Далее, любой, опять таки нормальный сервер, ни одного пакета о захайдившемся, даже в твоем поле зрения - не отошлет.
на этот счет ты, мягко говоря, неправ... я не знаю насчет богатой на неожиданности сферы, но pol так делает, да и рануо, по-видимому, тоже. если, конечно в скриптах каким-то образом не запретят.
Unkind wrote:Веселуха это когда у предмета несколько серийников и каждому клиенту отправляется свой.
прикинь, сколько памяти надо, а?
Ну вообще чуш пошла, о подобном маразме нигде не говорилось, говорилось о раздаче серийников на старте при загрузке состояния мира. И уж естественно ни на байт больше памяти результат не займет чем загрузка тех же серийников статически сохраненных.
стоп. если при загрузке сейва после рестарта - это одно дело, но тут, как я понял, упоминалась смена серийников при каждом сейве, а это уже гемор.
Unkind wrote:да и просто комп с ума сойдет перелопачивать все эти сотни метров мусора, будь у него хоть сколько процессоров, разумеется если эмулятор заточен под это дело. =)
Ахинея, представляешь ты себе это явно куда туманнее, чем хочешь убедить всех. Мизерно мало повлияет на производительность.
это я вообще комментировать не стану, ибо ты не понял, о чем речь.
Unkind wrote:я не слышал ни про один еще сервер современный, который работал бы не на сфере, рануо, или пол.
Можно только посочувстовать жуткой узкости кругозора и соответвенно познаний.
Походу насколько я помню какраз на РанУО реализован то-ли частичный сериалайз-десериалайз _некоторых_ объектов, то ли оно там происходит по какому-то алгоритму, в результате которого серийники все равно более-менее постоянные выдаются, но не хранятся статически. И уж естественно, какая жуть, каждый раз компиляция при старте net frameworkom, так это в твоем представлении наверное никаких мощностей не хватит. Походу, насчет памяти, занимаемой там же на хранение объектов, читал помню посты на форуме, .net frameworkу вроде как по-умолчанию не более 1гб отводится, большие сервера давно уперлись в лимит, в-общем описывалось как до 2-х или 3-х гб расширить лимит... И все себе успешно ворочается гигабайтами, и никаких супер-кластеров вычислительных особых не надо.
мдя. как говорится - "не было у бабы забот - купила баба порося."
читай выше. про старт или рестарт речь вообще не идет. в эти моменты можно делать что угодно, так как рестарты предполагаются быть большой редкостью на отлаженом сервере и могут занимать хоть по три часа - тут время не играет роли, лишь бы потом все шло побыстрее. а вот бесполезная нагрузка при каждом сохранении мира повлечет за собой справедливые жалобы игроков на не адекватно расходуемое время. далее о _некоторых_ объектах. на самом деле такие объекты присутствуют не только в пресловутой рануо. ибо без них вообще трудно обойтись, но к таким "предметам" как чары, не важно игровые, или это гм, таковое не относится.
P.S. можешь и дальше писать по три страницы ответов, брызгая слюнями на весь форум. я на подобное отвечать далее не стану, хотя вполне возможно и прочту. для меня разговор на эту тему окончен.

GrayLord wrote:Yoko wrote:да нет так сделать элементарно и никакой особой нагрузки
ну элементарно это естественно по меркам опен-соурс эмуляторов типа вульфпака
я не стану спорить, так как хорошо представляю, о чем говорю, и тут не имеет значения, что за эмулятор и как он работает. кроме того, кроме аоп, я не слышал ни про один еще сервер современный, который работал бы не на сфере, рануо, или пол. мы говорим об общем положении дел, а не о частных случаях. и уж точно ни какой распрекрасный вольфпак не справится за преемлемое время с переназначением сериалов для пары сотен тысяч предметов. это окромя всяких там кучек чего-либо, которые и так сериалы меняют всякий раз, как в них добавляют, или вынимают из них n-ое количество...
Слабо у тебя с конструктивным мышлением. при посылке сериала клиенту достаточно зделать нечто типа serial XOR clientcode, где clientcode например время логина чара или его номер в неком внутреннем списке. В результате при каждом заходе клиента он будет видеть тот же мир, но из других сериалов.
Yoko wrote:Слабо у тебя с конструктивным мышлением. при посылке сериала клиенту достаточно зделать нечто типа serial XOR clientcode, где clientcode например время логина чара или его номер в неком внутреннем списке. В результате при каждом заходе клиента он будет видеть тот же мир, но из других сериалов.
насчет конструктивного мышления - давай не будем бежать впереди паровоза.
а идея насчет сериалов - неплохая, но это пока еще теория. вот только кто и где её реализовывать станет - пока неясно.
если где услышишь про такое дело - скажи мне. я посмотрю, что за зверь.

Yoko wrote:уже услышал, несколькими постами выше. ну и что? воплотить то её можно, я просто не вижу ЗАЧЕМ.
перестань ерундить. про частичную смену - это есть в том или ином виде почти везде... лашадь меняет сериал, если залезть и слезть снова, и еще много чего похожего есть почти везде, но вот про полную смену пока ничего не было слышно, а фантазировать, что можно, а что нет - эдак далеко зайти можно. предлагаю, всё же, вернуться к нашим баранам.
я кадато слышал способе определения ГМа в онлайне, но лично сам я его не проверял и не воплощал на практике.
короче для этого нада сначала записать серийник гма. например на каком нить турнире прийти и покликать на стафф )))
дальше делается атака на этот серийник, и если ГМ есть в онлайне игрок сереет и появляется предупреждения что станеш криминал, так как ГМы всегда бегают синими.
я точто не помню но на какомто из украинских шардов это работало.
PS идея про динамические смены серийников это откровенно говоря бред.
например у нас при вайпе некоторых шмуток, сервак уходил в даун на пару минут. а вайп это всего лиш удаление некортоых обьектов.
если же переназначать серийники ВСЕХ обьектов то сервер может повиснуть на неопределенное время.
Единственный вариант это усторить чтото типа защиты в инжекте. тоесть перемешивать серийники с каким нибудь кодовым словом, которое менятся будет динамически. Кстати это один из способов защиты скриптов. пока не введеш правильно пароль скрипт не заработает т.к в нем не будут правильно прописыватся сериалы. это так, идеи на будущее
короче для этого нада сначала записать серийник гма. например на каком нить турнире прийти и покликать на стафф )))
дальше делается атака на этот серийник, и если ГМ есть в онлайне игрок сереет и появляется предупреждения что станеш криминал, так как ГМы всегда бегают синими.
я точто не помню но на какомто из украинских шардов это работало.
PS идея про динамические смены серийников это откровенно говоря бред.
например у нас при вайпе некоторых шмуток, сервак уходил в даун на пару минут. а вайп это всего лиш удаление некортоых обьектов.
если же переназначать серийники ВСЕХ обьектов то сервер может повиснуть на неопределенное время.
Единственный вариант это усторить чтото типа защиты в инжекте. тоесть перемешивать серийники с каким нибудь кодовым словом, которое менятся будет динамически. Кстати это один из способов защиты скриптов. пока не введеш правильно пароль скрипт не заработает т.к в нем не будут правильно прописыватся сериалы. это так, идеи на будущее