du hast die Test Map ?
Bist du denn an der richtigen stelle ?
Mach mal Screens vom Ort / Vor Ort
Beiträge von BlackFoX
-
-
Streamer FS eingetragen & kompiliert ?
-
Wie gesagt Falsch eingerückt, zudem ist das kein Fehler sondern nur eine Warnung
-
Ist doch kein Fehler, ein Hinweis auf deine Code Struktur mehr nicht, hängt davon ab wie viel Tabs du zur Code Formation/Reihenfolge verwendest
Richtig
code
{
code
{
code
}
}Falsch
code
{
code
{
code
}
}#pragma tabsize 0
sollte auch helfen, einfach Lokal definieren.
Hat im Direkten Sinne nichts mit dem Streamer zu tun

-
Wenn du einen Router benutzt solltest du die Ports freischalten ( 7777 ) auf TCP & UDP sollte sich unter Sicherheit > Regeln einstellen lassen durch
eine Definition einer Regel dort den Namen der Regel & Port wie gesagt TCP & UDP = 7777 dann speichern & dein PC für den Router freigeben müsste auch unter
Punkto Sicherheit zu finden sein. -
Such den Treiber mal unter Google

ansonsten noch ein Tipp, wenn du den Drucker installierst muss er angeklemmt sein so das der Treiber ihn auch erkennt & alle nötigen Komponenten verbinden kann ansonsten
funktioniert er nachher nicht Ordnungsgemäß -
http://www.dracoblue.net da gibts ebenfalls ein Anti Cheat Skript von Draco zudem heißt es auch Fairplay
-
Du suchst selbst gemachte Include Files ? dazu musst du sie erst einmal erstellen oder ist der Unterschied dir noch immer nicht klar.
-
Wenn du Englisch kannst wirst du erkennen das dies einfach Kommandos für dein Vorhaben sind sprich Geld geben, Geld nehmen, Geld zurücksetzen & Abfragen

-
Wurde hinzugefügt
-
lol geklaut, das System gabs schon auf mehreren Servern...
zudem ist es ja nicht so schwer , so was baust du dir mit ein paar Timern & Variablen zusammen -
Kann ich dir nicht sagen, ich hab nen Linux 32 Bit da läuft er jedenfalls ohne Probleme ansonsten müsstest du einfach mal testen & eventuell Berichten wie es verlief
-
Achtung, weiteres Update, Streamer läuft nun zum Teil schneller & Stabiler, ein kleiner Fehler bezüglich des Objekt erstellens wurde ebenfalls behoben.
//é und bevor ihr euch wundert wo der Source Code ist, der ist nun im Archiv dabei ( Hauptarchiv )
-
Hallo Leute,
ich habe gestern eine Map erstellt die über 3k Fahrzeuge enthielt, nun war mein Problem sa-mp unterstützt die ja gar nicht, da hab ich mir einfach einen Fahrzeug Streamer gebaut,
er beinhaltet alle nötigen Funktionen aber bevor ich euch diese zeige möchte ich euch eine kleine Erklärung zur Installation des Streamers abliefern.Installation
- bfx_vstream.pwn in den Filterscript Ordner & kompilieren, vorher eventuell die Menge der Maximalen Fahrzeuge bestimmen
- Nun nehmt ihr die die Datei bfx_vStream.inc und packt sie in den Include Ordner damit ihr auch die Verknüpfungen zu den Funktionen habt.
- packt die bfx_vstream als FS dazu in eure Server Konfiguration
- Nun könnt ihr euer Skript fügt bfx_vStream als Include File hinzu und nun könnt ihr euer Skript mit folgenden Funktionen schmücken
Funktionenb_CreateVehicle(model,Float:x,Float:y,Float:z,Float:a,Color1,Color2,Interior = 0,virtualworld = 0,Float:StreamDistance = (MAX_STREAM_DIS));
- Fahrzeug erstellen mit gewünschten Angaben
- Die Parameter ab Interior sind Optional ( Für die, die nicht wissen was damit gemeint ist sie haben einen Standardwert & müssen nicht extra angegeben werden )
b_DestroyVehicle(id);
- Fahrzeug zerstören/löschen
b_GetVehiclePos(id,&Float:x,&Float:y,&Float:z);
- Fahrzeug Position ermitteln
b_GetVehicleZAngle(id,&Float:a);- Fahrzeug Ausrichtung ermitteln
b_SetVehicleToRespawn(id);
- Fahrzeug erneuern (Respawn)
b_LinkVehicleToInterior(id,interiorid);
- Fahrzeug in einen Innenraum setzen
b_AddVehicleComponent(id,componentid);- Fahrzeugkomponenten hinzufügen
b_RemoveVehicleComponent(id,componentid);
- Fahrzeugkomponenten löschen
b_ChangeVehicleColor(id,color1,color2);
- Fahrzeug Farben setzen
b_ChangeVehiclePaintjob(id,paintjobid);
- Fahrzeug Lackierung setzen
b_SetVehicleHealth(id,Float:health);
- Fahrzeug Energie setzen
b_GetVehicleHealth(id,&Float:health);
- Fahrzeug Energie ermitteln
b_AttachTrailerToVehicle(id,stream_trailer);
- Fahrzeuganhänger an ein Fahrzeug hängen ( Hänger muss auch ein Stream Fahrzeug sein )
b_DetachTrailerFromVehicle(id);
- Anhänger vom Fahrzeug entfernen
b_IsTrailerAttachedToVehicle(id);
- Abfragen ob das Fahrzeug einen Hänger hat
b_GetVehicleModel(id);
- Fahrzeug Modell ermitteln
b_GetVehicleComponentInSlot(id,slot);
- Fahrzeugkomponenten ermitteln
b_RepairVehicle(id);
- Fahrzeug reparieren
b_GetVehicleStreamID(vehicleid);
- Fahrzeug Stream ID ermitteln
b_SetVehicleVirtualWorld(vehicleid,virtualworld);
- Setzt das Fahrzeug in eine Virtuelle Welt
b_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z);
- Fahrzeug Position setzen
b_SetVehicleZAngle(vehicleid,Float:a);
- Fahrzeug Ausrichtung setzen
So das war es zu den Funktionen, der Streamer selber unterstützt soweit so viel Fahrzeug wie ihr möchtet, ich habe ihn Persönlich ja mit 3000 Fahrzeugen getestet,
er läuft bisher Stabil & Crash Gefahr ist auch gleich 0 sprich der Streamer ist abgesichert.So zum Schluss noch die neuen Callbacks & das Hauptskript.
(( Callbacks Funktionieren wie die Standards nur das sie nur die Stream Fahrzeuge unterstützen sprich normale Fahrzeuge werden nicht beachtet ))
public OnBFXVehicleStreamerStreamIn(vehicleid)
public OnBFXVehicleStreamerStreamOut(vehicleid)
public OnBFXVehicleSpawn(vehicleid)
public OnBFXPlayerEnterVehicle(playerid,vehicleid,ispassenger)
public OnBFXPlayerExitVehicle(playerid,vehicleid)
public OnBFXVehicleMod(playerid,vehicleid,componentid)
public OnBFXVehiclePaintjob(playerid,vehicleid,paintjobid)
public OnBFXVehicleRespray(playerid,vehicleid,color1,color2)
public OnBFXVehicleStreamIn(vehicleid,forplayerid)
public OnBFXVehicleStreamOut(vehicleid,forplayerid)
Immer darauf achten das vehicleid != vehicleid sondern die Stream ID benötigt ! dazu verwendet ihr in Kommandos oder so
wo es nicht vorhanden ist ,,b_GetVehicleStreamID´´ ( !! Die Callbacks geben bereits die StreamID wieder !! )So und nun Viel Spaß
-
dcmd verwendet ein Makro sprich Makros sind für das ersetzen der Werte da so wird in wirklichkeit der Code dort ausgeführt sprich vom Compiler eingesetzt
#define foreach(%1) for(new %1 = 0;%1<MAX_PLAYERS;%1++) if(IsPlayerConnected(%1) && !IsPlayerNPC(%1))
foreach(player)
{
// Schleife
}das gleich und ähnlich wird in dcmd übernommen darin wird ebenfalls StringCompare verwendet sprich darin liegt kein großer unterschied
-
dcmd soll angeblich schneller sein aber ich sehe darin einfach zu viele unnötige indirekte Zugriffe bzw. immer wieder neu Zugriffe die Zeit kosten
-
Du hast eine Array die zurückgibt welche Fahrzeuge Nutzbar sind & hast diese verwendet oder eine eigene Funktion noch dazu ?
-
Pawn wurde nie Up To Date gehalten schon seit der ersten Sa-mp Version nicht mehr zudem ist es egal wenn du noch die alten Funktionen benutzt die aber mit den selben Funktionsadressen Verknüpft sind,
würden die Verknüpfen der neuen Funktion die nutzen willst nicht in der Inc verfasst sein würde dies Fehler ausschlagen da sie nicht definiert sind.Sprich im endeffekt ist es egal mit welchem Pawn Compiler in Sa-mp umgewandelt wurde, es bleibt gleich da die Version sich nie wirklich geändert hat sonst würde Sa-mp nicht mehr kompatibel sein da
Sa-mp wiederum noch den amx Emulator nutzt. -
AttachTrailerToVehicle(Anhänger,Hauptfahrzeug);
-
public OnPlayerStateChange(playerid,newstate,oldstate)
{
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(playerid);
if (IsTrailerAttachedToVehicle(vehicleid))
{
AttachTrailerToVehicle(GetVehicleTrailer(nutzbar), Nichtnutzbar);
}
else SendClientMessage(playerid, 0xDEEE20FF, "Diese Fahrzeug kann Diese Funktion nicht!");
}
else SendClientMessage(playerid, 0xDEEE20FF, "Du hast kein Fahrzeug");
return 1;
}