Da ich zurzeit an meinem Script arbeite und ich viel mit MySQL verarbeite wollte ich mal Spontan fragen, wie viel SQL verwendet ihr?
Speichert ihr all eure Werte von Interiors oder Pickups in Datenbanken?
Beiträge von Warren
-
-
Unter w7 habe ich keine treuberprobleme
Wenn dein Driver für Windows 7 ist kannst du auf Windows 10 Probleme bekommen.
Eventuell gibt es noch keine Driver für deinen hersteller. (ATI, Nvidia, ...) -
Geht sicher das ihr beide die gleiche Hamachi Version habt.
Soweit ich weiß gab es Probleme beim Tunneling mit verschiedenen Versionen.
Und vergesst nicht das er beim Verbinden deine HamachiIP verwenden muss.Diese Version von Hamachi bevorzuge ich. (http://www.oldversion.com.de/windows/hamachi-1-0-1-5)
-
Was passiert wenn du mit where arbeitest?
Läuft beides perfekt, jedoch gibt es nach manch einem GMX das Problem das er die Daten von der Datenbank falsch ausließt.
Also gibt er an das er den Account "angeblich" nicht gefunden hat und leitet mich zur Registration weiter.
Habe die Vermutung gehabt das er nach dem GMX nicht schnell genug ist alles zu verarbeiten.Ich denke aber das ich den Bug behoben habe.
-
Eigentlich dürfte das nicht an samp liegen, hatte das Problem damals nie.
Wieso benutzt du auch LIKE im query?
LIKE hab ich erst hinzugefügt weil ich dachte das es ein Problem mit dem Input vom Namen gibt.
Soweit kommt der Bug nicht oft vor, deswegen kann ich nicht immer gleich sehen obs was bringt.
Verwende eigentlich kein LIKE sondern nur die abfrage ob der exakte Name besteht. -
Hallo leute,
Ich möchte mich nicht scheuen mal zu fragen ob jemand das Problem kennt wenn man den Server ein paar mal Rebootet (gmx).
Und man sich beim Login registrieren muss obwohl der Name schon in der Datenbank existiert.
Der Account wird in die Datenbank geschrieben und ist nun doppelt vorhanden.
Natürlich closed mein Server vor dem Reboot die Connection zur Database.Als normale abfrage verwende ich:
mysql_format(Handle, strQuery, 256, "SELECT * FROM users WHERE username LIKE '%e'", Player[playerid][Name]);Benutze MySQL R35 von BlueG.
Jemand anderes auch das Problem?
Bis jetzt schätze ich das dass Problem am Plugin liegt, falls nicht gibt auch noch zu der abfrage extra Checks. -
Ist zwar ne dumme Idee aber versuch erst die Daten von Bank etc. zu Saven und dann erst die Spieler.
Eventuell erst die abfrage ob die Spieler und Daten gespeichert wurden. -
Gute Admins die nicht jeden scheiß Abusen und sich mit ihren Rechten vorteile verschaffen.
Ein Server bei denen es öfters mal Script erneuerungen gibt und nicht jedes viertel Jahr. -
Sieht alles Top aus! Leider fehlt für die Trainer noch die anzahl der aktiven Spieler.
-
Du hast da [playerid] vergessen, und dann funktioniert das ganze nicht mehr, sondern du erhälst einen Error bzw. Warning.
Das muss so aussehen: if(!TowLightsBool[playerid])Oh stimmt, hab ich ja jetzt garnicht drauf geachtet. Hatte gedacht Kaliber meinte damit den Operator.
Ja, hatte ich vergessen weil ich den Code nochmal editiert hatte im Forum. Kommt vor.
Du hast da [playerid] vergessen, und dann funktioniert das ganze nicht mehr, sondern du erhälst einen Error bzw. Warning.
Das muss so aussehen: if(!TowLightsBool[playerid])
Richtig.Zudem fragt man keys nicht mit == ab, sondern mit &.
Desweiteren sind char Arrays besonders bei bools wesentlich Speicher sparender.
Und ja auch ein konstantes Array ist besser
mfg.
Right,
Ja, konstante variable sind besser, wenn man sie nicht im Code verändern möchte.
In SAMP wusste ich bis jetzt noch nicht das man ein bools in char Arrays verwenden kann. -
Funktioniert auch ohne das man die Variable in eine Klammer setzt.
Verwendet man in C++ ja auch um anzugeben "if not". -
Wenn du das compilt hast...solltest du eigentlich Warnings bzw Errors bekommen...
Ich möchte jetzt nichts Kritisieren, aber du hast regelrecht nur die Variablen Konstant gemacht und den Code verkürzt.
Wieso sollte ich Errors bekommen? Das ist nur ein Snippet kein voller Code.Meine Persönliche meinung zu Sparen an Platz ist anders.
Ich mag es nicht wenn alles gleich in eine Zeile geklatscht wird wie der loop: for(new i = 0; i < 4; i++) { Destroy(...); }
Wirkt mir auf dauer einfach so zusammen gequetschtIsPlayerInAnyVehicle sollte z.B im Else zurückgeben das man nicht im Fahrzeug sitzt.
Natürlich kann man GetPlayerVehicleId gleich an die Variable übergeben, find ich aber unübersichtlicher.
Und zu dem anderen halt immer noch die Meinung, zuviel kürzen find ich unübersichtlich. -
Hallo,
Auch wenn es dies schon oft gegeben hat und es vielleicht auch schon oft genug Released wurde.
Arbeite gerade am Ordnungsamt in meinem Script und hab mir eben die Warnleuchten vom Towtruck gebaut.
Hier habt ihr den Snippet, kann nützlich sein für manch einen.new TowLights[MAX_VEHICLES][4];
new TowLightsBool[MAX_PLAYERS];
new Float:TowLightPos[][] = {
{-0.19590, 2.47680, 0.37230, 0.00000, 0.00000, 0.00000},
{0.22910, 2.47680, 0.37230, 0.00000, 0.00000, 0.00000},
{-0.53590, -0.49220, 1.48230, 0.00000, 0.00000, 0.00000},
{0.54510, -0.49220, 1.48230, 0.00000, 0.00000, 0.00000}
};if(newkeys == KEY_CROUCH)
{
if(IsPlayerInAnyVehicle(playerid))
{
new VehicleID;
VehicleID = GetPlayerVehicleID(playerid);
if(GetVehicleModel(VehicleID) == 525)
{
if(!TowLightsBool)
{
TowLightsBool[playerid] = true;
for(new i = 0; i < 4; i++)
{
TowLights[VehicleID][i] = CreateObject(19154, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 90.0);
AttachObjectToVehicle(TowLights[VehicleID][i], VehicleID, TowLightPos[i][0], TowLightPos[i][1], TowLightPos[i][2], TowLightPos[i][3], TowLightPos[i][4], TowLightPos[i][5]);
}
SendClientMessage(playerid, 0xFFFF00FF, "INFO: Du hast die Warnleuchten eingeschaltet!");
}
else
{
TowLightsBool[playerid] = false;
for(new i = 0; i < 4; i++)
{
DestroyObject(TowLights[VehicleID][i]);
}
SendClientMessage(playerid, 0xFFFF00FF, "INFO: Du hast die Warnleuchten ausgeschaltet!");
}
}
}
}Have fun.
-
Natürlich, es gibt aber immer momente wo man einfach nicht weiter kommt auch wenn man die einzele bestandteile gerlernt hat.
Dies hat viel mit dem Logischen Denken zu tun. und wenn jemand die Aufgabe nicht Logisch erfassen kann braucht er eine Hilfestellung.wichtig ist dass er sich überlegt, warum der Code funktioniert und richtig ist.
Wenn er dies nicht macht so wird er sowohl im Schul als auch im Arbeitsleben versagen.Da stimme ich dir 100% zu und freue mich das du normal darauf antwortest und nicht wie andrere gleich Aggresiv werden.
-
Was bitte bringt ihm das wenn er keine Ahnung hat wie das gehen soll?
Ich weiß nicht ob die Leute sich hier mit jedem anlegen...Wenn er es Schulisch behandelt wird sein Lehrer ihn wohl auch Informationen gegeben habe wie man es umsetzen kann.
Oder er wird mit dem Stoff soweit sein das er es theoretisch umsetzen kann. Meine Gott... 8 Klasse oder so? -
Die lösungen die ihr hier zeigt sind alle falsch... Sie gehen nicht darauf ein das anfangs von jedem schein klein zu groß jewals einer ausgegeben werden sollen.
Aber ein Lösungsansatz. -
Ich hatte mich oben eben etwas falsch ausgedrückt entschuldigung wenn es falsch aufgenommen wurde.
Wie oben im Tutorial meinte ich damit die Variable gleich wenn der Server gestartet wird mit GetMaxPlayers zu beschreiben.
Natürlich ist es besser die Definition von MAX_PLAYERS neu zu definieren, so steht es auch oben im Tutorial.
Ja, es ist auch schneller wenn man es nicht jedesmal aus dem Speicher lesen muss.
Eigentlich wollte ich in diesem Tutorial nicht auf Geschwindigkeit beruhen lassen aber ich hab es hinzugefügt.
Danke für eure AntwortenEs ging doch gerade eben noch um Die funktion in der Schleife oder irre ich mich
Nein BlackAce du irrst dich nicht!H4rd_B4se wie schon ich denke der Unterschied zwischen einer Variable und einer Funktion sollte allen klar sein?
Ich weiß nicht für wie dumm einen die Leute abstempeln oder jemanden halten falls man sich mal falsch ausdrückt. -
Nicht wirklich, du rufst jedesmal die Funktion auf, das mag bei niedriger Zahl noch schneller als die direkte Konstante sein, aber das rentiert sich im Grunde nicht.
Nicht wenn man es vorerst in eine globale Variable speichert und es im callback ongamemodeinit aufruft. -
Im Gegenteil.Man sollte viel lieber schauen, ob man nicht doch das als Konstante nutzen könnte.
In den wenigsten Fällen ist eine Variable notwendig als Schleifen-Bedingung
mfg.
Damit meinte ich das die Leute die Konstante weg lassen
Konstanten könnte man z.B bei Fraktions Arrays verwenden oder bei sachen die man eh ins Script Hardcoded.Ich schau mal wenn ich zuhause bin welches nun wirklich schneller ist.
-
Man sollte aber auch wissen das mein eine constance variable nicht mit dem Code modifizieren kann.
In den meisten fällen fällt deshalb die Konstante weg.GetMaxPlayers macht die Schleife nicht langsamer sondern schneller soweit ich weiß.