Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

Где можно изменить иконку объекта? Не оружия, а именно объекта, например колбасы. В самом описании ссылок на иконки нет, также не нашел никаких описаний местоположений иконок в config\ui.

Осенний каламбур. Сентябрь - лето.

img.php?nick=Balavnik&sert=2&text=t6

Ссылка на комментарий

section_name() – аналог section() для оффлайна

 

Просто name() возвращает либо уникальное системное имя, вроде esc_trader, либо имя и номер спавна: wpn_pm21423. Не путать с именами из [all.spawn] – у них обычно есть приставка с названием локации и какой-то фиксированный номер: val_wpn_mp5_0000.

  • Полезно 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий

@Balavnik блин, чёт не то написал, хотя - тоже нужное) Сама иконка (картинка) находится на полотне ui_icon_equipment.dds и имеет разное кол-во ячеек в длину и высоту. Отсчёт сверху-слева (0.0)

Скрытый текст

inv_grid_width            = 1
inv_grid_height            = 2
inv_grid_x                = 5
inv_grid_y                = 2
 

в данном моменте это водка: ширина одна яч, высота - две яч.

Сама ячейка - 50х50 пикселей

  • Полезно 1
Ссылка на комментарий

 

1 час назад, Balavnik сказал:

Что значит $spawn

Насколько помню/знаю, параметры с префиксом $ используются и предназначены для Level Editor SDK, непосредственно в игре не задействованы.

 

 

  • Нравится 1
  • Согласен 1
  • Полезно 2
Ссылка на комментарий
8 часов назад, Kirgudu сказал:

Единственное вероятное (не проверял) требование - имя должно быть уникальным.

 

6 часов назад, Norman Eisenherz сказал:

Не путать с именами из [all.spawn] – у них обычно есть приставка с названием локации и какой-то фиксированный номер: val_wpn_mp5_0000.

а чем они отличаются? так метод obj:name() и возвращает вот это имя из алл-спавна, разница в примерах только в том ,что имя в алл-спавне задаёт разработчик, а имя типа wpn_pm21423, задаёт сама игра при спавне в виде id, прибавляя к названию секции рандомное число.

 

и кстати имя может быть одинаковым по крайней мере на ОГСР, я по ошибке оставил в спавне 2 объекта с одним именем, и потом в игре, играя с выводом дебаг инфы на экране (наведясь на объект там пишется информация-  секция, имя, логика и пр.) увидел что у меня стоят рядом 2 объекта с одинаковым name, никаких проблем для игры это не вызвало)

  • Полезно 1
Ссылка на комментарий
12 hours ago, CiberZold said:

имя в алл-спавне задаёт разработчик, а имя типа wpn_pm21423, задаёт сама игра при спавне в виде id

Этим и отличаются. К чему был вопрос?

  • Полезно 2

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий
13 часов назад, CiberZold сказал:

и кстати имя может быть одинаковым по крайней мере на ОГСР, я по ошибке оставил в спавне 2 объекта с одним именем, и потом в игре, играя с выводом дебаг инфы на экране (наведясь на объект там пишется информация-  секция, имя, логика и пр.) увидел что у меня стоят рядом 2 объекта с одинаковым name, никаких проблем для игры это не вызвало)

Или показалось, что не вызвало :)

alife():object(строка) может возвращать объекты по имени. А не только по числовому id. И вернет определенный объект в том случае, если имя уникально.

Если же таких несколько, то вернет первый попавшийся с таким именем, таким образом возможность получения определенного уникального объекта по имени, отваливается. Впрочем если в коде вашего мода такой способ получения объектов не используется, то никаких последствий и не будет. А в оригинале он почти или совсем не используется, насколько помню.

  • Нравится 2
  • Согласен 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

@Zander_driver А id у каждого объекта получается уникальный, выдающийся игрой? Будет ли разница между obj.id(онлайн) и obj:id()(оффалйн)?

 

А Story id объекта можно получить?

Осенний каламбур. Сентябрь - лето.

img.php?nick=Balavnik&sert=2&text=t6

Ссылка на комментарий
Только что, Balavnik сказал:

Будет ли разница между obj.id(онлайн) и obj:id()(оффалйн)?

Нет, они идентичны всегда. (Только наоборот - sobj.id для оффлайна, obj:id() для онлайна). Именно по id всегда можно опознать что это один и тот же объект.

story_id также получается и в оффлайне и в онлайне, смотри внимательно методы и поля объектов.

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

@Zander_driver А если я допустим попробую методом alife():object(obj.id) получить объект в оффлайне, он его переводит в онлайн, или как?

 

 

  • Жуть! 1

Осенний каламбур. Сентябрь - лето.

img.php?nick=Balavnik&sert=2&text=t6

Ссылка на комментарий

@Balavnik Подтянуть бы тебе общее понимание теории программирования :) А то какая-то каша в логике рассуждений.

Есть такое понятие как геттер. Т.е. функция/метод, которая только возвращает какие-либо данные, при этом ничего с ними не делая. Никаких изменений, манипуляций и т.д.

Так вот, alife():object(не_важно_строка_или_число) - Это геттер. И level.object_by_id(число) - Тоже геттер. Не могут они ничего с объектами сами делать, не имеют такого права.

  • Согласен 2
  • Полезно 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
1 час назад, Norman Eisenherz сказал:

Этим и отличаются. К чему был вопрос?

ты написал "не надо путать" типа имя заданное самой игрой и через алл-спавн разработчиком, так как будто для игры есть разница, и то и то имя объекта, поэтому я спросил в чём разница? имя объекта оно и в Африке имя  объекта, не важно как и через что, оно задано.

59 минут назад, Zander_driver сказал:

такой способ получения объектов не используется

алайф объект может где и используется, но это были 2 физ.объекта, вряд ли они используются, но я имел ввиду проблем с игрой не было в плане вылетов, иди что она ругалась на 2 объекта с одинаковым именем.

  • Сочувствую 1
Ссылка на комментарий

Я так понимаю, класс cse_alife_dynamic_object никак не связан с game_object? Можно ли получить объект класса game_object, если есть свежесозданный объект класса  cse_alife_dynamic_object?

Осенний каламбур. Сентябрь - лето.

img.php?nick=Balavnik&sert=2&text=t6

Ссылка на комментарий

@CiberZold Не путать номер в очереди спавна с фиксированным номером. Так и так получается имя, которое читается через name() – не спорю.

  • Согласен 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий
16 минут назад, Balavnik сказал:

Можно ли получить объект класса game_object

cse_alife_dynamic_object - серверный, game_object - клиентский. И хоть они являются "зеркальными отражениями" одного и того же объекта, иерархически эти классы никак не связаны. У них нет общего родителя.

Получить клиентский можно только после того, как движок сам его создаст. Это занимает некоторое время, и если только-что был создан (заспавнен) серверный, то клиентский еще не существует. Надо ждать, (1 фрейм как минимум) пока движок его введет в онлайн, если для этого есть подходящие условия.

  • Полезно 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
2 минуты назад, Balavnik сказал:

alife():object(id)

Так ты получишь серверный объект. cse_alife_dynamic_object. Его получить можно и так, сразу после спавна. Заспавнили - буквально означает "создали серверный объект".

Клиентский получают из level.object_by_id(id) - вот для него надо подождать 1 кадр как минимум, после спавна.

Это кроме того что объекты заспавненные за радиусом алайфа, вообще не обязаны сразу в онлайн заходить, а объекты на других локациях обязаны не заходить.

  • Согласен 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
4 часа назад, Norman Eisenherz сказал:

Не путать номер в очереди спавна с фиксированным номером

а у тебя было так написано в посте, что можно подумать существуют разные имена для объектов один для алл-спавна, другой просто для игры:)

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...