Kann ich die Statusbar über einen Befehl ausblenden ?
Probier mal 4 cutText ["", "PLAIN"];
Kann ich die Statusbar über einen Befehl ausblenden ?
Probier mal 4 cutText ["", "PLAIN"];
Das Problem ist halt immer das Beweisen. Es besteht halt vor allem das Problem wenn eine illegale Gruppierung etwas gegen die Cops macht. Bis auf das die Zuschauerzahlen sich zu diesem Zeitpunkt bei dem streamenden Cop verdoppelt und man vielleicht ahnen kann das diese Positionen z.B. die gesehen wurden verwenden, sieht man da halt nicht viel.
Deshalb wollte ich einfach mal danach fragen ob eben jemand für so was schon Problemlösungen gefunden hat.
Was oft hilft: Den Stream nicht Live senden sondern mit Verzögerung. Und ich meine nicht nur 5 Minuten...
Aber da haste immernoch Probleme mit Daten/orten die im Stream preisgegeben werden und auch noch längere
Hilft vielleicht für spontane Situationen, aber da wird es auch kaum genutzt. Meistens bei längeren Einsätzen, wo die Cops sich bereits irgendwo positionieren und die Gegner so an die Positionen kommen.
Da bringt leider auch ein größerer Delay kaum etwas (außer das die Interaktion zwischen Zuschauer/Streamer schwieriger wird).
es geht dabei beispielsweise darum Beweise zu bekommen, dass jemand im Stream zu diesem Zeitpunkt war (sprich eine Verbindung zwischen Ingame und Twitch herzustellen)
Es geht um eine technische Einschränkung des Metagamings. Streaming ist ja generell gut für den Server um diesen zu repräsentieren, wenn die Gruppierungen das aber machen hast du halt ein Problem das dir die Außenwirkung fehlt.
Hey,
ich wollte mal fragen ob ihr Möglichkeiten kennt, Metagaming zu unterbinden bzw. zu erschweren.
Dies eben vor allem im Bereich von Streams (Streamsniping).
Ich glaube, dass es auch andere Serverinhaber interessiert wie man das Problem lösen könnte.
Bin gespannt auf eure Ideen
Problem mit einem Workaround behoben:
Ich lösche die Objekte welche nicht funktionieren und statt diese zu verschieben erstelle ich die nach dem Verschieben neu.
Grundlegend empfiehlt es sich erst die Position und dann die Ausrichtung zu setzen (meine dazu auch etwas im Wiki gelesen zu haben).
Hatte ich schon ausprobiert bis ich mir die Kommentare bei https://community.bistudio.com/wiki/setDir durchgelesen habe (auch wenn die teilweise von 2013 sind).
Ansonsten:
- Wer ist der "owner" des Objektes, also wo wird es berechnet?
- Wer versucht die Position zu ändern?
- Dauert es bei unterschiedlichen Spielern unterschiedlich lang?
- Wird der Code scheduled ausgeführt?
Die Funktion wird von einem Client ausgeführt.
Generell wird die Funktion gespawned.
Das komische ist zudem auch:
Wenn ich bei mir lokal versuche das ganze zu testen funktioniert es wunderbar (dort sind die Objekte auch lokal).
Wenn ich es aber auf einem normalen Multiplayer Server versuche wo ich nicht der Host bin (Objekte sind dort nicht lokal bei mir), dann funktioniert
es bei allen Objekten instant ausgenommen eben dem Zelt und einer Lampe aus dem Contact DLC.
Eine Möglichkeit welche ich noch nicht getestet habe wäre mit remoteExec zu arbeiten, was ich aber irgendwie komisch finde, da setPosATL ja eigentlich einen globalen Effekt haben sollte.
Moin moin.
Mal eine Frage mit etwas, was ich mir nicht erklären kann:
Ich benutze den setPosATL Command zusammen mit setDir.
Mit diesen beiden Befehlen versuche ich Objekte, welche zuvor im Eden Editor platziert worden sind, zu einem anderen Ort zu bewegen.
Eingestellt haben diese lediglich, dass diese keinen Schaden bekommen können (Simulation ist an).
Das ganze funktioniert auch mehr oder weniger, jedoch dauert es bei z.B. Zelten ("Land_MedicalTent_01_NATO_generic_open_F") ein wenig länger (teilweise 1 Minute) und ich muss den setPosATL Befehl mehrmals wiederholen.
Vielleicht hat einer von euch schon einmal eine Begegnung mit diesem Phänomen machen können.
Log wurde nicht angehängt da es keine Fehlermeldungen gab
Hier noch einmal ein Teil des Codes zum Bewegen des Objektes.
mainObj setDir (_posArr select 1);
mainObj setPosATL (_posArr select 0);
sleep 0.2;
{
_obj = _x select 0;
_pos = _x select 1;
_dir = _x select 2;
_obj enableSimulationGlobal false;
_obj setDir (_dir + (getDir mainObj));
_obj setPosATL (mainObj modelToWorld _pos);
_obj enableSimulationGlobal true;
_obj setPosATL (mainObj modelToWorld _pos);
} forEach objects;
Alles anzeigen
Einfachste wäre glaube ich in der fn_weaponShopMenu.sqf einmal ctrlShow [XXX,false]; einzufügen. Bei XXX die ID von dem Dropdown Menü eintragen. Das ist zwar nicht die eleganteste Lösung, jedoch hast du dadurch nicht das Problem alle Fehler auszumerzen.
Sell Price -1 eintragen
Ist das Fahrzeug in der Config_Master unter chopShop_vehicles eingetragen?
(Siehe private _chopable = LIFE_SETTINGS(getArray,"chopShop_vehicles");)
core/shops dort befinden sich verschiedene Dateien. Ich glaube die erste die aufgerufen wird ist fn_chopShopMenu.sqf
Dann schick doch mal bitte die dazugehörige Datei die aufgerufen wird.
Wenn man jetzt aber wie hier es der fall, ist "true" verwendet wird z. B. "boltcutter" mit true verglichen was natürlich false zurückgibt und daher das Script weiter vergleicht.
Mhh.. komplett übersehen, dass da nur "boltcutter" steht.
Da hast komplett recht. Beim Essen hatte ich jetzt eher an den exit vorher gedacht ob das eben Probleme macht, naja.
micky entweder du änderst wie von TaktischerSpeck vorgeschlagen das "true" auf "_item" oder musst eben alle anpassen wie es erklärt wurde.
Solltest du "_item" verwenden müsstest du beim default-case einfach folgendes für deine Baupläne einfügen:
Das ist übrigens die Standard Datei aus der Version 4.
Wie man sieht wird hier auch "true" benutzt.
(https://github.com/AsYetUntitled/…/fn_useItem.sqf)
#include "..\..\script_macros.hpp"
/*
File: fn_useItem.sqf
Author: Bryan "Tonic" Boardwine
Description:
Main function for item effects and functionality through the player menu.
*/
private "_item";
disableSerialization;
if ((lbCurSel 2005) isEqualTo -1) exitWith {hint localize "STR_ISTR_SelectItemFirst";};
_item = CONTROL_DATA(2005);
switch (true) do {
case (_item in ["waterBottle","coffee","redgull"]): {
if ([false,_item,1] call life_fnc_handleInv) then {
life_thirst = 100;
if (LIFE_SETTINGS(getNumber,"enable_fatigue") isEqualTo 1) then {player setFatigue 0;};
if (_item isEqualTo "redgull" && {LIFE_SETTINGS(getNumber,"enable_fatigue") isEqualTo 1}) then {
[] spawn {
life_redgull_effect = time;
titleText[localize "STR_ISTR_RedGullEffect","PLAIN"];
player enableFatigue false;
waitUntil {!alive player || ((time - life_redgull_effect) > (3 * 60))};
player enableFatigue true;
};
};
};
};
case (_item isEqualTo "boltcutter"): {
[cursorObject] spawn life_fnc_boltcutter;
closeDialog 0;
};
case (_item isEqualTo "blastingcharge"): {
player reveal fed_bank;
(group player) reveal fed_bank;
[cursorObject] spawn life_fnc_blastingCharge;
closeDialog 0;
};
case (_item isEqualTo "defusekit"): {
[cursorObject] spawn life_fnc_defuseKit;
closeDialog 0;
};
case (_item isEqualTo "storagesmall"): {
[false] call life_fnc_storageBox;
};
case (_item isEqualTo "storagebig"): {
[true] call life_fnc_storageBox;
};
case (_item isEqualTo "spikeStrip"): {
if (!isNull life_spikestrip) exitWith {hint localize "STR_ISTR_SpikesDeployment"; closeDialog 0};
if ([false,_item,1] call life_fnc_handleInv) then {
[] spawn life_fnc_spikeStrip;
closeDialog 0;
};
};
case (_item isEqualTo "fuelFull"): {
if (vehicle player != player) exitWith {hint localize "STR_ISTR_RefuelInVehicle"};
[] spawn life_fnc_jerryRefuel;
closeDialog 0;
};
case (_item isEqualTo "fuelEmpty"): {
[] spawn life_fnc_jerryCanRefuel;
closeDialog 0;
};
case (_item isEqualTo "lockpick"): {
[] spawn life_fnc_lockpick;
closeDialog 0;
};
case (_item in ["apple","rabbit","salema","ornate","mackerel","tuna","mullet","catshark","turtle_soup","hen","rooster","sheep","goat","donuts","tbacon","peach"]): {
if (!(M_CONFIG(getNumber,"VirtualItems",_item,"edible") isEqualTo -1)) then {
if ([false,_item,1] call life_fnc_handleInv) then {
_val = M_CONFIG(getNumber,"VirtualItems",_item,"edible");
_sum = life_hunger + _val;
switch (true) do {
case (_val < 0 && _sum < 1): {life_hunger = 5;}; //This adds the ability to set the entry edible to a negative value and decrease the hunger without death
case (_sum > 100): {life_hunger = 100;};
default {life_hunger = _sum;};
};
};
};
};
default {
hint localize "STR_ISTR_NotUsable";
};
};
[] call life_fnc_p_updateMenu;
[] call life_fnc_hudUpdate;
Alles anzeigen
Das Switch-Statement ist nicht unbedingt Fehlerhaft.
Für das mit den Crafting Plänen macht True sogar sinn.
switch true do
{
case (_dikCode in actionKeys "MoveForward"): _fn_moveForward;
case (_dikCode in actionKeys "MoveBackward"): _fn_moveBackward;
default _fn_invalidKey;
};
Die Frage ist ob andere Items funktionieren.
Überprüf mal bitte deine Config_vItems.hpp ob dort bei den jeweiligen Items edible und drinkable jeweils auf -1 gesetzt sind.
Ich würde anfangen in der Datei, welche das abbauen behandelt, eine Abfrage einzubauen ob ein Fahrzeug in der Nähe ist.
Danach würde ich unter allen Fahrzeugen sagen wir mal im Umkreis von 10m (nearestObjects) eine Abfrage machen ob das Fahrzeug Holz transportieren kann (da müsstest du auf die Cfg zugreifen, einfach z.B. beim Fahrzeugshop schauen wie die anderen Daten gelesen werden). Danach einfach abfragen ob _x in life_vehicles. Sollte es so ein Fahrzeug geben dann nehme es mit exitWith (damit die Variable nicht weiter überschrieben wird mit entfernteren Fahrzeugen) und speichere es in eine Variable (nearestObjects ist bereits nach Distanz sortiert). Danach wenn diese Variable definiert ist das Fahrzeug zum beladen nehmen, ansonsten den Spieler.
Bei deiner Öl Sache: Schau dir mal an wie es im Altis Life Script beim Tempest Gerät gemacht wurde (der hat glaube ich standardmäßig so eine Funktion für alle Arten von Farmitems)
Mich würde interessieren was für Pfade dort angepasst wurden... Muss man eigentlich rein nichts an Pfaden ändern. Wenn du deine Website URL richtig eintragen würdest, würde keine Fehler entstehen
ich habe an der URL nichts geändert, dass ist es ja. An der Datei mit dem Dialog auch nicht.
Ich habe deine Sachen runtergeladen und dann via PBO Manager zu einer PBO gemacht und zu den anderen Mods mit eingefügt
Möchte nicht unfreundlich wirken, allerdings soll der Codeschnipsel denen helfe, die damit was anzufangen wissen.
Ein Tutorial muss ich für einen Codeschnipsel nicht realeasen. Alles funktioniert, wenn es richtig eingetragen wird. Alles getestet
Das Problem ist nur folgendes: An der "config" an sich habe ich nichts bearbeitet und an unbearbeiteten Dateien treten dann Fehler auf.
Die müssten eig. schon vorher da gewesen sein
Eine kleine Anleitung wäre noch gut, wenn ich den Mod als PBO konvertiere kommen leider nur fehler
Beispiel (keine Änderungen außer in der config.hpp Pfade angepasst)
ErrorMessage: File blue_client_mod\includes\dialog\RscDisplayMPInterrupt.hpp, line 529: Config: End of line encountered after https:;