Autor |
Beitrag |
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Sa 06.09.08 16:51
Hiho
ich möchte hiermit mein "kleines" Towerdefense vorstellen was ich in letzter Zeit programmiert habe.
Was ist Tower-Defense?
Tower-Defense (kurz TD) ist ein Spiel-modi bei dem mit Türmen, die der Spieler errichten muss, verhindert werden, dass Gegner ein bestimmtes Ziel nicht erreichen. Die Gegner bewegen sich dabei von einem Checkpoint zum anderen und müssen alle passiert haben, eh sie in ihr Ziel laufen und dem Spieler damit ein Leben abziehen.
Wie kann ich es verhindern das die Gegner ihr Ziel erreichen?
Indem man Türme baut. Oben in der Mitte kann man sich zwischen 4 Grundtürmen entscheiden die man entweder in 4 andere Tower umgestalten kann oder diese Verbessern kann. Der 5. Turm ist eine Mauer. Diese greift nicht an und dient nur dazu zu "mazen".
Was ist "mazen"?
Mazen ist das wenn man mit den Türmen den Gegner in ein Labyrinth schicken muss, damit dieser an seinen Checkpoint oder ins Ziel kommt. Dabei habe ich eine neue Art des Mazen eingebaut die es erlaubt die maze noch enger und somit effektiver bzw komplexer zu gestalten.
Wichtig:
- es ist mir leider noch nicht gelungen die Fehler vollständig herauszukriegen. Die meisten Fehler sind Zugriffsverletzungen (wobei ich zwar sehen kann welche Zeile im Code diese Meldung verursacht, ich aber beim genauen prüfen nicht feststellen kann woran dort der Fehler liegen soll (Code-Bsp: main.geldlbl.Caption:=inttostr(F_gold); )
- die Balance beruht aktuell noch auf reiner Mathematik und kann somit auch unmöglich sein^^ ... muss ich noch ma überarbeiten... (bin selbst noch nicht über lvl 35 gekommen ^^)
- um creep-jugling (die dies können wissen was es ist^^) zu verhindern wird der Weg eines Creeps nicht aktualisiert, wenn ein neuer Turm errichtet wird.
- Todo-list
-- Zugriffverletzungen entfernen
-- Balance verbessern
-- evtl Musik im Hintergund trallern lassen
-- Speicher-möglichkeit einbauen
-- unterschiedliche Schwierigkeitsmodi
ansonst:
ich hoffe es ist trotzdem einigermaßen Spielbar ^^
und möchte pls ein bissl bewertung oder sonstige komments haben^^ (zB auch was man genau machen muss damit ein Fehler kommt oder so)
mfg
(ja ich weiß das ich noch nicht viel Posts hier im Forum habe^^(bin halt der stille Leser, der nicht jedem "müll" nachfragt^^))
Einloggen, um Attachments anzusehen!
Zuletzt bearbeitet von nkp90 am Mi 01.10.08 20:47, insgesamt 5-mal bearbeitet
Für diesen Beitrag haben gedankt: Hidden
|
|
huuuuuh
Beiträge: 665
Erhaltene Danke: 19
win xp, (win vista), win 7
VS 2008 Express Edition, VS 2010 Express Edition, VS 2010 Professionell
|
Verfasst: Sa 06.09.08 17:27
colles konzept, so kenn ich towerdefence noch nich. das spiel macht einen guten eindruck.
aber wenn die bilder nich verfügbar sind hagelt es zugriffsverletzungen...
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Sa 06.09.08 18:30
eigentlich müssten die mit in dem ordner drin sein: aber ich kann ma versuchen die bilder in die exe mit rein zu packen ....
mfg
edit:
bilder sind in der exe jetz drin ^^
|
|
DelphiMarkus
Beiträge: 303
OpenSuSE
Delphi 2009 Pro., Lazarus
|
Verfasst: Fr 12.09.08 17:20
Hallo!
Sehr schönes Spiel, es machr richtig Spass! Aber das Spiel hat noch einige Fehler, z.B. Wollte ich eine Mauer bauen, da kam eine Zugriffsverletzung.
Das Spiel ist mir bei 4 Mal Spielen 2 Mal abgestürtzt, warum weiß ich nicht.
Die Zugriffsverletzung ist schon ärgerlich, schau mal ob du sie beheben kannst.
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Sa 13.09.08 11:12
Hi,
Gefällt mir sehr gut
Der Seuche-Tower ist genial, bekommt als einziger 'ne ganze wave allein down. Solche Sachen müssten aber einmal definiert werden: Ist Seuche aufaddierbar(du hast ja geschrieben "später"), wie lange hält sie an? Ist der Abzug prozentual oder ein Fixwert?
Bei früheren Towerdefense-Versionen hier im Forum(einfach mal suchen ) war es so, dass die Range mit einem gestrichelten Kreis beim Bauen angezeigt wurde. Das fände ich sehr schön
Das Info-Menü sollte imho nur angezeigt werden, wenn sich die Maus über den Buttons befindet.
Edit: Ein Menü, um die Türme(später?) aufzurüsten vermisse ich
Bist du dir beim Schaden des Seuche-Towers sicher? 1-1000 o.O
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Sa 13.09.08 12:45
bei dem problem mit den zugriffsverletzungen zerbreche ich mir grad noch den kopf dran (schwer den fehler als solches zu finden, da mir die fehlermeldung und der angezeigte code nicht weiter hilft -.-)
das mit dem kreis zum anzeigen des radius is ne gute idee
---erledigt
und das mit der seuche bzw den dots das muss ich noch ma überarbeiten ...(aktuell is es so das zB da steht: 1-1000 ... dh alle 1000 milisekunden macht der tower 1 schaden usw...)
---erledigt
das mit den menüs: die gehen eigentlich nur auf wenn man sich mit der maus länger als xxx milisek darüberbefindet (absichtlich so gemacht ... wie ne art hint^^)
---sollt so sein ^^
das mit der späteranzeige bezieht sich auf lvl 10 tower ^^^(schreib ich noch dazu^^)
---erledigt
mfg
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Sa 13.09.08 15:25
nkp90 hat folgendes geschrieben: | das mit den menüs: die gehen eigentlich nur auf wenn man sich mit der maus länger als xxx milisek darüberbefindet (absichtlich so gemacht ... wie ne art hint^^) |
Jop, das finde ich soweit ganz gut. Aber, wenn man die Maus vom Knopf runternimmt, braucht's erst einen Rechtsklick, damit das Menü zugeht. Man kann sogar reinklicken
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 13.09.08 15:43
Schickes Spiel!Macht richtig Spaß!Wie gesagt würde ich das mit dem Menu verbessern.
Ich finde es blöd das man das Progg nciht minimieren kann.Es ist ja ein Spiel für Zwischendurch und nciht sowas wie Age Of Empires was den ganzen PC beansprucht.
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Sa 13.09.08 16:05
Kannst du: Rechtklick auf das Symbol in der Taskleiste
Was ich chic fände wären Shortcuts für die Buttons, z.B. Strg+n für neues Spiel. Und uf jeden Fall ein Menü für einen angeklickten Turm. Wie wertet man eig. Türme auf Verkaufen tät' ich gerne.
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Sa 13.09.08 18:55
ich hatte festgestellt das in der alten version doch ein paar fehler zu viel dabei waren, welche mit fehlenden bildern zu tun hatte ^^ ... jetz sind die alle in der exe drin, wodurch es möglich ist die türme zu verbessern bzw zu verkaufen oder ähnliches
das mit dem menü weg machen wenn man mit der maus das tower-symbol verlässt war nicht mein plan da es zb auch informationen bzgl rüstung gibt: wenn man mit der maus zB über physisch geht sieht man wie sich physischer schaden auf welche rüstungsart auswirkt. geht man dann mit der maus über die schadensart magisch, wird dieser schriftzug grün und man sieht davon die entsprechende auswirkung auf die rüstung ^^
das minimieren .. naja.. son hässlichen windows-rahmen wollte ich nicht ringsherum haben, und es geht trotzdem (halt per taskleiste) ... ich kann ja mir noch ma was bzgl rahemn bauen einfallen lassen
cpu-lastig (wie aoe es war^^) ist das spiel eigentlich nicht ... nur die pathfinding-procedure ist etwas lastig, aber so schnell das es kaum auffallen sollte)
das mit den shortcuts per tastatur is ne gute idee ... nur müsste ich da erst noch bissl lernen, weil ich bisher noch nie was mit tastatursteuerung gemacht hab (außer edit-felder und so )
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: So 14.09.08 13:27
Hi,
Dein Programm war gerade auf einmal weg Keine Fehlermeldung, kein garnichts, einfach verschwunden, der Prozess
Beim Verkaufen fehlt mir noch der Verkaufspreis und ein Hint, dass der Knopf zum Verkaufen da ist
Ansonsten sehr schön
Edit: Argh, nimm bitte dem "Neu"-Button den Fokus weg, wenn er gesetzt wird.. Hab gerade 'ne Acessviolation mit Enter weggeklickt und dann aus versehen alles gelöscht War wave 10
E2: Ach so, und manchmal kann man an bestimmte Stellen nichtmahr bauen. Stattdessen kommt 'ne AccessViolation und ein Rotes Fokus-Kreuz oben Links.
E3: Autsch, gerade bei wave 20 oder so('ne Weile nach 14..) ein Haufen von AccessViolations(wie mit'm Timer) und dann, als ich gerade den Prozess killen wollte, war er plötzlich verschwunden
War schon fast ger ganze Bildschirm vollgebaut
E4: Eventuell während des Baus eines Turms(bevor der Platz gewählt wurde) schon upgraden. Dann könnte man den Platz nach dem Upgraden nach der wirklichen Range auswählen
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: So 14.09.08 15:59
@ hidden:
-das mit nem hint fürs verkaufen lässt sich einrichten
-das mit dem fokus muss ich ma suchen wie man das macht ^^
-das mit dem bauen is mir auch schon ma passiert, aber als ich dann geguckt hatte durch was es verursacht wurde musste ich feststellen das die selbe procedure die den fehler verursachte eigentlich ständig ausgefürht wird, aber seltsamerweise da keine fehler bringt -.-
-das mit den ganzen violations liegt an folgender zeile
if ((F_path[F_passedpath].pkt.x*15-15=x) and (F_path[F_passedpath].pkt.y*15-15=y)) then begin
diese zeile wird immer dann ausgeführt, wenn der creep sich ein pixel weiterbewegt. an der stelle wo der fehler aber auftrat, ist es (schon nach einigen tüfteln) so, dass das dyn. aray F_path zwar gut bestückt ist und auch immer die stelle F_passedpath besitzt, aber trotzdem ein fehler kommt (durch was auch immer -.-)
das is nämlich aktuell noch mein problem bei dem ganzen programm das fehler zustande kommen dessen ursache ich aber nicht finden kann da sie (meiner meinung nach) unlogisch sind --.--
mfg
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: So 14.09.08 16:20
Hi,
Wenn du willst, kannst du das Projekt auch mal hochladen, wären sicher einige bereit, da mal drüberzuschauen
Ich glaub, jetzt hab' ich alle Fehlersorten einmal durch Gerade: .. hat ein Problem festgestellt und muss beendet werden.^^
E: wave 23 und abgestürzt
E2: Wenn das Spiel den >Fokus verliert, sollte es auf Pause schalten
E3: Wave 27, meinen Highscore angehängt. Wer sich über die vielen schwächenden Türme Wundert: Meine Maus hat da so 'nen Tick und ich hab' verzweifelt versucht, 'nen Laser-Turm zu bekommen
mfG,
Einloggen, um Attachments anzusehen!
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Di 16.09.08 22:42
Ist das eig. Absicht, dass Türme mit 1-1 keinen Schaden machen? =) Z.B. die ersten Stufen des Laser-Turms
Edit: hier nochmal ein etwas strukturierterer Ansatz Bin nicht ganz so weit gekommen, da sicher der Feuer-Caster(besonders bei den unfair vielen auf wave 25) einfach besser eignet. Übrigens der einzige Turm, den ich ohne weiteres auf Stufe 10 bekommen habe
E2: Hier sieht man's jetzt nicht, aber der Physik-Tower ist Stufe 9.
E3: Das Teleportationslabor kann ja jeden Feind nur ~3 Mal teleportieren. Steigt da die Teleportationsstrecke oder die mögliche Häufigkeit mit der Stufe?
E4: Du solltest das OnPaint der Paintbox benutzen (sry, falls du das bereits tust und es an 'was anderem liegt). Dann wird das Spiel nämlich auch während der Pause neu gezeichnet und ein anderes Fenster wischt beim drüberfahren nicht alles weg.
mfG,
Einloggen, um Attachments anzusehen!
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
Mitmischer 1703
Beiträge: 754
Erhaltene Danke: 19
Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
|
Verfasst: Do 18.09.08 17:59
Sehr tolles Programm, Respekt !
Was du vielleicht noch überarbeiten könntest, wäre die Einstellung, welcher Feind denn abgeschossen werden soll: Du klickst also auch einen deiner Feinde, und der wird dann von allen dienen Einheiten angegriffen (sofern in Reichweite)
_________________ Die Lösung ist nicht siebzehn.
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Do 18.09.08 18:44
Hi,
- Aufrüsten: Beim projezierten Radius die Stärkungs-Aura mit einbeziehen. Außerdem muss man nach dem Aufrüsten erst einmal den Fokus wegsetzen, damit die Verstärkungen der Aura hinzugerechnet werden
- Beim verkaufen nicht ganz löschen sondern Rückbau um eine Stufe. Zumindest eine Mauer sollte stehen bleiben, da sonst für die aktuelle wave ein Durchbruch da ist.
- Statusanzeige der aktuellen Gegner: hp gesammt, Gegnerzahl. Außerdem Gegner markierbar. Dann für den markierten Gegner den Status und, wie schon von anderen gesagt, einen Knopf, um alle Türme in Reichweite auf ihn switchen zu lassen.
- Immunität gegen Seuche nich absolut machen!! Es ist praktisch unmöglich, auf dem Turm aufzubauen, da für den Fall einer Immunität auch alle Arbeit ohne ihn reichen muss
- Was ich auf jeden Fall vermisse ist eine ausführliche Hilfe zu dem Spiel: Dieses verrückte Verhalten der Rüstungsklasse "Held" habe ich z.B. immer noch nciht verstanden: Bilde ich mir das ein oder haben die so nach Lust u8nd Laune ab und zu mal Phasen, wo sie überhaupt Schaden nehmen können^^
- Ich hätte gerne einen Button, um das Spiel zu Beschleunigen.. Ab wave 20 oder so ist es eig. nurnoch so, dass man die Wave totwartet und einfach das Geld für die nächste Aufrüstung braucht..[dringend]
- wird fortgesetzt
Gefällt mir sehr gut, lass dich nicht von den vielen Vorschlägen abschrecken
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Fr 19.09.08 21:17
erst ma schon ma danke für die vielen gedankenanstöße, leider kann ich aber während der woche eher schlecht weiterarbeiten, weil ich da in meiner wohnung ca 50 km weg von @ home bin und dort noch kein inet hab (erst seit 3 wochen dort oder so und kaum geld -.-)
das mit den anregungen find ich gut ... doch ich werd nicht jede einbauen, da das spiel ansonst entweder zu voll, zu unübersichtlich oder eventuell zu schwer oder gewöhnungsbedürftig werden könnte ^^
und das mit dem zeichnen: ich zeichne auf ein virtuelles bild im ram, das ich dann auf den desktop werfe, was ich aber noch ändern werde ^^
um den rest werd ich mich jetz das we ma bissl kümmern bzw gucken was geht, ohne das ich das halbe prog neu machen muss ^^ (wird schon )
mfg
ps:
das mit dem laser-tower auf den lowlevel liegt aktuell an bissl rechnung: 1-1 schaden heißt das mit jedem schuss 1 schaden gemacht wird, aber durch die rüstung, welche 50% ignoriert ist es so, dass (weil ich bisher nur mit integer rechne) halt die zahl abgerundet wird auf 0 schaden ^^
und: lvl 31 hab ich bisher auch noch net geschafft (lvl 30=pers. rekord ^^)
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Sa 20.09.08 11:45
Hi,
Kannst du die Rüstung nicht irgendwie in die tatsächlichen hp einfließen lassen? Integer bietet ja doch einiges mehr an Performence
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
nkp90
Beiträge: 24
Erhaltene Danke: 2
|
Verfasst: Sa 20.09.08 12:08
mh... *grübel grübel*
für die ersten angenommen 10 lvl würde es sich lohnen, aber später weiß ich nicht ob ich an das integercap kommen würde, weil der lvl 50 boss hat doch schon einiges aufn kasten
ich werde mir dazu auch paar gedanken machen, kann aber nicht garantieren das ich das das we schaffe, weil doch noch einiges an RL ansteht^^ .. aber ich wollte jetz die woche den rechner ma mit zur wohnung nehmen, was so viel heißt wie das ich vorankommen müsste und nächstes we (leider erst) ein update da sein müsste ^^
mfg
|
|
Hidden
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Sa 20.09.08 16:37
Hi,
Sonst nimm doch schonmal cardinal und steig später auf int64 um.. immernoch mehr performence als extended, oder?
Was heißt "mehrmals" beim Seuche-Tower Stufe 10? beliebig oft? das wär' ja ziemlich heftig
Edit: Und was ändert sich beim Teleport-Labor durch aufrüsten?
E2: Also priorität hat im Moment auf jeden Fall, dass das Spiel immer weider zu crashen scheint. Ich habe meinen Königsweg inzwischen gefunden und glaube, dass ich auch lvl 31 knacken würde.. Ist mir aber heute schon drei Mal um lvl 30 rum gecrasht und langsam bin ich es leid^^
Also: entweder speichern(sicherlich am einfachsten zu realisieren) oder diesen Fehler finden
Im Anhang: Meine Strategie, hatte dann auf lvl 30 noch die hälfte der Mauern in Numb-Türme(Hammer) verwandelt und das ging mit dem Boss schonmal ganz gut, der hat sich kaum noch bewegt
mfG,
Einloggen, um Attachments anzusehen!
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
|