Shop    Board    Downloads

Willkommen bei PS-Evolution: Board.
Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.


 
Themen-Optionen
Alt 25.06.2008, 23:20   #1 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Ausrufezeichen [TuT - LUA] "Hello World" Einfache Textaußgabe

Also alle die sich schon mal an dieses TuT trauen bzw. in die PSP Programmierung gehen, Danke!




Hello World

In diesem TuT wird dir erklärt wie du dir schon mal ein eigenes Programm schreiben kannst!
Noch ist es nur eine einfache Textausgabe auf dem Bildschirm...


Forraussetzung für dieses TuT:
Ich weiß in etwa was Programmieren ist

TuT Hello World:


Ich werde dir nun erklären wie wir "unser" erstes Programm gestallten

Um beginnen zu können brauchen wir erst einen Ordner...
Den kannst du jetzt z.B. auf deinem Desktop erstellen, bzw. auch auf deinem Memory Stick (ms0:/PSP/GAME)
Nennen wir den Ordner doch einmal "LUA Hello World" (Kannst ihn auch anders nennen ist klar denk ich )

In diesen Ordner müssen wir jetzt den LUA Player geben... *Download LUA Player RC7*
Ohne LUA Player funktioniert nichts!

Was macht der LUA Player denn eigentlich soo tolles?
Der LUA Player ließt in deiner LUA Datei und übersetzt das ganze für die PSP in verständliche Befehle! Denn LUA ist eine Scriptsprache wie z.B. Perl, AutoIT oder Visual Basic...
Bestes beispiel dafür ist wohl ein GBC Emulator die PSP ist kein Gameboy... Doch durch den Emulator kann die PSP die Rom's wiedergeben...
Genau so ist es eigentlich auch bei LUA...
Eine für die PSP unverständliche LUA Datei wird mit Hilfe des LUA Players für die PSP übersetzt!



Nun erstelle ein Text Dokument... und bennene es um in "script.lua"
Wichtig ist dabei das deine Ordner Optionen richtig eingestellt sind
Sonst sieht das nachher vlt. so aus "script.lua.txt" <-- DAS WOLLEN WIR ABER NICHT!
Falls du das nicht hinbekommst wegen irgenwelchen einstellungen Hier eine script.lua

Ja... nun kopierst du die "script.lua" in den selben Ordner wo auch der LUA Player ist.
enthällt versteckten Inhalt
Du musst Dich bedanken um zu sehen was versteckt ist


Jetzt öffne die "script.lua" mit einem Editor der nicht irgendwelche Formatierungsoptionen bietet...
(Also Open Office, Word, etc. fällt schonmal weg! Einfach mal [Unter Windows] Bearbeiten klicken... Sprich mit dem Text Editor... bzw. dem Easy LUA Editor von Slash, oder wie ich PSPad)
PSPad hat den Vorteil das er die Zeilenzahlen der Datei anzeigt... (Welche auch ein richtiger Coder brauchen wird! )

Vorteile des Easy LUA Editors:
Speicher direkt in .lua
Ist Portable und extrem klein!

Wenn du dich für PSPad entschieden hast klicke nach der Installation bitte gleich einmal auf "Ansicht -> Zeilennummerierung"
Denn wenn du später selbstständig Codest wirst du bestimmt einige fehler bekommen... und da sind Zeilennummern schon wichtig!
(Meine Spiele haben durchschnittlich 300 - 600 Zeilen... Aber jetzt nich abschrecken lassen! )


Nun schreieben wir unser Programm!

Als aller erstes müssen wir der "PSP" (dem LUA Player) sagen in welcher Farbe der Text sein soll...

Der Befehl um eine Farbe zu bestimmen geht wie folgt:
Code:
Color.new(255,255,255)
Wobei "255" für den Farbwehrt steht.
"255,255,255" Steht für Weiß! Warum? und wie mische ich das?
Die erste Zahl steht für die Rot anteile... Einstellbar ist dies von 0 bis 255.
Die zweite Zahl steht für Grün, und die Dritte für Blau...

Also im endeffekt RGB (Rot,Grün,Blau)
Wenn "255,255,255" jetzt weiß ist in Schwarz logischerweiße?
Richtig "0,0,0"
Blau wäre z.B. "0,0,255" usw...

Jetz brauchen wir noch etwas womit wir den Farbwehrt speichern!
Genau Variablen! Variablen sind eigentilch nichts anderes als definitionen die mit Zahlwehrten, Buchstaben, Bildern, Tönen, usw. gleichgesetzt werden...
(Kennt ihr aber sicher auch aus Mathe )

Also schreiben wir jetzt:
Code:
blau = Color.new(0,0,255)
statt "blau" kannst du jetzt schreiben was du willst...


Jetzt machen wir den Befehl um den Text aus zu geben...
der befehl dazu lautet:
Code:
screen:print(x,y,"txt",color)
Mit "x,y" ist die Position gemeint... hier gehört narürlich eine Zahl hinein...

Spoiler:
Spoiler:


Also wir schreiben jetz einfach mal "1,1" statt dem "x,y" Das heißt der Text wird ganz oben links Angezeigt.

Wir schreiben jetz einfach mal:
Code:
screen:print(1,1,"Haaallloo!! :D",blau)
Nochmal, zuerst bestimmen wir die Position mit x,y , dann kommen zwischen die "" der Text der Angezeigt werden soll (ACHTUNG: \, ä, ö, ü, etc. werden nicht unterstützt [KEINE SONDERZEICHEN!])
und zum schluss wird noch die Farbe definiert.


Um den Text jetzt anzeigen zu lassen brauchen wir:
Code:
screen.flip()
Die PSP hat sozusagen 2 Bildschirme... Unsere Ausgabe wird "innen"
um den Bildschirm jedoch umzufrehen brauchen wir "screen.flip()"
Dann wird der Text sichtbar!


Jetzt brauchen wir eine Schleife!
Eine schleife wiederholt einen Vorgang so lange bis eine Variable sie beendet bzw. endlos (Sogenannte "Endlosschleife")

Wir benötigen jedoch eine Endlosschleife.
Befehl für die Endlosschleife:
Code:
while true do
und wichtig! Sie wird mit:
Code:
end
beendet!

Sprich alles was zwischen "while true do" und "end" steht wird ständig wiederholt!
Das ist jetzt also unser "Mainloop". Jedes Programm braucht so ein Mainloop
da der LUA Player sonst einmal alles erledigen würde, und dann nichts mehr machen kann...
Ohne Mainloop zeigt der LUA Player folgenden Fehler an:
Code:
Error: (null)
Mit:
Code:
screen.waitVblankStart()
wird befohlen wie lange der LUA Player warten soll um die nächste ausgabe Anzuzeigen...
Normalerweiße schreibt man dann einen bestimmten Wehrt in die Klammer...
zum Beispiel:
Code:
screen.waitVblankStart(300)
Das wären dann 3 Sekunden....
Aber das brauchen wir jetzt nicht!

Wir wollen das er ganicht wartet!
daher lassen wie die Klammern leer...

Der Befehl "screen.waitVblankStart()" kommt nur in die Schleife!

Code:
while true do
screen.waitVblankStart()
end
So sollte es dann aussehn!

Was bewirkt das jetzt?
Dem LUA Player wird damit gesagt das er bis zum nächsten durchgang 0 Sekunden warten soll...
Und den Text somit ständig Anzeigt.


CODE ZUSAMMENFASSUNG:

Code:
blau = Color.new(0,0,255)
screen:print(1,1,"Haaallloo!! :D",blau)
screen.flip()
while true do
screen.waitVblankStart()
end
Jetzt nur noch speichern, und auf der PSP starten!
Fertig!


Bitte lesen und nich nur code klauen^^


Sollte wirklich für jeden klar sein!


Mfg PS-Evolution Dev-Team
__________________




Geändert von -DaRealXecon- (02.07.2008 um 21:10 Uhr).
-DaRealXecon- ist offline   Mit Zitat antworten
Alt 01.07.2008, 00:19   #2 (permalink)
PS-Freak
 
 
Registriert seit: 12.12.2006
Beiträge: 97

Daumen hoch

Erstmal vielen Dank für dieses astreine Tutorial...
Sprache kam mir ein bissl bekannt vor von Delphi, aber naja...
Habe nun aber folgendes dummes Problem, habe deine Richtlinien genauestens befolgt, aber bekomme immer wieder Error: (null) ???
Hab 4.01m33-2, meinst du das könnte was damit zu tun haben?
MfG Digga_Mies
Digga_mies ist offline   Mit Zitat antworten
Alt 02.07.2008, 21:09   #3 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Standard

Haben alle anderen auch dieses Problem? *hoffe doch nicht*

Es könnte daran liegen... das du 1. Was vergessen hast... (Mainloop bezogen...) oder 2. das deine LUA Datei nicht "script.lua" heißt... (z.B. könnte sie "script.lua.txt" heißen... ) Versuchs mal mit der LUA Datei die ich für euch rengestellt hab^^

Ich stell glaub ich mal ein Sample rein

Mfg xecon
__________________



-DaRealXecon- ist offline   Mit Zitat antworten
Alt 03.07.2008, 13:57   #4 (permalink)
PS-Freak
 
 
Registriert seit: 12.12.2006
Beiträge: 97

Lächeln

Tja ich Held habe die Datei ganz schlaftrunken scirpt.lua genannt...
Naja aba dann hat alles funktioniert...
Vielen Dank nochmal, wäre schön wenn du noch so ein paar nette Tuts schreiben könntest...
Thx Digga Mies
Digga_mies ist offline   Mit Zitat antworten
Alt 03.07.2008, 15:42   #5 (permalink)
DeV TeAm:*LuA|C|HtMl|CsS*
 
 
Registriert seit: 29.07.2007
Beiträge: 617

Secret Raven eine Nachricht über ICQ schicken
Standard

Also kurz zur Info, das der Null - Error heißt einfach das der Luaplayer die script.lua nicht gefunden hat!
Hm ja wegen dem erstellen, ich erstell immer ein neues Textdokument, und geh dann auf speichern unter, und dann unten wo (.txt) steht auf den Pfeil klicken und auf Alle Datien gehen.. dann nur noch script.lua nennen und dann sollts gehen
__________________
Secret Raven ist offline   Mit Zitat antworten
Folgender Benutzer sagt Danke zu Secret Raven für den nützlichen Beitrag:
Alt 03.07.2008, 16:18   #6 (permalink)
PS-Ober Pro
 
 
Registriert seit: 16.05.2008
Alter: 17
Beiträge: 1.382

Standard

jo hab ma auch ne frage was koomt in den script.lua rein und noch ne frage könnt ihr auch ma nen tut schreiben wo man eins machen kann was mit mehr levels und das man mit bildern arbeitet anschtat tabelen
__________________



Der_Pate ist offline   Mit Zitat antworten
Alt 20.08.2008, 14:58   #7 (permalink)
nur noch vip. haha
 
Registriert seit: 30.12.2007
Alter: 16
Beiträge: 1.753

Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

wie sieht das mit den koordinaten aus, wenn ich den text ganz unten rechts haben will?
__________________
.
Puma93 ist offline   Mit Zitat antworten
Alt 21.08.2008, 00:22   #8 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Also das mit den Positionen...

Ich mache es so (vlt. umständlich ich weiß aber nicht's bessers )

Ich stelle die Font oder das Bild in meinem Programm i-wo hin
z.B. 0,0 Also ganz oben links im eck

Dann mach ich einen Screenshot und öffe den dann mit Paint
Dann stelle ich das Pic oder den Text dort hin wo ich ihn will... und stelle den Courser bei dem Text/Pic auch ganz oben im eck hin dann schaue unten im Eck auf die Koadinaten...

Dann weiß ich die genaue Position

Beispiel:


Spoiler:

Wenn ihr bessere schnellere Ideen habt, POSTEN


Mfg xecon
__________________



-DaRealXecon- ist offline   Mit Zitat antworten
Alt 21.08.2008, 10:18   #9 (permalink)
*Dev Team* Member
 
 
Registriert seit: 24.02.2007
Alter: 17
Beiträge: 1.660

July eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Ich probier ja meistens einfach bissl rum kriegt man nch ner zeit shcon hin

EDIT by xecon:
Zitat:
Wenn ihr bessere schnellere Ideen habt, POSTEN
__________________

Geändert von -DaRealXecon- (21.08.2008 um 12:23 Uhr).
July ist offline   Mit Zitat antworten
Alt 27.08.2008, 14:05   #10 (permalink)
DeV TeAm:*LuA|C|HtMl|CsS*
 
 
Registriert seit: 29.07.2007
Beiträge: 617

Secret Raven eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

lol, ich hab mir n Programm geschrieben :-D das muss ich nur immer einfügen, in den Code, bzw. starten und dann zeigt er mir oben x und y Koordinate an als zahl und im Bild erscheinen zwei weiße Linien die sich schneiden und dann halt grad mit den Tasten auf den Pixel gehen auf den du das Bild willst und oben ablesen
__________________
Secret Raven ist offline   Mit Zitat antworten
Folgender Benutzer sagt Danke zu Secret Raven für den nützlichen Beitrag:
Alt 04.09.2008, 09:42   #11 (permalink)
Dev-Leader + DLoad-Mod
 
Benutzerbild von PSP-FREAKX
 
Registriert seit: 19.12.2007
Beiträge: 2.675

PSP-FREAKX eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

die scrift ist zirka 10 pixel hoch, das heißt das 262 sehrweit unten ist

rechts ist schwer, weil das drauf ankommt wie lang der text ist
__________________
>>>Coder 4 life<<<
Spoiler:
PSP-FREAKX ist offline   Mit Zitat antworten
Folgender Benutzer sagt Danke zu PSP-FREAKX für den nützlichen Beitrag:
Alt 09.01.2009, 14:13   #12 (permalink)
PS-Ober Pro
 
 
Registriert seit: 27.08.2008
Alter: 14
Beiträge: 1.040

Maskenmann eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Mal ne Frage: Ist das noch aktuell mit den Proggis und so? Weil ich will das mal ausprobieren
Maskenmann ist offline   Mit Zitat antworten
Alt 09.01.2009, 14:47   #13 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Der LUA Player aus'n tut is net mehr ganz so aktuell^^ aber ich verwende meist auch nur den LUA HM-6

Also vom LUA Player is es zum lernen egal^^
Bei höheren versionen hat man dann einfach nur mehr befehle^^
Die benötigt man für Games z.B. so gut wie nie bzw. ein eh nie^^

Manchmal verwende ich sogar noch den LUA Player 0.20
Das is einer der ersten überhaupt

ansonsten.... ja^^ den Editor mit dem du das proggy schreibst kannst du dir ganz allein aussuchen^^ ich hab hald PSad

von dem gibts aber bestimmt auch schon nen neueren
__________________



-DaRealXecon- ist offline   Mit Zitat antworten
Alt 09.01.2009, 16:03   #14 (permalink)
Dev-Leader + DLoad-Mod
 
Benutzerbild von PSP-FREAKX
 
Registriert seit: 19.12.2007
Beiträge: 2.675

PSP-FREAKX eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

bei mir ist es EINMAL passiert das ein befehl zu neu war...
aber sonst noch nie

ich benutzte auch PSPad, und der veraltet nicht, bzw ich wüsste nicht was du da noch verbessern willst


ist ein HM0.2 sample eigendlich HM7 kompatible?
__________________
>>>Coder 4 life<<<
Spoiler:
PSP-FREAKX ist offline   Mit Zitat antworten
Alt 09.01.2009, 16:47   #15 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

HM 0.20 gibts net!

Zuerst wurde der LUA Player 0.16 (drunter sind mir keine bekannt aber gibts glaub ich schon^^ ) geschrieben, dann hat der programmierer nach version 0.20 aufgehört und hat den Source code released

Dann hat Homemeister den gemoddet und weiterentwickelt (LUA Player HM)

Der unterschied zwischen HM und normalen (alten) ist die Syntax beim GU
Daher verwende ich zum lernen und testen den 0.20er


Und ja 0.20er samples sollten einigermaßen passen^^
Da ja der HM auf der alten 0.20er version aufbaut

Bei GU 2/3D passt die Sntax nimmer
__________________



-DaRealXecon- ist offline   Mit Zitat antworten
Alt 09.01.2009, 16:54   #16 (permalink)
Dev-Leader + DLoad-Mod
 
Benutzerbild von PSP-FREAKX
 
Registriert seit: 19.12.2007
Beiträge: 2.675

PSP-FREAKX eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

ich mein wegen dem Browser sample...

da meintest du das wäre 0.2

...und ich benutze für gewöhnlich HM 7
__________________
>>>Coder 4 life<<<
Spoiler:
PSP-FREAKX ist offline   Mit Zitat antworten
Alt 09.01.2009, 21:43   #17 (permalink)
PS-Ober Pro
 
 
Registriert seit: 27.08.2008
Alter: 14
Beiträge: 1.040

Maskenmann eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Also welchen würdet ihr mir jetzt empfehlen, am besten halt für Noobs und trotzdem noch mit den Grundlagen die man braucht, mit vollem Namen sonst find ich den nicht xD
Maskenmann ist offline   Mit Zitat antworten
Alt 11.01.2009, 11:19   #18 (permalink)
Dev~Team ex-Oberhaupt.. ツ
 
 
Registriert seit: 03.01.2008
Alter: 16
Beiträge: 1.223

-DaRealXecon- eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

nimm den aus'n tut
Der reicht vollkommen
__________________



-DaRealXecon- ist offline   Mit Zitat antworten
Folgender Benutzer sagt Danke zu -DaRealXecon- für den nützlichen Beitrag:
Alt 11.01.2009, 13:24   #19 (permalink)
Dev-Leader + DLoad-Mod
 
Benutzerbild von PSP-FREAKX
 
Registriert seit: 19.12.2007
Beiträge: 2.675

PSP-FREAKX eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

ja, den hab ich auch...

nochmal wegen den Koordinaten, wenn ihr unten recht in der ecke ein X haben wollte sind die koordinaten:

Spoiler:
__________________
>>>Coder 4 life<<<
Spoiler:
PSP-FREAKX ist offline   Mit Zitat antworten
Alt 07.03.2009, 23:27   #20 (permalink)
PS-Azubi
 
 
Registriert seit: 25.11.2008
Alter: 15
Beiträge: 31

Adi100 eine Nachricht über ICQ schicken
Standard AW: [TuT - LUA] "Hello World" Einfache Textaußgabe

Echt geiles TuT! Probiers bald mal aus!
__________________
Ich habe nichts gegen Hip-Hop, aber ich höre lieber Musik!!! Bier statt Spam!!!
Adi100 ist offline   Mit Zitat antworten

Lesezeichen

Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[C/C++/C#] Wie "heißen" die Tasten des "Mp3 Controllers" -DaRealXecon- Anwendungsprogrammierung 2 18.06.2008 12:01
"gopod" erkennt mein "ipod" nicht! HILFE :( Ozan74 Software Probleme 4 05.06.2008 14:56
Digitaler "Selbstmord" - Risiko: Filesharing "21 Gramm" Rapsta News rund um die Welt 15 07.01.2008 08:52
Verwarnung für apehero: Ausdrucksweise "anuslecker" "arsch" wiederholt eingehend mit spam saw Mülleimer 2 15.11.2007 13:09


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:51 Uhr.


Copyright © 2009 by www.PS-Evolution.in
Powered by vBulletin® Version 3.8.1 (Deutsch)
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Idee, Umsetzung und Administration ChRiSt0pH | ArtWork/GFX der kleine hunger | Gründer (PSP-Freakz) kert