Spieleprogrammierung

    • Offizieller Beitrag

    Also ein Segen für OpenSource und ein Fluch für Copyright-Verfechter?
    Interessant..!


    Da meine letzte Frage, wo im Quelltext man eigentlich Funktionen hinschreibt noch im Raum steht werf ich mal gleich die nächste dazu, ob man einer Funktion ein Array als Input gehen kann, ohne dessen Größe oder Form definieren zu müssen?
    Oder man sage mir ob es nicht eine Standardfunktion gibt, die mit den größten vorhandenen Wert aus einem Zahlenarray zurück gibt.


    Nachtrag: Nein, ich glaub ich will beides wissen... und natürlich noch die Alte Frage nach den Funktionen :D


    Bei den meisten Objektorientierten Sprachen heißen Funktionen übrigens Methoden. Also: Bei Java und C# und vielen anderen Hochsprachen die nicht prozedural sind ist es wurscht wo du eine Methode definierst:



    Der Codeschnipsel beantwortet auch direkt deine zweite Frage, wie das mit Arrays ist. Wenn die Kommandozeilenparameter des Programms z.B. "three four five" sind, dann gibt das Programm


    one
    two
    three
    four
    five


    aus.

    • Offizieller Beitrag

    Hm... interessant.
    Ich kämpfe gerade mal wieder mit Regulären Ausdrücken, also im Grunde brauch ich nur [0-9] bzw. \d und das Gegenteil, was dann wohl \D sein sollte Allerdings hab ich keine Ahnung wie ich die in meine Funktion einzubauen habe...

  • So richtig eingehend habe ich mich bisher mit Java und Python beschäftigt, Java, weil wir es in der Uni benutzen, und Python, weil es wirklich eine unsäglich coole Sprache ist. Ob es für Spiele geeignet ist, sei mal dahingestellt, aber sonst: Leute, lernt Python.

  • Ich denke, weil man das Projekt (ich habe hier ein Spiel im Sinn) dann besser aufteilen bzw verwalten kann. Einige "gute" Programmiere schreiben die "exe" die auf den System laufen muss und kümmern sich um die OS Hindernisse/Bedürfnisse/Einbindung des Kopierschutz API usw. z.b in C++.
    Die anderen die sich nicht mit den OS beschäftigen schreiben dann in einer einfacher zu erlernen OS-unabhängigen Script-spache Module für die Spielmechanik/ Scripts in Levlen/Maps usw..
    Wenn man das Spiel dann portiert hat man dann weniger Arbeit und muss nicht nur um die "huckepack exe" für das andere OS kümmern.
    Z.B King's Bounty benutzt lua in den game/config/ui/files. Eine Scriptsprache macht es auch modfreundlicher und man muss nicht alles wegen einer Kleinigkeit neu compilieren, da Scriptsprachen in der Regel Interpreter-sprachen sind :)


    Und zum wie, dafür wird es was ähnliches wie eine "eval funktion" geben.

    • Offizieller Beitrag

    Darf ich das so verstehen, dass nur die notwendigsten Sachen dann in, bleiben wir bei deinem Beispiel C++ und Scriptsprache, C++ geschrieben werden damit alles weitere in Scriptsprache geschrieben werden kann und theoretisch vom ausführenden System unabhängig ist?

  • Zitat

    Ich wollte mich in etwa wie folgt an die Sache heran tasten:



    Programm, dass Sudokus lösen kann (da ich den Algorithmus dazu mal aus purer Langeweile geschrieben habe)

    Ich hab' gestern auch "aus purer Langeweile" (krank und obendrein arbeitsunfähig, da Internetausfall durch Stromausfall) programmiert, und zwar ein kleines Sudoku-Spiel.


    Interessiert hat mich eigentlich nur, wie unwahrscheinlich es ist, ein Sudoku zufällig zu erstellen (indem man also Zufallszahlen ausprobiert, bis alle Eigenschaften des Sudokos erfüllt sind. (Natürlich sind die Anfangszahlen zufälliger, als die späteren. Irgendwann testet er natürlich nurnoch, ob man das Sudoku vervollständigen kann).


    Klar, das Prinzip hat nichts mit sauberer Programmierung zu tun (sauber schon, aber nicht schön ;) ), zu meiner Verblüffung erstellt der PC auf diese Weise aber aber zuverlässig Sudokus (er benötigt im Schnitt 2.500 Versuche - mit heutigen Rechnern innerhalb einer Sekunde). Ich hatte schlicht keine Lust mich (ohne Internet) in die Symmetrieeigenschaften funktionierender Sudokus einzuarbeiten...


    Jedenfalls könnt ihr das Programm im Anhang runterladen - sofern ihr (du, Quappe) einen Algorithmus zum Lösen ausprobieren möchtet. Oder ihr könnt hier Sudoku spielen:


    https://www.uni-due.de/~ada461r/wm/sudoku/index.html


    Viel Spaß, Grüße, IP


    edit: Ohne Javascript geht in beiden Fällen btw nichts...
    edit2: Der JS-Quellcode ist recht "hingeklatscht", sofern Interesse besteht sortiere ich den, kommentiere ihn aus und verschiebe ihn in eine .js Datei..
    edit3: Achso, bitte verratet niemandem, woher ich das Bild für den Joker habe.. :dao:
    edit4: Mir fällt gerade ein, dass ich keine Lust mehr hatte, die Punktabzüge für die Hilfen zu programmieren (da die Punkte ohnehin nicht gespeichert werden -> 'ne DB wollt' ich jetz' nich' für das Minispiel anlegen^^ ). Die Punkte stimmen also nur, wenn man keine Hilfen benutzt..

  • Forum

    Hat das Thema geschlossen.