Скрипт на снег arma 3

Обновлено: 05.07.2024

Snow - Blizzard - SnowMask - Environment Sounds Effects - Retextures

Snow script temperature and overcast based

Temperature based (down to 1 snow --- up to 1 no snow).

Overcast based (change intensity based to overcast).

Reduced snow inside buildings .

Snow Mask system simulation.

Environment sounds effects. (forest, cities, sea, houses,footsteps)

configurable options :snow\fn_settings.sqf

[added] ADDON updated with snowly/frozen wrecks objects for removeWrecks script.

[added] RemoveWrecks script ( remove wrecks obtain items) (wrecks are spawned by @exileserver/addon/a3_WY_Wrecks.pbo)

[fixed] some messages didnt appear after lasts ARMA 3 updates.

[fixed] winters environments dont load correctly after lasts ARMA 3 updates.

[fixed] environments sounds dont load correctly after lasts ARMA 3 updates.

[added] ADDON updated with new uniforms ,gear,vehicles,weapons.

[solved] Blizzard Synch with all players.

[solved] Exile facewear patch now working for JIP near others players.

[changed] ExileServer_object_player_database_load.sqf moved to ExilecustomCode

[solved] Exile bug - facewear disappear after logout/login (info installation below)

[changed] Removed Bad visibility using snow mask script (without mask)

[added] Better visibility using Snow Mask when blizzard effects are active

[added] Retexture Uniforms inside car script (need WY_ToolKit)

[added] ADDON Uniforms classes modelsides allsides and snow classes for not exile servers

[added] Not Exile folder with ARMA3 all servers compatible scripts

[solved] ADDON Fixed Conflicts classes WY_SU

[added] ADDON textures for retexture script

[added] ADDON class WY_ToolKit (used inside retexture scripts and slide vehicles scipt)

[added] Retexture Script (with WY_ToolKit inside vehicles inventory now can retexture vehicles onfly)

[added] Vehicles Slide and slipping script ( if vehicles is not WY typeof or not have WY_ToolKit in inventory)

[solved] ADDON Fixed some errors path icons not showing in the inventory

[added] Retextured Snow Camo Pack (weapons,vehicles,uniforms and gears) (only addon changed, classnames.txt)

[added] Option for enable/disable Blizzard White ColorCorrection

[solved] Removed Houses sounds out of houses when raining.

[changed] Now all sounds files, classes and textures are inside addon (link above or below).

[added] configurables sounds volume setup ( 1, 0.8, 0.6) for winds and environment sounds.

[added] blizzard simulation effects. (can setup event starts and stop).

[added] Houses sounds.

[added] sea sounds and some environment sounds.

  • Download ADDON :https://steamcommunity.com/sharedfiles/filedetails/?id=819154831&searchtext=snow+winter+effects
  • Put Addon in root arma3server directory. (addon required for clients too)
  • copy key of addon inside key folder in arma3server directory.
  • Add to startup line addon.
  • open mission.sqm in missiondirectory and add to addon section "WY_PE" (for removewrecks script add "WY_SWW" too).
  • Enable Exile Snow inside config.cpp \ class yourMissionName and setup temperature with some value down to 1 grades
  • If you use map like chernarus winter create class inside config.cpp with name of map
  • Set "Thunderstorm" in ExileserverConfig as weather. set wind to 1 (optional)
  • Open mission\config.cpp , search "class CfgExileCustomCode" and add this lines inside class

ExileServer_object_player_database_load = "Snow\ExileServer_object_player_database_load.sqf"; ExileClient_system_snow_thread_update = "Snow\ExileClient_system_snow_thread_update.sqf"; ExileClient_system_trading_network_purchaseVehicleResponse = "Snow\ExileClient_system_trading_network_purchaseVehicleResponse.sqf";

Copy folder Snow inside mission folder.

Copy initPlayerLocal.sqf (or merge content) inside mission folder.

For activate Removewrecks script: pack @exileserver/addon/a3_WY_Wrecks provided into a3_WY_Wrecks.pbo and add to exileserver addon folder

setup fn_setting.sqf if needed.

About

Arma 3 _ EXILE Snow winter Effects - Blizzard - SnowMask - Environment Sounds


As the name says this script will generate a snow storm in your mission.
Tested on dedicated, JIP compatible.

The script will work on any map, particles are adjusted automatically based on what map the mission is created.

Made the breath vapors optional via script parameters to diminish the impact on frames in missions with many units.
Added a fifth parameter in script which if is false the breath vapors won't be used.

Example with no breath vapors and no snow bursts, fog managed by script
null = [80,240,false,40,false,false,false,true] execvm "AL_snowstorm\al_snow.sqf";

If you like my work and want to support:



DO NOT INCORPORATE THIS SCRIPT OR PORTIONS OF IT IN MONETIZED PRODUCTS OR SERVERS WITHOUT ASKING FOR PERMISSION AND OBTAINING APPROVAL FROM ME.

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


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

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

FS_SnowSources pushBack _source;
>;

Так как в поле /*Follow*/ мы указываем player, то все созданные кубы будут следовать за игроком по мере его движения, в добавок кубы будут поворачиваться вместе с ним. Так что осталось только предусмотреть разные ситуации (когда игрок садится в машину или попадает под воду), и с созданием снега можно закончить.

sleep 1;
>;
<
deleteVehicle _x;
>
forEach FS_SnowSources;

Тут начинается самая интересная часть всей идеи. Дело в том, что во всех найденных мной в гугле скриптах снега дыхания паром либо вообще не было, либо оно было реализовано супер-просто : пар спавнился сплошным потоком из района шеи игрока, причем повороты головы никак не влияли на направление выдыхаемого пара.

Так вот я решил поставить себе задачу привязать направление пара к поворотам головы, так чтобы пар всегда выходил по направлению рта. Для этого мне пришлось поворачивать игровую логику (невидимая точка, из которой исходит пар) вслед за движениями головы, а так же поворачивать направление выдыхаемого пара. Задача была очень интересная и потребовала знания основ высшей алгебры и геометрии (матрица поворота, смысл векторного произведения).

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



  • Повернуть логику вместе с телом игрока так, чтобы логика всегда была впереди него. Данное действие обеспечивается нам автоматически за счёт действия команды attachTo, так что это уже сделано.
  • Повернуть логику (красный шарик) учитывая текущий поворот головы (для этого надо выяснить, в какую сторону игрок повернул голову относительно направления тела: направо или налево, а так же выяснить угол).
  • При описанных выше поворотах направление пара не поворачивалось, так что сейчас пар вылетает по направлению тела игрока. Т.е. осталось только повернуть направление пара (черный треугольник).

Направление поворота головы (направо мы повернули башню или же налево) мы выясним через знание векторного произведения. Если результирующий вектор будет направлен вверх (z-компонента > 0), то мы поворачиваем голову направо, иначе налево.

Все повороты мы будем осуществлять домножением на матрицу поворота, при этом мы будем игнорировать z-составляющую для того, чтобы упростить расчёт (будем использовать поворот вектора в 2D пространстве вместо поворота вектора в 3D пространстве). Z-компонента у нас всегда будет равна -0.2, что означает, что пар всегда будет выдыхаться немного вниз.

Сам пар у нас будет иметь следующие параметры (именно этот кусок кода решает, как будут выглядеть создаваемые нами частицы и в каком направлении они будут вылетать :

При этом нельзя забывать о том, что во время выдоха игрок может начать вертеть головой, так что придется все это рассчитывать в цикле. Количество итераций цикла соответствует длительности выдоха:

При реализации пара изо рта я решил привязать каждый момент создания пара к реально сделанному выдоху, то есть игрок будет выдыхать горячий воздух только в те моменты, когда вы будете слышать его дыхание. Для этого я использовал addEventHandler ["SoundPlayed", ]

Весь скрипт полностью будет выглядеть так :

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

FS_SnowDensity = _this select 0;

FS_SnowSources pushBack _source;
>;

sleep 1;
>;
<
deleteVehicle _x;
>
forEach FS_SnowSources;

/* Awesome steam from mouth script by Fess25Rus

_fog setDropInterval 1;

deleteVehicle _fog;
deleteVehicle _source;
>;

Здравствуйте.
Имеется скрипт снега. Всё работает нормально, но стоит только выйти от места старта на расстояние 500 метров или чуть больше, как снег перестаёт работать. Если вернуться обратно он снова включается.
Может кто сможет помочь довести его до ума.

Скрипт снега прикладываю.

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

Спасибо за помощь всем, кто откликнулся.

Объект "logic" нужно создавать командой createUnit

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

snow.7z 2.53К 35 Количество загрузок:

Спасибо большое, очень помог.

Небольшой вопрос в тему, может кому попадался скрипт снежной бури, желательно с функцией рандома, то усиливается, то стихает. Было бы неплохо.

К сожалению после возрождения снег исчезает. Может есть какие либо решения данной задачи, буду очень благодарен.

Kraisston , дыхание важно?

Нет, дыхание не имеет значения. Главное что бы просто снег шёл. Играем на снежной карте и без снега совсем не то.

Kraisston , ну тогда подожди, вернусь домой скину измененный только со снегом

Kraisston , ну тогда подожди, вернусь домой скину измененный только со снегом

Спасибо большое, буду очень признателен.

К сожалению после возрождения снег исчезает. Может есть какие либо решения данной задачи, буду очень благодарен.

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

Я закомментировал эти строки в скрипте, после смерти инициализацию настоятельно желательно вызывать из того места, где и обрабатывается респавн, в принципе ни что вам не мешает снять комментирование с этих строк и оставить всё ка было.

К сожалению после возрождения снег исчезает. Может есть какие либо решения данной задачи, буду очень благодарен.

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

Я закомментировал эти строки в скрипте, после смерти инициализацию настоятельно желательно вызывать из того места, где и обрабатывается респавн, в принципе ни что вам не мешает снять комментирование с этих строк и оставить всё ка было.

Ох если бы я так хорошо понимал скрипты я бы так и сделал. Но смотреть в скрипт всё равно что барану на новые ворота. Этот скрипт не мой, нашёл его на просторах интернета и хотел использовать в своей миссии, но столкнулся с проблемой и поэтому обратился к вам за помощью. мне здесь уже неоднократно помогали и решил а почему бы и нет . В любом случаи спасибо за оказанную помощь.

Читайте также: