PAWN Scripting erlernen.

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Schönen guten Abend, liebe Breadfish Community.


    Nach sehr sehr langer Inaktivität, durch private Gründe, möchte ich erneut das PAWN Scripting erlernen.


    Ich habe bereits Google benutzt und auf diversen Seiten verschiedene Tutorials + Videos gefunden.
    Allerdings sind die meisten davon sehr veraltet.


    Ich habe vor 2-3 Jahren bereits einmal angefangen zu scripten.
    Dann allerdings komplett aufgehört und mich mit anderen Dingen beschäftigt.
    Grundkenntnisse also vorhanden wenn auch minimal.


    Wie lerne ich am besten und effektivsten das Scripten?
    Lohnt es sich überhaupt noch, sich mit SA:MP zu beschäftigen?


    Ich freue mich über jeden Vorschlag.
    Ich weiß, es werden wieder unzählige Personen meinen "Learnin by Doing".
    Mir ist bewusst das man am besten durch probieren lernt.
    Allerdings habe ich keinerlei Ahnung wie ich am besten Anfange und vorallem womit.
    PAWN scheint mir mittlerweile einfach sehr weit fortgeschritten und kaum verständlich.
    Trotzdem würde ich es sehr gerne wieder erlernen und scripten.


    Kennt jemand einige gute Tutorials oder Wege um PAWN zu erlernen?
    Womit sollte ich anfangen und worauf sollte ich achten?


    Ich freue mich über jede Antwort.
    Vielen Dank.


    PS: Ich hoffe dies ist der richtige Bereich für mein Thema.
    PPS: Auch gerne per PN melden. TS / Skype vorhanden.


    Alle Menschen sind eins. Was sie unterscheidet, ist der Name, den man ihnen gibt.
    (Buddha)


    Uns zivilisierten Menschen ist zwar gelungen, das Raubtier in uns auszuschalten, nicht aber den Esel.
    (Winston Churchill)


    Wenn du denkst, die ganze Welt sei schlecht, dann vergisst nicht, dass Leute wie du darin leben.
    (Mahatma Gandhi)

  • Guten Morgen,
    ich weiß nicht wie aktiv MrMonat noch Videos macht, allerdings ist er der einzugehen er mir bei Video Tutorials einfällt.


    Es hat sich in 2-3 Jahren nicht all zu viel getan was pawn angeht, lediglich die SAMP API hat einige neue Funktionen dazu bekommen, die für den Anfang nicht unbedingt so relevant sind, es gibt neue Dialoge etc. Aber auch die Anwendungen sind Verständnismäßig einfach.


    Ich würde sagen du überlegst dir was du programmieren möchtest, z.B. Admin System uns Googlest dann und schaust dir ein Befehl an oder ein ganzen und schaust wie was funktioniert.


    Oder du nimmst dir ein bereits vorhandenes Script, allerdings sagtest du ja Grundwissen ist da, sprich Variablen etc. Müssten dir ja ein Begriff sein, also musst du wahrscheinlich nicht schauen wie was funktioniert.


    Ich würde sagen überleg dir was du machen möchtest, wie es klappen könnte und Google dann präzise nach deinen Fragen.
    Schau dir das SAMP Wiki an da findest du auch zu allem ein Artikel.


    Bei Fragen kannst du dich jederzeit per PN melden oder ein Thread erstellen, wo Jrffy dann drauf antwortet und dir alles präzise und richtig erklärt.


    MfG
    PermanenT

  • Meh, schau dir am besten keine Videos davon an. Um einige Sachen erklärt zu bekommen und nach zu scripten okay, aber im Grunde sind die Videos nur "Ich scripte nach was dort steht". Es ist ja praktisch wie eine Sprache zu lernen und dort setzt du dir ja auch nicht als Ziel "Boar, ich will morgen volle Sätze schreiben!", dass ist einfach zu viel und ein zu hohes Ziel. Geh in das Wiki und lerne die Grundkenntnisse. Dann such dir eine Sache aus, die einfach zu scripten ist und versuch dich daran. Mach diese Sache so oft, bis du es 100% verstanden hast und dann füg dort etwas hinzu. So wie du eine Fremdsprache auch Stück für Stück lernen würdest.

  • Ich danke euch beiden für eure Antworten.


    Ich denke ich werde mir einige aktuelle Tutorials anschauen.
    Beispiel: Verwendung von MySQL von Jeffry.


    Und dann nach und nach kleinere Scripte analysieren und schreiben.
    Halt mit Simplen Dingen anfangen.
    Beispiel: Adminsystem + Commands mit Parameter.


    Danke euch, falls noch jemand weitere Vorschläge hat, trotzdem gerne posten.


    Alle Menschen sind eins. Was sie unterscheidet, ist der Name, den man ihnen gibt.
    (Buddha)


    Uns zivilisierten Menschen ist zwar gelungen, das Raubtier in uns auszuschalten, nicht aber den Esel.
    (Winston Churchill)


    Wenn du denkst, die ganze Welt sei schlecht, dann vergisst nicht, dass Leute wie du darin leben.
    (Mahatma Gandhi)

  • Ich muss ehrlich sagen das ich mir das Scripten selber beigebracht habe. Wie man es noch besser erlernen könnte wäre z.B. fertige Systeme anzuschauen, damit man weiß wie das ganze überhaupt funktioniert. Danach könntest du beginnen selber ein System zu schreiben. Falls du dann nicht weiter wissen solltest kannst du dich in Google umgucken oder auf Breadfish ein Thread mit deinen Fehler schreiben. Übung macht den Meister. :)


    MfG

  • Es ist schonmal gut, dass du Grundlagen hast, die vergisst man eigentlich auch nicht so schnell, das ist wie beim Fahrradfahren, dass lernt man einmal, und verlernt es dann auch nie wieder. Das heißt auf diese Grundlagen lässt sich sicherlich sehr gut aufbauen, wenn du es richtig ansetzt.


    Ich gebe dir ein paar gute Tipps wie du dir es selbst sehr gut beibringen kannst, so habe ich es zumindest vor 6 Jahren gelernt (von null an, ohne Programmierkenntnisse aus anderen Sprachen).
    Du solltest auf jeden Fall, hinsichtlich der Lerneffizienz, vermeiden, einen vorhandenen Gamemode zu "vergewaltigen", dazu gehört zum einen ein größeres Grundwissen, welches man sich zuerst aufbauen muss, und zum anderen lernt man da nicht wirklich viel, wenn man nur in vorhandenen Codes herumspielt und nicht wirklich etwas selbst erstellt. Es ist zudem wesentlich einfacher Fehler an Dingen festzustellen, sofern vorhanden, die man selbst erstellt hat, als an Dingen, die man nicht gemacht hat und somit die Funktion nicht immer zu 100 Prozent nachvollziehen kann, bzw. auswendig kennt.


    Ob sich das PAWN-Lernen für dich lohnt musst du selbst entscheiden. Wenn du einen Lerneffekt haben möchtest, dann lohnt es sich auf jeden Fall, da die Sprache ziemlich einfach aufgebaut ist, und man ziemlich schnell Ergebnisse hat, wenn man ein paar Zeilen Code schreibt. Wissen schadet auf jeden Fall nie.
    Dass es weit fortgeschritten ist kann ich nicht ganz nachvollziehen. An PAWN bzw. den vorhandenen Funktionen selbst hat sich eigentlich nicht wirklich was verändert, es sind höchstens ein paar neue Funktionen dazu gekommen, das spielt aber keine wirkliche Rolle für das allgemeine Verständnis. PAWN wurde übrigens nicht für SA-MP erfunden, sondern wird nur von SA-MP genutzt.


    Ich erkläre dir mal wie du am besten selbst lernen kannst, damit du in Zukunft auch verstehst, was dein Code macht, und wann du welchen Code benutzen bzw. ändern musst.
    Also ich habe PAWN gelernt, indem ich mir den LAdmin4v2 (damals sehr neu) genommen habe, und versucht habe, die einzelnen Teile zu verstehen. Dann habe ich einfach losgelegt, und überlegt, welcher Teil das macht, was ich will. Wollte ich zum Beispiel einen Befehl machen, der den Spieler an eine andere Position setzt, dann habe ich mir zum Beispiel den /slap Befehl angeschaut, da der Spieler dort entsprechend seiner Position woanders hingesetzt wird. Den Code hab ich mir dann angeschaut, und so für den neuen Code verändert, dass er seinen Zweck erfüllt hat. Damit also teilweise Copy & Paste, und teilweise eigenständige Arbeit. So kann man sich immer mehr zusammenbasteln.
    Das Gute an so einem Admin-Filterscript ist, dass man schon mal das ganze User-System (auf Dateien) hat, und eine Admin-Verwaltung. Das hilft enorm. Darauf lässt sich dann ein Gamemode wesentlich einfacher aufbauen.


    Wichtig:
    Fange klein an, jeder macht das, nimm nicht gleich einen Gamemode und verunstalte den, denn du wirst nichts kapieren. Ich arbeite nun knapp 6 1/2 Jahre mit PAWN und mein Wissen ist noch lange nicht komplett, im Gegenteil. Auch ich lerne ständig neue Dinge dazu.
    Falls dir jemand sagt, du sollst dir die PAWN Doc durchlesen, lass es, genauso rate ich dir davon ab das Wiki in allen Einzelteilen durchzulesen. Du wirst es nicht verstehen. Das kannst du in 3 Jahren machen, wenn du es verstehst, und selbst dann wirst du den Großteil in der PAWN Documentation nicht auf Anhieb verstehen, je nach dem natürlich auch wie gut dein Englisch ist.


    Noch was:
    Ausprobieren. Du kannst nichts kaputt machen. Das einzige was passieren kann, ist dass du Errors bekommst. Na und? Für was gibt es STRG+Z. Einfach probieren, wenn du nicht weiter kommst, frage nach Hilfe, über die Scritping Base findet sich sicher schnell jemand, der dir dann weiterhelfen kann.
    Learning By Doing nennt sich das, wie du es auch schon angesprochen hast. Nicht aufgeben, einfach machen machen machen. Das muss nicht immer perfekt sein, und muss auch nicht immer Sinn ergeben, Hauptsache du machst etwas. Zum Anfang kannst du dir zum Beispiel vornehmen, einen Filterscript der hier im Forum veröffentlicht wurde (einen einfachen) nachzubauen. Du musst ihn ja nicht auch veröffentlichen, aber nur zur Übung einfach nachmachen. Wenn du hängst, kannst du ja nachsehen, was falsch ist, bzw. wie es dort gemacht wurde.
    Das ist meiner Meinung nach besser als alles andere.


    Wie machst du das?
    Du suchst dir einen Filterscript der irgendwas macht, sei es ein Auto Spawn Menu.
    Schau dir zuerst mal an, was der Filterscript denn macht (z.B. ein Auto-Menu, um Auto's zu spawnen). Dann überlegst du, was du denn alles dafür brauchst, suchst dir die Funktionen zusammen (Google, SAMP Wiki) und legst los so ein Menu zu erstellen. Wenn du irgendwo hängst, kannst du einen Blick in den Code werfen, und ein paar Zeilen, die du denkst zu verstehen abschreiben, dann siehst du ja was passiert.
    Am besten ist es aber, wenn du es ganz ohne in den Code zu schauen hin bekommst, deshalb fange mit leichten Dingen an.


    Alternativ kannst du natürlich auch Tutorials durcharbeiten und dadurch lernen, sofern diese gut erklärt sind. Ich kann dich selbstverständlich an meine Tutorials (siehe Profilbeschreibung) verweisen, die habe ich versucht so ausführlich wie möglich zu erklären, damit man es leicht versteht und auch für andere Dinge nutzen kann, aber es gibt auch sonst noch viele andere Tutorials, mit denen man sehr viel lernt.


    Bis du erst mal richtig rein findest vergehen mit Sicherheit 1-3 Monate! Also nicht verzagen, du wirst am Anfang ziemlich oft stecken bleiben und auf die Nase fallen (ist wie laufen lernen). Ich weiß das von mir. Wenn du einmal drinnen bist, dann geht es jeden Tag besser.


    PS: Ich hab es ganz alleine gelernt. Die einzige Hilfestellung die ich damals hatte war ein /kill Command aus 6 Zeilen Code, den mir jemand gemacht hat.
    Das Wichtigste ist: Immer dranbleiben!


    Viel Erfolg! :good:

  • Vielen dank für eure Meinungen und Antworten.


    Ihr habt mir damit sehr weitergeholfen.
    Ich werde mir die Worte auf jeden Fall zu Herzen nehmen.


    Vielen Dank, falls ich Hilfe brauchen sollte oder etwas nicht verstehe werde ich mich auf jeden Fall an euch wenden.


    Alle Menschen sind eins. Was sie unterscheidet, ist der Name, den man ihnen gibt.
    (Buddha)


    Uns zivilisierten Menschen ist zwar gelungen, das Raubtier in uns auszuschalten, nicht aber den Esel.
    (Winston Churchill)


    Wenn du denkst, die ganze Welt sei schlecht, dann vergisst nicht, dass Leute wie du darin leben.
    (Mahatma Gandhi)