Beiträge von BlackFoX

    Das mit dem laufenden System trifft hier nicht ganz zu.
    Zum Thema selber, ich finde das Forum läuft gut wieso sollte man gerade jetzt ein Update machen sprich eine Investition sollte sich
    immer lohnen & ein Ziel habe, jedoch sehe ich hier keinen Anlass zu.

    MTA , najo , da ist Lua im Spiel & die Struktur der Sprache geht mal gar nicht, muss man sich lange dran gewöhnen.
    Neo : Bei mir tauchen auch ab und zu Fehler auf sprich Flüchtigkeitsfehler die man übersieht & um Fehler zu korrigieren muss man nur Englisch können & die Logik der Sprache & die Syntax verstehen

    Ich geb dir einen Tipp, fange nicht beim Vergnügen also Sa-mp an sondern lerne erst einmal die Sprache selber,
    so wirst du später weniger Fragen haben bzw. unnütze Fragen bezüglich Fehlern & Zusammenhängen.
    Das allerwichtigste ist Logisch zu denken.

    Das was im Spiel abläuft hat wirklich nur geringfügig mit der Sprache selbst zu tun, genau das gleiche gilt
    für IDE ( Editor ) der Pawno heißt & die Sprache selbst die sich Pawn nennt.


    Das was sich im Spiel realisieren lässt ist was anderes als Pawn, wenn man eine Sprache lernt sollte man nach Prinzip arbeiten & nicht nach Vorlage,
    so würden sich auch alle Fragen bezüglich Fehlern und weiteres vermeiden lassen sprich euch würde vieles wirklich leicht fallen.


    Schön erklärt aber hat wohl eher mit dem Spiel & dem Einstieg ins Spiel zu tun & eher indirekt mit Pawn.


    p.s. Wer zu Faul dazu ist sollte die Finger ganz davon lassen oder sich selber am Riemen reißen

    Dual Core ? Wenn nicht kannst du es mit dieser Leistung vergessen
    Besonders Notebooks/Laptops kann man nicht mit einem kompletten Rechner vergleichen,
    da alles auf Mobile Technologie basiert & auch dementsprechend Limitiert wird.

    Seid wann macht man Aprilscherze unter Neuigkeiten rein :> ?
    Wer lesen kann ist klar im Vorteil, ich glaube die Lage ist hier etwas ernster als drüber zu scherzen nicht ?

    Deluxe Map Converter einfach unter Google suchen,
    danach


    • MTA Dm Map öffnen
    • In den Header eintragen bzw. ihn ändern in
    Code
    <map mod="race" version="1.0">


    • nun irgendwo anders abspeichern wo du die Datei finden kannst
    • Unter Deluxe Map Converter importieren
    • Konvertieren lassen
    • Fertig

    Eine Idee wäre es das ein Moderator / Administrator diese Bestätigung vorher nochmal bestätigt sprich als Zusage.
    Zudem muss sich keiner einen Premiumrang kaufen da es ja nicht zwingend notwendig ist, es ist einfach eine Freiwillige Aktion,
    ob diese Spenden dem Forum nun helfen sollen oder dem der es veranlasst ist bisher auch unklar.

    Hallo Liebe Community,


    heute möchte ich verdeutlichen wozu die Datentypen in Pawn eigentlich da sind & warum man sie so benutzt.


    • STOCK

    Dieses Element wird genutzt wenn die Funktion erst in den Ausgabecode aufgenommen werden soll sobald sie aufgerufen wird sprich vorher wird
    sie nicht überprüft oder sonstiges selbst mit Fehlern wird sie ignoriert da sie in die Ausgabe nicht einbezogen wird.

    • Datentypen ( String, Integer, Boolean ) können wiedergegeben werden


    • PUBLIC

    Dieses Element stellt eine öffentliche Variable/Funktion dar, Öffentlich heißt nicht nur um gesamten Code Bereich den ihr im Moment vor euch habt,
    sondern es heißt auch das das diese Variablen/Funktionen nicht nur Intern als vom Skript aufrufbar sind sondern auch an Externen Schnittpunkten aufgerufen werden
    können.

    • Können keine Standardwerte in Parametern übernehmen
    • Können nur Integer wiedergeben


    • STATIC

    Statische Variablen, diese Art von Variablen/Funktionen werden nicht nur definiert weil es schön aussieht, nein sie werden definiert da sie immer ihren Speicherplatz behalten sprich
    sie bleiben im Speicher immer an der selben stelle, diesen behält diese Variable/Funktion solange bis sie letztendlich vom Code selber zerstört wird sprich
    solange bis der Lokale Bereich für die Variable seine Gültigkeit behält.



    • NEW

    Nicht sehr besonders, definiert im Grund eine Variable auf Lokaler Bereichsbasis, sollte jeder kennen.



    • FLOAT

    Float oder auch Floating Point Value zu Deutsch eine Komma Zahl, dieser Datentyp kann nicht nur gerade Zahlenwerte Speichern sondern
    auch Werte die aus dem Koordinatenbereich stammen sprich Große & genaue Werte wenn man das so ausdrücken darf.



    • CONST

    Konstante Variablen sprich wie das Wort selber schon sagt, sie sind fest & können nicht verändert werden, diese können z.b. als
    Index Angabe verwendet werden da sicher ist das der festlege Speicher bleibt & somit nichts verrutschen kann,
    zu den Konstanten Variablen zählen mitunter auch die Makro Variablen die im Grund durch den Compiler nur ersetzt werden,
    sprich sie werden nicht als Bezeichner übernommen der auf eine Adresse zeigt sondern der Wert in ihnen wird Direkt
    im Speicher zugeteilt.





    Wozu die ganzen Datentypen ?


    Das hat sich bestimmt jeder mal gefragt, jedoch muss man bedenken das
    durch Datentypen genaue Reservierungen im Speicher entstehen, genauer
    gesagt es wird nur soviel Platz reserviert wie benötigt wird.
    Würde der Compiler das nicht tun müsste er ungenau festlegen was er brauche sprich
    einen Maximalen Wert haben der ihm sagt so viel könnte der Nutzer brauchen
    das würde die Ausgabe umso größer machen & wenn man das dann auf mehrere Werte
    verteilt wäre dies das Chaos pur besonders, für Systeme die nicht die optimale Leistung
    erbringen könnten wäre wäre diese Ausgabe der reinste Selbstmord sprich
    sie könnten diesen Speicher nicht aufbringen oder die Anweisungen wären einfach
    zu lang & würden Zeit kosten.



    Warum stürzt manchmal der Compiler ab ?


    Das hat damit zu tun das es stellen gibt die die Analyse nicht erkennt jedoch trotzdem
    in den Speicher verschiebt so kann es dazu kommen das der Temporäre Compiler Speicher
    eine Falsche Anweisung bekommt die nicht verarbeitet werden kann, so stürzt der Prozess ab.


    Was können Funktionen wann wiedergeben ?


    Manchmal gibt es Probleme bei der Wiedergabe aber dann nur wenn
    eine Funktion sprich die Sprache diesen Datentypen nicht Automatisch
    erkennt & seine Struktur nicht übernehmen kann,
    dann müssen Funktionen mit einem Tag belegt werden sprich einer
    Eigenschaft die der Funktion sagt welche Struktur bei der Wiedergabe
    übernommen werden soll.



    Zusatz


    ( Float ) :


    //Variablen
    const Float:value = 3.14;
    new Float:value = 3.14;


    // Beispiel Funktion
    Float:Funktion( param0 , param1 )return 7.1;


    // Nur anders...
    forward Float:Funktion( Float:param0 , Float:param1 ); // Deklarieren
    Float:Funktion( Float:param0 , Float:param1 )
    {
    return (param0+param1);
    }



    ( Array/Zeichenfolgen ) :


    Im Grunde nur viele normale Variable die
    viele Zeichen zusammensetzen.


    new text[32]; // 32 Zeichen von 0 angefangen 0..31


    // verwendung 2
    new text[] = {'H','A','L','L','O'}; // Größe wird Automatisch übernommen
    new text[] = {1,2,3,4}; // Auch Zahlen sind Möglich...
    new text[] = "Hallo"; // Geht auch...
    new text[]; // << FALSCH, warum ? Keine Größe kein reservierter Speicher = keine spezielle Größe .
    new einZeichen = 'A'; // Geht auch
    new einZeichen = 2; // Zahl 2


    // Anwendungen...


    new text[] = "Hallo Welt";
    printf("%s",text); // << Gibt den Text Hallo Welt wieder


    // Anwendung 2
    printf(text); // << Printf erwartet sowieso eine Array ... daher geht das ebenso Direkt...
    print(text); // genau das gleich nur das Print keinen f(ormat) enthält


    // Spezielle Anwendungen...


    printf(text[3]); // Nein nicht nur die Stelle 3 wird wiedergegeben sondern alles ab Stelle 3
    /* Dabei kommt lo Welt raus */


    new einmal = 2;
    printf(einmal); // << Falsch , es wird eine Array erwartet keine Variable mit nur einer Zelle
    printf("%i",einmal); // << Geht %i = Integer als Platzhalter , printf fügt dies nun in den Text ein.


    new einzeichen = 'a';
    printf("%c",einzeichen); // << %c = Char = Zeichen



    // Weitere Anwendung...
    new testtext[] = "Test";
    new laenge = strlen(Test);


    // Wenn man die Länge ab Stelle 2 haben will
    laenge = strlen(Test[2]); // << da eine Array erwartet wird, wird alles mitgenommen hinter Stelle 2, dazu muss die Variable auch ein Array sein




    (Eigene Struktur) :

    enum struktur // Neue Struktur
    {
    wert1,
    wert2
    }



    forward struktur:testfunktion(struktur:test); // Deklarieren
    struktur:testfunktion(struktur:test) // Funktion hat die Struktur ,,struktur´´
    {
    test = struktur:(12,5);//Wert1 = 12, Wert2 = 5
    return test; // Struktur wiedergeben
    }


    ( Enum richtig verwenden ) :


    enum test_struktur
    {
    Float:kommazahl,
    integer,
    string[32]
    }


    Strukturen sind dazu da um Datentypen kompakt in eine Variable einzubinden sprich Strukturen innerhalb
    einer Variable zu erschaffen.


    Beispiel
    new variable[test_struktur];



    Zugriff
    variable[integer] = 5;
    printf("Integer Value : %d",variable[integer]);


    Genau das gleich bei allen anderen Variable, die je nach dem den bestimmten & eingetragenen Datentyp
    beinhalten & erfordern.


    Mehrere Zugriffe sprich mehrmals mehrere Werte Dynamisch verändern.


    new variable[50][test_struktur]; // 50x die test_struktur also kann man an jeder Stelle neue Werte eintragen.


    Im großen und ganzen schafft ihr mit diesem System ein gewisse Ordnung, selbst einzelne Variablen wie hier


    enum vars
    {
    server_verbindungen,
    server_getrennt
    }
    new Server[vars];



    Server[server_verbindungen]++;
    Server[server_getrennt]++;


    So das war es soweit, ich hoffe ich konnte euch hiermit helfen sprich ein Schritt weiter an die Basis heranführen.

    Das mit der CPU last hängt davon ab das auf diesem Server auch noch Sa-mp Server laufen also
    kann der Server doch nicht allzu schlecht sein oder ? Jedenfalls läuft er ja so einigermaßen sprich zu mehr als 60-70% flüssig.

    Mir hat immer das Wbb3 Sunrise Design gepasst, als dieses gelöscht wurde war ich wohl gezwungen das
    neue zu verwenden, wie dem auch sei ich wäre für kein neues Design zudem wäre es Sinnlos denn
    das Aktuelle passt ja zum Thema Grand Theft Auto & San Andreas Multiplayer.

    Schlecht wäre das mit der Einladung auf jedenfall nicht denn so kann man sich die Leute vom Hals halten
    die meinen überall Chaos einzurichten , ich nenns mal so , so halten wir uns die ADHS Opfer vom Hals.
    Sprich geschlossene Community ist immer ein Stück weit besser denn so kann man seine Leute genau im Auge behalten.