[Spielvorstellung] The NeverEnding Impulse

Status
Nicht offen für weitere Antworten.

Aomx

Mitglied
Hi Leute,
ich wollte hier nur mal mein aktuelles Projekt vorstellen und würde das Spiel gerne eurer Experten-Kritik ;-) freigeben.

Die Projektseite: Die Projektseite zu The NeverEnding Impulse - Download und FAQs

Auf der Seite findet sich auch eine kleine Beschreibung, die (bisher) recht kleinen FAQs und die Sources (unter der MIT Lizenz veröffentlicht; macht damit, was ihr wünscht :D!

Würde mich hier sehr über konstruktives Feedback eurerseits freuen! Macht es euch Spaß? Gibt es Probleme? Findet Ihr etwas im Programm umständlich?

mfg,
Aomx
 
Zuletzt bearbeitet:
T

tuxedo

Gast
Wie hast du es denn geschafft dir die "Über Top-Level-Domain" localhost zu registrieren? *scnr*

- Alex
 

Marco13

Top Contributor
Jo, ganz nett - keine Probleme... abgesehen vom leisen Wimmern der Grafikkarte, was auf active rendering hindeutet. Ich finde zwar, dass die Geschwindigkeiten bezüglich der Pfeile, die man malt, gerade verkehrt herum sind, aber das ist vielleicht nur ein Detail. Wie man über 150 Kollisionen reaukommen soll, ist mir zwar nicht ganz klar, aber ... vielleicht finde ich den cheat ja noch ;)
 

Aomx

Mitglied
Jo, ganz nett - keine Probleme... abgesehen vom leisen Wimmern der Grafikkarte, was auf active rendering hindeutet. Ich finde zwar, dass die Geschwindigkeiten bezüglich der Pfeile, die man malt, gerade verkehrt herum sind, aber das ist vielleicht nur ein Detail. Wie man über 150 Kollisionen reaukommen soll, ist mir zwar nicht ganz klar, aber ... vielleicht finde ich den cheat ja noch ;)

Joa, das Flimmern ist mir auch schon aufgefallen. Ich Render quasi per Aufruf der repaint() Funktion in einem Thread. Gibts da ne bessere Lösung, mit welcher kein Flimmern entsteht?

Über 150 Kollisionen hab ich bei den Standard Einstellungen auch noch nie geschafft :p das war nen Freund von mir, der ne Art Physik Guru is :D. Der is auch mal auf die Idee gekommen den Chips nur Geschw in x und y Richtung zu geben, wodurch die dann nur noch in 1 Dimension kollidiert sind :D da musste ich ne Anti Cheat Abfrage einbauen ^^. Bin über weitere Impressionen / Ideen gespannt. Startet die jar eigentlich auch unter Linux? Bin nicht ganz sicher, ob die MySQL Libs auch darunter gehen und würde auch freuen, wenn unter Linux es mal jemand testen könnte!
 

Illuvatar

Top Contributor
Jo, ganz nett - keine Probleme... abgesehen vom leisen Wimmern der Grafikkarte, was auf active rendering hindeutet. Ich finde zwar, dass die Geschwindigkeiten bezüglich der Pfeile, die man malt, gerade verkehrt herum sind, aber das ist vielleicht nur ein Detail. Wie man über 150 Kollisionen reaukommen soll, ist mir zwar nicht ganz klar, aber ... vielleicht finde ich den cheat ja noch ;)

Wenn ich den Dingern einfach ne möglichst hohe Anfangsgeschwindigkeit geb, dann kollidieren die wie blöde... ;)
Anhang anzeigen 781

Kann man seine Highscores irgendwo sehen?
Edit: Schon gefunden

Edit2: Wenn man beim Highscore "Abbrechen" macht, hat das nicht ganz die erwünschte Wirkung ;)
 
Zuletzt bearbeitet:

TheChemist

Bekanntes Mitglied
Hab grad 181 geschafft :p
Spiel gefällt mir ganz gut.
Immoment ist es noch möglich, chips ausserhalb des Feldes zu plazieren. Beim Starten werden sie dann zwar reingezogen aber vllt kann man das ganze ja schon vorher abfangen.
 

Apo

Bekanntes Mitglied
Naja 310 Kollisionen sind möglich :D
Macht kurzzeitig Spaß aber ein paar Goodies würden der "Langzeit"motivation gut tuen =)
 
Zuletzt bearbeitet:

Aomx

Mitglied
Ihr habt schon recht. Desto mehr Geschw man den einzelnen Chips am Start gibt, desto mehr Kollisionen kommen am Ende raus. Ich baue wahrscheinlich demnächst in einem Update eine Quasi insgesamt verfügbare Gesamtgeschw ein, welche man nicht überschreiten darf. zB nicht mehr als 5px/frame für alle Chips zusammen. Dann wäre es eine größere Kunst die Chips passend zu platzieren, bzw die Geschw so zu setzen, dass möglichst viele Kollisionen entstehen.

Darf der eine Post so gedeutet werden, dass die jar nicht unter Linux startet? Man kann die Eingabe der Highscore nicht abbrechen, da das in ner while Schleife gefangen is :D könnte ich aber einfach ausbauen; aber eigentlich freut man sich doch wenn man einen neuen aufgestellt hat und gibt gerne seinen usernamen ein :D?

Hast du konkrete Vorstellungen unter "Goodies"?

mfg,
Aomx
 

madboy

Top Contributor
Ich hätte zwei Vorschläge, die allerdings nichts mit dem Spiel an sich zu tun haben (welches mir übrigens gut gefällt :) ).

1. Du solltest Benutzereingaben IMMER validieren. Zum Beispiel gleich beim Eingeben des Highscore-Namens überprüfen, ob die Daten noch in die Datenbank passen (2000 Zeichen sind jedenfalls zu viel)

2. Evtl. sollte nicht direkt über JDBC auf die Datenbank zugegriffen werden, sondern über eine "Zwischeninstanz". Z.B. ein kleines PHP-Skript, das ein bisschen Validierung betreibt und danach die Daten in die DB schreibt bzw. davon liest. Somit wäre die Notwendigkeit nicht da, Benutzernamen im Quelltext zu hinterlegen. Böse Leute könnten sonst auf böse Ideen kommen ;-)

EDIT: das Spiel läuft unter Linux.
Anmerkung zu 1.: außerdem sollte vorgebeugt werden, falls jemand "'; drop database xy; --" oder ähnlich heißt (wobei ich nicht mal weiß, ob sowas nicht sogar Statement-intern abgefangen wird)...
 
Zuletzt bearbeitet:

Marco13

Top Contributor
Ja, das "cheaten" habe ich natürlich auch Probiert: Alle in einer Zeile und nur horizonatle Geschwindigkeiten, dann würde es rund gehen ;) aber da das jetzt nicht mehr möglich ist, sollten vielleicht die "unerreichbaren" highscores rausgenommen werden ;)
 

Aomx

Mitglied
Ich hätte zwei Vorschläge, die allerdings nichts mit dem Spiel an sich zu tun haben (welches mir übrigens gut gefällt :) ).

1. Du solltest Benutzereingaben IMMER validieren. Zum Beispiel gleich beim Eingeben des Highscore-Namens überprüfen, ob die Daten noch in die Datenbank passen (2000 Zeichen sind jedenfalls zu viel)

2. Evtl. sollte nicht direkt über JDBC auf die Datenbank zugegriffen werden, sondern über eine "Zwischeninstanz". Z.B. ein kleines PHP-Skript, das ein bisschen Validierung betreibt und danach die Daten in die DB schreibt bzw. davon liest. Somit wäre die Notwendigkeit nicht da, Benutzernamen im Quelltext zu hinterlegen. Böse Leute könnten sonst auf böse Ideen kommen ;-)

EDIT: das Spiel läuft unter Linux.
Anmerkung zu 1.: außerdem sollte vorgebeugt werden, falls jemand "'; drop database xy; --" oder ähnlich heißt (wobei ich nicht mal weiß, ob sowas nicht sogar Statement-intern abgefangen wird)...

Hey,
jau das Problem mit den lesbaren DB Daten hat mir schon jemand per PM geschrieben. Natürlich könnte ich ein Script schreiben, dass die Daten in die DB schreibt und abruft. Die Daten wären dann ja nur deswegen sicher, weil der Webserver die PHP Datei vorher parst und somit man Variablen "unsichtbar" vom aufrufenden speichern kann. Das Problem is dabei aber wieder, dass ich die Daten vom Spiel entweder per GET oder per POST übertragen müsste. per GET wäre es ebenfalls für jeden Laien möglich exorbitante Werte einzutragen, aber auch per POST könnten findige User eigene Anfragen senden. Wäre es ein Schutz eine eigene Browser Sendung in Java mitzugeben (zB ein total zufälliger String) und diesen dann in Java abzufangen? Wahrscheinlich auch nicht, weil dann wieder User ein Programm in Java schreiben könnten und die zufällige Zeichenfolge aus den Binaries auslesen können oder? Gibts da überhaupt eine wirklich sichere Lösung oder muss man immer auf den "netten" Spieler hoffen, der nicht die DB beeinflusst?

mfg,
Aomx

PS: Super, dass das Spiel auch unter Linux funktioniert, ich passe die Seite gleich mal dementsprechend an.
 

madboy

Top Contributor
Du wirst Cheaten wohl nie verhindern können. Meiner Meinung nach wäre POST recht geeignet. Ist nicht ganz so einfach zu durchschauen wie GET aber natürlich bietet das auch keine Sicherheit. So bald jemand genug Interesse hat, zu cheaten dann wird er auch Mittel und Wege finden.

Ich meinte eigentlich nur, dass die Zugangsdaten geschützt werden sollten und erst mein zweiter Gedanke galt Cheatern.
 

javimka

Top Contributor
Ich finde das Spiel ganz lustig. Als Weiterentwicklung könntest du noch weitere Formel für das Panel in dem das Spiel läuft oder für die Chips implementieren. Ellipsen, Trapeze, Parabeln, usw. Könnte mathematisch natürlich sehr anspruchsvoll werden mit der Vektorgeometrie ;)
 
S

Spacerat

Gast
Ok die Spielidee und der Ablauf sind schon mal recht gelungen. Nur der Name ist paradox.
Die Problematik die madboy beschreibt ist alledings gegeben (SQL-Injection). Eingaben müssen deswegen definitiv wie gesagt in einer Zwischeninstanz validiert werden, bevor das Spiel Online nutzbar gemacht wird. Aber bitte... Niemals mit PHP arbeiten, wenn die Möglichkeit Java oder ähnliches zu benutzen besteht, denn bei PHP besteht obendrein noch die Gefahr, Opfer einer Code-Injection zu werden.
 

Hansdampf

Bekanntes Mitglied
Zum Thema cheaten:
In deinem Quellcode stehen unverschlüsselt user/pass für deine Onlinedatenbanken...
Um es bösen Jungs ETWAS schwieriger zu machen könntest du einen Obfuscator (Proguard) benutzen und dazu user/pass irgendwie im Quellcode zusammenfriemeln. Im Moment ist es ein copy-paste und schon kann man deine Datenbanken löschen.

edit: oops, bin nicht der erste, der es bemerkt hat. Naja, zumindest habe ich einen kleinen Tip gegeben...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Android Spielvorstellung / Beta Tester gesucht Spiele- und Multimedia-Programmierung 5
K [Spielvorstellung] - Spoony Fish - (Android) Spiele- und Multimedia-Programmierung 3
P Run Or Fight Spielvorstellung Spiele- und Multimedia-Programmierung 10
K Spielvorstellung: DeadStorm Spiele- und Multimedia-Programmierung 2
P Spielvorstellung Etasund Spiele- und Multimedia-Programmierung 14
S Spielvorstellung: Raumschiff Spiele- und Multimedia-Programmierung 6
S Spielvorstellung: Time to Travel Spiele- und Multimedia-Programmierung 22
Oliver530 [Spielvorstellung] Minesweeper Spiele- und Multimedia-Programmierung 12
Fu3L SpielVorstellung: 25 Rooms Spiele- und Multimedia-Programmierung 5
P [Spielvorstellung] PowerX Spiele- und Multimedia-Programmierung 4
H Spielvorstellung: DarkRoom Spiele- und Multimedia-Programmierung 31
M.F.G. Spielvorstellung (plus KI frage): Connect Four – Extreme Spiele- und Multimedia-Programmierung 11
C Spielvorstellung: BallWar Spiele- und Multimedia-Programmierung 4
H Spielvorstellung: Nork Spiele- und Multimedia-Programmierung 24
T [Spielvorstellung] Block Shifter Spiele- und Multimedia-Programmierung 28
Fu3L Spielvorstellung: Delirium! (Ein LD48 Resultat) Spiele- und Multimedia-Programmierung 3
A Spielvorstellung: Wüstenhuhn Spiele- und Multimedia-Programmierung 9
B Spielvorstellung: GravoBlocks 3 Spiele- und Multimedia-Programmierung 34
Ein Keks [Spielvorstellung] Spider Solitaire Spiele- und Multimedia-Programmierung 2
T [Spielvorstellung] IMoY Wujinyou Spiele- und Multimedia-Programmierung 65
Private Void Spielvorstellung: Kniffel Spiele- und Multimedia-Programmierung 31
J Spielvorstellung: Vajanoid Spiele- und Multimedia-Programmierung 34
B Spielvorstellung: GravoBlocks Spiele- und Multimedia-Programmierung 48

Ähnliche Java Themen

Neue Themen


Oben