Supply drop

User avatar
Anssi
Posts: 597
Joined: 21 Feb 2014, 19:43
Location: Vantaa

Supply drop

Post by Anssi »

Muutaman tunnin touhuamisen jälkeen en vieläkään ole saanut tehtyä toimivaa supplydrop skriptiä.
Kaikki maailman foorumit on luettu ja googlekaan ei anna vastausta.

Tarkoituksena olisi siis saada supply drop aikaiseksi tietylle alueelle (vaikka 300m radius) 40 minuutin välein, ilman että pelaajan tarvitsee tehdä asialle jotain. Ei tarvitse olla tiputettuna lentokoneesta, voi ilmestyä ilmaan tyhjästäkin.

Tässä on lähimmäksi saatu: http://pastebin.com/ybAtixkC
Kopioitu tästä: http://pastebin.com/t9C5wTmk

Ongelmana tällä hetkellä se, että en saa laatikkoa ilmestymään ollenkaan. Tuolla aw_drop.sqf, mistä olen kopioinut, toimii niin, että lentokoneen pilotilla on addAction, jolla kutsutaan droppi.
Image[url=steam://friends/add/'.76561197962033881.']Image[/url]
http://www.twitch.tv/berillis
https://www.youtube.com/user/TheBerillis
TugeX
Posts: 293
Joined: 26 Jul 2013, 18:49

Re: Supply drop

Post by TugeX »

Varjon nimi oli väärin
esimerkki[+] Spoiler

Code: Select all

ammo_drop = {
	private ["_chute","_crate","_smoke"];

	_chute = createVehicle ["B_Parachute_02_F", getMarkerPos "drop", [], 150, 'FLY'];
	_chute setPos [getPos _chute select 0, getPos _chute select 1, 100];
	_crate = createVehicle ["B_supplyCrate_F", [0,0,0], [], 0, 'NONE'];
	_crate attachTo [_chute, [0, 0, 0]];
	_crate allowdamage false;

	//laatikkosäädöt tähän

	waitUntil {position _crate select 2 < 1 || isNull _chute};
	detach _crate;
	sleep 1;
	_crate allowdamage true;
	_smoke = createVehicle ["SmokeShellYellow", [0,0,0], [], 0, 'NONE'];
	_smoke setPos [getPos _crate select 0, getPos _crate select 1, 1.5];
	
	if(!isNull _chute) then {
		deleteVehicle _chute;
	};
};

while{true}do{
	call ammo_drop;
	sleep 60; //paska tapa pitkällä ajalla
};
User avatar
Anssi
Posts: 597
Joined: 21 Feb 2014, 19:43
Location: Vantaa

Re: Supply drop

Post by Anssi »

TugeX wrote:Varjon nimi oli väärin
No niinpä näkyy. Kylläpä nyt tunnen itseni hölmöksi.

Mitenkäs tuo 40 minuuttia kannattaa toteuttaa? Eli droppia ei pitäisi tapahtua 0 minuutin kohdalla, vaan 40, 80, 120, jne.
Last edited by Anssi on 14 Oct 2016, 08:18, edited 1 time in total.
Reason: 1
Image[url=steam://friends/add/'.76561197962033881.']Image[/url]
http://www.twitch.tv/berillis
https://www.youtube.com/user/TheBerillis
TugeX
Posts: 293
Joined: 26 Jul 2013, 18:49

Re: Supply drop

Post by TugeX »

Periaatteessa

Code: Select all

while{true}do{
	uiSleep 2400;
	call ammo_drop;
};
Bummeri
Posts: 3009
Joined: 09 Nov 2013, 14:35

Re: Supply drop

Post by Bummeri »

Käytä CBan funktioita odottaaksesi pitkiä aikoja, jos cba on käytettävissä. UISleep pyörii myös brieffi ruudussa, normi sleep 0,1 ensi ja sitten Uisleep jos tahot että pelin alusta laskee.
Last edited by Bummeri on 14 Oct 2016, 10:50, edited 1 time in total.
Reason: 1
"Dataa on saatava." -DataNummi
"Toteutus on pilalla, pelkkää paskaa tilalla." -MyösNummi
User avatar
zpeed
Posts: 108
Joined: 10 Feb 2015, 20:08
Location: Kuopio

Re: Supply drop

Post by zpeed »

Osaisikohan joku herrasmiehistä neuvoa tyhmää. Käytin tuota aw_drop.sqf scriptiä komentajalle pudottamaan ajoneuvon komentoryhmälle. Kaikki toimi muuten loistavasti, paitsi kun A10 ja B10 haluais itselleenkin menopelin. Ongelmana korjaantuisi jos laittaisi _reloadtime = 1; mutta tämä jättäisi mahdollisuuden kympille spämmätä ajoneuvoja taivaalta loputtomiin.
Kokeilin myös laittaa jokaiselle oman scriptin, aw_drop.sqf, aw_drop2.sqf, aw_drop3.sqf mutta jo toisella komentajalla valitti reloadtimen olevan vielä täyttymättä.

Eli mitä kaipaan scriptin tekevän: Komentajalla on action menussa valinta pudottaa komentoryhmälle tarvittaessa ajoneuvon. Yksi ajoneuvo per komentoryhmä. Valinta voisi hävitä tiputuksen jälkeen action menusta.
Oon googlaillu ympäriinsä sopivaa scriptiä, mutta kaikki vehicledropit tuntuu olevan ennalta merkittyyn paikkaan. Tai sitten en vaan osaa etsiä oikeilla hakusanoilla.
User avatar
Tuntematon
Posts: 2291
Joined: 19 May 2015, 15:29
Location: Valkeakoski
Contact:

Re: Supply drop

Post by Tuntematon »

zpeed wrote:Osaisikohan joku herrasmiehistä neuvoa tyhmää. Käytin tuota aw_drop.sqf scriptiä komentajalle pudottamaan ajoneuvon komentoryhmälle. Kaikki toimi muuten loistavasti, paitsi kun A10 ja B10 haluais itselleenkin menopelin. Ongelmana korjaantuisi jos laittaisi _reloadtime = 1; mutta tämä jättäisi mahdollisuuden kympille spämmätä ajoneuvoja taivaalta loputtomiin.
Kokeilin myös laittaa jokaiselle oman scriptin, aw_drop.sqf, aw_drop2.sqf, aw_drop3.sqf mutta jo toisella komentajalla valitti reloadtimen olevan vielä täyttymättä.

Eli mitä kaipaan scriptin tekevän: Komentajalla on action menussa valinta pudottaa komentoryhmälle tarvittaessa ajoneuvon. Yksi ajoneuvo per komentoryhmä. Valinta voisi hävitä tiputuksen jälkeen action menusta.
Oon googlaillu ympäriinsä sopivaa scriptiä, mutta kaikki vehicledropit tuntuu olevan ennalta merkittyyn paikkaan. Tai sitten en vaan osaa etsiä oikeilla hakusanoilla.
Anna se sun versio siitä scriptistä. En tiedä onko noi OP viestissä olevat kuinka ajan tasalla.
User avatar
Saunatyyny
Posts: 532
Joined: 07 Jan 2015, 18:47
Location: PKS

Re: Supply drop

Post by Saunatyyny »

zpeed wrote: Kokeilin myös laittaa jokaiselle oman scriptin, aw_drop.sqf, aw_drop2.sqf, aw_drop3.sqf mutta jo toisella komentajalla valitti reloadtimen olevan vielä täyttymättä.
Muista myös kutsua eri skripti eri komentajille. Kuulostaa siltä että kutsuit aikasemmin samaa skriptiä.
"Johnson ajoi autollaan päin rekkaa ja kuoli heti. Miksi Johnson kuoli? "
-Warren Bennis
User avatar
zpeed
Posts: 108
Joined: 10 Feb 2015, 20:08
Location: Kuopio

Re: Supply drop

Post by zpeed »

Tuntematon wrote:
zpeed wrote:Osaisikohan joku herrasmiehistä neuvoa tyhmää. Käytin tuota aw_drop.sqf scriptiä komentajalle pudottamaan ajoneuvon komentoryhmälle. Kaikki toimi muuten loistavasti, paitsi kun A10 ja B10 haluais itselleenkin menopelin. Ongelmana korjaantuisi jos laittaisi _reloadtime = 1; mutta tämä jättäisi mahdollisuuden kympille spämmätä ajoneuvoja taivaalta loputtomiin.
Kokeilin myös laittaa jokaiselle oman scriptin, aw_drop.sqf, aw_drop2.sqf, aw_drop3.sqf mutta jo toisella komentajalla valitti reloadtimen olevan vielä täyttymättä.

Eli mitä kaipaan scriptin tekevän: Komentajalla on action menussa valinta pudottaa komentoryhmälle tarvittaessa ajoneuvon. Yksi ajoneuvo per komentoryhmä. Valinta voisi hävitä tiputuksen jälkeen action menusta.
Oon googlaillu ympäriinsä sopivaa scriptiä, mutta kaikki vehicledropit tuntuu olevan ennalta merkittyyn paikkaan. Tai sitten en vaan osaa etsiä oikeilla hakusanoilla.
Anna se sun versio siitä scriptistä. En tiedä onko noi OP viestissä olevat kuinka ajan tasalla.

Code: Select all

/*
      ::: ::: :::             ::: :::             :::
     :+: :+:   :+:           :+:   :+:           :+:
    +:+ +:+     +:+         +:+     +:+         +:+
   +#+ +#+       +#+       +#+       +#+       +#+
  +#+ +#+         +#+     +#+         +#+     +#+
 #+# #+#           #+#   #+#           #+#   #+#
### ###             ### ###             ### ###

 Helicopter ammo box drop script (aw_drop.sqf) was written by Jester [AW] of AhoyWorld.co.uk
 You may add or alter this code to your liking as long as you leave the authors name in place.
 set _reloadtime = 30 to however many seconds you want before it is available to use again.
 place "this addAction ["<t color='#0000f6'>Ammo Drop</t>", "aw_drop.sqf",[1],0,false,true,""," driver  _target == _this"];" in the helicopter/plane init field.
 change the loadouts to the crate to your likings.
*/

private ["_heli", "_reloadtime"];

		// lets set some local variables
		_heli = _this select 0;
    _chuteType = "B_Parachute_02_F";	//parachute for blufor, for opfor and greenfor replace the 'B' with 'O' or 'G' respectively
    _crateType =  "rhs_tigr_sts_msv";	//ammocrate class for blufor, feel free to change to whichever box you desire
    _smokeType =  "";  //smoke shell color you want to use
    _lightType =  "";  //chemlightcolor you want used
    _reloadtime = 9999;  // time before next ammo drop is available to use
    _minheight = 0;  // the height you have to be before you can actually drop the crate
    _HQ = [West,"HQ"];  // do not touch this!
    _toLow = format
    	[
    	"<t align='center'><t size='2.2' color='#ed3b00'>TOO LOW ALTITUDE</t><br/><t size='1.2' color='#9ef680'>You need to be above</t><br/><t size='1.5' color='#ed3b00'>%1 meters</t><br/><t size='1.2' color='#9ef680'>in order to drop an ammo crate.</t></t>",
    		_minheight
    	];  //text to display when not high enough to drop
       
        if (!isServer && isNull player) then {isJIP=true;} else {isJIP=false;};
        // Wait until player is initialized
	if (!isDedicated) then
	{
		waitUntil {!isNull player && isPlayer player};
	};

	// meat and potatoes
	if ( !(isNil "AW_ammoDrop") ) exitWith {hint "Ammo drop is not currently available"};
	if ((getPos player) select 2 < _minheight) exitWith {hint parseText _toLow};
	if ((getPos player) select 2 > _minheight) then
	{
		AW_ammoDrop = false;
		publicVariable "AW_ammoDrop";

		_chute = createVehicle [_chuteType, [100, 100, 100], [], 0, 'FLY'];
		_chute setPos [getPosASL _heli select 0, getPosASL _heli select 1, 50];
		_crate = createVehicle [_crateType, position _chute, [], 0, 'NONE'];
		_crate attachTo [_chute, [0, 0, -1.3]];
		_crate allowdamage false;
		_light = createVehicle [_lightType, position _chute, [], 0, 'NONE'];
		_light attachTo [_chute, [0, 0, 0]];

		// clear crate - leaves medkits in place. add clearItemCargoGlobal _crate; to remove medkits
		clearWeaponCargoGlobal _crate;
		clearMagazineCargoGlobal _crate;
		clearItemCargoGlobal _crate;
		// fill crate with our junk
		_crate addWeaponCargoGlobal ["rhs_weap_rpg26",2];
		_crate addWeaponCargoGlobal ["rhs_weap_rshg2",2];
		_crate addMagazineCargoGlobal ["rhs_mag_rgn",10];
		_crate addMagazineCargoGlobal ["rhs_100Rnd_762x54mmR",10];
		_crate addMagazineCargoGlobal ["rhs_30Rnd_545x39_7N10_AK",20];
		_crate addMagazineCargoGlobal ["rhs_mag_rdg2_white",5];
		_crate addMagazineCargoGlobal ["rhs_rpg7_PG7VL_mag",1];
		_crate addMagazineCargoGlobal ["rhs_rpg7_PG7VL_mag",1];
		_crate addMagazineCargoGlobal ["rhs_rpg7_OG7V_mag",1];
		_crate addMagazineCargoGlobal ["rhs_VOG25",5];
		_crate addMagazineCargoGlobal ["rhs_GRD40_White",5];
		_crate addItemCargoGlobal ["ACE_DefusalKit", 2];
		_crate addItemCargoGlobal ["ACE_Bodybag", 5];
		_crate addItemCargoGlobal ["ACE_fieldDressing", 20];
		_crate addItemCargoGlobal ["ACE_Morphine", 10];
		_crate addItemCargoGlobal ["SmokeShell", 10];
		_crate addItemCargoGlobal ["SmokeShellRed", 10];
		_crate addItemCargoGlobal ["SmokeShellGreen", 10];
		_crate addItemCargoGlobal ["ACE_wirecutter",3];
		_crate setVariable ["AFI_vehicle_gear","east",true];

		//hint format ["ammo crate dropped, Next one will be ready in: %1 seconds",_reloadtime];
		waitUntil {position _crate select 2 < 1 || isNull _chute};
		detach _crate;
		_crate setPos [position _crate select 0, position _crate select 1, 0];
		_smoke = _smokeType createVehicle [getPos _crate select 0, getPos _crate select 1,5];

		// time to reload a new ammo crate
		sleep _reloadtime;

		// we are back in action
		//vehicle player vehicleChat "";
		AW_ammoDrop = nil;
		publicVariable "AW_ammoDrop";
	};
Käytännössä täysin sama ku tuo alkuperänen, mitä nyt muokkasin vehiclen sisällä tulevat kamat ja _minheight ja _reloadtime parametrit.
Saunatyyny wrote:
zpeed wrote: Kokeilin myös laittaa jokaiselle oman scriptin, aw_drop.sqf, aw_drop2.sqf, aw_drop3.sqf mutta jo toisella komentajalla valitti reloadtimen olevan vielä täyttymättä.
Muista myös kutsua eri skripti eri komentajille. Kuulostaa siltä että kutsuit aikasemmin samaa skriptiä.
Joo kutsuinkin jokaisella komentajalla oman scriptin, mutta silti valitti että reloadtime ei ole ummessa.
Temppa
Posts: 699
Joined: 30 Jan 2014, 07:33

Re: Supply drop

Post by Temppa »

Siellä on kaksi publicvariablea, vaihda niitä kahdessa muussa awdrop scriptissä.
Post Reply