AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte [Game] Multiplayer Tetris
Thema durchsuchen
Ansicht
Themen-Optionen

[Game] Multiplayer Tetris

Ein Thema von Sebioff · begonnen am 1. Mär 2007 · letzter Beitrag vom 8. Mär 2007
Antwort Antwort
Seite 1 von 3  1 23      
Sebioff
Registriert seit: 27. Sep 2005
So,
nachdem ich hier auch schon ne Weile angemeldet bin, will ich mal ein Projekt von mir vorstellen

Es handelt sich dabei um ein Multiplayer Tetris für bis zu 6 Spieler über Internet/LAN.
Da ich bisher keinen besseren (noch nicht vergebenen...) Namen gefunden habe, heisst das Projekt im Moment TetriSeb (bessere Vorschläge werden gerne entgegengenommen )

Da ich ein großer Fan des 2-Spieler-Tetris-Modus für den GameBoy bin habe ich nach einer Multiplayerversion für den PC gesucht und bin dabei auf die wohl bekannteste Variante gestoßen: TetriNet.
Allerdings sind mir an TetriNet gleich einige Dinge negativ aufgefallen:
- wird schon seit Jahren nicht mehr weiterentwickelt
- die Blöcke rotieren ziemlich merkwürdig
- jeder Spieler erhält eine vollkommen andere Blockreihenfolge

Besonders der letzte Punkt verfälscht den Spielverlauf meiner Meinung nach so stark, dass ich mich mal an einer eigenen Version versucht habe (kann ja nicht angehn, dass Glück zu einem großen Teil über Sieg oder Niederlage entscheidet...)
Dennoch habe ich mir, zugegeben, einige Dinge bei TetriNet abgeguggt.

Features
Multiplayermodus für bis zu 6 Spieler gleichzeitig
Jeder Spieler erhält die gleiche Blockreihenfolge!
angelehnt an das original Gameboy-Tetris (gleiche Feldgröße: 18*10, gleiches Rotierverhalten der Blöcke, ...)
Einzelspielermodus und Teamspielermodus
(optional) PowerUps, bekannt aus TetriNet
auch über LAN spielbar (damit gibts soweit ich weiß Probleme bei TetriNet)
(optional) "Echtzeit"-Ansicht des gegnerischen Feldes, d.h. man sieht nicht nur, welche Blöcke abgesetzt wurden, sondern auch, wie der Gegner seine Blöcke bewegt und dreht. Macht besonders bei mehr als 2 Spielern das zuschauen sehr interessant, wenn man schon ausgeschieden ist
Highscore (allerdings lokal; bisher kein globaler Onlinehighscore...)
eingebauter MP3-Player für die Hintergrundmusik
OP-Status kann vergeben werden, d.h. nicht nur der erste, der online kam, kann eine Runde starten; neue Runden können auch per Voting gestartet werden

Screenshots laufender Spiele
Screenshot 1 (5 Spieler)
Screenshot 2 (2 Spieler)
Screenshot 3 (Block-Schatten)
Screenshot 4 (GameOver.)

Downloads
Aktuelle Version: TetriSeb 1.0, Protokoll v1.27 (08.03.2007) (EXE, 1 MB)
(optional) Sound-/Music/Grafikpack (ZIP, 10.7 MB); einfach in den gleichen Ordner wie die .exe kopieren; wird nicht zum Spielen benötigt. Enthält zu Tetris passende Hintergrundmusik, sowie Soundeffekte und ein Beispielhintergrundbild fürs Spielfeld.

Getestet auf Windows 98 und aufwärts.

Serverliste
Seit der Version vom 02.03.2007 lassen sich TetriSeb-Server über eine Serverliste eintragen und finden.

Anleitung
Tetris allgemein sollte bekannt sein, das werde ich nicht erklären.
Beim Mehrspielertetris gilt zusätzlich: 2 (in einem Rutsch) abgebaute Zeilen fügen dem Gegner/den Gegnern 1 Zeile mit Blöcken zu ihrem Spielfeld hinzu, 3 abgebaute Zeilen fügen 2 Zeilen hinzu, und 4 Zeilen (= Tetris) fügen 4 Zeilen hinzu.
Zusätzlich gibt es (falls aktiviert) einige PowerUps. Generell sind "gute" PowerUps grün, "böse" rot und neutrale grau.
Für alle zwei abgebauten Zeilen erscheint im Spielfeld ein PowerUp, dass durch den Abbau der Zeile zur PowerUp-Leiste hinzugefügt wird (der schwarze Balken unter dem Spielfeld).
Immer das erste PowerUp in der Leiste (das mit dem roten Rahmen drumrum) kann eingesetzt werden.
Mit der Taste "1" wendet man ein PowerUp auf sich selbst an, mit "2" auf Spieler 2 (die Spielernummer steht über dem jeweiligen Spielfeld), usw.
Gewonnen hat der letzte Überlebende.
Je mehr Zeilen man abbaut, desto schneller fallen die Blöcke.
Je mehr Zeilen man abbaut und je mehr Gegner man besiegt desto mehr Punkte erhält man.

Hinweis
Das Spiel ist noch weit entfernt von "fertiggestellt". Es sollte alles soweit funktionieren, aber gerade bei mehr als 2 Spielern oder im Teammodus könnten Fehler auftauchen (da diese Funktionen noch nicht soooooo ausführlich getestet wurden wie der 2-Spieler Modus).
Falls Fehler auftauchen würde ich mich über eine Meldung freuen
Ebenfalls sehr viel weiterhelfen würden mir Vorschläge zum Namen und natürlich allgemein Verbesserungsvorschläge und Ideen für neue Features.
Viel Spaß



Edit: Achja, es gibt bisher auch keinen zentralen Server...
Also wer spielen will wird sich irgendwie ein paar Mitspieler suchen und dann selbst den Server starten müssen. Oder, falls keine Mitspieler zu finden sind, könnt ihr ja auch mal den Einzelspielermodus versuchen (Server Settings -> Start Server -> Start Game)

Das ist übrigens noch eines der großen Probleme die ich habe: nen eigenen 24h-erreichbaren Server laufen lassen ist mir zu teuer, und mit der aktuellen Lösung der eigenen kleinen Server kann ich keinen globalen Highscore aufstellen lassen (zumindest habe ich noch keine Idee, wie man den betrugssicher machen könnte). Ansonsten könnte ich ja eine Lobby einrichten, von der man dann die privaten Server erreichen kann.
 
dominikkv

 
Delphi 2007 Professional
 
#2
  Alt 1. Mär 2007, 18:21
hi
sieht schon mal toll aus...
nur wenn ich nen server starten will kommt:
Zitat:
---------------------------
Tetris7_3
---------------------------
Windows-Socket-Fehler: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig (10013), auf API 'bind'
---------------------------
OK
---------------------------
und ist das programm auch internet tauglich, damit wir mal eine DP-Tetris-Runde zocken können^^

edit: ich hab vista, vllt liegts daran
Dominik
  Mit Zitat antworten Zitat
Sebioff

 
Delphi 6 Personal
 
#3
  Alt 1. Mär 2007, 18:30
hi dominikkv,
ich würd jetzt auch mal drauf tippen, dass Vista da Probleme macht...
Hast dus in einem Account mit Adminrechten versucht?
Bei mir läufts nämlich auch unter Vista.

edit: hab mal eben gegoogelt, aber ne lösung hab ich nicht gefunden....hm.
Versuchs vielleicht mal mit nem anderen Port als 80, der ist ja nicht unbedingt für Games gedacht


Und ja, ist Internettauglich
Sebastian
  Mit Zitat antworten Zitat
Namenloser

 
FreePascal / Lazarus
 
#4
  Alt 1. Mär 2007, 18:36
Zitat:
zumindest habe ich noch keine Idee, wie man den betrugssicher machen könnte
da fällt mir was ein: man könnte doch statt des highscores selber so eine art replay übermitteln, was dann virtuell durchgespielt wird, und der highscore, der dann rauskommt, wird eingetragen.
  Mit Zitat antworten Zitat
dominikkv

 
Delphi 2007 Professional
 
#5
  Alt 1. Mär 2007, 18:39
ja, bin in nem adminkonto drin und hab jetzt sogar nochmal mal das prog über "als administrator ausführen" gestartet -> gleicher fehler.
vista version: ms vista 64 ultimate final mit allen updates
Dominik
  Mit Zitat antworten Zitat
Sebioff

 
Delphi 6 Personal
 
#6
  Alt 1. Mär 2007, 18:42
Zitat von NamenLozer:
Zitat:
zumindest habe ich noch keine Idee, wie man den betrugssicher machen könnte
da fällt mir was ein: man könnte doch statt des highscores selber so eine art replay übermitteln, was dann virtuell durchgespielt wird, und der highscore, der dann rauskommt, wird eingetragen.
Keine schlechte Idee, aber das Replay könnte man dann ja fast genauso einfach wie seinen Score manipulieren...


@dominikkv: Hm ok, ich hab die normale Business-Version...
hast dus mal auf einem anderen Port versucht? Hab nochmal ein bisschen weitergegoogelt, das scheint wirklich mit dem Port zusammenzuhängen.
Sebastian
  Mit Zitat antworten Zitat
Namenloser

 
FreePascal / Lazarus
 
#7
  Alt 1. Mär 2007, 18:44
Naja, aber der Aufwand wäre größer, und es köntne nicht sooooo astronomische highscores geben, wenn man z.b. den zeitlichen abstand, nach dem neue teile runterfallen fest im programm eingestellt hääte und dann im replay nur noch steht, welche teile wann gekommen sind. Aber 100% sicher wird man es eh nie haben...
  Mit Zitat antworten Zitat
Sebioff

 
Delphi 6 Personal
 
#8
  Alt 1. Mär 2007, 18:50
Zitat von NamenLozer:
Naja, aber der Aufwand wäre größer, und es köntne nicht sooooo astronomische highscores geben
Schon richtig
Ich habe sowieso über eine Replay-Funktion nachgedacht, da würde sich das ja gut kombinieren lassen...

Was ich mir halt problematisch vorstelle: was, wenn man einfach ein total gefaktes, abgeschnittenes Replay übermittelt? Man könnte ja einfach Replays einschicken von 2 Spielern, in denen beim zweiten Spieler einfach ohne sonstige Aktionen die Blöcke bis zur Decke gestapelt wurden...
Ob das Match zwischen den beiden wirklich stattfand oder wie lang es ging kann ich ja nicht nachprüfen, ich müsste da voll auf die übermittelten Daten vertrauen.
Sebastian
  Mit Zitat antworten Zitat
dominikkv

 
Delphi 2007 Professional
 
#9
  Alt 1. Mär 2007, 19:09
ok, auf port 81 hats geklapt
ich wär mal dafür das wir mal alle auf nem server spielen
Dominik
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#10
  Alt 1. Mär 2007, 21:46
Hi Sebi,

Zitat von Sebioff:
Da ich bisher keinen besseren (noch nicht vergebenen...) Namen gefunden habe, heisst das Projekt im Moment TetriSeb (bessere Vorschläge werden gerne entgegengenommen )
Wie wäre es mit "Network Tetris"?
Hier ein paar sachen, die mir aufgefallen sind:
  • Wenn ich als Einzelspieler spiele, dann ist die Grafik nicht okay (Es ist weis)
  • Wie wäre es mit einem "Pause"-Button (o.ä.)?
  • Wenn man spielt, hat das Memo den Fokus (auf "ReadOnly" stellen )
Fabian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz