Um welches Game handelt es sich denn?
Also SA:MP, MTA, GTA IV, GTA V (Rage:MP/Alt:V)?
Um welches Game handelt es sich denn?
Also SA:MP, MTA, GTA IV, GTA V (Rage:MP/Alt:V)?
Sie kann in ihrem aktuellen Stand keine komplexeren Programmieraufgaben lösen.
Achso, das klang so, als ob du generell von KI sprichst. Dass das ChatGPT aktuell noch nicht vermag - ok.
Das sind im Gegensatz zu ChatGPT auch tatsächlich sehr flexible Systeme. Sprache an sich hat viele Regeln, die klar strukturiert sind. Das macht eine solche Implementierung weniger Komplex als ein Straßenverlauf.
Nur als Info, das kann man so pauschal gar nicht sagen.
Wenn man vom reinen DNN spricht, ist ChatGPT deutlich größer und komplexer, als die für ein autonomes Fahrzeug.
Sind ja aber völlig unterschiedliche Anwendungszwecke, deshalb ist das nicht so zu vergleichen.
Schlussendlich wird sie aber niemals den Menschen ersetzen können.
Hui ui ui, mächtige Worte.
Wie kommst du zu dieser Annahme? ![]()
Hast du das aus diesem Tutorial entnommen?
Hast du da am Anfang die Änderungen an der Client-Config auch vorgenommen? ![]()
Wenn nicht, check das mal aus und teste evtl das auch mit dem Chat. Vermutlich stimmt da etwas bei der Einrichtung nicht.
Sagen wir du hast 3 Felder in der Datenbank.
id, level, geld
Und weiterhin sagen wir in der Datenbank gibt es 2 Spieler, die du abfragst.
Dann ist der row_count = 2 und der field_count = 3
Also wenn Rows = 0 ist, dann wissen wir, dass kein Spieler gefunden wurde. Das ist die wichtige Information.
Wie viele Felder zurückkommen, wenn Rows zurückkommen, wissen wir eig eh schon immer, da wir sie im Query spezifizieren.
Aus diesem Grund ist diese Info eig unnötig und wurde dann später ausgelagert in eine andere Funktion.
Falls du aus irgendwelchen Gründen das auch wissen magst, gibt es die: cache_get_field_count Funktion, welche genauso funktioniert wie die row_count Funktion ![]()
wie muss das hier bei r41 4 aussehen hänge dort fest und werde nicht ganz aus der include schlau
Einfach:
wie müsste es denn nun sein das er nicht mehr mekkert?
Also eigentlich ist es richtig so.
Keine Ahnung, was qawno hat, wenn ich den Code bei mir verwende, bekomme ich keine Warnings.
Allerdings ein paar Hinweise:
Ich empfehle dir sowas:
//Nutze das Pressed Makro:
#define PRESSED(%0) \
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
stock IsFahrlehrerOnline() //Klar, am Besten nicht Denglisch, aber who cares
{
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && SpielerInfo[i][pFraktion] == 10) return true;
}
return false;
}
//Und dann unten:
if(PRSSED(KEY_SECONDARY_ATTACK) && IsPlayerInRangeOfPoint(playerid,3,1020.2769,-1348.1006,13.3283) && !IsPlayerInAnyVehicle(playerid))
{
return ShowInfoDialog(playerid,"Information", IsFahrlehrerOnline() ? ("Es ist ein Fahrlehrer online /service!") : ("Es ist leider kein Fahrlehrer online!"));
}
Alles anzeigen
Kannst auch einfach dein Skript in Notepad++ öffnen und oben auf "Codierung" klicken und schauen, dass du es nach ANSI kodierst.
Kannst du mir das vielleicht erklären? Ich benutze den pawncc von open.mp.
Das hat damit nichts zu tun.
Die haben das in der Standard-Lib geändert, dass man sich nicht vertippen kann.
Du solltest da nicht TEXT_DRAW_FONT:1 nutzen, sondern die Werte, welche im enum definiert wurden.
In diesem Fall TEXT_DRAW_FONT_1
Genauso solltest du oben nicht progressbar_direction:0 nutzen, sondern direkt: BAR_DIRECTION_RIGHT
Beim Align, sollst du dann auch nicht TEXT_DRAW_ALIGN:1 nutzen, sondern direkt: TEXT_DRAW_ALIGN_LEFT
Dadurch kann man das besser lesen, als einfach nur eine 0 oder 1. Da weiß man direkt, um was es sich handelt.
Kannst ja einfach mal in das Include von omp reinschauen, das ist das omp_textdraw.inc Da siehst du die ganzen enums.
Joa...ist wohl n Bug im Include.
Die "aktuelle" Version wurde ja auch nicht als Stable Release gekennzeichnet...vermutlich wurde da nicht mehr so viel getestet.
Allerdings habe ich dir mal die stable Version angehangen, dort funktioniert es.
Sicher, dass deine Variable nicht negativ wird? xD
Wie erstellst du denn das Progressbar.
Kannst du uns etwas Code geben, wie das so aussieht bei dir? ![]()
Bad news, wie im issue schon vermutet: https://github.com/Marvisak/altv-python-module/issues/31
Wird das Modul wohl nicht mehr weiterentwickelt.
Kannst dir natürlich den aktuellen Source ziehen und versuchen es selbst gegen die aktuelle SDK zu bauen.
Da müssen aber vermutlich einige Sachen angepasst werden, da das letzte Update schon gut n halbes Jahr her ist 😅
Benutzen die auch includes?
Ja, natürlich.
Aber viele "durchsuchen" auch tausende Zeilen Code. Da wissen die Skripter halt, wo was steht.
Wenn man die grundlegenden Callbacks in SA:MP kennt, dann weiß man ja tendenziell, wo was zu suchen ist.
Aber natürlich ist es extrem schwer so Bugs zu identifizieren. Das ist der Grund, wieso es so viele Bugs auf vielen Servern gibt.
1. Kein Godfather nutzen.
2. Modularer Skripten Durch static ist es möglich Dinge ähnlich wie mit private besser zu trennen.
Die Lösung lautet Includes. Wichtig dafür ist auch Hooking (in dem verlinkten Thread weiter unten steht da noch was zu) zu verstehen.
Hoffe du arbeitest auch direkt mit OpenMP.
Wichtig auch, Streamer Plugin nutzen (für alles! Objekte, Pickups, 3DTextlabel) und MySQL (kein Dini o.ä.).
Empfehle auch Pawn.CMD für Commands.
Und den neusten Pawn Compiler https://github.com/pawn-lang/compiler/releases
Ein gutes, performantes, sauberes SA:MP Skript zu entwickeln ist ein sehr langwieriger Prozess. Ich weiß nicht, wieso man sich im Jahr 2023 diesen struggle noch antun sollte. Niemand wird dich dafür lobpreisen, es wird keine User geben, welche das zu schätzen wissen. Vermutlich wird es gar keine User geben.
Als Übung ist es natürlich interessant, aber vielleicht gäbe es da Projekte, bei denen auch mehr Leute einen Nutzen von haben.
Aber trotzdem, viel Erfolg. 👍🏼
Es gibt ChatGPT, es gibt Google und es gibt YouTube.
Und du fragst auf Breadi danach? xD
Das nenne ich mal mutig.
Aber ich leite einfach mal weiter auf YouTube, da wird es gut erklärt:
Also das hat nichts mit meiner Programmierung zu tun.
Hättest du mal ein print gesetzt, wie z.B. so:
static string ToReadableByteArray(String xMsg)
{
bytes[] bytes = Encoding.ASCII.GetBytes(xMsg);
return string.Concat(bytes.Select(b => " "+b.ToString("x2")).ToArray());
}
//Und dann folgendes geloggt hättest:
Console.WriteLine(ToReadableByteArray(PrepareMessage(newAnzeige))); //Da kommt raus:
//7a 41 31 54 65 73 74 0d 4e
Es wird ja auch ein 0a angehangen.
Da schaust du hier: https://www.torsten-horn.de/techdocs/ascii.htm
Und siehst, aha, das ist ja gar kein Punkt, sondern ein LF, ein Line Feed, also ein new line.
Und das kommt durch das WriteLine, welches du am Serial Port verwendest.
Mal ein:
probiert? ![]()
Interessant wäre es, was du aktuell sendest, bzw, wie der aktuelle Code bei dir aussieht...
Ich lass das Video einfach mal unkommentiert, aber so fühle ich mich manchmal, wenn ich hier Beiträge lese.
Da fällt einem echt nichts mehr zu ein.
Was denn für ein CMS?
Und wieso suchst du Teammitglieder?
Ist das nicht eher die falsche Sektion?
Bietest du nicht eher Geld? Muss das nicht in den Marktplatz?
Oder hoffst du darauf, dass dir das jemand aus Spaß 4 free macht?
Wurde das irgendwo versteckt?
Nein, einfach auf das Profil klicken -> Benutzerkonto -> Verwaltung: https://breadfish.de/wcf/account-management/
Dann da ins Mittelfeld scrollen ![]()
Aber evtl wird das gesperrt, wenn man es erst kürzlich geändert hat..kp