Ich hab mich wohl falsch ausgedrückt:
Die meisten nehmen MySQL, da es ja so schnell sei und wenn man hier den Server mit Querys zubombt, fällt das o.g. Argument weg.
LG
Ich hab mich wohl falsch ausgedrückt:
Die meisten nehmen MySQL, da es ja so schnell sei und wenn man hier den Server mit Querys zubombt, fällt das o.g. Argument weg.
LG
Man lese sich den Wiki Artikel zu OnPlayerGiveDamage durch:
Zitat von SAMP-WikiAlles anzeigenNote: TakeDamage and GiveDamage won't match up perfectly until lag compensation is done on the shooting. And even then there will be some differences (due to lag).
One thing you can do with GiveDamage is detect when other players report that they have damaged a certain player, and that player hasn't taken any health loss. You can flag those players as suspicious.
You can also set all players to the same team (so they don't take damage from other players) and process all health loss from other players manually.
You might have a server where players get a wanted level if they attack Cop players (or some specific class). In that case you might trust GiveDamage over TakeDamage.
There should be a lot you can do with it. You just have to keep in mind the levels of trust between clients. In most cases it's better to trust the client who is being damaged to report their health/armour (TakeDamage). SA-MP normally does this. GiveDamage provides some extra information which may be useful when you require a different level of trust.
LG
Nochmal hier zur Verdeutlichung:
Die Funktionen die maddin hier gepostet hat, sollte man auf keinen Fall für den Gebrauch von MySQL verwenden.
Für jedes Spalte wird hier immer ein Query ausgeführt, so dass bei vielen Daten, der Server mit Querys zugebombt wird / Spieler,
und somit auch keinen Vorteil gg. Filesystemen bietet.
LG
GetPlayerHealth returnt keinen spezifischen Wert, die Health wird im 2.Parameter der genannten Methode gespeichert ![]()
http://wiki.sa-mp.com/wiki/GetPlayerHealth
LG
Keevin
Das kann man ja wohl erwarten, dass man das bisschen SQL Kann ....
Außerdem geht die Abfrage Methode um einiges schneller, als deine ganze Klickerei und so.
LG
Keevin
Warum so umständlich ? Warum nicht die Vorteile von MySQL ausnutzen und nicht einfach das Abfrage Fenster aufmachen und ne
Abfrage reinhauen, wie ich oben beschrieben habe ?
LG
Tag,
Gibt es eine möglichkeit schnell einen Account zu finden bei phpmyadmin ?
Denn ich habe echt keine nerven dafür 19 , 30 Zeilige Seiten Accounts durchzusehen bis ich diesen finde...
Hoffentlich hat einer eine Lösung..
Vielleicht mal das Abfrage Fenster nutzen und dort eingeben:
Tabellenname und Spaltenname ersetzen.
LG
Ne das heißt du hast wahrscheinlich nicht genügend RAM.
Zitat von KalcorImportant: This plugin uses approximately 70MB of RAM. If you are using shared hosting or a VPS, please confirm with your host that this is okay. A version that uses less RAM is planned although it won't have the same level of accuracy.
Erstmals musst auch auch OnPlayerDeath abfragen ob die killerid nicht eine INVALID_PLAYER_ID ist, sonst wird der Code
bei Selbstmord, etc. nicht ausgeführt.
Zweitens: Zeig uns wie du lädst/speicherst.
LG
Leute,
denkt daran, das sind nur Gebrauchsgegenstände.
Ihr müsst nicht hinter den Namen stehen oder den Gegenstand über alles lieben,
jedoch ist es de facto, dass du bei Apple-Produkten einen großen Teil des Preises dafür aufbringen musst,
um dir das ach so tolle hippe Lebensgefühl anzuschaffen (das dir von Apple versprochen wird, aber nicht existiert), wenn du dir ein "i-Produkt" kaufst.
LG
In der Fehlermeldung steht doch alles wichtige.
Du hast das wahrscheinlich in phpmyadmin reingehauen, musst jedoch eine Datenbank davor auswählen, bevor du den SQL Query darein haust,
damit angegeben ist, in welcher datenbank die tabelle erstellt werden soll.
LG
Hast du evtl. auch vergessen AddPlayerClass oder SetSpawnInfo zu benutzen ?
P.S: Deine Tabelle solltest du besser strukturieren, indem du noch einen eindeutigen Wert als Spalte addest, am besten eine ID mit Auto INCREMENT Funktion.
LG
Oder crashe den Spieler einfach, indem du ihm einen fehlerhaften Skin setzt:
z.B.:
SetPlayerSkin(playerid,-1);
Du kannst nur eine Maximaleanzahl an Zeichen im chat ausgeben wenn ich mich nicht täusche waren dies 144 zeichen.
Da bringt ein 512 großer string auch nix. Wenn du wirklich so viele Zeichen ausgeben willst musst das in mehrere steps machen also SendCLientMessage mit Elementen des gesamt string ausgeben
ZitatText I/O 128 cells (512 bytes)
Wie gesagt sind es 128 Zellen, die 512 sind nicht die Zellen sondern die "Bytes".
LG
@GreenG:
Danke, dass du mich darauf aufmerksam gemacht hast,
das war ein Fehler, darf natürlich nicht in Anführungszeichen stehen.
Ist geändert ...
LG
Im Anhang.
Das nächste mal googlen...
LG
Als Admin schon gestartet ?
LG
Auch wenn es nicht mein Code ist, poste ich hier den mal.
Wenn man SQLite benutzt und Strings escapen will ganz nützlich, da man normalerweise eine solche Funktion nicht hat:
//oben im Code
#define MAX_INI_ENTRY_TEXT 80
stock db_escape(text[]) //Credits to Y_LESS
{
new
ret[MAX_INI_ENTRY_TEXT * 2],
ch,
i,
j;
while ((ch = text[i++]) && j < sizeof (ret))
{
if (ch == '\'')
{
if (j < sizeof (ret) - 2)
{
ret[j++] = '\'';
ret[j++] = '\'';
}
}
else if (j < sizeof (ret))
{
ret[j++] = ch;
}
else
{
j++;
}
}
ret[sizeof (ret) - 1] = '\0';
return ret;
}
Weiß ich, aber ich sammel immer alles in meiner Datenbank, damit ich bei z.B. Anbieterchange ausser der Datenbank nix runterladen muss
So viel Arbeit ist es auch wieder nicht einmal die SQLite-Datenbank (im Scriptfiles-Ordner) per STRG + C zu kopieren ![]()
Nice Filterscript
finde ich echt gut , 9/10
Danke ![]()