achso gut dann zurück zum eigentlichen thema
Beiträge von moeck
-
-
Moin,
da mich Scriptfehler beim spielen nerven habe ich mir heute mal die QuestionDealer angeschaut, da ab und mal dort ein Scriptfehler auftaucht und ich wissen wollte weshalb. Nachdem ich mir das zu Gemüte geführt habe entsteht der Fehler durch folgenden Vorgang.
1. Ein Zivilist verkauft seine Drogen beim Dealer
2. Er verlässt die Insel (disconnected)
3. Ein Cop fragt den Dealer ab.
In dem Moment kommt es zu mindestens bei uns zu einem Scriptfehler. Daher hier mal der Fix für das Problemchen. Habe es mal für die 3.1.4.8 und die 5.0 gepostet aber man kann es wahrscheinlich auch für alle anderen Versionen nutzen.
3.1.4.8
C: fn_questionDealer.sqf
Alles anzeigen/* File: fn_questionDealer.sqf Author: Bryan "Tonic" Boardwine modified by moeck (Lost of Paradise) Description: Questions the drug dealer and sets the sellers wanted. */ private["_sellers","_names","_players"]; _sellers = (_this select 0) getVariable["sellers",[]]; if(count _sellers == 0) exitWith {hint localize "STR_Cop_DealerQuestion"}; //No data. life_action_inUse = true; _names = ""; _players =[]; { _players pushBackUnique (getPlayerUID _x); } forEach allPlayers; { if(_x select 2 > 150000) then { _val = round((_x select 2) / 16); }; if (_x select 0 in _players) then { [[_x select 0,_x select 1,"483",_val],"life_fnc_wantedAdd",false,false] spawn life_fnc_MP; }; _names = _names + format["%1<br/>",_x select 1]; } foreach _sellers; hint parseText format[(localize "STR_Cop_DealerMSG")+ "<br/><br/>%1",_names]; (_this select 0) setVariable["sellers",[],true]; life_action_inUse = false;
5.0
C: fn_questiondealer.sqf
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_questionDealer.sqf Author: Bryan "Tonic" Boardwine modified by moeck (Lost of Paradise) Description: Questions the drug dealer and sets the sellers wanted. */ private ["_sellers","_crimes","_names","_players"]; _sellers = (_this select 0) getVariable ["sellers",[]]; if (count _sellers isEqualTo 0) exitWith {hint localize "STR_Cop_DealerQuestion"}; //No data. life_action_inUse = true; _crimes = LIFE_SETTINGS(getArray,"crimes"); _players =[]; { _players pushBackUnique (getPlayerUID _x); } forEach allPlayers; _names = ""; { _val = 0; if ((_x select 2) > 150000) then { _val = round((_x select 2) / 16); } else { _val = ["483",_crimes] call TON_fnc_index; _val = ((_crimes select _val) select 1); if (_val isEqualType "") then { _val = parseNumber _val; }; }; if (_x select 0 in _players) then { [(_x select 0),(_x select 1),"483",_val] remoteExecCall ["life_fnc_wantedAdd",RSERV]; }; _names = _names + format ["%1<br/>",(_x select 1)]; } forEach _sellers; hint parseText format [(localize "STR_Cop_DealerMSG")+ "<br/><br/>%1",_names]; (_this select 0) setVariable ["sellers",[],true]; life_action_inUse = false;<p> </p> <p></p>
Gruß,
moeck
-
na ich würde mal nach Land_PipeFence_01_m_gate_v1_closed_F in allen Dateien suchen
eventuell ist da ja noch irgendwo ein rest.
-
Bostigo poste mal dein script. kann man bestimmt beheben
-
Shadow l Eagle weil perx das geschrieben hat
Du hast doch sicher Altis Life 5.0. Da hast du noch eine menge arbeit vor dir, bis da auf Malden läuft.
Du muss überall eine class Malden eintragen damit bestimmte Dinge wie Housing funktionieren.
-
Schaue mal in deine Config_Master.hpp da findest Du folgenden Eintrag
Code/* Vehicle Purchase Prices */ vehicle_purchase_multiplier_CIVILIAN = 1; //Civilian Vehicle Buy Price = Config_Vehicle price * multiplier vehicle_purchase_multiplier_COP = .5; //Cop Vehicle Buy Price = Config_Vehicle price * multiplier vehicle_purchase_multiplier_MEDIC = .75; //Medic Vehicle Buy Price = Config_Vehicle price * multiplier vehicle_purchase_multiplier_OPFOR = -1; // -- NOT IN USE -- Simply left in for east support.
Hier wird festgelegt wieviel Prozent Cops und Medics vom Ziv Preis zahlen.
Gruß,
moeck
-
dann poste hänge mal deine Logs hier ran. Client-, Server- und extDB Logs. Eventuell vorher mal das Debug mit einschalten
-
Moin,
also ich würde das ja über den Godmode Button lösen. Da kannst Du dann das komplette Loadout ändern. Und wenn du den Button wieder klickst dann bekommt er ein Standard Loadout wieder übergeholfen. Das könnte wie folgt aussehen.
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_adminGodMode.sqf Author: Tobias 'Xetoxyc' Sittenauer modified by moeck (LostofParadise) Description: Enables God mode for Admin */ if (FETCH_CONST(life_adminlevel) < 4) exitWith {closeDialog 0; hint localize "STR_ANOTF_ErrorLevel";}; closeDialog 0; if (life_god) then { life_god = false; if (FETCH_CONST(life_adminlevel) isEqualTo 5) then { switch (playerSide) do { case west: { [] call life_fnc_copLoadout; }; case civilian: { player forceAddUniform "U_O_CombatUniform_oucamo"; player addVest "V_PlateCarrier1_blk"; player addBackPack "B_Carryall_oucamo"; player addItem "NVGoggles"; player assignItem "NVGoggles"; }; case independent: { [] call life_fnc_medicLoadout; }; }; }; titleText [localize "STR_ANOTF_godModeOff","PLAIN"]; titleFadeOut 2; player allowDamage true; } else { life_god = true; titleText [localize "STR_ANOTF_godModeOn","PLAIN"]; titleFadeOut 2; player allowDamage false; if (FETCH_CONST(life_adminlevel) isEqualTo 5) then { removeHeadgear player; removeVest player; removeAllWeapons player; removeBackpack player; sleep 1; player forceAddUniform "classname der Uniform"; player setObjectTextureGlobal [0, "textures\deine_Texture.paa(jpg)"]; player addItem "ItemGPS"; player assignItem "ItemGPS"; player addItem "NVGoggles_OPFOR"; player assignItem "NVGoggles_OPFOR"; if(backpack player != "") then {(unitBackpack player) setObjectTextureGlobal [0,""];}; // Rucksack unsichtbarmachen falls vorhanden. }; };
Natürlich kannst Du da auch noch andere schicke Sachen mit machen
z.B. Tazer aktivieren oder oder oder.
Gruß,
moeck
-
-
Ähm warum rufst Du das Ganze nicht per call auf? Einfach die rang.sqf als Function deklarieren und fertig?
-
Hi,
habe es irgendwie überlesen aber es freut mich, dass es jetzt klappt
Gruß,
moeck
-
lege dir mal ein neues Profil an und versuche es damit mal. Ab und an gehen Profil kaputt.
-
das script gibt es hier im forum
, irgendwo habe ich auch den Link dazu nur nicht gerade jetzt zur hand suche mal in den Tuts
-
ja klar dann musste die waffe als parameter mit übergeben
-
Wenn ich es richtig verstehe musst Du einfach beim Aufruf der Funktion den Case Wert mit geben.das sieht dann ungefähr so aus
Code_Btn1 buttonSetAction "[coploadout1] call life_fnc_coploadout; closeDialog 0;"; _Btn2 buttonSetAction "[coploadout2] call life_fnc_coploadout; closeDialog 0;";
und dann machst du einfach den ein case mit coploadout1 - coploadoutx
Code
Alles anzeigenparams ["_loadout"]; removeAllWeapons player; {player removeMagazine _x} forEach magazines player; switch (_loadout) do { case "coploadout1" { player addWeapon "arifle_TRG20_F"; player addPrimaryWeaponItem "200Rnd_556x45_Box_Tracer_F"; player addMagazine "30Rnd_556x45_Stanag_Tracer_Yellow"; player addPrimaryWeaponItem "optic_Hamr"; }; case "coploadout2" { player addWeapon "LMG_03_F"; player addPrimaryWeaponItem "optic_Hamr"; player addPrimaryWeaponItem "200Rnd_556x45_Box_Tracer_F"; player addMagazine "200Rnd_556x45_Box_Tracer_F"; }; };
so ich hoffe das hilft dir weiter
-
Doch den Fehler hatten wir schon häufiger und dann ist auch der Client hängen geblieben. Ansonsten bitte mal Debug im Client und Server einschalten und die Logs hochladen.
Gruß,
moeck
-
immer wieder gern
-
Moin,
das mit den Restarts auf Linux kann man sehr einfach lösen
. Jede Linux Distribution bringt ein eingebautes Restarttool mit. Das Zauberwort lautet hier cron, damit lassen sich alle möglichen Sachen anstellen. Man braucht nur ein Script den Start und Stopp Befehl des Servers dort konfigurieren und schon ist man fertig. Also zu was braucht man da ein Extra Tool für? Wo willst Du den RCON-Client ausführen? Wir nutzen ebenfalls ein RCON Tool auf unseren eigenen Rechnern und damit ist es automatisch Windows
.
Gruß,
moeck
-
Es sollte doch eigentlich keinen Unterschied machen ob Arma auf Linux oder Windows läuft. Der Client läuft doch eher auf Windows oder habe ich da was falsch verstanden?
-
Moin,
sorry dass ich erst jetzt antworte. Also Du musst die mission.sqm in den Ordner Dokumente\Arna 3 - Other Profiles\<dein Profil\Missions\krankenhaus legen bzw. erstellst Du eine neue Mission und ersetzt dort die Mission.sqm. Des Weiteren erstelltst Du ein 2. Mission z.B. altis.life und dort kopierst du die mission.sqm aus deiner mission.pbo rein. Anschliessend machst du den Eden Editor auf und öffnest die Krankenhaus Mission. Dort markierst Du die 3 Elemente des Krankenhauses und drückst STRG + C zum kopieren. Danach öffnest Du deine Altis.life Mission und gehst zu einem Punkt wo du das Krankenhaus einfügen möchtest. Dort drückst du dann STRG + V. Jetzt hast Du die Elemente in der Mission.sqm. Jetzt noch richtig zusammen schieben und das automatisierte Setzen des Krankenhauses ausbauen.
Gruß,
moeck