Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
Люди, помогите кто-нибуть со скриптами плиз.
Как в них можно делать циклы, условия и прочую нелинейность?
И как работает команда @addunittoserver?:work:
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
Достаточно емкий у тебя вопрос. Я не могу на рассказ тратить много времени, тем более что ты бродяга.
Кратко будет так…
AddUnitToServer( NameUnitMap : string , NameUnitRes : string , NameUnitControl : string , x : float , y : float , z : float )
Устанавливает юнит-объект: NameUnitRes на текущую карту в точку (x,y,z) из базы данных ресурсов игры. Объект будет иметь внутреннее имя: NameUnitMap и имя, отображаемое в инфоокнах: NameUnitControl. Большие и маленькие буквы внутреннего имени: NameUnitMap не различаются. Системная функция преобразования имени: (NameUnitMap : string) в код (idUnit : float) представляет все строчные символы имени как прописные - к верхнему регистру. Не рекомендуется возвращать код: idUnit от объекта добавленного на карту командой: AddUnitToServer с помощью функции: GetObjectId. Полученный на карте объект командой: AddUnitToServer будет иметь код - 10 символов, а команда: GetObjectId работает с ошибкой с десятизначными силами. Команда правильно работает только с объектами прописанными в таблице NPCs, так как добавленный объект будет иметь контейнер с переменными переменными совойств персонажа игрока, со всеми дополнительными параметрами, навыками и умениями. При этом, если имя: NameUnitMap совпадает с именем файла в таблице ресурсов: texts.res (textslmp.res) с предиктором: "pers", например, "Nalo", и оствлен параметр: NameUnitControl пустым, то из базы данных локализации: texts.res (textslmp.res) будет взято имя имя этого объекта. Например, Сингл, ввести в консоли команду использование расширенных консольных команд, затем следующую строрку: @AddUnitToServer( "Nalo","Human Hadagan Pretty","",GetX(GetLeader()), GetY(GetLeader()),0)
Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
Во-первых, спасибо.
Во-вторых, я не бродяга, а зарегистрировался.
В-третьх, я бы хотел чем-нибуть вам помочь, хотя думаю, что тут и без меня справятся сами (не очень великий я программер да и VB мало кому нужно, но все же...).
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
CAHEK7. пожалуйста. Помогай, конечно. Мы сами программисты «не очень»
Вот сейчас нам нужны идеи по менджеру модов. Мы к стартеру делаем программу, которая будет совмещать моды игроков с ПЗ, чтобы эти моды уживались друг с другом и со стандартной игрой. А то ведь после установки мода нужно игру переустанавливать, чтобы снова поиграть в стандартную игру.
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
Ну да..., извини, какой же ты бродяга, ты неизвестный. Кстати, а почему неизвестный?, это у нас такие имена к новичкам?
Мдя...
:drug:
Сообщений: 1,100
Тем: 157
Зарегистрирован: Feb 2002
Цитата:Ну да..., извини, какой же ты бродяга, ты неизвестный. Кстати, а почему неизвестный?, это у нас такие имена к новичкам?
Мдя...
:drug:
На новом форуме уже придуманы новые ранги.
Это будет сюрпризом.
Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
Можете кинуть MOB Reversing Tools или хотя бы один mob файл расшифрованный?
Очень хочется посмотреть что там внутри...
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
CAHEK7
Что внутри мобов можно будет посмотреть в нашем проекте "Энциклопедия ПЗ". Этот проект тестировался в прошлом году, но пока мы его заморозили, из-за большого количества неточностей и «белых пятен». Сейчас мы знаем о ПЗ гораздо больше, чем на момент "заморозки". Непосредственно над "Энциклопедией ПЗ" мы пока не работаем. Сейчас мы заняты проектом «Паргелий».
Сообщений: 1,100
Тем: 157
Зарегистрирован: Feb 2002
Цитата:Можете кинуть MOB Reversing Tools или хотя бы один mob файл расшифрованный?
Очень хочется посмотреть что там внутри...
В ПЗ версии 1.06 есть незашифрованные файлы: zonemainmenunew.mob и zone20.mob
В демо-версии все файлы незашифрованные.
Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
Спасибо
пошел я разбираться
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
Сообщений: 159
Тем: 7
Зарегистрирован: May 2002
У меня тоже вопрос
Как мне задать дипломатию созданию на карте не по номеру группы а по личному ИД создания? :upset: Ну чтобы задать ее только для одного а не для целой кучи?
Three Rings for Elven-kings under the sky,
Seven for the Dwarf-lords in their halls of stone,
Nine for Mortal Men doomed to die,
One for the Dark Lord on his dark throne
In the land of Mordor where the Shadows lie.
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness
bind them
In th land of Mordor where the Shadows lie.
Сообщений: 159
Тем: 7
Зарегистрирован: May 2002
Ну что? Никто незнает? :drug:
Three Rings for Elven-kings under the sky,
Seven for the Dwarf-lords in their halls of stone,
Nine for Mortal Men doomed to die,
One for the Dark Lord on his dark throne
In the land of Mordor where the Shadows lie.
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness
bind them
In th land of Mordor where the Shadows lie.
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
Сначала переопредели дипломатическую группу для юнита. А потом для этой группы уситанови нужную дипломатию. Всего дипгрупп может быть от 32 (0-31).
Сообщений: 159
Тем: 7
Зарегистрирован: May 2002
Пасиба , но есть махонькая проблемка - я понятия не имею как установить дипломатическую группу группу для юнита...
Three Rings for Elven-kings under the sky,
Seven for the Dwarf-lords in their halls of stone,
Nine for Mortal Men doomed to die,
One for the Dark Lord on his dark throne
In the land of Mordor where the Shadows lie.
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness
bind them
In th land of Mordor where the Shadows lie.
Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
можно сделать так:
@setplayer(getobject(id),n)
n-номер игрока к которому будет принадлежать юнит getobject(id).
меняешь дипломатию между разными игроками и все будет работать.
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
Сообщений: 159
Тем: 7
Зарегистрирован: May 2002
Спасибо
Three Rings for Elven-kings under the sky,
Seven for the Dwarf-lords in their halls of stone,
Nine for Mortal Men doomed to die,
One for the Dark Lord on his dark throne
In the land of Mordor where the Shadows lie.
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness
bind them
In th land of Mordor where the Shadows lie.
Сообщений: 214
Тем: 5
Зарегистрирован: Mar 2003
16.04.2003, 21:16
(Сообщение последний раз редактировалось: 04.07.2003, 20:36 Jet.)
а еще можно
@setenemy(unit:onject,nplayer:float)
зайди на http://www.gipat.ru/forum/index.php?showto...t=0&#entry19938
я там написал как она работает
Что есть то есть, того что было не вернуть, не изменить ни дня.
Черный Обелиск "Дом желтого сна (часть 2)"
Сообщений: 159
Тем: 7
Зарегистрирован: May 2002
Гм, оказывается подробных разьяснений комуто мало
По многочисленным прозьбам всех читеров ПЗ выкладываю скрипт по вызову поросенка Пятачка
@AddUnitToServer("","LMP Unique Pig Boryka 1","",GetX(GetLeader()),GetY(GetLeader()),0)
Пятачек будет без названия, если хотите с именем то вот так:
@AddUnitToServer("","LMP Unique Pig Boryka 1","Boryka",GetX(GetLeader()),GetY(GetLeader()),0)
Но имя можно писать только английскими буквами
Three Rings for Elven-kings under the sky,
Seven for the Dwarf-lords in their halls of stone,
Nine for Mortal Men doomed to die,
One for the Dark Lord on his dark throne
In the land of Mordor where the Shadows lie.
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness
bind them
In th land of Mordor where the Shadows lie.
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
AddUnitToServer( NameUnitMap : STRING , NameUnitRes : STRING , NameUnitControl : STRING , x : FLOAT , y : FLOAT , z : FLOAT )
Устанавливает юнит-объект: NameUnitRes на текущую карту в точку (x,y,z) из базы данных ресурсов игры. Объект будет иметь внутреннее имя: NameUnitMap и имя, отображаемое в инфоокнах: NameUnitControl. Большие и маленькие буквы внутреннего имени: NameUnitMap не различаются. Системная функция преобразования имени: (NameUnitMap : string) в код (idUnit : float) представляет все строчные символы имени как прописные - к верхнему регистру. Не рекомендуется возвращать код: idUnit от объекта добавленного на карту командой: AddUnitToServer с помощью функции: GetObjectId. Полученный на карте объект командой: AddUnitToServer будет иметь код - 10 символов, а команда: GetObjectId работает с ошибкой с десятизначными симвалами. Команда правильно работает только с объектами прописанными в таблице NPCs, так как добавленный объект будет иметь контейнер с переменными совойств персонажа игрока - со всеми дополнительными параметрами, навыками и умениями. При этом, если имя: NameUnitMap совпадает с именем файла в таблице ресурсов: texts.res (textslmp.res) с предиктором: "pers", например, "Nalo", и оствлен параметр: NameUnitControl пустым, то из базы данных локализации: texts.res (textslmp.res) будет взято имя этого объекта. Например, Сингл, ввести в консоли команду использование расширенных консольных команд, затем следующую строрку: @AddUnitToServer( "Nalo","Human Hadagan Pretty","",GetX(GetLeader()), GetY(GetLeader()),0)
Не забывайте, если нужно динамически добавлять персонажей из консоли, то сначала нужно создать файл с локализованным именем персонажа и запаковать файл с соответствующим иенем в базе данных локализаций texts.res. Получаемый персонаж будет иметь расширенную структуру с дополнительными характеристиками персонажа, а не простого юнита. По этому нужно в теаблице NPCs добавить новую строку с именем будущего перса и заполнить его характеристики, иначе у перса будет 0. Можно и консольными командами заполнить некоторые характеристики нового персонажа и затем полечить его…
Пятачок не персонаж, его имени нет в списке персонажей, но есть «Свинья»…
@AddUnitToServer("Pig","LMP Unique Pig Boryka 1","Boryka",GetX(GetLeader()),GetY(GetLeader()),0)
Сообщений: 1,563
Тем: 96
Зарегистрирован: Dec 2001
Jaroslav
Я могу только предполагать…
Так вот, я думаю что: команда «AddUnitToServer», это старая команда и возможно вообще предназначена для конструктора ПЗ, а не для самой игры, или что-то в этом роде.
Команда «AddUnitToServer» работает правильно, но только с объектами-персонажами. Разумеется, можно предварительно прописать кого угодно в таблице NPCs, и добавлять нового «перса» динамически на игровую зону. Но, проблемы вывода полноценного персонажа останутся и будут не только, как говорится, с «простыми юнитами», но и вообще с любыми юнитами которых нет в базе текстур "redress.res" или может быть даже тех, чьи имена текстур не начинаются на «unhu…». То есть, полноценно добавляться будут только человекообразные, к ним относятся только Люди и Орки. Только людей и Орков, в обычной ПЗ можно добавить этой командой на игровую зону, так как графические ресурсы Людей и Орков находятся в отдельном контейнере ресурсов, В общем, разработчики так реализовали эту функцию, и текстуры других юнитов (из других ресурсов) эта команда не загружает. Хотя можно попробовать перенести нужные текстуры из textures.res в контейнер redress.res/
Ну, или попросить продвинутого модера, чтобы он используя наш стартер, прописал в пути поиска ядром ПЗ ресурса redress.res - искать сначала в textures.res,… Это только теория, но можно поэкспериментировать….
Вообще-то, в чем собственно цель, или даже, в чем задача? Добавлять динамично юнитов на игровую зону, по каким-то критериям? Если грамотно поставить задачу, то можно на нынешнем движке реализовать вполне достойное решение. Например, если есть та же задача: реализовать динамическую загрузку каких-то юнитов на игровую зону, то для этого не нужна команда «AddUnitToServer». Можно сделать библиотечный моб-файл, который и будем в последствии загружаться из других мобов командой ADDMOB(NAME.mob). В этом моб–файле нужно реализовать защиту от повторений и проверку, что такой-то перс уже существует и динамично добавлять/удалять, именовать сколько угодно (сколько выдержит комп) юнитов. Но вот вопрос, а будет ли это играбельно, Нивал такого метода не использовал….
|