Visa ämne
Scriptfrågor
|
|
Publicerat 2013-10-14 17:35
|
|
Hej alla scriptkunniga! Jag fortsätter att mata på med mitt tjuv och polis uppdrag men har fastnat på några buggar jag inte lyckas få till och skulle behöva hjälp. if (side player == WEST) then{c1 addAction ["Arrest and send to jail", "teleport1.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; c1 är då namnet på en av bovarna, denna linje gör så att man får en addaction om man är polis (west) och är två meter ifrån en bov. Detta fungerar jättebra i editorn och c1 körs som en AI men fungerar inte alls i multiplayer. Någon som kan utröna problemet? Sedan så kommer ett lodout script för bovarna som ser ut som följande. removeallweapons player; removevest player; removeheadgear player; removeuniform player; player addweapon "arifle_Katiba_ACO_F"; player additem "NVGoggles"; player assignItem "NVGoggles"; player addvest "V_BandollierB_oli"; player addheadgear "H_Shemag_olive"; player adduniform "U_IG_Guerilla3_1"; player additem "ItemMap"; player assignItem "ItemMap"; player additem "ItemCompass"; player assignItem "ItemCompass"; player additem "muzzle_snds_H"; player addmagazine "30Rnd_65x39_caseless_green"; player addmagazine "30Rnd_65x39_caseless_green"; player addmagazine "30Rnd_65x39_caseless_green"; player addmagazine "30Rnd_65x39_caseless_green"; player addmagazine "30Rnd_65x39_caseless_green"; player addmagazine "SmokeShell"; removeBackpack player; player addBackpack "B_Carryall_ocamo"; backpa = unitBackpack player; clearMagazineCargo backpa; backpa addmagazineCargoGlobal ["30Rnd_65x39_caseless_green",6]; backpa addmagazineCargoGlobal ["SmokeShell",4]; backpa addmagazineCargoGlobal ["APERSBoundingMine_Range_Mag",4]; Problemet här är att kläderna "U_IG_Guerilla3_1" inte dyker upp på spelarna i multiplayer, dom dyker upp om man dör och respawnar. I editorn fungerar det kanon. Slutligen har jag ett script som gör en specifik pistol till en stungun, fick det att fungera en enda gång men sedan slutade det och jag lyckas inte utröna felet. Jag har laddat upp hela uppdraget nedanför om någon känner sig manad att ge sig på stunscriptet.
Megadeth bifogade följande bild:fil:
Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-14 21:30
|
|
Jag tror att det är för att uniformen du försöker ge till en OPFOR räknas som en BLUFOR-uniform. Jag testade att ge scriptet till en blufor och en greenfor istället och det funkade i båda fallen. Konstigt att det ändå fungerar efter respawn. Ett tips är att ge ammunitionen innan vapnet i skriptet, då slipper man börja med att ladda om. |
|
|
|
Publicerat 2013-10-15 13:30
|
|
Kanon! Flyttar katiban lite nedåt i scriptet. Jag testar uniformen då jag kommer hem, tycker det är dock konstigt att uniformen skulle räknas som en bluform uniform. Testade du i multiplayer också? dvs att en spelare spelar den slotten. Då återstår ju egentligen bara "if (side player == WEST) then{c1 addAction ["Arrest and send to jail", "teleport1.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; " Vilket jag tycker är jävligt skummt att det inte fungerar i multiplayer. Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-15 14:14
|
|
Citera Problems: In MP the command is not initialised in functions called by initline or init eventhandlers. http://community.bistudio.com/wiki/pl...iki/player Kan kanske vara därför? Hur initierar du den koden? Kör du den i initen på varje enhet, i init.sqf eller på något annat sätt? |
|
|
|
Publicerat 2013-10-15 14:38
|
|
Citera Toktotte skrev: +1. Ett annat sätt att lösa det är att ta bort hela if grejen och lägga till actionet för alla men att du sätter som condition (side player) == west i addAction parametern tillsammans med din avståndscheck som du redan har. The enemy cannot predict your actions if you have no idea what you're doing.
|
|
|
|
Publicerat 2013-10-15 14:56
|
|
Koden körs från en units init detta är taget från mission.sqm init="_null = [this] execVM ""teargas.sqf"";null = [this] execVM ""loadout.sqf""; this addeventhandler [""respawn"",""_this execVM 'loadout.sqf'""];";}; Loadout.sqf if (side player == WEST) then{execVM "loadoutwest.sqf"}; if (side player == EAST) then{execVM "loadouteast.sqf"}; loadouteast.sqf Redan kopierad här uppe. loadoutwest.sqf if (side player == WEST) then{c1 addAction ["Arrest and send to jail", "teleport1.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; if (side player == WEST) then{c2 addAction ["Arrest and send to jail", "teleport2.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; if (side player == WEST) then{c3 addAction ["Arrest and send to jail", "teleport3.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; if (side player == WEST) then{c4 addAction ["Arrest and send to jail", "teleport4.sqf", [], 1, true, false, "","((_target distance _this) <2)"];}; Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-15 15:30
|
|
Citera Megadeth skrev:blabla Läste du vad toktotte skrev/länkade? .. The enemy cannot predict your actions if you have no idea what you're doing.
|
|
|
|
Publicerat 2013-10-15 15:59
|
|
Joo jag läste det, ni frågade ju hur jag gjort så jag visade det Har ni något tips på hur jag enklast ändrar? Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-15 16:04
|
|
Eftersom det står klart att player inte är initialiserad när diverse initfunktioner körs hos enheter och så, så skulle jag rekommendera att du sätter det i init.sqf med en säkerhetscheck där du väntar på att player == player. Det står hur du kan skriva en sådan väntsats på artikeln som toktotte länkade. The enemy cannot predict your actions if you have no idea what you're doing.
|
|
|
|
Publicerat 2013-10-15 20:36
|
|
Kanon! tackar för hjälpen boys! uppskattas verkligen! +100 för er Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-15 21:28
|
|
Jajjemensan nu fungerade Addactionen så jag kunde teleportera en fiende till fängelset. Dessvärre så blev det ingen skillnad på uniformen, jag får helt enkelt ändra så vi kör independent som skurkar. Katiban är också ändrad så den läggs till efter ammunitionen. Då är det bara stun scriptet jag måste få igång, och jag vet fan inte vars jag ska börja, har även där testat alla möjliga kombinationer. Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
|
Publicerat 2013-10-18 13:11
|
|
Nu är uppdraget i det hela klart, dock så får jag fortfarande inte igång stun scriptet. http://forums.bis...tun-script Någon som kan utröna felet? Playing Diablo 3 is for losers! Boting Diablo 3 is for winners!
|
|
|
Gå direkt till forum: |