Перейти к содержимому


Фотография

Возможно ли в миссии избавить карту от змей?


Лучший Ответ mickeymen , 29 June 2017 - 02:08


Дождались: http://steamcommunit...s/?id=937899551!
да, но я уже давно использую это - 
enableEnvironment [false, true];

К счастью эта линия очищает карту как от змей так и от кроликов  8)

Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 84

#1 OFFLINE   mickeymen

mickeymen

    Ст. Прапорщик

  • Пользователи
  • 731 сообщений

Отправлено 05 May 2015 - 16:59

Порой очень раздражают змеи. Они везде, даже в городах. Получается сплошной змеинец.

Когда вижу змей горизонтально ползущих по наклонной плоскости холма. это раздражает еще больше.

Зайцы тоже иногда мешаются под колесами, но они все таки-симпатичнее да и меньше их намного чем змей.

Может быть есть скрипт которым можно уменьшать живность в карте?

Или другой вариант, может модули? 

Я искал в модулях, но видел лишь добавление животных.

А как уменьшить или убрать совсем?


Сообщение отредактировал mickeymen: 05 May 2015 - 17:02

  • 0

#2 OFFLINE   ymok

ymok

    Рядовой

  • Пользователи
  • 20 сообщений

Отправлено 05 May 2015 - 18:09

Данная тема поднималась на офф сайте бисовцев 

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

Если память мне не изменяет, то делаете *.pbo в котором содержится файл cfgAmbient.hpp

В этом файле уже указываете что где когда и сколько спавнить, пример можно посмотреть в редакторе Просмотрщик конфигурации [Ctrl+G] configFile >> CfgWorlds >> Stratis >> AmbientA3

В AmbientA3 указаны различные радиусы, к примеру,

configfile >> "CfgWorlds" >> "Altis" >> "AmbientA3" >> "Radius40_60" >> "Species" >> "Snake_random_F" 

указаны змейки 


  • 0

#3 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 05 May 2015 - 19:31

Кролики и змеи заблокированы

Прикрепленный файл  @Map_Altis_ambient.rar   3.7К   81 Количество загрузок:


  • 3

#4 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 05 May 2015 - 21:27

Можно решить вопрос одной скриптовой командой

enableEnvironment false;

однако вместе со змеями отключатся и кролики и звуки окружения.


  • 0

#5 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 304 сообщений
  • Откуда:Севастополь

Отправлено 05 May 2015 - 21:42

setdamage 1 будет работать на них?


  • 0

#6 OFFLINE   HarryWorner

HarryWorner

    Лейтенант

  • Модераторы
  • 1035 сообщений

Отправлено 05 May 2015 - 23:07

Dimon UA, это нехороший вариант. После этого нужно будет трупы за них убирать на карте. Так еще все время проверять не отспавнились ли новые.


  • 0

#7 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 304 сообщений
  • Откуда:Севастополь

Отправлено 05 May 2015 - 23:18

Dimon UA, это нехороший вариант. После этого нужно будет трупы за них убирать на карте. Так еще все время проверять не отспавнились ли новые.

Да я понимаю... но.

1. Аддон только серверный? или и клиентский? если еще и клиентский - плохо.

2. enableEnvironment false -    выключает всё - плохо.

3. Грамотно написанный код с убиранием за собой мусора и аккуратно вставленный уже в какой нить работающий постоянно цикл в миссии, должен дать нужный нам результат. Осталось понять как часто система отреспивает этих змей, чтобы понять частоту запуска кода и насколько тяжело считывание списка.


Сообщение отредактировал Dimon UA: 05 May 2015 - 23:27

  • 0

#8 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 05 May 2015 - 23:19

setdamage 1 будет работать на них?

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


  • 0

#9 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 304 сообщений
  • Откуда:Севастополь

Отправлено 05 May 2015 - 23:26

 

setdamage 1 будет работать на них?

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

 

Нее, ну я понимаю... нужно смотреть какая именно задача стоит, какая частота респа змей и т.д. Но как вариант допустим для радиуса в 1000м, если вся миссия сведена к определенной точке может и подойти... нужно отталкиваться от реальной ситуации.

 

Например я столкнулся с таким геммором, когда поваленные деревья поднимал: пришлось свести радиус к 1000 м (условия миссии позволяли) и привязать работу кода к определенным событиям, которые не так часто срабатывали, чтобы как то оптимизировать работу скрипта и свести на нет его нагрузку. 


Сообщение отредактировал Dimon UA: 05 May 2015 - 23:29

  • 0

#10 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 05 May 2015 - 23:35

setdamage 1 будет работать на них?

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

Нее, ну я понимаю... нужно смотреть какая именно задача стоит, какая частота респа змей и т.д. Но как вариант допустим для радиуса в 1000м, если вся миссия сведена к определенной точке может и подойти... нужно отталкиваться от реальной ситуации.
 
Например я столкнулся с таким геммором, когда поваленные деревья поднимал: пришлось свести радиус к 1000 м (условия миссии позволяли) и привязать работу кода к определенным событиям, которые не так часто срабатывали, чтобы как то оптимизировать работу скрипта.

С животными все проще, они появляются только вокруг игрока (вокруг камеры?) в определенном радиусе и в отличии от А2 всегда локальны игроку (не синхронизируются по сети, каждый игрок видит свою картину). На самом деле прогонять поиск через near* команды не нужно, лучше проходить по списку entities, ибо животные в нем содержатся, но еще лучше пользоваться командой sizeOf, она полезна для определения есть ли объекты такого-то типа в мире. Сама команда очень древняя и считает длину объекта по неведомой формуле, но если объекта в мире не существует, то она возвращает 0, команда *очень* быстрая, всего ~0.007 миллисекунд и ее спокойно можно вызывать постоянно, т.е. можно переписать скрипт ниже для работы в незапланированной среде каждый кадр фактически без потери фпс.

Скриптовое решение, вызывать один раз в начале игры на каждом клиенте:
- Более удачное решение смотрите ниже -

Сообщение отредактировал Sa-Matra: 06 May 2015 - 18:38

  • 1

#11 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 304 сообщений
  • Откуда:Севастополь

Отправлено 05 May 2015 - 23:37

Ну, вот и прекрасно!  :)

 

З.Ы. Кстати, вопрос: а есть ли от них (кроликов и т.д.) нагрузка на клиенте?

Если да, то это же будет как оптимизация?) 


Сообщение отредактировал Dimon UA: 05 May 2015 - 23:39

  • 0

#12 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 05 May 2015 - 23:42

Ну, вот и прекрасно!  :)
 
З.Ы. Кстати, вопрос: а есть ли от них (кроликов и т.д.) нагрузка на клиенте?
Если да, то это же будет как оптимизация?)

Знаю точно что enableEnvironment false чуть-чуть влияет на фпс, но вот не уверен чем больше влияет - звуком окружения или животными.
  • 0

#13 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 304 сообщений
  • Откуда:Севастополь

Отправлено 05 May 2015 - 23:47

 

Ну, вот и прекрасно!  :)
 
З.Ы. Кстати, вопрос: а есть ли от них (кроликов и т.д.) нагрузка на клиенте?
Если да, то это же будет как оптимизация?)

Знаю точно что enableEnvironment false чуть-чуть влияет на фпс, но вот не уверен чем больше влияет - звуком окружения или животными.

 

Нужно как нить будет потестировать...


  • 0

#14 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 06 May 2015 - 00:03

Друзья мои!

То что вы тут хорошо на парились, это хорошо, это открывает новые горизонты.

 

1 Весь амбиент в Арме локален, и у каждого клиента свой, да вот так вот, то есть серверной части до него ни какого дела.

2 Настраиваете конфигурацию по вкусу, и юзайте как хотите, хоть мультик хоть сингл. Я сам не прочь заставить отрабатывать арму свою стоимость, но тут реально лишнее задумываете. Не зачем на ванильный функционал вешать по верху ещё свой, не тот случай.

 

3 А вот это как раз тот случай когда без своего ни как не обойтись, цивилы живут именно по амбиенту.

http://arma3.ru/foru...ambient-engine/


Сообщение отредактировал SteelRat: 06 May 2015 - 00:04

  • 0

#15 OFFLINE   mickeymen

mickeymen

    Ст. Прапорщик

  • Пользователи
  • 731 сообщений

Отправлено 06 May 2015 - 00:41

Спасибо за предложения и ответы, но мне кажется, к сожалению нет простого и эффективного решения


  • 0

#16 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 06 May 2015 - 01:27

Все оказалось еще проще, есть же команда agents, возвращающая всех энтити-агентов.

Удаляем всех агентов вообще - кроликов, змей, рыб, все вообще.

true spawn {
	waitUntil {
		{deleteVehicle agent _x;} forEach agents;

		sleep 0.01; false;
	};
};
Удаляем только кроликов и змей.

true spawn {
	waitUntil {
		{
			if(agent _x isKindOf "Rabbit_F" || agent _x isKindOf "Snake_random_F") then {
				deleteVehicle agent _x;
			};
		} forEach agents;

		sleep 0.01; false;
	};
};
Команда agents очень быстрая, можно так же спокойно делать это каждый кадр.

Сообщение отредактировал Sa-Matra: 06 May 2015 - 01:38

  • 1

#17 OFFLINE   mickeymen

mickeymen

    Ст. Прапорщик

  • Пользователи
  • 731 сообщений

Отправлено 06 May 2015 - 01:33


Все оказалось еще проще, есть же команда agents, возвращающая всех энтити-агентов. Удаляем всех агентов вообще - кроликов, змей, рыб, все вообще. true spawn { waitUntil { {deleteVehicle agent _x;} forEach agents; false; }; };Удаляем только кроликов и змей. true spawn { waitUntil { { if(agent _x isKindOf "Rabbit_F" || agent _x isKindOf "Snake_random_F") then { deleteVehicle agent _x; }; } forEach agents; false; }; };Команда agents очень быстрая, можно так же спокойно делать это каждый кадр.

 

А как и куда это вставить? Простите уж за неосведомленность.

А можно змей удалить вообще а кроликов уменьшить на 60-70%?

 

Я после 1.44 обновления увидел кучу зайцев! Сначала думал что показалось, но кто то еще заметил, я прочитал в разделе "Обновления" 

Какой бред, я думаю как от них избавится а они добавляют!


Сообщение отредактировал mickeymen: 06 May 2015 - 01:36

  • 0

#18 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 сообщений

Отправлено 06 May 2015 - 01:36

А как и куда это вставить? Простите уж за неосведомленность.
А можно змей удалить вообще а кроликов уменьшить на 60-70%?

Самый простой вариант, без файлов:
1. Создаете объект "Logic" (Логика, хотя пойдет вообще любой объект который всегда будет на карте и не будет удален)
2. В строке инициализации пишите: 0 = скрипт, где скрипт это один из скриптов выше.

Прямо-таки в процентах кроликов удалять это чересчур. Думаю хорошим вариантом будет удалять кроликов только если их больше 1, т.е. чтобы всегда был только один активный кролик.

Сообщение отредактировал Sa-Matra: 06 May 2015 - 01:42

  • 0

#19 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 06 May 2015 - 01:59

 

Думаю хорошим вариантом будет удалять кроликов только если их больше 1, т.е. чтобы всегда был только один активный кролик.          

Самый хороший вариант выложен архивом, там хоть в процентах, хоть в фунтах старлингах.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание


  • 0

#20 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 06 May 2015 - 02:08

 

Команда agents очень быстрая, можно так же спокойно делать это каждый кадр.          

И каждый кадр вам будет спавнится кролик, действительно, больше не чем занять процессор.


  • 0




Яндекс.Метрика