Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   UT2D - 2D-Shooter mit UTStyle (https://www.delphipraxis.net/108627-ut2d-2d-shooter-mit-utstyle.html)

Corpsman 20. Feb 2008 08:31

Re: UT2D - 2D-Shooter mit UTStyle
 
Also ist ja ganz nett dein Game,

Allerdings klappt das mit dem Springen noch nich so optimal, oder gibt es da noch ne 2. Art zu springen, nur mit space ist es auf jedenfall nicht möglich hoch genug zu springen. Den Rest finde ich für den Anfang schon echt gut gelungen.

Custom 20. Feb 2008 08:33

Re: UT2D - 2D-Shooter mit UTStyle
 
scheint ja ganz nett werden zu können, waypoints finde ich zimlich interessant! aber wenn ich du wäre würde ich mich um ein paar gescheite figuren bemühen.... :? sogar strichmännchen sehen besser aus als diese pixelsuppe...
auf desk steht bi mir gerne mal ein bot rum ind dreht sich die ganze zeit nach links und rechts und macht nichts...
springen klappt auch nicht so wies soll und die schüsse bewegen sich viel zu langsam... :S sry aber sonst guter ansatz (ich wollte sogar auch mal einen ähnlichen shooter machen aber dann -> 2.6D ^^)

lbccaleb 20. Feb 2008 09:46

Re: UT2D - 2D-Shooter mit UTStyle
 
das mit den waypoints ist wirklich nett, nur dumm das die irgendwie diese nicht abluafen??!! :gruebel:

ist vllt noch ein wenig verbesserungs würdig, auch an der steuerung seiner figur kann man glaub ich noch was machen, naja auf jeden fall aber ganz witig anzusehen^^

olee 20. Feb 2008 16:18

Re: UT2D - 2D-Shooter mit UTStyle
 
Das mit Desk tut mir leid das war ein Fehler.

Diese Map ist eigentlich noch gar nicht für Bots gedacht. Die war nur zum Testen.

Auf den beiden Maps CTF-Ultimate Arena 2 und CTF-TheGrass... funktionieren die eigentlich super.

probiert es einfach noch einmal.


PS: Springen kann man mit DoubleJump! :bounce1:

olee 20. Feb 2008 17:01

Re: UT2D - 2D-Shooter mit UTStyle
 
Uff das wird hart.


Ich habe nun vor, die ganze Steuerung des Spiels in Objekte zu gliedern.

D.h. dass ich fast den kompletten Code aus einzelnen Abschnitten in wenige
Objekte und Prozeduren zusammenfassen muss.

Hier mal ein Beispiel, wass alles "ausgelagert werden soll:
Delphi-Quellcode:

  TGameEngine = class;

  TGameMode = class
    Owner: TGameEngine;
  public
    constructor Create(AOwner : TGameEngine);
    procedure PreMove  ; virtual;
    procedure AfterMove ; virtual;
    procedure AfterDraw ; virtual;
    procedure PlayerMove(APlayer: TPlayer     ); virtual;
    procedure Bot      (APlayer: TPlayer     ); virtual;
    procedure LoadLevel (Options: TGameOptions ); virtual;
  end;

  TCTFGame = class (TGameMode)
  public
    procedure PreMove  ; override;
    procedure AfterMove ; override;
    procedure AfterDraw ; override;
    procedure PlayerMove(APlayer: TPlayer     ); override;
    procedure Bot      (APlayer: TPlayer     ); override;
//    procedure LoadLevel (Options: TGameOptions ); override;
  end;

  TGameSettings = record
    GameStart        : TTime;
    GameTime         : Single;
    GameEnd          : Single;
    RoundTime        : Single;
    frindlyfire      : Boolean;
    DoSpectate       : Boolean;
    RespawnTime      : Integer;
    TeamCount        : Integer;
    GameMode         : TGameMode;
    showWaypoints    : Boolean;
    //================================
    CTFFlags         : Array[0..3] of TCTFFlag;
    CTFFlagBases     : Array[0..3] of TCTFFlagBase;
    PLStartsCount    : Integer;
    PLStarts         : Array [0..50] of TPlayerStartSpot;
  end;

  TGameEngine = class
    SEngine           : TSpriteEngine;
    Input             : TDXInput;
    Sounds            : TDXWaveList;
    Images            : TDXImageList;
    //================================
    Players           : TList;
    ControllingPlayer : TPlayer;
    Ground            : TImageSprite;
    BackGround        : TBackGroundSprite;
    //================================
    MPos              : TPoint;
    Enabled           : Boolean;
    Settings          : TGameSettings;
    constructor Create (SEngine: TSpriteEngine; DXInput: TDXInput; DXSounds: TDXWaveList; DXImages: TDXImageList);
    procedure  GameTic;
    procedure  DestroyGame;
    procedure  ControllPlayer(Player: TPlayer);
    function   GetPlayerStart(Team: Integer): TPoint;
    procedure  DealDamage(XX,YY: Single; Damage: TDamage; PlayerID: Integer);
    function   MissleHit(HitX,HitY: Single; Damage: TDamage): Boolean;
  end;
Wie man sieht wird dadurch sogar die Steuerung der Bots durch das Objekt TGameMode geregelt, was später die erstellung eines neuen Spielmodus sehr erleichtern soll und natürlich den gesamten Ccode übersichtlicher machen soll.

Was haltet ihr denn davon? :wiejetzt:


MFG

olee 20. Feb 2008 18:43

Re: UT2D - 2D-Shooter mit UTStyle
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi, ich habe mal ein DRINGENDES PROBLEM!

Kuckt euch mal das angehängte Bild an.
Darin ist ein komischer Fehler markiert und ich verstehe nicht, warum der das macht!

KANN MIR BITTE BITTE JEMAND HELFEN ????

busybyte 20. Feb 2008 19:15

Re: UT2D - 2D-Shooter mit UTStyle
 
Sieht ja lustig aus,wie bzw. wann passiert das und warum hast du das ganze 2 mal und warum height= und nicht := .
Versuche mal die Unit aus dem Projekt zu entfernen und dann wieder dem Projekt hinzuzufügen,
ist aber ein Versuch ins blaue,da ich oft die tollsten Fehler erhalte,wenn ich ein Projekt auf einen
anderen Pfad kopiert habe und dann die Units nicht mehr richtig ins Projekt eingebunden sind.
Könnte auch an dem alten Delphi3 liegen.

olee 20. Feb 2008 19:41

Re: UT2D - 2D-Shooter mit UTStyle
 
Danke für den Tipp doch ich habe den Fehler schon Gefunden.

Dieser Code war für das Laden eines Levels und steckte in einem Objekt von TGameMode, das bei mir nun alle dinge verwaltet, die in einem Spielmodi anders sein können als in einem anderen. Dazu gehörte auch das Laden eines Levels.

Das Problem war nun, dass vorher in diesem Code eine Methode aufgerufen wurde, die das Spielfed abbaut. Doch dummerweise hatte ich darin vesehentlich GameMode.free aufgerufen, weswegen das objekt seine eigene Vernichtung mitten in der Laden-Funktion aufgerufen hat. Und das brachte eben diese Chaos.

--> Da dies nun aber klappt, kann ich nun bald die neue Version hochladen, in der es den anfang eines HUD's geben soll und vllt schon einen TDM Mode.

MFG

busybyte 20. Feb 2008 19:55

Re: UT2D - 2D-Shooter mit UTStyle
 
Wow,das geht ja ruckzuck bei Dir.
Danke für den Lösungspost,da wäre ich wohl nicht so schnell drauf gekommmen.
Respekt.

:coder2:

olee 20. Feb 2008 20:31

Re: UT2D - 2D-Shooter mit UTStyle
 
Ich habe jetzt so 3H nur an dieser auslagerung der spielmodi-Methoden gearbeitet und es ist fertig.

jetzt bin ich grad an nem OnKill-Event und nem TDM mode

olee 21. Feb 2008 14:41

Re: UT2D - 2D-Shooter mit UTStyle
 
So!

Endlich ist es wieder so weit. Einen neue Version wurde fertiggestellt und hochgeladen.

Wenn ihr diese testet, werdet ihr euch sicherlich fragen:
--> "Was hat sich denn verändert, außer dieser einfachen Punkteanzeige?"

Die Antwort:
--> "Alles"!

Der gesamte Code des eigentlichen Spiels wurde von der Formularunit abgetrennt und das Spiel selbst existiert jetzt als eigene Klasse. Des weiteren ist aus dieser Klasse der gesamte Code, der sich bei unterschiedlichen GameModes ändern könnte in eine Klasse von TGame Mode verlagert.
Hier ein Beispiel:

Delphi-Quellcode:
  TGameMode = class
    Owner: TGameEngine;
  public
    constructor Create(AOwner : TGameEngine);
    procedure PreMove  ; virtual;
    procedure AfterMove ; virtual;
    procedure AfterDraw ; virtual;
    procedure PlayerMove(APlayer: TPlayer     ); virtual;
    procedure Bot      (APlayer: TPlayer     ); virtual;
    procedure LoadLevel (Options: TGameOptions ); virtual;
    procedure OnKill(KilledPlayer, KillingPlayer : TPlayer); virtual;
    procedure WinCondition; virtual;
  end;

  TTeamGame = class (TGameMode)
  public
    TeamPoints        : Array[0..3] of Integer;
    procedure OnKill(KilledPlayer, KillingPlayer : TPlayer); override;
  end;

  TCTFGame = class (TTeamGame)
  public
    CTFFlags         : Array[0..3] of TCTFFlag;
    CTFFlagBases     : Array[0..3] of TCTFFlagBase;
    procedure PreMove  ; override;
    procedure AfterMove ; override;
    procedure AfterDraw ; override;
    procedure PlayerMove(APlayer: TPlayer     ); override;
    procedure Bot      (APlayer: TPlayer     ); override;
    procedure LoadLevel (Options: TGameOptions ); override;
  end;
Das soll (so hoffe ich es) es später JEDEM ermöglichen, einen eigenen GameMode zu schreiben.
Warum ist das Thema sonst im Bereich OpenSource?^^

PS: Der Download ist wie immer im ersten Post zu finden.

MFG

busybyte 21. Feb 2008 17:01

Re: UT2D - 2D-Shooter mit UTStyle
 
Erstes Fazit:
Sieht zwar schon etwas besser aus,ist jetzt aber leider unspielbar.
Einmal ist die Reichtweite der Waffe begrenzt (Erdbobbel) vor allem
nach unten,und dann wieder nicht.
Diese komischen Gesteinsbrocken oder Erdkrümel kommen nur Zufällig.
Von oben nach unten kann ich durch den "Boden" gehen,von unten nach
oben nur bis zum Fusspunkt meiner Figur bzw. soll wohl irgendwie aussenrum.
Ich denke ich habe keinen einzigen Gegner erledigt, die mich anscheinend auch nicht 0:0,
obwohl mehrmals die Respawn-Nachricht kam wo ich auch nicht weiss, wie
ich respawnen kann, ohne den code abzusuchen oder meine Tastatur durchzuchecken.
Als Startbildschirm sollte bereits ein Level
geladen sein,auch wenn das ein paar Sekunden dauert.


Zum Glück hast Du jetzt Deine geheime myutils dazugepackt.
So kann man wenigstens mal alles nachvollziehen.

olee 21. Feb 2008 17:29

Re: UT2D - 2D-Shooter mit UTStyle
 
Ich verstehe nicht ganz was du meinst:

1.) Die Punkte oben zeigen nicht die kills an sondern die Team Punkte --> das ist Capture-The-Flag
2.) Du wirst automatisch wiederbelebt nachdem die Zeit abgelaufen ist
____(Ich wurde schon darauf aufmerksam gemacht, dass das etwas undeutlich ist und das werde ich noch verbessern
3.) Für einen netten Startbildschirm war eben einfach noch keine Zeit. :oops:
4.) Was meintest du mit der Begrenzung der Reichweite der Waffen? Eigentlich ist dei (fast) unbegrenzt.

5.) Wenn du mal sehen willst wie das Spiel so läuft, dann stell mal unter Optionen bei "neues spiel "Only Spectate" ein! Dann siehst du wie die Bots das machen.

6.) Mit der F1 Taste kannst du die kills nachkucken

Also probier das vllt. einfach noch mal mit den Tipps!

Relicted 21. Feb 2008 18:02

Re: UT2D - 2D-Shooter mit UTStyle
 
habs grad auch mal angeschaut... öhm ja .. idee ganz nett aber..

7fps... *hust* ich habe nen Q6600 mit 4GB ram und ne 8800GTS mit 640MB ... irgendwie unspielbar *grübel*


gruß
reli

xZise 21. Feb 2008 18:05

Re: UT2D - 2D-Shooter mit UTStyle
 
*hust* Pentium D 830 GeForce 6700 XL mit 128 MB VRAM und 1 GB RAM?! Und voll spielbar (bis auf die Farben).

MfG
xZise

PS: Auflösung: 1680 x 1050 Pixel...

BUG 21. Feb 2008 18:23

Re: UT2D - 2D-Shooter mit UTStyle
 
Zitat:

Zitat von Relicted
7fps... *hust* ich habe nen Q6600 ... irgendwie unspielbar *grübel*

Dito ... aber Geforce 8800GT, 2814 MB RAM, 1280x1024x32Bit Auflösung

Und wenn ich im laufenden Spiel ein Neues starte, sowie beim starten des Levels "desk" hagelt es Schutzverletzungen.

MfG,
Bug

olee 21. Feb 2008 18:44

Re: UT2D - 2D-Shooter mit UTStyle
 
Hatte ich doch geschrieben: Desk war eine Test-Map und ist sozusagen veraltet!

Ich habe die mitlerweile aus dem download entfernt!

@FPS : Selbst ich habe eine billige Grafikkarte, 1024mB Ram und das Spiel läuft flüssig mit 30FPS!

Was habt ihr denn eingestellt?

olee 21. Feb 2008 18:45

Re: UT2D - 2D-Shooter mit UTStyle
 
Etwa 40 Bots oder was?

Custom 21. Feb 2008 18:50

Re: UT2D - 2D-Shooter mit UTStyle
 
hab meinen neuen PC noch ned zusammengebaut und mit meiner guten alten X700 läufts auch auf 30FPS

BUG 21. Feb 2008 18:51

Re: UT2D - 2D-Shooter mit UTStyle
 
Zitat:

Zitat von olee
Etwa 40 Bots oder was?

Nein, 5 Bots.

Die Framerate sinkt immer rapide, wenn Partikel dargestellt werden ... ansonsten immer ~32FPS.

MfG,
Bug

PS@olee: Benutze die EDIT-Funktion statt eines Doppelposts (die kannst du 24h lang benutzen).

Namenloser 21. Feb 2008 18:57

Re: UT2D - 2D-Shooter mit UTStyle
 
Bei mir kriecht das Spiel leider auch mit 6-28 fps (je nach Anzahl der Gegner etc.)
Was mich ärgert ist, dass (wahrscheinlich weil das Spiel so langsam ist), ich nur c.a. alle 5 Sekunden schießen kann. Die Schüsse sind für meinen Geschmack insgesamt zu langsam (auch das kann natürlich an dem insgesamt langsam laufenden Spiel liegen). Wenn ich schieße, dann würde ich den Gegner gerne fast sofort und nicht erst 1-2 sek. später treffen. Außerdem wird man so ständig "alten" Schüssen getroffen, die noch irgendwo herumfliegen, ich z.b. bin unter anderem deshalb selten von einer Seite auf die andere gekommen, ohne zu sterben. Also eigentlich machen die Bots die ganze Arbeit, und ich fühl mich etwas überflüssig, was ja nicht Sinn der Sache ist.
Du solltest dir wirklich mal Andorra 2d anschauen, die ist wirklich schnell. Ein Spiel wie deines müsste eigentlich mindestens mit 150 fps laufen.
Was ich mir noch wünschen würde, wären so Sachen wie ducken, um beispielsweise Schüssen auszuweichen.

olee 21. Feb 2008 19:06

Re: UT2D - 2D-Shooter mit UTStyle
 
Ach die kann man eh bald ausstellen (Geht sogar schon aber steht noch nicht zum Download zur verfügung^^)

In etwa 30min gibts eine neue version

olee 21. Feb 2008 19:07

Re: UT2D - 2D-Shooter mit UTStyle
 
Und ducken geht mit Shift!

Relicted 21. Feb 2008 19:11

Re: UT2D - 2D-Shooter mit UTStyle
 
achja auflösung: 1680x1050

olee 21. Feb 2008 19:38

Re: UT2D - 2D-Shooter mit UTStyle
 
Kein wunder denn das game regelt die auflösung noch nicht von sich aus sondern nimmt die Bildschirmauflösung

olee 21. Feb 2008 21:26

Re: UT2D - 2D-Shooter mit UTStyle
 
So die neue Version ist wieder fertig!

Jetzt gibt es auch ein nettes Optionsmenü und ein paar Bugs wurden behoben.

BUG 21. Feb 2008 23:18

Re: UT2D - 2D-Shooter mit UTStyle
 
Jetzt wo ich sie abschalten kann: die niedrigen FPS liegen definitiv an den Partikeln.


Aber eigentlich dürften die paar Partikelchen das System nicht überfordern?!
Vielleicht liegt es auch an Vista ...?

MfG,
Bug

Relicted 22. Feb 2008 06:21

Re: UT2D - 2D-Shooter mit UTStyle
 
um deine behauptung zu untermauern: ich habe hier auch vista x64

Custom 22. Feb 2008 08:13

Re: UT2D - 2D-Shooter mit UTStyle
 
[offtopic]
Vista sucks!! sorry aber ich muss miene meinung zu vista jetz mal loswerden ^^
Also was bringt euch vista? Das einzige was die leute eigendlich wollen wenn sie sich vista holen ist entweder die "tollen" grafik-effekte oder direct X 10 (das ja auch in xp verfügbar sein wird, nur später)... aber wer auf ein verschandeltes windows steht kann sich diese netten "effekte" auch alle und mehr in XP einbauen... abgesehen davon ist es in XP im gegensatz zu vista noch selbstverständlich dass die Treiber funktionieren!
Schaut mal auf die rückseite von neuen spielen da sieht man jetz immer sowas wie "anforderungen unter xp: 1.6Ghz under vista 2.1Ghz
Deswegen frag' ich mich für was vista überhaupt gut sein soll...? :shock:
[/offtopic]

Relicted 22. Feb 2008 08:19

Re: UT2D - 2D-Shooter mit UTStyle
 
[OT]
vielleicht weil die treiberunterstützung für vista 64 besser ist als für xp 64? vielleicht weil ich eine dx10 graka habe und diese auch ausreitzen möchte? vielleicht weil die tollen grafikeffekte ausschaltbar sind? vielleicht weil mich nicht interessiert wie viel cpu irgendein spiel mehr braucht als unter xp? vielleicht weil ich die sicherheitsfeatures von vista gut finde? vielleicht hatte ich auch noch nie probleme was treiber/spiele/programme angeht? vielleicht weil jeder früher geschrien hat "xp braucht doch kein schwein ich bleib bei meinem 98/2000 das läuft wenigstens stabil! achja und scheiss klicki bunti xp.. wird sich NIE durchsetzen! fehlgriff von MS... und die spionieren dich damit aus *heul heul*" und nen jahr später hatte jeder XP?... ich kann diese leidige diskussion "scheiss" vista nicht mehr hören... wenn man keine ahnung hat: einfach mal fr... halten! danke over and out. und nu genug OT hier.. mach im klatsch und tratsch forum nen thread auf und nerv hier nicht mit den anti vista parolen rum - das ist jetzt schon das 5. mal dass man hier so nen mist lesen muss und irgendwann reichts.
[/OT]

busybyte 22. Feb 2008 17:18

Re: UT2D - 2D-Shooter mit UTStyle
 
[OT]
Ausnahmen gibt's immer und ich habe noch ne Ladung Dos-Spiele für den Müll im Regal
Die USB1.0 Probleme sind auch schon vergessen.
Wir warten auf Servicepack1.
[/OT]

busybyte 22. Feb 2008 17:52

Re: UT2D - 2D-Shooter mit UTStyle
 
Liste der Anhänge anzeigen (Anzahl: 4)
Bugbericht Version:(21.02.08 | 21:22)
Bug:total Gamefreeze
Beschreibung:
Beim Weglaufen mit der blauen Fahne und mehrmaligem Ducken,
während dem Laufen,ohne schiessen,ist das Spiel,
nachdem mehrere Gegner verschwanden,
(starben?) und anschliessend neue Geger auf dem Feld erschienen,
eingefroren.
Keine Key- oder Mausfunktionen auf dem Spielfeld möglich.
Spiel Neustart ohne Funktion,ESC ohne Funktion.

Mit Str+Alt+Entf Spiel beendet.

Zum Kompilieren fehlt die WinOpt.dfm

sunrise 23. Sep 2008 02:11

Re: UT2D - 2D-Shooter mit UTStyle
 
SCREENSHOT??!

Hador 23. Sep 2008 03:24

Re: UT2D - 2D-Shooter mit UTStyle
 
Zitat:

Zitat von sunrise
SCREENSHOT??!

Das ist mal ein Beitrag :shock:
Also wenn du wissen möchtest, wie du einen erstellst: Es sollte auf deiner Tastatur eine Druck- bzw. Print-Taste geben :mrgreen:

Nun aber zum Spiel:
- Es ist noch ziemlih langsam (ggf. einstellbar machen)
- Der Sound lässt sich nicht deaktivieren (auch wenn es solch eine Option im Menü gibt)
- Optionsmenü: Die Buttons, die "reingedrückt" sind, sind idR. die, die aktiviert sind. Nicht umgekehrt.
- Ist immernoch sehr Ressourcenfressend. Im ersten Lvl hatte ich grad immer nur um die 18 FPS
- Beim zweiten Start wollte das Spiel nicht mehr. Erst als ich in den Leveleditor und wieder zurück gewechselt bin wurde mir das Level angezeigt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz