Java Game in Homepage ein-binden/bauen

Hey Leute!

Ich habe eine kleine Frage.

Es geht wieder um mein neues Java Spiel.

Also: Ist es irgendwie möglich das Spiel direkt in eine Website einzubauen?

Ich stelle mir das so wie bei Minecraft vor:
Man klickt einen Link bei der Website an, das Spiel wird geladen und zack schon kann man das Spiel spielen. Ohne aufwendige und nervige direkte Downloads usw.

Ist das mit einer normalen Jar (Die JPanel, JFrame usw. enthält) möglich oder brauche ich dazu ein anderes System?

Und nehmen wir an es ist gut möglich, würde das Spiel dann in einem neuen Fenster geöffnet werden? Oder direkt auf der Website? Wäre man in der Lage das Fenster zu vergrößern? Vielleicht sind auch all diese Sachen anpassbar…

Ich habe keinen Plan wo ich da anfangen soll…

wisst ihr vielleicht mehr darüber?

Ich wäre wirklich dankbar über etwas Hilfe :slight_smile:

Grüße
Felix

Java Web Start?

nujo oder machst ein Applet draus:verzweifel:

nujo?? Was ist den das für ein Wort? :wink:

wie genau baut man eigentlich ein stinknormales java programm als applet um?
was genau muss da verändert werden? und kann man im internet auch wirklich alle swing komponenten benutzen?

Ah :slight_smile: Danke für dieses Stichwort! Ich lese mir gerade den Text bei Oracle darüber durch.

Wie genau würde das funktionieren? :open_mouth: (Bitte verzweifle nicht an meinem Unwissen :P)

Natürlich. Aber der kleinste gemeinsame Nenner bei einem Applet ist die auf dem Client eingesetzte JRE.
Wenn die aus dem letzten Jahrtausend ist, wird der Benutzer dein Applet mit aktuellen Klassen nicht ausführen können.

Es gibt verschiedene Möglichkeiten, es kommt darauf an, ob du das Programm in einem Fenster haben willst/musst, oder ob es direkt in der Webseite laufen soll.
Am besten ist es, wenn du die Anwendung komplett in einem Haupt-Panel zusammenfassen kannst.
Bilder und Töne müssen über Methoden geladen werden, die URLs verwarten. Anderenfalls müsste das Applet später unsinnigerweise signiert werden.

[QUOTE=L-ectron-X]Natürlich. Aber der kleinste gemeinsame Nenner bei einem Applet ist die auf dem Client eingesetzte JRE.
Wenn die aus dem letzten Jahrtausend ist, wird der Benutzer dein Applet mit aktuellen Klassen nicht ausführen können.

Es gibt verschiedene Möglichkeiten, es kommt darauf an, ob du das Programm in einem Fenster haben willst/musst, oder ob es direkt in der Webseite laufen soll.
Am besten ist es, wenn du die Anwendung komplett in einem Haupt-Panel zusammenfassen kannst.
Bilder und Töne müssen über Methoden geladen werden, die URLs verwarten. Anderenfalls müsste das Applet später unsinnigerweise signiert werden.[/QUOTE]

Ideal wäre, wenn das Programm in einem eigenen Fenster geöffnet werden würde. Dann könnte man als Nutzer auch die Größe des Fensters auch einfacher anpassen :slight_smile:

Was für ein “System” würdest du denn empfehlen?

Ich habe mich ein bisschen informiert und im Moment würde ich eher in Richtung Java Web Start gehen, da es User-freundlicher wirkt.
Applets wirken aber auch nicht schlecht und ich glaube dass es einfacher geht Applets zu “erstellen”.

Ich denke bevor ich mich mit einem der Themen genauer auseinandersetze ist der Rat eines Profis hilfreich :slight_smile:

Naja, mittlerweile haben Applet’s ja einiges an Sicherheit und Performance dazu gewonnen, aber viele haben immer noch Vorurteile ihnen gegenüber und deaktivieren deswegen Applets im Browser…
Deswegen sind Applet’s eigentlich nicht zu empfehlen, obwohl irgendjemand ja wieder mal damit anfangen muss :wink:

Wenn du es mit JWS machst kannst du hier mal möglichst einfach erklären wie das funktioniert?
Interessiert vielleicht nicht nur mich?!

[QUOTE=IDC]Naja, mittlerweile haben Applet’s ja einiges an Sicherheit und Performance dazu gewonnen, aber viele haben immer noch Vorurteile ihnen gegenüber und deaktivieren deswegen Applets im Browser…
Deswegen sind Applet’s eigentlich nicht zu empfehlen, obwohl irgendjemand ja wieder mal damit anfangen muss :wink:

Wenn du es mit JWS machst kannst du hier mal möglichst einfach erklären wie das funktioniert?
Interessiert vielleicht nicht nur mich?![/QUOTE]

Klar :slight_smile:
(Wenn ich es hinbekomme xD Ich hatte vorher sogar Probleme mit dem Key-System als ich die Jar signen wollte)

[QUOTE=iFelixxxx]Ideal wäre, wenn das Programm in einem eigenen Fenster geöffnet werden würde. Dann könnte man als Nutzer auch die Größe des Fensters auch einfacher anpassen :slight_smile:

Was für ein “System” würdest du denn empfehlen? [/QUOTE]
Das ist bei der von mir oben angesprochenen Variante mit einem MainPanel ziemlich egal, weil dieses Panel in einen JFrame und auch in ein JApplet “passt”.
Das Anpassen der Fenstergröße macht aber auch nur Sinn, wenn sich damit auch die Dimensionen des Spiel verändern.

Zum Thema Signieren findest du im Wiki etwas dazu: Applets und WebStart-Anwendungen signieren

*** Edit ***

Man kann natürlich auch eine Hybridanwendung schreiben, eine so genannte Appletcation.
Diese kann als Jar-Datei selbst ausgeführt werden, oder auch in eine Webseite eingebunden werden.

Auch wenn ich hier schon mal eine Diskussion deswegen anfing aber: Applets sind (zumindest für Endanwender) tot. Die meisten Leute haben es nicht mal mehr aktiviert im Browser. Da deine Zielgruppe kaum Leute sein werden, die Java-Applets wegen diverser Embedded-Steuersoftware verwenden müssen, wird dein Spiel so nur mehr Frust auslösen.

Schmeiß es lieber in eine hübsche Exe die dir das ganze startet. Z.B. mit Launch4j.

Also Applets würde ich auch nicht empfehlen, da die heute so gut wie niemand mehr verwendet (teilweise direkt vom Browser deaktiviert sind,…) Java Web Start habe ich noch nie verwendet.
Ist Java Web Start ebenso tot wie Applets?

Eine exe kann man meines Wissens nach nicht schön aus dem Browser raus starten, oder täusche ich mich da?

Ich glaube nicht, aber ich hab noch nie einen Anwendungsfall gesehen! Deswegen?

[QUOTE=Unregistered;68523]
Eine exe kann man meines Wissens nach nicht schön aus dem Browser raus starten, oder täusche ich mich da?[/QUOTE]
Nö, aber man kann ihr ein schönes Icon geben :wink:
Obwohl man dannn gleich mit C++ programmieren könnte, da die Plattformunabhängigkeit ja dahin wäre…

Wieso? Dein Build-Prozess spuckt dann halt zwei Files aus. Die Exe und das JAR. Die so genannten Windows-DAU-Benutzer bekommen ihre EXE und die anderen werden wohl das JAR verwenden müssen.

Ist Java Web Start ebenso tot wie Applets?

Nein. Allerdings sehr verbreitet ist es auch nicht. Aber du kannst es ja mal probieren. Deine Swing-App sollte relativ schmerzlos bzw. mit 0 bis wenig Anpassung als Webstart laufen. Hier ist ein Tutorial von Oracle dazu.

Was für eine starterApplication unter Apple für eine Programmiersprache verwenden?
AppleScript?

[QUOTE=IDC]Was für eine starterApplication unter Apple für eine Programmiersprache verwenden?
AppleScript?[/QUOTE]
Wenn du ganz motiviert bist kannst du dir ein Application Bundle bauen. Aber auf Mac OS ist Java nicht so gern gesehen weshalb Apple ja auch Java 7 standardmässig deaktiviert hat. Damit schrumpft die Nutzergruppe auf die, die Java selbst installiert haben. Und die werden ein java -jar das-jarfile.jar auch noch zusammen bringen.

[QUOTE=IDC]Nö, aber man kann ihr ein schönes Icon geben :wink:
Obwohl man dannn gleich mit C++ programmieren könnte, da die Plattformunabhängigkeit ja dahin wäre…[/QUOTE]
Naja, dann kann man auch die jar + batchfile gezipt zum download anbieten (und man kann bei den zips ja auch so selbst entpackende machen, die dann auch noch starteinträge macht,…) und es dem Nutzer anbieten. Das funktioniert auch und man hat noch die platformunabhängigkeit,

Im Wiki findet sich auch zum Starten von Java-Programmen etwas: Java-Programme starten - Möglichkeiten

Java WebStart ist schon sehr bequem. Einfach eine JNPL (XML) Datei verlinken und die JVM macht den Rest sofern das Betriebssystem weiß die JVM damit aufzurufen. Aber das sollte seit Java 5 oder 6 zur JRE dazu gehören.