Fiz um script que possibilita a criação de um respawn móvel para jogos multiplayer no Arma2. É compatível a partir da versão OA 1.55.
O funcionamento desse script é bem simples, basta criar um veículo no editor e dar a ele um nome qualquer. Enquanto esse veículo não estiver danificado totalmente, ele será o respawn móvel. Caso ele seja destruído, o respawn será a marca respawn_west.
Para habilitar o script na sua missão, siga os seguintes passos:
- Entre no arquivo description.ext que está na pasta da sua missão, em mpmissions. Caso não tenha um arquivo description.ext, crie um no notepad ou outro editor de textos e cole ou altere o seguinte código para:
respawn = 3;
- Entre no editor e crie uma marker do tipo empty com o nome respawn_west. Posicione essa marca no local que será o ponto de respawn, caso o respawn móvel seja destruído.
- Crie um ou mais veículos e dê a eles nomes quaisquer, como por exemplo: veiculorespawn. Esses veículos serão os respawn móveis. Pode ser um carro, um helicóptero, um avião, um blindado, uma motocicleta...
- Entre no arquivo init.sqf localizado na pasta da sua missão ou crie um no notepad, caso não o tenha ainda. Inclua o seguinte código:
{_x addMPEventHandler ["MPRespawn", {Null = [[veiculorespawn1,Note que o nome do veículo em negrito deve ser o mesmo que o nome digitado no editor.
veiculorespawn2],_this select 0, _this select 1] execVM "scripts\respawnmovel.sqf";}];} foreach playableunits;
- Entre no notepad, crie um arquivo novo e cole o seguinte código:
//Script by armastudio.blogspot.com
_veiculosrespawn = _this select 0;
_unit = _this select 1;
_dead = _this select 2;
if (! isplayer _unit) exitwith {};
while {isnil "respawnmovel"} do
{
_rspmv = [_veiculosrespawn,_dead] call BIS_fnc_nearestposition;
if (alive _rspmv) then {respawnmovel = _rspmv};
if (! alive _rspmv) then {_veiculosrespawn = _veiculosrespawn - [_rspmv]};
if (count _veiculosrespawn == 0) exitwith{ respawnmovel = nil};
};
if (alive respawnmovel) then
{
_freedriver = respawnmovel emptyPositions "driver";
If (_freedriver > 0) exitwith {_unit moveindriver respawnmovel};
_freecargo = respawnmovel emptyPositions "cargo";
If (_freecargo > 0) then {_unit moveincargo respawnmovel} else
{
// Se não tiver nenhuma posição livre no respawn móvel, posiciona o jogador 2 metros atrás do veículo de respawn, se ele ainda estiver vivo
_size = ((sizeof typeof respawnmovel) / 2) + 2;
_xx = (((getpos respawnmovel) select 0) - ((sin (getdir respawnmovel) * _size)));
_yy = (((getpos respawnmovel) select 1) - ((cos (getdir respawnmovel) * _size)));
_unit setpos [_xx,_yy, 0];
_unit setdir (getdir respawnmovel);
};
};
respawnmovel = nil;
- Grave esse arquivo na pasta scripts da sua missão com o nome respawnmovel.sqf
Assine o RSS e inscreva-se no blog Armed Assault Studio para manter-se atualizado com as publicações.
legal,mas erioa saber uma coisa...muitos scripts de missoes se aplicam tbm aos addons,keri saber como faço pra criar uma caixa de muniçao,pois estou kerendo adicionar as armas FAL do Dragon em uma caixa pra aparecer no editor...Vlw
ResponderExcluirNunca abri um PBO de um addon para ver o conteúdo, mas acho que não deve ser muito complicado. Vou tentar encontrar alguma coisa a respeito e se conseguir te aviso.
ResponderExcluirAchei o arquivo weapons.pbo da pasta arma2/addons nele tem os ammobox originais, me parece que é só alterá-los para incluir as FALs. Se quiser tente aí, ou me mande o link do PBO das armas FAL do Dragon que eu vou tentar colocá-las em uma caixa.
ResponderExcluirConsegui,vlw ai as dicas...Ahh,depois poste como fazer para matar uma unidade completando o objetivo e se for possiel um script ondeas pessoas e carros(civis) passem na rua...pois estou pensando em tentar fazer uam missao onde a gente esta com um carro patrulhando,e pode occorrer ataques(td aleatorio:pátrulha,ataque,civis)pois asssim simulara uma patrulha...
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluirTipo um domination SP com suporte aereo e vida civil...se for possivel,edita um pra mim,pq ja tentei com us scripts aki e nem sei por onde começar...
ResponderExcluirSe quiser detectar quando uma pessoa foi morta, basta inserir no campo condition de um trigger o código:
ResponderExcluir! alive nomedaunidade
Tem um exemplo disso no vídeo que mostro a edição de uma missão básica.
Se quiser fazer uma missão em conjunto, podemos tentar, acho uma boa ideia.
Sobre o script, acho que dá para fazer alguma coisa legal.
ResponderExcluirPodemos criar uma base da qual partirá as patrulhas para alguma cidade do mapa sorteada aleatoriamente. Nessa cidade, circulam grupos de civis normais, civis com armas "escondidas", IEDs, Suicidas etc
Quando os civis detectam a patrulha, sacam as armas e começam o ataque ou acionam explosivos. Se for algo assim, acho que não será difícil de fazer.
Cara,aum tenho OA,apenas o A2...to olhando aki akelas missoes do A2(q parecem um Wrafare SP)...e to pensando em edita-las(troca de ilha,naum gosto de matas verdes),tipo,trocar a ilha,colocar uniaddes do ACE...Tentarei tbm add o script de supirte aereo e de cargo no C130,mas naum sei como fazer isso..bom,tentarei la,caso consiga te avisarei e caso naum,TALVEZ pedirei sua ajuda(sempre kis mexer com missoes,mas cansa)...disse talvez pq se eu iritar desistirei de criar missoes...
ResponderExcluirFiz uma alteração no script para permitir o respawn das AIs também. Antes somente os jogadores faziam respawn.
ResponderExcluirFiz algumas alterações no script, permitindo o uso de mais de um veículo para respawn.
ResponderExcluirnao consegui fazer jorge se tivesse como deixa eles prontos pra download os inscript e um template era bem melhor
ResponderExcluir