Beiträge von munkee

    Hallo, willkommen im dritten Tutorial meiner Squirrel Scriptingtutorial Reihe.


    Als erstes öffnen wir SquirrelEdit, dann gehen wir ganz oben auf New -> New from Template:


    Schon sehen wir eine Neue Datei mit den wichtigsten Events (früher Callbacks).
    Erstmal speichern wir das ganze mit einem Klick auf das Speichern-Icon und geben dem ganzen dann einen Namen (Beispiel: Gamemodetut.nut).


    Haben wir dies getan, gehen wir unter das Event "onScriptInit".
    Als allererstes brauch unser Script natürlich einen Namen der in der Serverliste angezeigt wird, so wie hier:


    Doch, welche Funktion brauchen wir dafür? Das finden wir ganz einfach heraus, wir gehen in das deutsche M2MP Wiki und dort auf Server -> Server Functions:



    Dort sehen wir dann schon eine Menge Funktionen die wir benutzen können, wir suchen jedoch einen ganz bestimmten, wir klicken oben im Inhaltsverzeichnis auf "Server Funktionen", dort sehen wir 3 Funktionen diese 3 benutzen wir in diesem Tutorial auch erstmal nur.
    Wenn wir auf eine der Funktionen klicken, erhalten wir eine Seite mit Informationen über diese Funktion, und wie man diese anwendet. Wir klicken auf setGameModeText und schauen uns den Syntax an, wir sehen, wir brauchen einen String-Parameter, dieser wird später der Gamemodename sein.


    Zurück ins Script unter onScriptInit, wir schreiben unter onScriptInit nun das hier:

    Code
    setGameModeText("Tutorial Mode");



    sollte dann also so ausschauen:

    Code
    function onScriptInit(){
        setGameModeText("Tutorial Mode");
        return true;
    } 
    
    
    addEventHandler("onScriptInit", onScriptInit);



    Okay, nun hätte unser Script einen Namen, nun hat unsere Map aber noch keinen Namen, dazu gehen wir nochmal schnell ins Wiki und schauen uns die Funktion "setMapName" an, danach gehen wir unter setGameModeText und schreiben das hier hinein:

    Code
    setMapName("Tutorial Map");



    Natürlich muss das ganze nicht Tutorial Mode oder Tutorial Map heißen, ihr könnt es verändern wie ihr wollt!


    Jetzt hat unser Script und unsere Map einen Namen.
    Weiter gehts mit dem Wetter, wie soll das Wetter sein wenn der Server gestartet wird? Erneut flitzen wir ins Wiki auf die Startseite und gehen diesmal auf General -> Ressourcen:



    hier gehen wir rechts bei Other auf "Weather":



    Jetzt seht ihr sowas wie: DT_RTRclear_day_early_morn1 verwirrend ist das nicht, solange man weiß, was wichtig ist und man auch genügend Englischkenntnisse hat, wir benutzen bei unserem Beispiel hier nur DT_RTRclear_day_early_morn1.
    Woher weiß ich jetzt was für ein Wetter das ist? Ganz einfach: Das DT_RTR ganz am Anfang wegdenken, dann sehen wir nur noch clear_day_early_morn1, clear_ sollte klar sein, das wetter ist also Klar, kein Regen, kein Nebel, es gibt noch die Typen foggy_ für Nebel und rainy_ für Regnerisch, dann kommt day_early_morn1 hier können wir die 1 wieder weglassen, day_ heißt also Tag, können wir theoretisch wieder weglassen, jedoch wirds nun bei early_morn spannend, morn ist die Abkürzung für morning, early_ heißt früh, hiervon gibts einen zweiten Typ: late_, weiter geht es mit morn wovon es wieder die weiteren Typen morning, was das gleiche wie morn bedeutet, noon, was zu deutsch Mittag heißt, afternoon, was logischerweise Nachmittag heißt, evening, also Abend, und natürlich night für Nacht.


    Weiter geht's, zurück ins Wiki wieder auf die Server Funktionen, dort klicken wir auf setWeather, setWeather braucht also einen String indem der Name des Wetters steht, schreiben wir also das hier unter setMapName:

    Code
    setWeather("DT_RTRclear_day_early_morn1");



    Schon hat unser Script und unsere Map einen Namen, und auf dem Server herrscht ein schönes Morgenwetter!


    Im nächsten Tutorial machen wir weiter mit dem Script und ihr werdet mehr Funktionen kennenlernen.


    Bis zum nächsten Mal
    munkee


    - Feedback ist gerne erwünscht.



    bisheriges Script herunterladen

    Hallo, in diesem zweiten Tutorial, will ich euch die IDE "SquirrelEdit", aus dem vorigen Tutorial etwas näherbringen.



    IDE? Was ist das?
    Eine IDE ist im Prinzip nichts anderes als eine Entwicklungsumgebung, wo ihr eure Scripts, sagen wir mal, "entwickelt".


    Lerne ich in diesem Tutorial das Scripten?
    Nicht so voreilig, erst einmal musst du doch wissen wie die IDE Funktioniert, und welche Funktionen es gibt, dies werdet ihr in diesem Tutorial lernen.


    Okay, zeig mir die IDE!
    Na gut, nachdem wir nun das Programm heruntergeladen und Installiert haben, klicken wir auf diesen Button um es zu öffnen (befindet sich auf dem Desktop):



    Haben wir dies getan, ist es in den meisten Fällen so, dass uns dieses Fenster hier erscheint:



    Natürlich wollen wir Updaten, wir wollen doch immer auf dem neusten Stand bleiben! Ich empfehle euch immer die Updates zu installieren, da sie meistens Bugfixes, neue Funktionen o.Ä. beinhaltet, falls ihr selber Bugs findet, könnt ihr sie im entsprechenden Thema im M2:MP Forum melden. (Klick )
    Wir klicken also auf "Ja".


    Wenn dies getan ist, startet sich das Programm Automatisch neu.


    Fangen wir mal ganz oben an:



    Wir sehen das, was in fast jedem Programm vorhanden ist: "File Edit Higlighting ?"
    Fangen wir im unteren Bereich bei den Icons an, klickt ihr auf das leere Blatt-Icon hier:


    Wird ein neues Projekt erstellt. Klicken wir also einmal drauf.
    Es passiert natürlich nichts, die Datei ist und bleibt leer, wir haben ja noch nichts reingeschrieben, hätten wir etwas reingeschrieben und dann auf das leere Blättchen geklickt, wäre der Text den wir geschrieben haben gelöscht worden und wir hätten wieder eine Leere Datei.


    Gehen wir weiter zu dem Ordner-Icon hier:


    Das sollten viele kennen, genau die gleiche Geschichte wie bei Word, wir klicken drauf, dann erscheint ein Explorer indem wir die zu öffnende Datei raussuchen sollen.


    Weiter geht es, zu dem Speichern-Icon:


    Sollte auch wieder jeder kennen, wieder die gleiche Geschichte wie bei Word, wir klicken drauf, und die Datei wird gespeichert, falls die Datei noch nicht vorhanden sein, öffnet sich wieder ein kleiner Explorer, wo wir aussuchen sollen, wo wir die Datei speichern wollen und wie sie heißen soll. Existiert die Datei schon, reicht ein klick auf das Icon und es wird unter gleichen Namen am gleichen Ort gespeichert.


    Dann kommt eine kleine Abtrennung, danach 2 Pfeil-Icons:


    Undo (Pfeil zurück) und Redo (Pfeil vorwärts), Undo macht das letzte was du geschrieben hast rückgängig, Redo macht das gegenteil, wenn du Undo gedrückt hast und es dir doch anders überlegt hast oder ein paar schritte zu weit gegangen bist, drückst du einfach auf Redo und das was von Undo gelöscht wurde wird wieder reingesetzt.


    Dann kommt wieder eine kleine Abtrennung, nach der Abtrennung sehen wir ein kleines Binär-Icon:


    Wer sich mit Pawn auskennt, sollte dies kennen, der Compiler erscheint, der Fehler im Code anzeigt, einfache Sache, falls du ein Semikolon vergessen hast o.Ä., wird dir dies hier angezeigt.


    Danach kommt ein deaktiviertes Upload-Icon:


    Dies brauchen wir später um unser Script direkt auf den Server hochladen können, vorher müssen wir das ganze jedoch Konfigurieren, nach der Konfiguration sollte es Aktiviert sein.


    Gehen wir jetzt in die obere Hälfte zurück:



    File sollte wieder jeder kennen, klicken wir mal drauf:



    New: Siehe Blatt-Icon
    New with template: Das gleiche wie New, nur wird hierbei eine Vorlage geladen, die das Scripten von den wichtigsten Callbacks überflüssig macht. (Für Beispiel, einfach draufklicken)
    Open: Siehe Ordner-Icon
    Save: Siehe Speichern-Icon
    Save As...: das gleiche wie bei Save, nur wird hierbei, selbst wenn die Datei schon vorhanden ist ein Fenster geöffnet wo man auswählen kann wo man die Datei speichern will. (Gut um zB den Platz des Scripts auf dem Computer zu wechseln, oder den Dateinamen).
    Print: Druckt das Script aus (eigentlich überflüssig).
    Preview Print: Zeigt eine Vorschau des Drucks.
    Exit: Schließt das Programm.


    Jetzt wissen wir was File so drauf hat, gehen wir weiter zu Edit:


    Undo & Redo: Siehe Pfeil-Icons
    Find: Öffnet ein kleines Fenster, wo du Begriffe im Script suchen kannst.
    Replace: Öffnet ein kleines Fenster, wo du Begriffe durch einen anderen Begriff ersetzten kannst.
    Check Syntax: Siehe Binär-Icon
    Settings: Öffnet das Einstellungsfenster für SquirrelEdit. (Näheres dazu später)


    So, Edit wurde nun auch abgehakt, kommen wir zum Highlighting:
    Für uns nicht Relevant, man kann lediglich das Syntax-Highlighting auf andere Sprachen umstellen.


    Weiter geht's, mit dem ? (Fragezeichen):


    Check for Updates: Sollte klar sein, sucht nach Updates für das Programm.
    Scripting help: Öffnet das M2:MP Wiki in einem neuen Fenster.
    Changelog: Öffnet den Changelog von SquirrelEdit in einem neuen Fenster.
    About: Informationen über SquirrelEdit (Autor, Version etc.)


    Gut, kommen wir nun nach unten Zu dem großen Textblock:
    In diesem Textblock werden wir später unseren Code editieren, ihr werdet seine Funktionen nach und nach in den folgenden Tutorials kennenlernen.
    Links an der Seite sehen wir eine Nummerierung der Zeilen, dies dient zur Übersicht und falls Fehler auftreten, kann auch gesagt werden in welcher Zeile sich der Fehler befindet und man muss nicht selber nachzählen.
    Ganz unten Links sehen wir Lines: [Zahl], dies Zeigt die im Script vorhandenen Zeilen.



    Im nächsten Tutorial werde ich euch endlich das Scripten beibringen!


    Mit freundlichen Grüßen
    munkee

    *EDIT: Teil 1: [M2MP Scripting] #1: Die Vorbereitung
    *EDIT2: Screenshots korrigiert.

    Hallo und herzlich willkommen zu meiner neuen Tutorialreihe zu der in M2:MP angewandten Sprache Squirrel, natürlich wird Squirrel auch woanders eingesetzt, beispielsweise der GTA:IV Mod IV:MP, jedoch spezialisiere ich meine Tutorials auf den Mafia 2 Mod M2:MP.


    Okay, okay, okay, wie geht es jetzt los?
    Wie es losgeht? Vorher solltest du dich informieren was M2:MP genau ist, dies tust du am besten auf der Website (Klick ).
    Okay, ein Vorteil wären dann noch gute Englischkentnisse, da im Englischen Forum meist besserer Support zu finden ist und der Bugtracker sich auch auf der englischen Seite befindet.
    Desweiteren wäre es noch ein Vorteil, M2:MP mal gespielt zu haben und zu sehen wie das ganze funktioniert (Chat, Commands usw.).


    Gut, alles gemacht, kann ich jetzt endlich Scripten lernen?
    Hey, hey, alles mit der Ruhe, vorher brauchen wir noch einen Editor wo wir scripten, am besten eignet sich natürlich einer mit Syntax-Highlighting (= besondere "Wörter" die etwas definieren, beispielsweise das Wort "function" da dies eine Funktion definiert, werden hervorgehoben.). Nur, woher bekommt ihr so einen Editor? Ich würde euch den Speziell für M2:MP programmierten SquirrelEdit (Klick ) von virtualmarc aus dem deutschen M2:MP Forum empfehlen. Befolgt einfach die benannten schritte, ich würde euch empfehlen regelmäßig nach Updates zu suchen (Im Programm integriert, geht auch ziemlich flott.).


    Wie sieht's denn jetzt aus mit dem scripten?
    Erst einmal, solltet ihr euch mal ins Wiki (Klick ) wagen und dort etwas rumwühlen, beispielsweise bei den Funktionen (Klick ), die Squirrel für M2:MP bietet.
    Die Callbacks solltet ihr euch auchnoch anschauen. falls euch der begriff "Callbacks" nichts sagt, solltet ihr euch noch im allgemeinen Bereich Scripting informieren.



    Im zweiten Tutorial werde ich euch die IDE "SquirrelEdit" etwas näher bringen.
    Feedback ist gerne erwünscht!



    Mit freundlichen Grüßen
    munkee


    *EDIT: Tutorial #2: [M2MP Scripting] #2: SquirrelEdit - Die IDE

    Nicht so mein Fall, versuch es Simpel zu halten und nicht so knallige Farben zu benutzen, vor allem nicht zu viele verschiedene Farben.
    Jedoch, nicht vergessen: Übung macht den Meister, weiter so, das wird schon noch. ;)
    Da es deine Ersten werke sind; 7/10 :)

    Du kannst das ganze auch direkt über pc installieren, ohne usb oder cd, jedenfalls ging das bei der Consumer Preview.
    BTW:
    Mindestleistung wird bei dir nicht erfüllt: 4GB RAM müssen das sein, würde sich aber höchstens ab und zu aufhängen, ich glaube nicht dass das was mit diesem Error zu tun hat.

    Hallo, heute zeige ich euch wie ihr ohne Flashplayer musik abspielen lassen könnt.


    Gebraucht werden:

    • MP3 Datei

    • OGG Datei (Einfach MP3 zu OGG konvertieren, einen Konverter findet ihr, falls ihr zu faul zum suchen seid, hier)

    • Das HTML(5)-Grundgerüst

    • Ein bisschen gehirn

    • Einen HTML5-fähigen Browser (Neuste version von Chrome, IE, Firefox oder Opera)


    Okay... Das hab' ich alles, und wie läuft das ganze jetzt ab?
    Nun gut, nachdem ihr das HTML-Grundgerüst habt, können wir sofort beginnen, als erstes gehen wir in unseren body-tag und geben diesen tag ein:

    Code
    <audio></audio>


    Das war's natürlich noch lange nicht, wir haben jetzt nur den tag, um jetzt Musik einzubinden könnten wir folgendes machen:

    Code
    <audio src="audio1.mp3"></audio>


    Doch so leicht ist das nicht, denn nicht alle Browser können mp3's abspielen, um die Browserkompatiblität zu erhöhen, brauchen wir noch eine .ogg Datei.
    Konvertieren wir unsere mp3 also in eine .ogg mit einem beliebigem Programm, nachdem dies geschehen ist, gehen wir zurück auf unsere Audio tags und entfernen unsere audio1.mp3:

    Code
    <audio> <source src="audio1.mp3"> <source src="audio1.ogg"> </audio>


    So, was haben wir gemacht? Wir haben die .mp3 und die .ogg eingebunden... Eingebunden heißt nicht dass gleichzeitig auch der Player zum vorschein kommt, dafür müssen wir noch etwas hinzufügen:

    Code
    <audio controls> <source src="audio1.mp3"> <source src="audio1.ogg"> </audio>


    Das "controls" lädt hierbei die Steuerelemente (= Player). Um das ganze nun noch zu optimieren, fügen wir vor dem controls noch ein "preload" hinzu:

    Code
    <audio preload controls> <source src="audio1.mp3"> <source src="audio1.ogg"> </audio>


    Dies sorgt lediglich dafür dass die Dateien vorgeladen werden, somit werden die Dateien schon vor dem drücken auf "Play" geladen.


    Wenn wir nun die html öffnen, erscheint ein MP3-Player, in jedem Browser sieht dieser anders aus, aber die Zusammensetzung ist gleich.


    Falls ihr eine kleine, wenn auch etwas Unqualitative Vorschau haben wollt wie das ganze danach aussieht, habe ich hier eine kleine vorschau gemacht:
    http://munkeezy.mu.funpic.de/html5/index.htm



    Bei positivem Feedback werde ich in Zukunft noch mehr solcher Tutorials machen.


    Mit freundlichen Grüßen
    munkee


    *EDIT: Satz verbessert der das Verständnis beeinträchtigt hat.

    Ist umsetzbar, jedoch dauert es länger bis aufwendige Funktionen wie die Monster, Tiere usw. stehen, desweiteren müsste ich dann selbst neue Texturen entwerfen da ich sonst gegen das Copyright verstoße, ich bin mir aber nicht sicher ob etwas was Minecraft extrem ähnelt nicht auch Ideenklau wäre.
    Jedoch wie gesagt: Umsetzbar!

    Hallo, heute beginne ich mit dem ersten Tutorial meiner Tutorialreihe zu der Programmiersprache 'Java'.
    Ihr müsst Java schon auf eurem Rechner installiert haben, falls ihr Java noch nicht installiert habt, ladet es euch hier herunter: Java - Download -und installiert es natürlich.


    Fangen wir mal an uns auf das Programmieren vorzubereiten, als erstes, geht ihr auf diese Seite: http://www.oracle.com/technetw…dk-7-download-432154.html


    Scrollt ihr etwas herunter findet ihr das hier:


    Dort solltet ihr in der grauen Box auf "Accept License Agreement" klicken, dann ladet ihr euch darunter die passende Version für euren Computer herunter, bei mir ist es: Windows x64 / jdk-7-windows-x64.exe
    Zur Info: x86 = 32 Bit, wenn ihr euch nicht sicher seid was für ein System ihr habt, ladet euch die x86 Version herunter.


    So, während das nun herunterlädt, kümmern wir uns um unsere "Entwicklungsumgebung" (Kurz "IDE") - dies wird das Programm sein in dem wir programmieren werden.
    Die wohl beste IDE für Java heißt "Eclipse", diese ladet ihr euch nun hier herunter: http://www.eclipse.org/downloads/
    Das, was ihr herunterladen sollt, habe ich euch hier rot markiert:


    Auch hier gilt wieder: Wenn ihr euch nicht sicher seid, welches System ihr benutzt, ladet euch die "Windows 32-bit"-Version herunter.


    Danach installiert ihr euch das oben heruntergeladene "Java Development Kit".
    Wenn das getan ist, entpackt ihr unsere IDE "Eclipse" und startet im Ordner "eclipse" die "eclipse.exe", es erscheint der Eclipse-Splashscreen.
    Da wir Eclipse nun das allererste mal gestartet haben, erscheint dieses kleine Fenster:

    Hier sollen wir unseren "Workspace" auswählen, dort werden später unsere ganzen Projektdateien und Ordner gespeichert.
    Wenn ihr euren Workspace ausgewählt hat, macht einen Haken bei "Use this as Default and do not ask again" und klickt auf "OK".
    Nach kurzem warten habt ihr es geschafft und seht nun das hier:


    Fürs erste etwas verwirrend, diese ganzen Fenster, Ordner usw. aber keine Sorge, in den nächsten Tutorials werdet ihr nach und nach die Entwicklungsumgebung kennenlernen.



    Ein paar "Fakten" über JAVA.

    • Ihr kennt doch bestimmt das Spiel "Minecraft" - oder? Minecraft wurde komplett in JAVA geschrieben.
    • JAVA wird von über 1 mio. Systemen abgespielt, von Handys, über Fernseher, bis hin zu Computern.
    • Wenn man ein JAVA-Programm auf zB Windows programmiert, kann es trotzdem auch auf Mac & Linux abgespielt werden.
    • JAVA ähnelt sich im Aufbau der Programmiersprache auch an die Scriptsprache "PAWN" von "SA:MP".




    Schlusstext.


    Ich hoffe dieses erste Tutorial hat euch gefallen und euch weitergebracht, im nächsten Tutorial werden wir uns um ein "Hello World" kümmern.
    Kritik, Lob, Anregungen usw. sind erwünscht - jedoch keine Beleidigungen bitte.


    Mit freundlichen Grüßen
    munkee

    Nicht viel, außer noch dem hintergrund, ich habe nie behauptet dass ich etwas großes machen wollte, es sollte lediglich simpel aufgebaut sein, nicht so überfüllt wie manch anderer hintergrund.

    Danke für den produktiven Beitrag.


    Nein, ernsthaft jetzt, was soll das? Ich wollte Rückmeldungen mit Verbesserungsvorschlägen und keine erniedrigenden Kommentare.