Beiträge von Jameso

    HandsUper

    Du kannst das nicht in der normalen Welt machen, bitte map dein ganzes Mapping nicht Spiegelverkehrt unter dem Boden. Damit verschwendest du nur die max. streambaren Objekte.

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    Schau dir das Video an, dort wird es ganz einfach erklärt. :)

    Ich glaube du verdrehst da was, habe es trotzdem ausprobiert klappt nicht. Er nimmt sich halt die geladen Bizkasse aus der 6. Zeile und überschreibt sie auf der 5. Zeile.

    Das verwirrt so, aber nur das speichern ist so komisch wie gesagt, MySQL blick ich nichts mehr durch haha

    So wie du es geschrieben hast, kann man das leider in PAWN nicht machen, ich habe es mal so gemacht.

    Jetzt speichert er mir den Wert schön und gut. Allerdings kopiert er bevor er das erste mal speichert die bizkasse aus der bizid6. in die bizid5. über.


    Heißt: Problem ist nicht richtig gelöst, irgendwas stimmt nicht richtig.

    Beim Laden ist ja alles richtig wie erwähnt. Dort habe ich auch if(bInfo[bizid][db_bid]==0)continue; aufgerufen.

    C
    stock BizSpeichern(bizid)
    {
        new query[512];
        new db = bInfo[bizid][db_bid] - 1;
        printf("ID:%d, bizid: %d",bInfo[bizid][db_bid], bizid);
        mysql_format(handle,query,sizeof(query),"UPDATE `biz` Set `bizkasse`='%d' WHERE `ID`='%i'",
        bInfo[bizid][bbizkasse],db);
        mysql_pquery(handle,query);
        return 1;
    }

    Auch ich melde mich in der Scripting Base wieder :D

    Knapp 1 Jahr nichts mit MySQL gemacht, war dabei alles mögliche mit MySQL zu verbinden und stoße schon recht am Anfang auf ein Problem:



    Ich rufe den Stock auf und gebe den Wert 5 mit als bizid.

    Folgendes Problem: bizid hat auch den Wert 5, allerdings speichert er mir das in die Zeile darunter. (bizid6) Versucht bizid -1 zu speichern allerdings bringt das die Werte durcheinander.

    C
    stock BizSpeichern(bizid)
    {
        new query[512];
        printf("ID:%d, bizid: %d",bInfo[bizid][db_bid], bizid);
        mysql_format(handle,query,sizeof(query),"UPDATE `biz` Set `bizkasse`='%d' WHERE `ID`='%i'",
        bInfo[bizid][bbizkasse],bInfo[bizid][db_bid]);
        mysql_pquery(handle,query);
        return 1;
    }

    Er printet: "ID:6, bizid: 5"

    In der Datenbank sieht es so aus: https://prnt.sc/qqvp5l Primary Key und Auto Increment ist in der Spalte aktiviert.


    Code
    forward BizLaden();
    public BizLaden()
    {
    new rows;
    cache_get_row_count(rows);
    for(new bizid = 0; bizid < sizeof(bInfo); bizid++)
    {
    cache_get_value_name_int(bizid,"ID",bInfo[bizid][db_bid]);
    if(bInfo[bizid][db_bid]==0)continue;
    cache_get_value_name_int(bizid,//.......

    Das passiert beim Laden und er lädt auch das richtige. Also bei der wirklichen ID5, wie sie in der Datenbank steht die wirklichen und richtigen Werte.

    Warum kriege ich es nicht in die richtige Zeile, besser gesagt warum ist die Spaltenid jetzt anders beim Speichern... hoffe jemand hat eine Idee

    Dann werde ich als nächstes versuchen mir eine neue Festplatte zu holen, kaufe sie gleich und mal schauen...


    Edit:
    Neue Festplatte zugelegt, gestern alles installiert ich konnte den PC neu starten hat alles geklappt. Jetzt habe ich gestern Abend mein PC ausgeschaltet indem ich mein Power-Button 10 Sekunden gedrückt halte.

    Heute will ich mein PC starten klappt alles, ich starte Black Ops 2 (gestern ging es) und der PC hängt sich wieder komplett auf.


    Problem versucht zu erkennen, ich habe versucht nachdem ich den PC noch mal neu gestartet habe ihn mal so Neuzustarten oder Herunterzufahren klappt nicht.

    Kurz bevor mein PC sich ausschaltet freezed er. Es kann doch nicht sein nur, weil ich mein PC so einmal ausschalte das alle hinüber ist? Woran kann es liegen....


    Wichtig zu erwähnen davor auf der alten Festplatte konnte ich mein PC auch nicht so herunterfahren hat immer gefreezed kurz davor

    Hallo, (Beitrag vom Smaltalk hierher verschoben, größeres Problem)

    seit gestern versuche ich den ganzen Tag dieses Spiel zum laufen zu bringen, es klappt nicht.

    Ich mache schon seit knapp 6 Monaten die Erfahrung das mein PC an manchen tagen auf einmal ein Freeze bekommt ich den Sound rapide wiederholt höre und dieser Neustartet.


    Wenn ich das Spiel Call of Duty Black Ops 2 starte öffnet sich das Spiel (Blackscreen) und mein Mauszeiger ist zu sehen der blaue Kreise dreht.

    Nach ca. 15 Sekunden hängt sich der komplette PC auf und muss ihn dann per Knopfdruck ausschalten.


    Was ich versucht habe bis jetzt:

    • Gamefiles reparieren auf Steam
    • Das Spiel neu installieren
    • DirectX & vredist. neu installiert
    • Orochie-Ceg ausprobiert <- keine Veränderung soll aber bei AMD FX Prozessoren helfen
    • Windows 10 neu aufgesetzt
    • BIOS Update versucht (Keine Neue Version als F2 bei mir)
    • AMD "downclocken" und Turbomodus ausschalten
    • Geforce Beta Treiber installiert
    • Das Spiel auf einem USB-Stick installliert


    Alles vergeblich, hat jemand noch irgendeine Idee was ich tun könnte? Eventuell liegt es ja vielleicht doch nicht am CPU.

    Das Spiel lief aber vor einem Jahr ohne Probleme.


    Meine Specs:

    https://prnt.sc/qhg3dw

    Könnte ich theoretisch nicht einfach ganz viele Variablen aus einer machen?


    Sagen wir ich benutzte die Zahlen 0 und 1 (Benutzte ich als true/false), dann könnte man doch aus der Zahlen-Stelle weitere Variablen erstellen.


    Heißt, ich speicher in der Datenbank als Beispiel: 01100111.
    Jetzt nehme ich mir die Zahlen und frage ab, welche Zahl die erste Stelle hat, die zweite Stelle hat usw.


    Meine Fragen:
    Wie frage ich die Zahl an der bestimmten Stelle ab?
    Wie verändere ich eine Zahl an einer bestimmten Stelle, ohne die anderen Stellen zu ändern?

    Hast du versucht deinen PC neu zu starten? Spaß bei Seite :D


    Sein Pc ist nicht mehr aktuell, dafür aber noch relativ in Ordnung und müsste GTA San Andreas ohne Probleme packen.


    Es gibt ein Cleo Mod der dir erlaubt die Sichtweite einzustellen, eventuell kannst du damit ein paar Tests durchführen.
    https://www.youtube.com/watch?v=mavfke6oo_s


    Es könnte auch sein, dass einige GTA Dateien nicht richtig funktionieren.
    Teste das mal, also am besten mal GTA San Andreas neu installieren und schauen ob dort der Fehler auch da ist.


    Ich empfehle dir keinen FPS Unlocker zu benutzten, wenn du SA:MP spielst. Der Sync ist komisch, für die anderen Spieler laggst du einfach nur rum wenn du ca. 120 FPS + hast.

    Ich habe bei vielen globalen Timern folgende Zeile:
    if(!IsPlayerConnected(i) && !IsPlayerInAnyVehicle(i)) continue;



    Ich will ja abfragen, ob der Spieler connected ist und in einem Fahrzeug ist, aber warum benutzte ich da ein '!' davor.
    Ich frage, weil es so funktioniert und ich einfach nicht weiß, wie es so funktionieren kann :D


    Ich mein, bin ich doof? Wenn man !IsPlayerConnected abfragt, dann fragt man doch ob der Spieler nicht connected ist hä?
    Das ist einer meiner ersten Codeversuche von damals, hoffe einer kann mich aufklären, ich mein das continue hat da nichts zusuchen aber der Code funktioniert und genau das macht mir Kopfschmerzen X(


    Code
    public Timer()
    {
    	for(new i=0; i<MAX_PLAYERS; i++)
    	{
    		if(!IsPlayerConnected(i) && !IsPlayerInAnyVehicle(i)) continue;
                    if(getPlayerSpeed(i) > 100)
                    {

    Ja es geht halt darum, wenn ein Spieler das Interior eines Gebäudes betritt, dass er eine Nachricht erhält: "Du hast die Stadthalle betreten".


    Heißt Theoretisch.
    "Du hast die Stadthalle betreten"
    "Du hast die Stadthalle verlassen"


    hier möchte ich, wenn diese Nachricht die letzte ist, dass beim erneuten betreten diese Info Nachricht nicht raus geht.
    Sieht in meinen Augen sehr unprofessionell aus, wenn man öfters wo rein geht:


    "Du hast die Stadthalle betreten"
    "Du hast die Stadthalle verlassen"
    "Du hast die Stadthalle betreten"
    "Du hast die Stadthalle verlassen"
    "Du hast die Stadthalle betreten"
    [tt]"Du hast die Stadthalle verlassen"


    Jetzt weiß ich nicht, ob es sich lohnt einfach einen Delay zu setzten? Kann ja dann sein, dass mit Zufall der Delay im Gebäude nicht mehr aktiv ist und er dann nur die Nachricht beim rausgehen kriegt.
    Bin ja nur ein kleines bisschen Pingelig :D

    Hello, liege mit MySQL noch hinten :D
    ich habe eine Tabelle in der Datenbank wo bestimmte Werte von jedem Spieler gespeichert werden, in der Art "Leaderboard".
    Wenn ich jetzt die 10 größten Werte heraussuchen will, wie mache ich dies am effektivsten?


    ich weiß nicht wie ich die 10 Größten Werte rausfiltere. Das ist ja der größte Wert:
    SELECT * FROM `/*Tabelle*/` ORDER BY `/*Spalte*/` DESC LIMIT 1 


    Das ganze soll mit einem Timer jede Stunde passieren, gibt es eine Möglichkeit das ganze asynchron zu machen?
    So dass der Server nicht belastet wird dadurch

    @ARCADION Indem du eine Variable setz.
    Erstell eine globale Variable oder füge eine Variable im Playerneum hinzu. (Wichtig die globale Variable muss für [MAX_PLAYERS] erstellt werden.)
    Du setzt die Variable und danach einfach einen Checkpoint, in der Abfrage gehst du so vor:


    Code
    public OnPlayerEnterCheckpoint(playerid)
    {
        if(pInfo[playerid][pCheckpoint] == CHECK_NAVI)
        {
    		GameTextForPlayer(playerid, "Angekommen", 255, 3);
    		DisablePlayerCheckpoint(playerid);
    		pInfo[playerid][pCheckpoint] = 0;
        }
    //...

    So würde es mit der PlayerEnum aussehen (grüße gehen raus @SkeeZy)
    Beim setzten dann einfach pInfo[playerid][pCheckpoint] = CHECK_NAVI;
    (Nach der Zeile den Checkpoint einfach setzten.)


    Wichtig ist, dass du solche Sachen (CHECK_NAVI) als Zahl definierst. z.b #define CHECK_NAVI 1


    //Edit
    Du könntest das Ganze auch erweitern und den Checkpoint wieder setzten, wenn ein Spieler mal ein Crash/Timeout hat oder so disconnected.
    (Usefull, wenn man die 0815 Tutorials an der Stelle weiter macht, wo man aufgehört hat z.b)