Плагин
EI_Plugin.zip ( 72.67кб )
Кол-во скачиваний: 6
добавляет в движок ПЗ большое количество изменений.
Часть из них настраивается в конфиге (файл EI_Plugin.ini).
Установка: распаковать архив в папку, где установлены Проклятые Земли.
Например, "C:\Program files\Проклятые Земли\".
Проверьте, что файл EI_Plugin.asi находится в той же папке, что и файл game.exe.
После этого настраивается EI_Plugin.ini - параметры см. ниже.
Если есть предложения по добавлению в ПЗ новых возможностей (в рамках разумного, разумеется), я бы с радостью их реализовал, но учтите, что вполне может оказаться, что предложенная вами идея невыполнима, тогда я просто скажу, что этого сделать нельзя.
Стандартный ответ на вопрос "почему нельзя это реализовать?" - нереальная сложность этого.
К примеру: нереально сложно сделать возможность езды на лошадях, сделать новые ячейки для доспехов (чтобы какие-нибудь щиты добавить) и тому подобное.
Тем не менее кое-что сделать все же можно, в качестве примера посмотрите список реализованного. Предлагайте свои идеи, вместе мы сделаем мир ПЗ лучше! Спасибо.
У меня есть много идей, вполне выполнимых, надо только вспомнить...
Ну например увеличить рост персонажа до отметки 120(выполнимо? думаю да)
свыше 120 при силе 15, голова персонажа залезает за границы, 120 это придел.
Для сингла, можно реализовать замену стартовой зоны, по умолчанию gz1g, что бы можно было стартовать, хоть на базе, да вообще на любой карте.
Плагин если сможешь, сделай его отдельно, хотя хз, можно и в этот добавить, но что б в нем было прописана именно оригинальная зона gz1g.
Ну да, это легко сделать, правда не очень ясно зачем... Понимаю силу/ловкость/разум, но их границы менять это уже чит... Будет время сделаю, т.с. спешл фо ю.
Насчет сингла, то менять gz1g на что-то другое попросту лишено смысла. В map.txt задается, какая локация соответствует названию gz1g.
Насчет роста. Ну ведь надо расширять границы, для чего тогда плагины?
Насчет стартовой. Это да, оно там прописано, но ведь если заменить там стартовое имя на bz1g то вылетает с ошибкой что не может найти gz1g.
А менять надо не gz1g а зону, которая ему соответствует - zone1 вроде.
Я это давно понял, но ведь геморойно, в Map.txt менять параметры зоны.
Да и развалины переименовывать, в другую зону, тоже не очень.
Я вот и предложил тебе зделать, такую возможность быстрой смены, для разработчиков сингла(если такие найдутся)(я все таки думаю что найдутся, я в том чесле). Ну а менять эту зону обычным игрокам, нет резона так как, я не пойму например зачем нужно делать стартовой зоной последнюю карту(карту с проклятьем), ведь это не MP что бы показать свою круть(пупсовасть).
В map.txt все равно придется задавать стартовую зону именем gz1g, т.к. нельзя расчитывать на то, что установлен плагин.
Плагин, конечно, замечательный жаль он не был выпущен раньше... Что касается добавления новых возможностей, я бы предложил усовершенствовать пк: добавить получение опыта за убийства и возможность поднимать лут других игроков, а не только свой. Это, несомненно, добавило бы сетевой игре... остроты
Большое спасибо создателю этого плагина. Очень хотелось бы поиграть за других монстров (ящеров, червелицых и т.п.). Так же неплохо было бы сделать что-то типа арены для пвп сражений: без мобов. А правила уже пусть устанавливают сами игроки на своих серверах (например, герой после смерти должен идти на базу, и т.п.).
Несколько вопросов, о возможностях плагина(о твоих возможностях).
1)Хотел спросить, можно ли реализовать сброс перка, возможно ли такое?
2)Можно ли продлить время бега, за счет уменьшения потребления маны во время бега?
2.1)Если да, то таким образом, можно совсем отменить расход маны, во время бега?
Kalessin, Вельхеор, над созданием полноценного пвп было много мыслей, и тут много проблем баланса:
1) Преимущество всегда на стороне сервера, особенно если если сделать легальную возможность лута чужих трупов. Так же сервер управляет паузой, что немаловажно при пвп.
2) Нужно сделать раздельное зрение, чтобы другие игроки на сервере были как мобы, т.е. когда их не видишь, то не видишь даже на миникарте.
Тем более что никто не отменял возможность бекапа своего перса, т.е. если тебя поубивают несколько раз, то убийца обогатится, а ты ничего не теряешь, т.е. дисбаланс.
Файтер,
1) аццки трудно, т.к. придется добавить новый элемент интерфейса для этого,
2) в принципе реально, только вот притчуствие, что это и так регулируется в ai.reg, не помню точно, мб это и не так,
2.1) тем более реально, т.к. в ПЗ это частично уже сделано (смотри godmode), остается только использовать.
P.S. насчет игры за монстров, то тут однозначный провал. За скелетов и орков было реально сделать благодаря их высокой схожести с людьми, все остальные монстры о-очень сильно отличаются. А арену можешь и сам сделать, Робин выложил замечательный редактор.
Сброс перков и изменение длительности бега затрагивают баланс весьма сильно. Так что лучше не трогать, если в этом нет надобности для нового мода.
К написанному Демозом о ПВП добавлю то, что оно всё равно будет сводится к пилеву на спец аренах с отдельным балансом и случайным респом игроков. тк для спонтанных сражений в ПЗ нет ни баланса(все моды рассчитаны на ПВЕ), ни обстоятельств(на карте в ПЗ мало что стимулирует к сражениям, к тому же в ПЗ такой контингент, что нападение без предупреждения равно куче ругани и бану. Ну или просто бану, если убитый покультурнее).
Demoth, можно договориться с другими игроками, чтобы сервер не участвовал в пвп, а был только судьей, которому участники сдают либо какое-то количество денег, либо шмот. По окончанию битвы судья распределяет эти деньги и шмот между игроками победившей команды. А насчет сбора чужих трупов- лично я против этого.
Проблема баланса действительно имеется. Но пк в том виде, в каком он есть сейчас, вообще лишен смысла. Я подразумевал не создание арены со своим балансом в отдельно взятом моде (хотя это, безусловно, можно сделать), а улучшение пк для его использования во всех модах и оригинале. Ну а вопрос игровой этики - это совсем отдельный вопрос.
Что касается игры монстрами - ведь не обязательно делать полноценных персонажей, достаточно, чтоб монстры были с текстурами. Для этого нужно переместить ресурсы из соответствующих контейнеров, изменить датабазу, и т.д. Можно написать мануал по "текстурированию" монстров, и пусть все желающие играют ими. На здоровье! По мне так игра скелетами-орками просто дурака валяние, но пусть каждый решает сам за себя.
Kalessin, в игре за монстров куча багов с анимацией, и к плагину это уже не имеет отношения. Если хочешь, поковыряй anm и adb файлы, попробуй собрать играбельную модель какого-нибудь монстра.
Я и не утверждал что это имеет отношение к плагину. Это были мысли вслух, поскольку эта тема была уже затронута. Вообще играть монстрами несерьезно, разве что шутки ради. Или просто из исследовательского интереса к ресурсам игры.
Ахах, да играть вообще не самое серьезное дело. Я лично делал игру за монстров по двум причинам:
1) интересно,
2) нужны были скелеты лучники и скелеты-маги, а раз я их очеловечил, то почему бы их не сделать играбельными.
Что ж, хорошо Правда, непонятно чем так страшны персы с пустыми никами
Прежде всего хотел бы выразить благодарность Demoth и Bargest за замечательный плагин!
У меня возник вопрос можно ли увеличить вокруг игрока "радиус жизни AI" (расстояние на котором мобы что либо делают)?
Дело в том что в некоторых написанных мною квестах для сетевой игры NPC должны действовать на достаточно удалённой дистанции от персонажей (а именно перемещаться сражаться и.т.п.). Можно ли увеличить эту дистанцию с помощю плагина или правкой конфигов игры?
В конфигах, к сожалению, данный параметр задать нельзя. В принципе, решить эту проблему можно. Посмотрим, может быть реализуем в новой версии плагина.
Я тоже проводил эксперимент подобного рода. Своему тестовому персонажу установил параметр "зрение мертвеца" радиусом 3000 (большее значение не срабатывает почему то). На маленьких картах этого хватало на 90-100% всей территории, на средних 50%, и на гигантских порядка 25%. Этим персом я тестирую все свои квесты и вроде бы FPS сильно не падает. Падает только если (при активированной камере Чейза) очень высоко поднять камеру. Машина у меня в принципе тоже не слабая 2,6ГГц 8 ядер, GTX 580 1,5ГГб видеопамяти, 8 ГГб оперативы. Интересно как это будет работать без отрисовки монстров на карте, но с увеличенным радиусом?
У меня возник ещё один интересный вопрос. Можно ли сделать так что бы в сетевом персонаже сохранялись его квестовые предметы? На данный момент они удаляются при выходе с сервера.
Мы думали над этим. Это реализуемо, но добавлять скорее всего не будем, т.к. есть другая задумка, компенсирующая эту - сохранять набор переменных в персонаж. Например все переменные с префиксом static_. Тогда при следующем заходе в игру, можно посмотреть на значение переменной и в зависимости от него дать игроку квестовый предмет или не давать.
Мы думали перенести всю базу на карту, в первую очередь в целях античита. Однако это чрезвычайно тяжело. Слишком большие различия между брифинг-зонами и обычными. Так что этого, скорее всего, не будет.
Самый эффективный и самый простой способ, это переименовать все чит-коды, чтобы название каждого или выборочного (на ваше усмотрение) чита состояла из тех символов которых не настучишь на клавиатуре, к примеру godmod - ☼☺₡₪₹ ۩ (или попроще ©®§¥«¦»).
В принципе, можно ограничится всего одним нестандартным символом в слове, и читерства - нет.
И переписать все стандартные ПЗшные скрипты, чтобы пзшка работала? Ведь пзшка сама все скриптовые функции использует. Тем более, что это обходится без особых проблем.
Я не программист. На сами процедуры (какое действие то или иной скрипт производит) повлиять не должно\не получится, повлияет всего лишь на Мобы. Но, ведь можно затронуть только мастер-чит, он то не где вроде не используется, в мобах скрипты без него работают?
Нет никакого "мастер-чита". Те самые "читы", вводимые в консоль, в абсолютном большинстве (99.9999%) являются вызовами функций скрипта. Обрабатываются они тем же движком, что и скрипты в mob'ах. Если изменить имена функций в движе, то перестанут работать все скрипты, написанные нивалом. Игра, в лучшем случае, будет висеть без движения, хотя скорее всего просто слетит с ошибкой. А обойти это не так уж и сложно, команда exec позволяет подавать на вход любой текстовый файл, который может содержать "читы" с совершенно любыми символами.
А если под "мастер-читом" имеются ввиду эти самые спец команды (thingamabob, exec, give...) - то ввести их тоже не трудно: либо используя Alt+NumPad, либо (если консоль не съест) - маленьким патчиком, который будет подключать к игре внешнюю консоль, переваривающую любые символы. Такой патч делается элементарно.
Через внешнюю консоль опять же можно вводить совершенно любые последовательности байт, и еще проще с использованием программируемой клавиатуры/мыши с макросами.
Да и вообще, скриптовые функции можно использовать и в обход консоли, просто вызвав движок, передав ему любую строку.
Понятно.
Я не ошибусь если скажу, что плагины не очень подходят на роль античита, в первую очередь из-за своей способности замещать\перекрывать функции ПЗ - ограничивая злостных читеров(которых очень много), что само по себе, не идет на пользу плагину и тем самым популярность плагина упадет? Если нет, то читеры "настукивают" скрипты без плагина, убирая его в сторонку, а потом снова ставят на место и прибывают в ПЗ как ни в чем не бывало.
- "Мы нашли решение"
Данное решение будет затрагивать только онлайн игр и\или, соло тоже затронет? Если под этим "решением" подразумевается онлайн отчетность в реальном времени, то читеры будут временно блокировать доступ в интернет и пользоваться беззащитностью ПЗ.
Нет, просто персонажи, созданные под плагином, будут несовместимы с персонажами, созданными снаружи. Под плагином читов нет, а без него персонаж просто не загрузится. Ну и еще одна фишка, более важная, которую пока раскрывать не буду.
Приятно видеть, что работа над плагином продолжается. Защита от читов это правильно. Интересно, а если читак додумается отредактировать датабазу(поставит себе крутую снарягу и кучу опыта при старте), тогда что? Ещё хотелось бы уточнить удалось ли реализовать увеличенный радиус жизни AI и сохранение переменных в сетевого персонажа?
Так или иначе, меня это не коснется - играю я только соло, плагин мне для игры соло не необходим, и хорошо, что не замена рас...
Возможно ли такое: Играя соло взять с собой нескольких персонажей из своего списка (при выборе сетевой игры), чтобы играть ими как в сингле, но в сетевой игре, почему бы так не сделать?
Потому что уж если за законностью прокачки сетевого персонажа как-то следить можно, то за сингловым следить невозможно в принципе.
Играть в сетевую игру несколькими своими персонажами, это же смак! Как, такое не под силу самым продвинутым местным програмистам? А каму нужна слежка? Я играю как мне нравится, с бредет мне сделать нубского чита - сделаю, найдет ностальгия создам нового - пройду все аллоды соло как задрот.
Demoth, можешь подсказать Mirilledu, если есть такая возможность, как именно
можно при добавлении в базу к примеру боевого каменного меча и других
вещей, вернуть старые без модовские лица при выборе персонажа, не такие как
еи или хг, форма лица не округлая, а та которая идет стандартная- без мод.
Можно ли делать такие изменения в Figures?
Тайсон, для этого необходимо распаковать unhuma(fe).bon и .mod оригинальные и ЗвА-шные.
И из архивов ЗвАшных перенести все файлы с именем basesword* в оригинал.
После этого обратно пакуете измененный оригинал и вуаля. На самом деле не обязательно все basesword-ы переносить, но какой конкретно вам понадобится я не знаю.
P.S. В будущем задавайте аналогичные вопросы в какой-нибудь другой теме или на крайняк в ЛС.
Ок спасибо за подсказку.
Охренеть!
Demoth, классно, что дорабатывается плагин.=)
Вообще нет желания с нами ПЗ на новом движке попилить?(мы живы, мы те самые, что на NeoAxis делаем, просто работа иногда неспешно движется, а показать сырые скрины можем не всем, вернее всем не можем, но можем если не захочем - стесняемся, короче=)) )
MageNuada, Bargest добавил всё это еще очень давно, просто это не выкладывалось в публичный доступ.
Честно говоря, лично у меня желания не особо много этим заниматься.
Но я очень рад, что вы еще живы и продолжаете работу над переносом ПЗ на новый движок.
Нехороший человек несколькими постами выше в анонсе не описал функции скрипта, потому что ему лень.
Вот полный гайд.
GetPlayerOfUnit(unit: object) : float
- Получить номер плеера для юнита (если имеется; для всех бесплеерных юнитов будет 0)
GetUnitExp(unit: object) : float
- Получить опыт юнита
GetArmor(unit: object, part: float, id: float) : float
- Получить броню юнита; part - часть тела: 0-5 соответственно голова-торс-руки-ноги. -1 - общее.
id - тип брони индексом 0-6 (impaling, slashing, crushing, termical, chemical, electrical, general)
GetObjectStringID(object) : string
- Получить ID объекта как строку.
FloatToStr(float) : string
- Перевести число в строку.
StrToFloat(string) : float
- Перевести строку в число
StrCat(string, string) : string
- Сложить строки.
StrLen(string) : float
- Длина строки.
Sin(float) : float
- Синус
Cos(float) : float
- Косинус
Pow(base : float, pow : float) : float
- Степень (base ^ pow)
DistancePointPoint(x1: float, y1: float, x2: float, y2: float) : float
- Расстояние между точками
NearestUnit(x: float, y: float, r: float, flags: float) : object
- Ближайший к точке (x,y) юнит. Поиск ведется в радиусе r.
Если flags = 1, то учитываются одушевленные объекты (люди, монстры и т.д.).
Если flags = 2, то учитываются неодушевленные объекты (дома, деревья и т.д.).
Если flags = 3, то учитывается всё.
UnitsNearPoint(x: float, y: float, r: float, flags: float) : group
- Получить список юнитов возле точки. Правила аргументов как для NearestUnit.
InvokeScript(script: string, count: float)
- Выполнить строку script, в качестве скрипта count раз.
В script используются одинарная кавычка вместо двойной для записи строк.
Пример script: "WorldScript(ConsoleString('Hello!'))".
Также в плагине частично пофикшены номера плееров, поэтому многие скрипты теперь можно применять не только к нулевому плееру (серверу). То есть nPlayer в параметрах функций - реальный номер игрока. Чтобы получить номер игрока, используйте GetPlayerOfUnit (глобально сохранять номер плеера нельзя, т.к. иногда он может меняться).
А нужно что-то настраивать что бы работали новые скриптовые функции?
Пробовал юзать их через консоль: Unexpected token 'getplayerofunit'.
Пробовал учитывать регистр, не помогло.
Спасибо, забыл, что не все функции вызываются через "@"
He is currently : GiveUnitSpell(Unit: object, sSpell: string)
Missing: DeleteUnitSpell(Unit: object, sSpell: string)
Used commands to the mission (boxes), but useless for multiplayer:
GiveItem(nPlayer: float, Item: string)
GiveMoney(nPlayer: float, Money: float)
It lacks something of the likes of:
GiveUnitItem(Unit: object, Item: string) [for mobs or player]
GiveUnitMoney(Unit: object, Money: float) [for mobs or player]
What made it possible to also add to the mobs of these values and the box would also give things a player who opened the box, and not just only the host.
GiveUnitExp(Unit: object, exp: float) - leveling build missions, such a feature would be most welcome to the difficult mission.
I miss a command such as
DeleteUnitItem(Unit: object, Item: string)
DeleteUnitArmor(Unit: object, part: float)
DeleteUnitWeapon(Unit: object, nWeapon: float)
DeleteUnitQuickItem(Unit: object, nQuickItem: float)
But also:
GetUnitArmor(Unit: object, part: float) : string (part : 0 to 5 parts)
GetUnitWeapon(Unit: object, nWeapon: float) : string (nWeapon: Position 1,2,3,4)
GetUnitQuickItem(Unit: object, nQuickItem: float) (nQuickItem: Position 1,2,3,4)
GetUnitSpell(Unit: object, nSpell: float) (nSpell: from 1 to 8)
GetUnitNickName(Unit: object) : string
GetUnitStrength(Unit: object) : float
GetUnitDexterity(Unit: object) : float
GetUnitIntelligence(Unit: object) : float
GetUnitMoney(Unit: object) : float is only GetMoney(nPlayer : float) : float which only to the host
GetUnitSpellDamage(Unit: object, nSpell: float) : float
GetUnitWeaponDamage(Unit: object, nWeapon: float) : float
GetUnitSpeed(Unit: object, nSpeed: float) : float (nSpeed = 1 (Run), 2 (Walk), 3 (Sneak), 4 (Crawl))
GetUnitLocomotion(Unit: object) : float
GetUnitActions(Unit: object) : float
Sorry about that, so that much.
This is just my suggestion
And I'm sorry for my english xD
Regards, DemoNCS.
I have a few ideas to change EI Addon:
1.Add more than 6 colors, because other players always have a white
2.Further reduce the size of the avatar, because the overlapping.
3.Add in option download mob files(if it is wise) and save to a selected folder.
4.Repair Administrator panel to quick copy our characters.
5.Expand the field to display the name of mods.
6.Improve the list of servers to choose without scrolling
That all for now.
Zak.
DemoNCS:
Troubles with not 0 player already fixed.
This functions sometimes can be useful:
GetUnitStrength(Unit: object) : float
GetUnitDexterity(Unit: object) : float
GetUnitIntelligence(Unit: object) : float
GiveUnitExp(Unit: object, exp: float)
Even this:
GetUnitSpellDamage(Unit: object, nSpell: float) : float
GetUnitWeaponDamage(Unit: object, nWeapon: float) : float
GetUnitActions(Unit: object) : float
GetUnitSpeed(Unit: object, nSpeed: float) : float (nSpeed = 1 (Run), 2 (Walk), 3 (Sneak), 4 (Crawl))
GetUnitLocomotion(Unit: object) : float
Speed and locomotion in names probably must be switched.
But honestly, these functions are questionable. Of course it can be used but in some rare situation.
DeleteUnitItem(Unit: object, Item: string)
DeleteUnitArmor(Unit: object, part: float)
DeleteUnitWeapon(Unit: object, nWeapon: float)
DeleteUnitQuickItem(Unit: object, nQuickItem: float)
GetUnitArmor(Unit: object, part: float) : string (part : 0 to 5 parts)
GetUnitWeapon(Unit: object, nWeapon: float) : string (nWeapon: Position 1,2,3,4)
GetUnitQuickItem(Unit: object, nQuickItem: float) (nQuickItem: Position 1,2,3,4)
GetUnitSpell(Unit: object, nSpell: float) (nSpell: from 1 to 8)
GetUnitNickName(Unit: object) : string
Zakx95:
1, 4, 5 - good
2 - already reduce for 12 players.
3 - terrible idea. If you want play together use the same mod.
6 - what do you mean?
6.Selecting the main server list without scrolling. You can see all the servers immediately.
Вышла новая версия плагина.
Механизм работы с новым мастер-сервером был основательно переделан.
Официальный мастер-сервер будет использоваться по-умолчанию. Плагин будет автоматически переключаться на новый мастер-сервер, если официальный перестанет работать.
Качать, как обычно, из первого сообщения:
http://www.gipat.ru/forum/index.php?showtopic=3513
последня версия плагина не отображает сервер ни в вашем мастер сервере ни в ниваловском.
плагин от 19 01 работает нормально - отображается везде.
mukas, возможно ты забыл снять галку "закрытый сервер". Или же у тебя в папке с ПЗ есть бекапы старых версий EI_Plugin-а (какой-нибудь EI_Plugin_1.asi). Их нужно удалить, т.к. они будут конфликтовать с новой версией.
И вновь новая версия плагина. Последняя, которую нужно скачать самостоятельно.
В ней исправлены некоторые стандартные вылеты ПЗ, а так же добавлено автообновление плагина при запуске игры.
Качать отсюда:
http://www.gipat.ru/forum/index.php?showtopic=3513
Во-первых , будет ли реализовано в плагине создание персов одним щелчком (без выбора характеристик по заранее определённому шаблону , а через выбор одной из 3-х специализаций классов во всплывающем контекстном меню)? Это раз. Во-вторых , будут ли добавлены магические жезлы воинам и сохранится ли возможность пройти сетевуху одним персом? Это два.(Лечиться воином в модах ХГ совершенно невозможно , из-за его низкого разума получается очень большой расход маны). В-третьих , будет ли поддержка Без Мода и EI 303 на плагине? Очень хотелось бы знать! (Ненавижу моды ХГ с самого их создания , во-первых ,из-за шаблонной системы прокачки перков без одного действия выбора , во-вторых , из-за отсутствия мультиклассов). А вообще , борьба с читерством это не есть хорошо , я бы предложил убрать только злостные читы ( такие , как парализация на 1000 секунд и сверхбыстрый бег в сочетании со сверхмалым размером перса , плюс заклинания на поле действия , на офигительную площадь ) , а остальные оставить. Кому надо - те будут играть у себя на сервере , а читеров банить. По-моему , вы , господа , фигнёй страдаете , кто захочет играть с читами - тот и в локалке создаст игру , или через Tunngle. А вы сейчас наплодите кучу несовместимых плагинов , и дело на том и заглохнет.
Что я ещё бы хотел знать - с плагином сохранять файлы сетевой игры будет возможно? То есть, выцепить файл перса и забэкапить его , с тем , чтобы штрафа большого не было в случае , если убьют , или чтобы предметы не потерять ? Я бы согласился играть без читов , при условии , что все полученные предметы будут сохраняться и после смерти перса , плюс при условии , что штраф опыта будет в 10 раз меньше или его не будет вообще.
Кстати , есть у меня идея , как сделать баланс интереснее: сделайте так , чтобы при телепортации перса за пределы зоны видимости атакующего моба , моб терял его из поля зрения и переставал агриться на игрока до момента , когда игрок будет замечен им повторно. Это было реализовано в Аллодах , почему бы не сделать это и здесь?
Юрий Котов написал в группе ВК , что "вылеты были в старом плагине , в новом они исправлены" - что-то вроде этого , хотя у меня вылеты как были , так и остались , после переустановки плагина на новый (в папку с игрой). Кто-нибудь может подсказать подробнее про падение игры с данным плагином на Семёрке 64 бита в связи со сворачиванием окна игры , и при выходе другого игрока с сервера? Да , кстати , насчёт пожертвований для разработчиков - готов жертвовать 1000 р в год персонально тому человеку/команде которая держит альтернативный мастер-сервер , особенно , в случае , если они не являются членами клана "Хонест Груп". На разработку модов не дам ни копейки , ХГ-дерьмо , без баланса , и с урезанными возможностями игрока , плюс невнятное создание перса с перками по шаблону , которое , к тому же , сжирает весь начальный опыт перса. Впрочем , если они всё-таки Хонесты , то могут использовать эти деньги как им захочется , я просто сообщаю , что на моды денег не даю принципиально. Номер кошелька , или ссылку на тему с номером кошелька дадите в этой теме? Хотелось бы кинуть деньги именно тому , кто Мастер-серв держит.
Miklas, можешь сделать скриншоты после вылетов? И насколько часто они вообще происходят?
Могу , это очень просто , только скрины будут не из окна игры , а с рабочего стола с ошибкой. Вылеты происходят , как только сворачиваешь окно сетевой игры , как только разворачиваешь свёрнутое окно обратно.
Добавил: Miklas [mergetime]1425459925[/mergetime]
Я сделал лучше - вот репорт об ошибке!!
Имя события проблемы: APPCRASH
Имя приложения: Game.exe
Версия приложения: 0.0.0.0
Отметка времени приложения: 3abf0db3
Имя модуля с ошибкой: StackHash_257d
Версия модуля с ошибкой: 0.0.0.0
Отметка времени модуля с ошибкой: 00000000
Код исключения: c0000005
Смещение исключения: 15977959
Версия ОС: 6.1.7600.2.0.0.256.1
Код языка: 1049
Дополнительные сведения 1: 257d
Дополнительные сведения 2: 257d8f504c598531c429b24cac277ae5
Дополнительные сведения 3: d5eb
Дополнительные сведения 4: d5eb780bbb250888f391ffff6b3b8dff
А ошибка была "Can't flip Surface!". Я нажал Принт Скрин , но что-то принтскрин не вставился в буфер.
Miklas, а без плагина этой проблемы не было?
http://radikal.ru/fp/a7920feec8724cf390f3850dd8bcd0f9
Вот надпись , слово "render" забыл. У меня такое чувство , что проблема связана не с плагином , а с новым Мастер-сервером. Да , у меня ещё роутер и антивирус стоят. Без плагина , на основном Мастер-серве , игра висла при сворачивании моего окна игры у других игроков , у меня не вылетала.
Miklas, можешь проверить, будет ли происходить эта ошибка, если ты перенесешь EI_Plugin.asi в другую папку временно?
А к Мастер-серверу присоединение будет происходить? Счас проверю! Вылазит ошибка. Но уже другая , "No spell prototype" , тоже при сворачивании окна . Может , это из-за датабазы Калессина происходит , он сказал , что исправлял вылеты с помошью неё , вот я себе её и поставил.
Miklas, значит дело не в плагине, и как следствие - не в новом мастер сервере, т.к. он без плагина не работает. Очень может быть, что все проблемы у тебя как раз из-за датабазы Калессина, потому что за довольно продолжительное время ты единственный, кто жаловался на слеты из-за плагина. У осталтных после обновления всё работает как надо.
Счас буду восстанавливать датабазу из бэкапа , посмотрим что к чему.
Добавил: Miklas [mergetime]1425465317[/mergetime]
С первого раза не выкидывает стабильно после сворачивания. Со второго раза иногда выкидывает , хотя может зависеть от времени , которое прошло после сворачивания окна.
Miklas, в общем постараюсь разобраться с вылетами, хотя полезной информации сейчас крайне мало, которая бы помогла исправить проблему.
К созданию совместимой базы для безмода я не имею никакого отношения.
http://www.gipat.ru/forum/index.php?showtopic=3514
Но я вполне мог порекомедовать ее для лечения вылетов связанных с заходом на сервер безмода игроков с модом. При этом надо понимать, что база обеспечивает совместимость (причем, не 100%) только с версией 3.6 и с другими версиями (как и другими модами) может быть совместима лишь частично либо вовсе несовместима. Описанные ошибки говорят о том что игра работает нестабильно в среде W7*64 на конкретном железе, причем одна из ошибок связана с рендером. А это никакого отношения к датабазе не имеет. Тем более, что до установки "плагина", судя по сообщению, все работало корректно. Причину нестабильности стоит поискать методом исключения: проверить работу "чистого" безмода, затем только с совместимой базой, после чего с "плагином" и оригинальной базой. Сравнение будет наиболее достоверным, если со времени стабильной работы пз ничего не поменялось - не установлена заново ОС, новые программы, другие версии драйверов и т.д. После чего уже делать выводы.
Эээ, причём тут плагин, какая-то ошибка из-за конфликта при отрисовке 3д - вполне возможно, что какое-то ещё приложение, использующее 3д отрисовку, К примеру, даже простая опера вин 8 тоже вроде является приложением, использующим директХ.
Miklas, тогда лучше не стоит. Потрать на что-нибудь более важное.
Да нет , стоит , дело важное для меня! Пацан сказал - пацан сделает!
Miklas, дело твоё, разумеется, родина тебя не забудет.
Но 1к это всё же довольно крупная сумма, чтобы тратить её на игру. Сама ПЗ столько не стоила в своё время. Я и без пожертвований продолжу оплачивать сервер, т.к. обитаю тут всё время, да и 100р/мес для меня не столь большая сумма денег. Так что за существование мастер-сервера переживать не стоит.
В общем смотри сам, пожертвование - дело добровольное.
забавно, первый раз вижу живого донатера, желающего забашлять на кошелёк разработчику чего-либо %).
У меня отображается новый мастер-сервер, если ставлю только сам плагин без
файла- параметры конфигурации, при переходе на обычный старый мастер-сервер
я просто удаляю плагин и юзаю обычный мастер, когда он работает.
Еще всем советую установить фикс от вылетов на базе, если заходят с других модов к вам на серв. Спасибо Demothu, очень полезная штука.
Тайсон, нет смысла удалять плагин, если работает обычный мастер-сервер.
Я специально сделал автоматическое переключение между мастер-серверами.
Т.е. если обычный работает, то он и используется, если нет - то новый.
Фикс от вылетов тоже встроен в плагин и ставить его отдельно не нужно.
В том то и дело что не работает, а вот без параметров конфигурации пашет отлично.
Тайсон, ну вот об этом и надо говорить. Это же проблема, её надо исправлять, а не давать вредные советы.
Таки да это проблема, значит я правильно написал за нее?
Тайсон, пока не знаю. Мне не удаётся её воспроизвести - всё работает нормально.
Перезалил плагин в первом сообщении. Попробуй ещё раз.
Вот теперь и с параметрами конфигурации, новый мастер отображается,
но проблема такая была, в чем там дело было, сказать не берусь.
Тайсон, поживем - увидим. Может когда-нибудь она снова проявится и удастся разобраться в чем было дело.
добавь в плагин логирование всякой полезной для отладки инфы в какой-нибудь текстовик - мне когда приходилось пилить самопальный инсталлятор очень помогло в своё время когда оно не работало или работало но не так как надо на юзерских компах при том что воспроизвести проблему у себя не получалось. Приходит юзер с жалобами на форум, я ему "такой-то-файлик.log в студию плз", файлик аттачится и уже можно курить в чём дело )).
Ребят , не в курсе , почему на Ингосе появляются просветы между кусками текстуры стволов деревьев? До того , как старую базу восстановил , такого не было , как только заменил датабазу на самую старую версию ( без модификации Калессина , которую он сам не делал , только перекинул мне ) , то на стволах деревьев на Ингосе появились ощутимо заметные швы , через которые просвечивают текстуры окружающего ландшафта ( конкретно на Ингосе - снежная текстура поверхности позади дерева) .
Доброго времени суток! Хочу задать пару вопросов разработчикам плагина.
1) Будет ли реализована функция сохранения переменных в сейвах? Мы уже обсуждали это вопрос ранее и Bargest писал что это добавлено и работает. Если да, то как этим пользоваться?
2) Снова задам вопрос можно ли увеличить радиус жизни АИ (дистанция на которой боты занимаются своими делами)? Очень прошу реализовать данную функцию реально нужна! Если все же сможете реализовать, то добавьте в конфиги плагина возможность редактировать это значение.
З.Ы. эта функция "есть не просит" и кому она не требуется для мода, то он может не трогать значение по умолчанию. Я к тому что она не увеличит количестов лагов в других модах и никому не навредит.
Так же хочу внести следующие предложения:
Диалоги на картах. Ниже привожу примеры новых скриптовых функций:
AddDialog( nPlayer : float , dialog : string , aVar : float ) , где nPlayer - номер игрока, dialog - имя диалога, aVar - вариант ответа (может принимать только целочисленные значения, по умолчанию устанавливать на 0).
Скрипт добавляет пременную которая хранит в себе значение float выбранный вариант диалога (кнопку нажатую во всплывающем окне на манер обучающих экранов ПЗ).
ShowDialog( nPlayer : float , dialog : string ) , где nPlayer - номер игрока, dialog - имя диалога.
Скрипт выводит на экран диалоговое окно с вариантами выбора. Сами диалоговые окна создаются отдельно и хранятся в ресурсах игры (как и обучающие экраны). После показа экрана диалога игрок должен выбрать какой либо вариант ответа, нажав соответствующую кнопку. Номер кнопки нажатой в окне соответственно будет присваивать значение aVar в переменную dialog (1,2,3 и.т.п.).
GetDialog( nPlayer : float , dialog : string ) : float , где где nPlayer - номер игрока, dialog - имя диалога.
Скрипт возвращает значение выбранного диалога (по сути номер нажатой кнопки).
DelDialog( nPlayer : float , dialog : string ) , где nPlayer - номер игрока, dialog - имя диалога.
Удаление переменной диалога.
Прочие полезыне скрипты:
GetGender( GetUnitOfPlayer( nPlayer : float , nUnitInCurrentParty : float ) ) : float Возвращает значение 1 или 2 male или female соответственно. GetUnitOfPlayer стандартная функция скриптового языка для идентификации игроков.
GetPose( GetUnitOfPlayer( nPlayer : float , nUnitInCurrentParty : float ) ) : float
Возвращает позу персонажа, имеет 4 варианта 1 - лежит, 2 - сидит, 3 стоит, 4 бежит.
Heal( unit ) - убрать переломы у юнита игрока или непися. Unit может быть GetObject() либо GetUnitOfPlayer().
Интересно можно ли помимо атаки реализовать какое либо действие с неписем скажем с какой нибудь зажатой кнопкой. Например: Использование предметов на нпс (как ключи на рычаги). Например удерживая CTRL+(1,2,3 и.т.п.) использование соответсвтующего итема на непися. Ну или мышью, но с зажатым CTRL.
В принципе еще хотелось бы увеличить количество магазинов более 5. И если получится добавть скрипт входа в магазин прямо на игровых картах. Например у бродячего торговца.
Уже не помню как вызывать экран магазина. Но точно помню что давным давно эксперементировал с этой функцийей на игровых картах и при вызове этого скрипта ничего не происходило.
День добрый.
Спасибо за развернутый ответ.
Из из предложеных мной идей реально очень нужен только увеличеный радиус АИ, остальное просто было бы очень полезно, но обойтись можно. Зачем мне нужны дополнительные магазины и диалоги думаю объяснять не надо, а вот с GetGender, GetPose и Heal поясню.
Я реализовал довольно неплохо дополнительные квесты на картах. В журнале появляется дополнительные задания, а сценки взятия и сдачи квеста анимированы. Вобщем не хватает только окон диалога, хотя бы с вариантами Принять/Отклонить.
Для чего мне GetGender: дело в том что у женских и мужских персонажей анимации имеют разные номера, а скрипта определяющего гендер нет в природе. Соответственно я не могу полноценно анимировать в диалогах персов игрока. И это лишь один примеров применения этой команды.
GetPose мне нужен для квестов с последователями. Если бы была такая команда, то можно было бы улучшить АИ последователя (например если персонаж игрока присел, то и непись тоже присел и его труднее заметить вражинам). На данный момент я уже сделал так что болванчики при следовании за персонажем переходят с шага на бег и обратно, если отстанут. Так же непись последователь в моем моде никогда не запрет персонажа в тупике. Достаточно просто близко подойти к нему и он выпустит персонажа игрока из тупика. Это бывает порой полезно например в пещерах если у игрока нет феерверка.
Что до Heal, была идея сделать на больших картах "лагеря для отдыха" места которых персонаж разводит костер и садится возле него на отдых, соответственно параметры персонажа востанавливаются. Хилка в случае с переломами увы не поможет, приходится презаходить на карту. На огромных картах топать к выходу довольно долго, а подобный вариант решения проблемы, как мне кажется, был бы очень кстати.
Доброго времени суток, товарищи программисты !
Вопрос №1. Каким образом можно создать собственные скриптовые функции/процедуры, вызываемые консольно/в скрипт-модуле карты ? Например, как это реализовано в вашем плагине ?
Вопрос №2. В последних версиях плагина реализована раздельная видимость, для группы игроков. Если можно без рекомпиляции это отключить, то как ?
P.S. в ПК режиме, кроме урона по своим ничего не должно быть.
Вопрос №3. Возможно ли попросить у вас исходники библиотеки (EI_Plugin.asi) ? Или хотя бы пояснения, каким образом реализована работа с памятью/ресурсами игры ?
Добрый вечер.
Благодарю за развёрнутый ответ !
Всем привет!
Есть ли какие то подвижки в разработке плагина? Ждать ли новых версий или уже реализовано все что возможно? По прежнему актуальны вопросы по поводу реализации сохранения переменных в персонажа и радиуса жизни АИ.
Devastator, на данный момент работа над плагином не ведется, но это временно, т.к. я занят другим проектом, связанным с ПЗ. Сохранение переменных в персонажа скорее всего будет в новой версии.
На счёт того, когда ждать новую версию - надеюсь, что в этом году.
Напоминаю про баг торговца
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)