Entwickler-Ecke
Freeware Projekte - Snake
Bergmann89 - Fr 17.03.06 10:15
Titel: Snake
HI,
ich hab gestern mein Snake fertig gemacht. :lol:
Evtl. erinnert ihr euch noch an meine Frage wie man die Arrow-Keys benutzt. Ihr könnt euch ja das Prog ma runter laden und mir dann sagen was man besser machen könnte.
MfG Bergmann89.
p.s. kann sein das die Verknüpfung nicht mehr geht, sodass ihr eine neue machen müsst. ("sytem\project1.exe")
Moderiert von
Christian S.: Topic aus VCL (Visual Component Library) verschoben am Fr 17.03.2006 um 09:18
Moderiert von
Tino: Titel den Regeln angepasst.
Miri - Fr 17.03.06 11:48
ich seh's mir zu hause mal an... :)
digi_c - Fr 17.03.06 11:51
Gefällt mir schon ganz gut hier noch ein paar Ideen, damit dir nicht langweilig wird ;) :
-In den Schwanz beißen
-Farbe der "Gliedmaßen" bei jedem neuen Glied verändern damit man besser sieht wie die wächst
-Labyrinth
-bewegtes Labyrinth(hab ich noch nie gesehen wäre aber mal interessant wenn sich alle Mauern gemeinsam verschieben quasi Alien vs. Predator in 2d ;))
Stoney - Fr 17.03.06 12:04
Wenn es dein erstes Spiel, muss ich schon sagen: Respekt :zustimm:
Ein paar Kleinigkeiten zum Verbessern:
- Das mit der Verknüpfung ist mir etwas suspekt, lass doch alle Dateien in einem Ordner
- Das Icon mit der Anwendung verknüpfen
- Das Fenster in der Mitte des Bildschirms anordnen
- Für die Spielbeschreibung kein Memo, sondern ein Label mit WordWrap := True
- Eigentlich macht das Spiel erst mit der höchsten Geschwindigkeit richtig Spass
Das waren ein paar Punkte, die nach kurzer Antesten bestimmen konnte. Sollte mir noch was einfallen, werden ich nochmal etwas posten.
mexx - Fr 17.03.06 17:30
Man behauptet schon, dass manche garnicht mehr wissen, wie dieses Game seinen Feldzug begann? Ein :beer: mit jeden, der seine Nokia-Tasten solange gequält hat, bis er 2000 Punkte hatte. :D
Zum Spiel:
Klasse, ich find es gut. Du könntest ab und zu Zusatzsteine auftauchen lassen, die für einen gewissen Zeitraum da sind und Extra-Punkte beim Einsammeln geben.
Oder wie wäre es mit einer Gegner-Schlange. Sie kommt mal fix aus der Ecke und schnappt Dir die Punkte weg. Bei Berührung beider Schlangen kann zunächst auf den Tot beider Schlagen verzichtet werden. Ist halt ne Geisterschlange. :wink: Wenn man es halt nach 6s nicht schafft, den Stein einzusammeln, kommt die Geisterschlange um klaut Ihn, wenn man nicht vorher dran ist.
Miri - Fr 17.03.06 22:49
hey, nicht schlecht!!!
muss allerdings stoney recht geben, dass der spaß bei den niedrigeren geschwindigkeiten auf der strecke bleibt... da ist einfach das feld zu groß für... (so ne 3-5 punkte schnecke braucht dann ja fast ne halbe stunde bis zum anderen ende, wenn man die wände einbaut)
vielleicht könntest du das ja lösen, indem du dem langsameren modus nur einen kleineren teil der fläche zur verfügung stellst...
weil's mir zu lange gedauert hätte, hab ich nicht ausprobiert, ob sich die geschwindigkeit während des spielens von alleine erhöht, wenn ja, könntest du damit dann auch den teilbereich auf volle größe anwachsen lassen...
wär nur meine idee dazu...
außerdem könntest du das "menü" etwas ansprechender gestalten...
uuund...wenn man die bestenliste mit "enter" schließen und n neues game öffnen könnte, wär auch geil... vor allem, da man ja eh nur mit tastatur spielt und ich immer soooo faul bin, dass die maus dann ganz schön weit weg ist *g*
ansonsten nix für ungut, das spiel ist super gemacht :) daumen hoch!! :zustimm:
Amiga-Fan - Sa 18.03.06 00:19
hm eine rar-datei... nein ich werde kein rar-programm dafür installieren...
GTA-Place - Sa 18.03.06 15:44
1. Das Fenster ist zu klein (Scrollbalken).
2. Nach dem 1. Stein hatte ich keine Lust mehr, weil die Schlange viel zu langsam ist.
andras - Sa 18.03.06 15:48
Zitat: |
2. Nach dem 1. Stein hatte ich keine Lust mehr, weil die Schlange viel zu langsam ist.
|
hast du die geschwindigkeit auf 9 hochgedreht?? wenn dir dann noch fad ist, bist du zimlich gut, ich treff dann nämlich so gut wie keinen stein mehr.
hoch-un runterdrehen get mit A und Y.
GTA-Place - Sa 18.03.06 16:09
Das hab ich übersehen (das grau ist schlecht zum lesen). Aber selbst dann ist das Spielfeld noch zu groß.
DelphiAnfänger - Mo 20.03.06 22:41
ist eigentlich schon ganz gut nur wenn wann ganz schnell zwei tasten hintereinader drückt bekommt man teilweise die meldung "du hast dich selbst gefressen"
Bergmann89 - Di 21.03.06 09:02
ja das Problem hab ich noch nicht lösen können,
weiß nicht woran das liegt, kann ja ma den Quelltext
posten.
Da_Knuddelbaer - Di 21.03.06 10:57
Jo, eigentlich schon prima Spielchen :-)
Die meisten Sachen wurden ja bereits erwähnt. Aber da sind leider noch ein paar Kleinigkeiten:
1) Mein Schlangenkopf verschwindet immer erstmal unter dem Stein bevor er gefressen wird.
2) Wenn man erstmal eine seeeeehr lange Schlange hat, dann kommt es immer wieder vor, dass mal ein Stein mitten in meiner Schlange auftaucht... ich sollte mal probieren, den dann zu essen, mal schaun ob's dann nen Punkt gibt oder ich draufgehe *g*
3) Mach doch bitte die Fenster nicht maximierbar / vergrößerbar.
4) Ein paar Hindernisse im Spielfeld würde die Sache entschieden interessanter machen. Sie sollten am Anfang aber nicht auf der Schlange liegen ;-)
5) Wenn man P für die Punkteverteilung drückt, dann kann man hier im Fenster in das Memo reinschreiben.
6) Und ein BUG: Wenn man P für die Punkteverteilung drückt, dann wird das Spiel ja pausiert. Aber wenn ich nun die Punkteverteilung per X anstatt mit "OK" schließe, dann bleibt es leider pausiert...
Tjoa, und wie gesagt, dann halt noch die ganzen Sachen, die die anderen hier schon erwähnt haben.
Gruß,
Knuddelbaer
PS: Das mit dem 2 mal schnell 2 Tasten drücken führt tatsächlich zu einem Fehler. Liegt wohl daran, dass wenn ich z.B. nach oben gehe, nach links und sofort nach unten drücke, dass du die Schlange dann aber noch nicht links gegangen ist und sich aber sagt, dass sie jetzt nach unten gehen darf, dort testet und sieht, dass sie selbst dort ist und dann macht's bumm.
Bergmann89 - Di 21.03.06 18:47
HI,
hab alles nochma überarbeitet und versucht es allen Recht zu machen. An den Hinder nissen arbeite ich noch dran, wird bestimmt erst morgen was. Und nochwas wie kann ich das Icon an die EXE binden wenn ich das compile? Oder kann man die danach noch drann machen ?
MfG Bergmann89.
€: hab noch ein BUG gefunden, is aber erst seitdem ich das mit dem Extra-Futter gemacht hab. Wenn ich den aufruf der Funktion weglasse gehts. Achja, es kommt einfach "Sie sind gegen die Mauer gelaufen" 1. Es ist keine Mauer an und 2. Ich steh in der Mitte vom Feld vieleicht weiß da jemand Rat
€2: Hab den fehler gefunden und beseitigt. hab auch die neue Version hochgeladen.
Moderiert von
Tino: Überflüssige Zeilenumbrüche entfernt.
counterto - Di 21.03.06 20:46
Sau gut respekt, konnte bis jetzt noch kene Fehler finden!
Da_Knuddelbaer - Mi 22.03.06 10:44
Hi!
Das Icon kannst du im Menü unter
Projekt -> Optionen (ganz unten) und dort im Fenster unter Anwendung -> Symbol laden einstellen.
Bergmann89 - Mi 22.03.06 10:47
Hab gestern noch ein paar Schönheitsfehler
entfernt, das mit dem Labyrint wird aber nix,
ich habs probiert, aber es will nicht so wie
ich will. :?
Hier ist jetzt nochma die entgültige Version. :!:
MfG Bergmann89.
Da_Knuddelbaer - Mi 22.03.06 11:07
Huhu :)
Jo, also
SO find ich das Spiel klasse :!: :!: :!: Vom Design her ist es jetzt auch einiges besser! Schon ein nächstes Projekt in Aussicht?
Habe mir mal den Code von Dir angesehen. Auch wenn es nicht wild ist, aber du benötigst kein festes Array "Kette" der Größe 9999 :wink: Du kannst bei der Spielfeldgröße nämlich maximal 3600 Punkte setzen (ohne Mauer, mit Mauer natürlich noch weniger).
Das hier
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var Form1: TForm1;
type blisteT = Record Name:String; pkt: Integer; end; type KetteT = Record x, y:Integer end;
var laenge, richtung, c, gesch, gesch_anzeige, futter_x, futter_y, score, mauer, wand: Integer; var Kette: array[1..9999] of KetteT;
var bliste: array[1..3] of blisteT; var player: Integer; |
kannst man auch einfach so schreiben:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| var Form1: TForm1; player, laenge, richtung, c, gesch, gesch_anzeige, futter_x, futter_y, score, mauer, wand: Integer; Kette: array[1..9999] of KetteT; bliste: array[1..3] of blisteT;
type blisteT = Record Name : String; pkt : Integer; end;
KetteT = Record x, y : Integer; end; |
Wie gesagt: Cooles Spiel :)
Gruß,
Knuddelbaer
Bergmann89 - Mi 22.03.06 11:41
Also als nächtest wollte ich vieleicht mal PingPong programieren oder ein anderes Minigame, bis ich dann so ne kleine Spiele sammlung habe.
Und bei dem Quelltext: Da hast du doch bloß die variablen und die Types getauscht oder ?
Aber ich denke ich weiß wie du das meinst:
Delphi-Quelltext
1: 2: 3:
| var: beispiel: record var1,var2:Integer; end; |
Moderiert von
Tino: Überflüssige Zeilenumbrüche entfernt.
Da_Knuddelbaer - Mi 22.03.06 11:47
Ich meine das genau so wie es da steht :wink:
Du benötigst da nicht immer ein var davor schreiben... oder bei mehreren types nicht jedesmal type davor schreiben.
Bergmann89 - Mi 22.03.06 11:57
Achso :oops: , jetzt machst klick.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!