-
Die
Erfindung betrifft ein Datenverarbeitungsverfahren in einer Computerspielvorrichtung, die
an ein Kommunikationsnetz angeschlossen ist, und sie betrifft insbesondere
jedoch nicht ausschließlich
ein Datenverarbeitungsverfahren, das in jeder Vorrichtung simultan
Daten verarbeitet, die von einer einzigen Vorrichtung eingegeben
worden sind.
-
In
den letzten Jahren sind Computerspielvorrichtungen für den häuslichen
Gebrauch, die eine Kommunikationsfunktion aufweisen, üblich geworden.
Mit derartigen Computerspielvorrichtungen ist es durch den Anschluss
einer oder mehrerer anderer Computerspielvorrichtungen über ein
Netz, beispielsweise das Internet, möglich geworden, Computerspielkämpfe zwischen
Spielern mit gegenseitig voneinander getrennten Computerspielvorrichtungen
zu erleben.
-
Sind
jedoch gegenseitig voneinander getrennte Computerspielvorrichtungen über ein
Netz wie das Internet verbunden, so tritt das Problem der Kommunikationsverzögerung auf.
Insbesondere werden in einer gegebenen Computerspielvorrichtung die
Handlungsdaten, die gemäß einer
Spielerhandlung (Bewegung einer Figur und/oder Angriffshandlung
usw.) erzeugt werden, auf dieser einen Computerspielvorrichtung
verarbeitet, und sie werden auch an andere Computerspielvorrichtungen übertragen, wo
sie in vergleichbarer Weise verarbeitet werden. In dieser Situation
werden die Handlungsdaten in der einen Computerspielvorrichtung
praktisch verzögerungsfrei
verarbeitet und auf dem zugehörigen
Bildschirm dargestellt. Bei den anderen Computerspielvorrichtungen
treffen diese Handlungsdaten jedoch erst nach einer vorbestimmten Übertragungszeit
ein, und sie werden nachfolgend verarbeitet und der zugehörige Bildschirm
wird dargestellt.
-
Treten
Kommunikationsverzögerungen
auf, so wird das Spiel nicht synchron verarbeitet, da sich die Verarbeitungszeitpunkte
der gleichen Daten in den jeweiligen Computerspielvorrichtungen
unterscheiden. Folglich führen
die Spieler der jeweiligen Spielvorrichtungen zu einem gegebenen
Zeitpunkt Handlungen aus, wobei sie jedoch entsprechende unterschiedliche
Spielbildschirme sehen. Dadurch entsteht ein Missbehagen, da die
Spieler ein Gefühl entwickeln,
dass ihre Handlungen nicht mit denen ihres Gegners zusammenpassen.
Zudem können
sich die Spielergebnisse auf jeder Computervorrichtung unterscheiden.
-
Es
ist daher erwünscht,
ein Datenverarbeitungsverfahren bereitzustellen, bei dem die Daten auch
dann praktisch gleichzeitig in den jeweiligen Computerspielvorrichtungen
verarbeitet werden, wenn Kommunikationsverzögerungen zwischen einer Anzahl
Computer auftreten, die zu einem Netz verbunden sind.
-
Frühere Versuche,
derartige Kommunikationsverzögerungen
zu kompensieren, sind in
WO 96/25989
A offenbart. Dort werden Programmparameter so justiert,
dass sie eine geschätzte Übertragungsverzögerung ausgleichen.
In
WO 99/32990 A ist
ein Datenverarbeitungsverfahren in einer Anzahl Computerspiele gemäß dem Oberbegriff
des beigefügten
Anspruchs 1 offenbart, wobei ein Softwareagent einen vom Benutzer
wahrnehmbaren Anzeigeeffekt bewirkt, um Verzögerungen zu verbergen, die beim
Liefern der Daten an den Benutzer auftreten. Hierzu werden aus dem
Kinofilm bekannte Vorgehensweisen eingesetzt.
-
Gemäß einem
ersten Aspekt der Erfindung wird ein Verfahren zur Datenverarbeitung
im Zusammenhang mit einer Anzahl Computerspielvorrichtungen bereitgestellt,
die über
ein Kommunikationsnetz verbunden sind, umfassend den Schritt:
das
Messen der Kommunikations-Verzögerungszeiten
zwischen der Anzahl entsprechender Vorrichtungen durch das Messen
einer Kommunikationsverzögerung
an jeder Vorrichtung ab dem Zeitpunkt, zu dem eine Testmeldung von
der Vorrichtung an eine andere Vorrichtung gesendet wird, bis zu
dem Zeitpunkt, zu dem die Meldung von der anderen Vorrichtung zurückkommt;
gekennzeichnet
durch die weiteren Schritte:
Erfassen der längsten Zeitspanne der Verzögerungszeiten;
Synchronisieren
der Zeiten, die in den zahlreichen Vorrichtungen gezählt werden;
und
während des
Ausführens
eines Computerspiels an jeder Vorrichtung, das Verarbeiten von Spieldaten, die
von einer anderen Vorrichtung empfangen werden, nach dem Verstreichen
der längsten
Zeitspanne der Verzögerungszeiten
ab dem Übertragungszeitpunkt
der Spieldaten von der anderen Vorrichtung, und das Verarbeiten
von Daten, die von jeder Vorrichtung gesendet werden, nach dem Verstreichen
der längsten
Zeitspanne der Verzögerungszeiten
ab dem Übertragungszeitpunkt
der Spieldaten von jeder Vorrichtung,
wobei der Synchronisierschritt
die Unterschritte enthält:
Beginnen
der Zeitzählung
an den zahlreichen Vorrichtungen nach dem Verlauf einer ersten Zeitperiode ab
einer Übertragung
eines Rücksetzsignals,
das eine Vorrichtung der Anzahl Vorrichtungen an andere Vorrichtungen
sendet;
Übertragen
eines Zählwerts
der Zeiten von der einen Vorrichtung der Anzahl Vorrichtungen an
die anderen Vorrichtungen; und
das vorübergehende Anhalten der Zählererhöhung an
jeder anderen Vorrichtung, so dass der Unterschied ihres eigenen
Zählwerts
und des empfangenen Zählwerts
von der einen Vorrichtung zu einer Verzögerungszeit bezüglich der
einen Vorrichtung wird.
-
Gemäß einem
zweiten Aspekt der Erfindung wird ein Computerprogramm bereitgestellt,
umfassend Computerbefehle, die eine Computervorrichtung ausführen kann,
die eine der zahlreichen Computerspielvorrichtungen im Verfahren
des ersten Aspekts der Erfindung ist.
-
In
einer bevorzugten Ausführungsform
werden daher die Verzögerungszeiten
zwischen den Vorrichtungen bestimmt, bevor das Spiel gestartet wird.
Diese Verzögerungszeiten
werden dazu benutzt, eine Synchronisierung der Zeiten zu erhalten, die
die jeweiligen Vorrichtungen zählen.
Damit wird während
des Spielfortschritts das Betriebsdatensignal nach dem Verstreichen
der Verzögerungszeit
mit der größten Länge aller
Verzögerungszeiten
zwischen den Vorrichtungen verarbeitet, die vorab nach seiner Erzeugung
gemessen wird. Auf diese Weise kann man eine gleichzeitige Verarbeitung
des Betriebssignals in einer Anzahl Vorrichtungen erzielen.
-
Bevorzugt
enthalten in der beschriebenen Erfindung die Spieldaten Information
bezüglich
der Übertragungszeit.
Beim Empfang der Spieldaten erkennt der Verarbeitungsschritt, wann
die genannte längste
Zeit verstrichen ist, und er nutzt dazu die Differenz zwischen der
Zeit, zu der die Daten gesendet wurden und der Zeit, die er selbst
zählt.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Es
zeigt:
-
1 eine
Skizze von Computerspielvorrichtungen, die über ein Netz verbunden sind;
-
2 ein
Blockdiagramm einer Computerspielvorrichtung;
-
3 eine
Ansicht zum Erklären
einer Computerspielvorrichtung, die anhand eines Beispiels eine
Ausführungsform
der Erfindung erläutert;
-
4 ein
Verarbeitungs-Flussdiagramm eines Datenverarbeitungsverfahrens gemäß einer Ausführungsform
der Erfindung;
-
5 eine
zeitabhängige
Darstellung zum Erklären
eines Verfahrens, das die Zeiten der Spielvorrichtungen A, B und
C synchronisiert;
-
6 eine Ansicht eines Beispiels für das Format
eines Handlungsdatensignals;
-
7 ein Verarbeitungs-Flussdiagramm von Spielvorrichtungen
während
der Aus führung
eines Spiels;
-
8 eine
Ansicht, die einen virtuellen dreidimensionalen Raum erläutert, in
dem die Objekte eines Computerspiels angeordnet sind;
-
9 eine Ansicht, die ein Beispiel eines Bilds
des virtuellen dreidimensionalen Raums in 8 gesehen
von einem vorgeschriebenen Betrachtungspunkt darstellt;
-
10 eine Ansicht zum Erklären der
Richtung, in die die Figuren zeigen;
-
11 ein
Blockdiagramm eines Netzservers;
-
12 ein
Flussdiagramm des Registriervorgangs auf einem Netzserver in einer
Spielvorrichtung;
-
13 eine
Ansicht, die ein Beispiel für
einen Darstellungsbildschirm auf einer Spielvorrichtung in den Prozeduren
in 12 wiedergibt;
-
14 eine
Skizze der TCP/IP-Protokollschichten;
-
15 ein
Blockdiagramm eines herkömmlichen
Netzservers;
-
16 eine
Skizze, die beispielhaft einen Bereich des gemeinsamen Speichers
3 darstellt;
-
17 eine
Ansicht eines Netzes, in dem eine Anzahl Spielvorrichtungen über Kommunikationsschaltungen
mit einem Hauptserver verbunden sind;
-
18 ein
Flussdiagramm eines Netz-Quizspiels;
-
19 ein
Flussdiagramm eines Netz-Quizspiels;
-
20 ein
Beispiel eines Eintrags-Annahmebildschirms; und
-
21 ein
Beispiel eines Fragedarstellungs-Bildschirms.
-
Die 1 bis 7 beziehen sich direkt auf die Erfindung
der beigefügten
Ansprüche.
Die 8 bis 20 beziehen sich auf Hilfsvorrichtungen
oder alternative Vorrichtungen und Verfahren.
-
1 zeigt
eine Skizze von Computerspielvorrichtungen, die über ein Netz verbunden sind.
In 1 sind die Computerspielvorrichtungen (im Weiteren
als "Spielvorrichtungen" bezeichnet) A, B
und C durch den Anschluss an einen Server eines Internet-Dienstanbieters über das
Internet mit den anderen Spielvorrichtungen verbunden. Der Spieler
a bedient die Spielvorrichtung A, der Spieler b bedient die Spielvorrichtung
B und die Spieler c, d bedienen die Spielvorrichtung C. D. h., die
Spielvorrichtung C wird von mehreren Spielern bedient.
-
2 zeigt
ein Blockdiagramm einer häuslichen
Computerspielvorrichtung, die eine Kommunikationsfunktion aufweist.
In diesem Spiel wird ein mit Computergraphiktechniken (CG) erzeugtes
Bild auf einem Monitor dargestellt. Mit Hilfe der CG-Technik werden
im virtuellen dreidimensionalen Raum angeordnete Objekte aus zahlreichen
Polygonen aufgebaut. Die Polygone bestehen aus zahlreichen Pixeln. Auf
dem Monitor werden Bilder dargestellt, die man durch die Projektion
auf eine zweidimensionale Ebene erhält, wobei die Objekte in jedem
virtuellen dreidimensionalen Raum von vorgeschriebenen Betrachtungspunktkoordinaten
aus gesehen werden.
-
Die
Spielvorrichtung umfasst damit: eine CPU 10, die das gesamte
System steuert; einen Geometrieprozessor 11, der die geometrischen
Berechnungen ausführt;
einen Systemspeicher 12, beispielsweise ein Arbeits-RAM;
eine CD-ROM 13, die ein Speichermedium darstellt, auf dem
das Spielprogramm abgespeichert ist; ein ROM 14 zum Initialisieren
des Spiels, einen Busverwalter 15, der den Bus steuert,
einen Rendering-Prozessor 16,
der die Verdeckungsverarbeitung steuert; einen Graphikspeicher 17;
einen Video-DAC 18, der eine Digital-Analog-Umsetzung der
Graphikdaten vornimmt; einen Audioprozessor; einen Audiospeicher 20;
einen Audio-DAC 21, der eine Digital-Analog-Umsetzung der Audiodaten
vornimmt; und ein Modem 22, das vom Busverwalter kontrolliert
wird. Die Spielvorrichtung ist über
eine Kommunikationsschaltung des Modems 22 mit dem Internet
verbunden.
-
3 zeigt
eine Ansicht zum Erklären
eines Computerspiels anhand eines Beispiels. In dieser Ausführungsform
laufen eine große
Anzahl Mausfiguren 101 und Katzenfiguren 102 durch
die Quadrate, die auf einem Brett 100 auf dem Bildschirm
bestimmt sind. Prallen die Figuren 101 oder 102 gegen die
Ecken oder Wände 105,
so wird ihre Fortbewegungsrichtung verändert. Prallen die Figuren 101 oder 102 gegen
die Wand 105, so wird ihre Fortbewegungsrichtung in eine
Richtung umgebogen, beispielsweise nach rechts. Auf dem Gebiet eines
Spielers kann durch eine Handlung ein Pfeil 103 in einem Quadrat
angeordnet werden. Kommen die Figuren 101 oder 102 am
Quadrat dieses Pfeils 103 an, so wird ihre Fortbewegungsrichtung
auf die Richtung des Pfeils geändert.
-
Ein
einziges Quadrat, in dem ein Loch 104 angebracht ist, ist
einem einzigen Spieler zugewiesen. Ein Spieler kämpft darum, dass er erreicht,
dass mehr Mausspielfiguren 101 als bei seinen Gegenspielern
in sein eigenes Loch fallen. Zu diesem Zweck führt ein Spieler einen Vorgang
aus, mit dem er Pfeile so anordnet, dass sie Mausfiguren 101 in sein
eigenes Loch führen.
Ein einzelner Spieler kann beispielsweise bis zu drei Pfeile anbringen.
Wird ein vierter Pfeil angebracht, so wird folglich der älteste Pfeil
gelöscht.
Eine einzelne Stufe dauert beispielsweise drei Minuten. Die Anzahl
der Mausfiguren 101, die in diesem Zeitraum in das Loch 104 eines
jeden Spielers gefallen sind, werden als Ergebnis angezeigt.
-
Fällt in diesem
Spiel eine Katzenfigur 102 in ein Loch, so wird die Anzahl
der bereits in das Loch gefallenen Mausfiguren 101 in einem
vorgeschriebenen Verhältnis
verringert (beispielsweise um zwei Drittel reduziert). Folglich
besteht eine mögliche
Taktik für
einen Spieler darin, einen Pfeil so anzuordnen, dass eine Katzenfigur 102 in
ein Loch eines gegnerischen Spielers geführt wird.
-
Kämpfen in
einem derartigen Spiel eine Anzahl Spieler mit Hilfe eines Netzes,
und tritt wie beschrieben eine Kommunikationsverzögerung ein,
so ist der Verarbeitungszeitpunkt, der zum Anordnungsvorgang eines
Pfeils in einem Quadrat durch einen gegebenen Spieler gehört, für jede Spielvorrichtung ein
anderer. Dadurch unterscheiden sich die Positionen der Figuren,
die auf dem Bildschirm herumlaufen, in jeder Spielvorrichtung. Tritt
dies ein, so entwickeln sich die Spiele auf jeder Spielvorrichtung
unterschiedlich, und das Ergebnis des Wettkampfs unterscheidet sich
ebenfalls für
jede Spielvorrichtung. Dadurch wird es unmöglich, Wettkampfspiele über das Netz
auszutragen.
-
Eine
Ausführungsform
der Erfindung schlägt ein
unten beschriebenes Verfahren zum Verarbeiten von Daten vor, bei
dem die Spiele, die auf mehreren über ein Netz mit einer Kommunikationsverzögerung verbundenen
Spielvorrichtungen weiterlaufen, identisch gehalten werden können. In
der folgenden Beschreibung, siehe 1, wird
der Fall erläutert,
dass ein Spiel ausgeführt
wird, indem die drei Spielvorrichtungen A, B, und C über ein
Netz verbunden werden. Das im Weiteren beschriebene Datenverarbeitungsverfahren
wird von einem Spielprogramm geliefert, das auf einem Aufzeichnungsmedium 13 in 2 gespeichert
ist und von der CPU 10 ausgeführt wird.
-
4 zeigt
ein Verarbeitungs-Flussdiagramm eines Datenverarbeitungsverfahrens.
Zuerst werden vor dem Beginn des Spiels in den Schritten S1A, S1B
und S1C Testdaten zwischen den Spielvorrichtungen gesendet, um die
Verzögerungszeit
zu messen. Beispielsweise sendet im Schritt S1A die Spielvorrichtung
A Testdaten, denen die eigene Kennung angehängt ist, an die Spielvorrichtungen
B bzw. C. Nach dem Empfang der Testdaten von der Spielvorrichtung
A senden die Spielvorrichtungen B und C Testdaten zurück an die
Ursprungsspielvorrichtung A, denen ihre jeweiligen eigenen Kennungen
angehängt
sind. Die Spielvorrichtung A kann die Verzögerungszeit zwischen sich selbst
und den anderen Spielvorrichtungen B, C bestimmen, indem sie die Zeitspanne
vom Senden der Testdaten bis zu deren Rückkehr misst. Die gleichen
Messungen erfolgen in den Spielvorrichtungen B, C (Schritte S1B,
S1C). Jede Spielvorrichtung enthält
einen Zeitgeber, der in Einheiten von 1/60 Sekunde zählt (mit
1 Int bezeichnet). Somit kann man die Zeit mit Hilfe des Zählerstands
des Zeitgebers messen.
-
Der
Messvorgang wird häufiger
ausgeführt (beispielsweise
50 Mal), und jede Spielvorrichtung ermittelt die mittlere Verzögerungszeit
und maximale Verzögerungszeit
zwischen sich und den anderen Spielvorrichtungen (Schritte S2A,
S2B und S2C). Im Einzelnen ermittelt die Spielvorrichtung A die
mittlere Verzögerungszeit
und die maximale Verzögerungszeit
zwischen sich und den Spielvorrichtungen B bzw. C (Schritt S2A).
Die Spielvorrichtung B ermittelt die mittlere Verzögerungszeit
und die maximale Verzögerungszeit
zwischen sich und den Spielvorrichtungen A bzw. C (Schritt S2B).
Die Spielvorrichtung C ermittelt die mittlere Verzögerungszeit
und die maximale Verzögerungszeit
zwischen sich und den Spielvorrichtungen A bzw. B (Schritt S2C).
-
Damit
wird die Information über
die mittlere Verzögerungszeit
DTavg und die maximale Verzögerungszeit
DTmax (im Weiteren als Verzögerungszeitinformation
bezeichnet) der anderen Spielvorrichtungen, die in jeder Spielvorrichtung
gewonnen wird, in einer einzigen Spielvorrichtung gesammelt. Wird
z. B. als Spielvorrichtung, in der diese Verzögerungszeitinformation gesammelt
wird (im Weiteren als repräsentative
Spielvorrichtung bezeichnet), die Spielvorrichtung A gewählt, so übermitteln
die Spielvorrichtungen B, C ihre jeweilige Verzögerungszeitinformation an die
repräsentative
Vorrichtung A (Schritte S3B, S3C).
-
Die
repräsentative
Vorrichtung A ermittelt die längste
maximale Verzögerungszeit
der gesammelten Verzögerungszeitinformation
als Referenzverzögerungszeit
DTref nach dem Beginn des Spiels und übermittelt diese Zeit DTref
an die anderen Spielvorrichtungen B und C (Schritt S4A).
-
Nun
sendet die repräsentative
Vorrichtung A an die anderen Spielvorrichtungen B, C ein Rücksetz-Warnsignal,
um die Zählerstände der
Zeitgeber der jeweiligen Spielvorrichtungen zu synchronisieren (Schritt
S5A). Daraufhin setzt die repräsentative
Vorrichtung A nach dem Verstreichen einer ersten Zeitspanne T1 (beispielsweise
einige Sekunden) ab dem Senden des Rücksetz-Warnsignals den Zählerstand "0 (Null)" der Zeitgeber (Schritt
S7A).
-
Aus
ihrer Sicht empfangen die Spielvorrichtungen B, C das Rücksetz-Warnsignal
von der repräsentativen
Vorrichtung A nach dem Verstreichen von entsprechenden Verzögerungszeiten
DTBA, DTCA (Schritte
S6B, S6C). An dieser Stelle nehmen die Spielvorrichtungen B und
C an, dass die Verzögerungszeit
des Rücksetz-Warnsignals
die maxi male Verzögerungszeit
DTmaxBA oder DTmaxCA bezüglich der
Spielvorrichtung A ist, die jeweils in den vorhergehenden Schritten
S2B, S2C gewonnen wurde. Sie setzen die Zählerstände der jeweiligen Zeitgeber
auf "0 (Null)", und zwar nach dem
Verstreichen einer Zeitspanne, die man durch das Subtrahieren der
entsprechenden mittleren Verzögerungszeit
bezüglich der
Spielvorrichtung A von der ersten Zeitspanne T1 nach dem Empfang
des Rücksetz-Warnsignals
erhält (Schritte
S7B, S7C).
-
Anhand
von 5 erfolgt nun eine ausführlichere Beschreibung. 5 zeigt
eine zeitabhängige Darstellung
zum Erklären
des Verfahrens, das die Zeiten der Spielvorrichtungen A, B und C
synchronisiert. Empfängt
beispielsweise die Spielvorrichtung B das Rücksetz-Warnsignal, so kennzeichnet
sie ihre Verzögerungszeit
DTBA als maximale Verzögerungszeit DTmaxBA gegen
die Spielvorrichtung A. In gleicher Weise kennzeichnet die Spielvorrichtung
C die Verzögerungszeit
DTCA des Rücksetz-Warnsignals als maximale
Verzögerungszeit
DTmaxCA gegen die Spielvorrichtung A. Daraufhin
setzt die Spielvorrichtung B ihren Zeitgeber (T1-DTmaxBA)
Sekunden nach dem Empfang des Rücksetz-Warnsignals zurück. In gleicher
Weise setzt die Spielvorrichtung C ihren Zeitgeber (T1-DTmaxCA)
Sekunden nach dem Empfang des Rücksetz-Warnsignals
zurück.
Auf diese Art werden die Zeitgeber der Spielvorrichtungen A, B und
C praktisch simultan auf "0
(Null)" zurückgesetzt, und
neue Zählvorgänge beginnen.
-
Es
ist jedoch nicht gesichert, dass die tatsächliche Verzögerungszeit
in jeder Spielvorrichtung die maximale Verzögerungszeit DTmax ist. Folglich besteht
streng betrachtet die Möglichkeit,
dass der Rücksetzzeitpunkt
einer jeden Spielvorrichtung beträchtlich versetzt sein kann
bzw. die Möglichkeit, dass
die Zeiten einer jeden Spielvorrichtung nicht exakt synchronisiert
sind. Daher werden die Zeiten der Spielvorrichtungen mit der folgenden
Einstellprozedur präziser
synchronisiert, die nach dem Verstreichen einer zweiten Zeitspanne
T2 (beispielsweise einige Sekunden) nach dem Zurücksetzen erfolgt.
-
Nun
zurück
zu 4. Im Schritt S8A sendet die repräsentative
Vorrichtung A gleichzeitig mit dem Rücksetzvorgang an die anderen
Spielvorrichtungen B, C ein Zählerstandssignal,
das seinen momentanen Zählerstand "0" enthält. Die Spielvorrichtung A kann
auch zu einem vorgeschriebenen Zeitpunkt nach dem Rücksetzvorgang
ein Zählerstandssignal senden,
das den Zählerstand
enthält.
-
Empfangen
die Spielvorrichtungen B, C das Zählerstandssignal von der Spielvorrichtung
A nach dem Verstreichen der jeweiligen Verzögerungszeiten, so lesen sie
den Zählerstand
ihrer eigenen Zeitgeber beim Empfang des Zählerstandssignals (Schritte S9B,
S9C). Zusätzlich
berechnen die Spielvorrichtungen B, C die Verzögerungszeit gegen die Spielvorrichtung
A durch eine Rechnung (Zählerstand,
der so gelesenen wird – Zählerstand
des Zählerstandssignals).
-
Ist
beispielsweise die in der Spielvorrichtung B berechnete Verzögerungszeit
DTBA, siehe 5, länger als
die mittlere Verzögerungszeit
DTavgBA gegen die Spielvorrichtung A, und
zwar um mehr als eine vorgeschriebene Zeitspanne (beispielsweise
3 bis 4 Zählerschritte
(3 bis 4 Int)) (Schritt S10B in 4), so hält die Spielvorrichtung
B das Inkrementieren des Zählerstands
für die
Zeitspanne (Verzögerungszeit
DTBA – mittlere
Verzögerungszeit
DTavgBA) (Schritt S11B in 4)
an. Das Gleiche gilt für
die Spielvorrichtung C (Schritte S10C, S11C in 4).
-
In
der obigen Beschreibung beträgt
die Zeit zum Zurücksetzen
der Spielvorrichtungen B, C (T1-DTmax) nach dem Empfang des Rücksetz-Warnsignals.
Da die Spielvorrichtungen B, C also gleichzeitig oder vor der Spielvorrichtung
A zurückgesetzt
werden, kann man die Zählerstände der Spielvorrichtungen
B, C exakt mit dem Zählerstand der
Spielvorrichtung A synchronisieren, indem man das Inkrementieren
des Zählerstands
der Spielvorrichtungen B, C zeitweilig anhält und den Zählerstand der
Spielvorrichtung A als Standard betrachtet.
-
Damit
werden die Zeiten der jeweiligen Spielvorrichtungen durch das Zurücksetzen
der Zeitgeber in den Schritten S7A, S7B und S7C in einem gewissen
Umfang synchronisiert. Zum exakteren Synchronisieren der Zeiten
der Spielvorrichtungen nach dem Zurücksetzen vergleichen die Spielvorrichtungen
(B, C) anders als die repräsentative
Vorrichtung ihre Verzögerungszeiten
mit der mittleren Verzögerungszeit, indem
sie die Verzögerungszeit
des Zählerstandssignals
gegen die repräsentative
Vorrichtung A bezüglich
des Zählerstands
ihrer jeweiligen Zeitgeber herausfinden. Ist die derart ermittelte
Verzögerungszeit um
eine vorbestimmte Zeitspanne größer als
die mittlere Verzögerungszeit,
so wird das Inkrementieren des Zählerstands
der Zeitgeber für
eine Periode angehalten, die (Verzögerungszeit – mittlerer
Verzögerungszeit)
entspricht. Dadurch wird der Zählerstand korrigiert.
Auf diese Weise lassen sich die Zeiten der Spielvorrichtungen A,
B und C, die deren Zeitgeber messen, praktisch exakt synchronisieren.
-
Nach
dem Verstreichen der zweiten Zeitspanne T2 wird das Spiel simultan
in den jeweiligen Spielvorrichtungen A, B und C gestartet (Schritte S12A,
S12B, S12C). Ein Handlungsdatensignal entsprechend einer Spielerhandlung
in einer gegebenen Spielvorrichtung (beispielsweise die Handlung
des Platzierens eines Pfeils in einem vorgeschrie ben Quadrat im
Computerspiel in 3) wird von der einen Spielvorrichtung
verarbeitet und auch an die anderen Spielvorrichtungen übertragen.
Es wird in den anderen Spielvorrichtungen ebenfalls verarbeitet.
In diesem Ablauf muss wie beschrieben das Handlungsdatensignal gleichzeitig
in der einen Spielvorrichtung und in den anderen Spielvorrichtungen
verarbeitet werden.
-
6 zeigt eine Ansicht eines Beispiels für das Format
eines Handlungsdatensignals. Das Handlungsdatensignal, siehe 6, enthält im Kopfabschnitt 30 Zählerstandsinformation
für den
Zeitpunkt der Handlungsdatenübertragung
durch die Spielvorrichtung, von der die Übertragung stammt, sowie Information
bezüglich
der Anzahl der Spieler, die die Spielvorrichtung auf der sendenden
Seite betätigen.
Der Datenabschnitt 40 besteht aus Handlungsdaten für jeden
Spieler. Die Handlungsdaten enthalten beispielsweise Information
zur Cursorposition und/oder Information zur Pfeilposition.
-
Mit
einer Computerspielvorrichtung, siehe 1, können mehrere
Spieler auf einer einzigen Spielvorrichtung an einem Computerspiel-Wettkampf über ein
Netz teilnehmen (in 1 bedienen die Spieler c, d
die Spielvorrichtung C). Folglich enthält der Datenabschnitt 40 des
Handlungsdatensignals, der von der einzelnen Spielvorrichtung übertragen wird,
für jeden
Spieler Handlungsdaten entsprechend der Spieleranzahl. Die Datenlänge des
Handlungsdatensignals unterscheidet sich daher abhängig von der
Anzahl der Spieler, die die einzige Spielvorrichtung betätigen. Die
Spielvorrichtung, die das Handlungsdatensignal empfängt, erkennt
die Anzahl der Spieler, die die sendende Spielvorrichtung betätigen, indem
sie auf die Spieleranzahlinformation zugreift, die im Kopfabschnitt
30 enthalten ist. Sie kann damit die Länge des folgenden Datenabschnitts 40 erkennen.
In diesem Fall wird die Länge
der Handlungsdaten, die einem Spieler zugeordnet sind, auf eine
konstante Länge
gesetzt, und zwar unabhängig
vom Umfang der Datenmenge.
-
7A und 7B zeigen
Verarbeitungs-Flussdiagramme von Spielvorrichtungen während des
Fortgangs eines Spiels. 7A zeigt
die Verarbeitung beim Empfang des Handlungsdatensignals. 7B zeigt
die Verarbeitung beim Senden des Handlungsdatensignals.
-
Empfängt die
Spielvorrichtung in 7A im Schritt S21 ein Handlungsdatensignal,
so vergleicht sie im Schritt S22 den im Handlungsdatensignal enthaltenen
Zählerstand
und den Zählerstand
ihres eigenen Zeitgebers zum Zeitpunkt des Empfangs und berechnet
daraus die Verzögerungszeit
DT. Ferner berechnet die Spielvorrichtung im Schritt S23 die Differenzzeit
zwischen der Referenzverzögerungszeit DTref
und der berechneten Ver zögerungszeit.
Daraufhin verarbeitet die Spielvorrichtung im Schritt S24 das Handlungsdatensignal
nach dem Verstreichen der Differenzzeit, und zwar ab dem Zeitpunkt,
zudem das Handlungsdatensignal empfangen wurde.
-
Sendet
die Spielvorrichtung in 7B im Schritt
S31 ein Handlungsdatensignal, so verarbeitet sie in Schritt S32
das Handlungsdatensignal nach dem Verstreichen der Referenzverzögerungszeit DTref.
-
Nun
zurück
zu 5. Als Beispiel wird die Datenverarbeitung in
jeder Spielvorrichtung für
das Handlungsdatensignal beschrieben, das von der Spielvorrichtung
C übertragen
wird. Die Spielvorrichtung C verarbeitet das übertragene Handlungsdatensignal
nicht sofort, sondern sie verarbeitet das Handlungsdatensignal nach
dem Verstreichen der Referenzverzögerungszeit DTref ab dem Zeitpunkt
(Zählerstand)
der Übertragung.
Empfangen die Spielvorrichtungen A, B das Handlungsdatensignal von
der Spielvorrichtung C, so lesen sie im Gegensatz dazu den Zählerstand
zum Zeitpunkt des Signalempfangs und berechnen die jeweiligen Verzögerungszeiten (Zählerstand
beim Empfang – im
Handlungsdatensignal enthaltener Zählerstand). Zudem berechnen die
Spielvorrichtungen A, B jeweils die Differenzzeit der Referenzverzögerungszeit
und der Verzögerungszeit
DT, die wie oben beschrieben ermittelt wird (Referenzzeit DTref-DT).
Anschließend
verarbeiten sie das Handlungsdatensignal nach dem Verstreichen der
Differenzzeit, die auf diese Weise nach dem Empfang des Handlungsdatensignals
bestimmt wird.
-
Auf
diese Weise wird das Handlungsdatensignal in den Spielvorrichtungen
A, B und C nach dem Verstreichen der Referenzverzögerungszeit DTref
ab dem Zeitpunkt seiner Übertragung
verarbeitet. Da die Zählerstände der
Zeitgeber der Spielvorrichtungen A, B und C aufgrund der beschriebenen Synchronisierverarbeitung
praktisch zusammenfallen, wird das Handlungssignal von allen Spielvorrichtungen
A, B und C auf einmal und gleichzeitig verarbeitet, und zwar nach
dem Verstreichen der vorgeschriebenen eingestellten Referenzverzögerungszeit.
-
Da
wie beschrieben die Referenzverzögerungszeit
unter den einzelnen Spielvorrichtungen die längste der jeweiligen maximalen
Verzögerungszeiten
ist, kann man es einrichten, dass das Handlungsdatensignal verlässlich von
allen Spielvorrichtungen empfangen wird, indem man in allen Spielvorrichtungen
den Betrieb ab dem Zeitpunkt der Übertragung eines gegebenen
Handlungsdatensignals für
die Standardverzögerungszeit
aussetzt. Da gemäß der Erfindung
das gleiche Handlungsdatensignal in allen Spielvorrichtungen simultan
verarbeitet wird, wird die Verarbeitung des Handlungsdatensignals ausgesetzt,
bis alle Spielvorrichtungen das gleiche Handlungsdatensignal empfangen
haben. Zum Messen dieser Aussetzzeit werden die Zeitspannen synchronisiert,
die die Zeitgeber der jeweiligen Spielvorrichtungen messen. Zudem
wird eine Standardzeit festgesetzt, nämlich die Referenzverzögerungszeit.
-
Die
Mausfiguren, Katzenfiguren, Pfeile und auch der Hintergrund, beispielsweise
das Brett mit Quadraten, die auf dem Computerspiel-Bildschirm in 3 dargestellt
werden, erhält
man durch Bildverarbeitung als Objekte im dreidimensionalen virtuellen Raum.
-
8 zeigt
eine Ansicht des virtuellen dreidimensionalen Raums, in dem die
Objekte eines Computerspiels in der beispielhaften Ausführungsform
eines Computerspiels angeordnet sind, auf das die Erfindung angewendet
werden kann. In 8 sind die Objekte des Bretts 100,
die Mausfiguren 101a, 101b und die Katzenfigur 102 im
virtuellen dreidimensionalen Raum angeordnet. Die Mausfiguren 101a, 101b und
die Katzenfigur 102 sind als Objekte gegeben, die auf dem
Brett 100 jeweils in ihre Bewegungsrichtung zeigen (Vorderseitenrichtung).
-
9A und 9B zeigen
Ansichten, die ein Beispiel des Bilds des virtuellen dreidimensionalen
Raums in 8 gesehen von einem vorgeschriebenen
Betrachtungspunkt darstellen. Schreitet im Fall des Computerspiels
dieser Ausführungsform
das Spiel durch die Handlung der Spieler fort, so wird ein Bild
des virtuellen dreidimensionalen Raums gesehen vom Betrachtungspunkt
von A, d. h. ein Bild gesehen von einem Punkt direkt über dem
Brett 100, siehe 9A, auf
dem Monitor dargestellt. Bei der Demonstration vor dem Beginn des
Spiels oder zwischen einer Stufe und einer weiteren Stufe des Spiels wird
ein Bild auf dem Monitor dargestellt, das vom Betrachtungspunkt
B aus gesehen ist, d. h. ein Bild gesehen von einem Punkt diagonal über dem
Brett, siehe 9B.
-
Ein
von einem Punkt direkt über
dem Brett 100 gesehenes Bild wie in 9A ist
ein Bild, in dem die Bewegung der Figuren auf dem gesamten Brett für den Spieler
am einfachsten zu überblicken
ist. Obwohl dies als Bild während
des Spielfortschritts ideal ist, hat es den Nachteil, dass die Gestalt
der Form der Figuren schwierig zu erfassen ist, da nur die Köpfe der
Mausfiguren 101a, 101b und der Katzenfigur 102 auf
dem Brett 100 dargestellt werden.
-
Wird
das Bild von einem Betrachtungspunkt direkt über dem Brett 100 angezeigt
(Betrachtungspunkt A in 8), so wird die Richtung, in
die die Figuren zeigen, um einen vorgeschriebenen Winkel geneigt
(beispielsweise 45°).
-
10A-10F zeigen Ansichten zum Erklären der
Richtung, in die die Figuren zeigen. Als Beispiel ist eine Mausfigur
dargestellt; die Katzenfigur ist jedoch in der gleichen Weise geneigt. 10A zeigt eine Ansicht einer Mausfigur gesehen
von der Seite. Die Mausfigur zeigt nach vorn; dies ist die normale
Ausrichtung. Eine Mausfigur mit dieser Ausrichtung würde gesehen
vom Betrachtungspunkt A in 8 wie 10B aussehen. 10C zeigt
eine Seitenansicht einer Mausfigur, die nach vorne und oben geneigt
ist. Betrachtet man eine Mausfigur mit dieser Ausrichtung vom Betrachtungspunkt
A in 8, so erscheint sie wie in 10D dargestellt. Verglichen
mit 10B kann man deutlich sehen, dass
das Gesamtbild der Mausfigur in einer Weise dargestellt ist, die
man leichter erfassen kann. 10E zeigt
eine Vorderansicht der Mausfigur, wobei die Mausfigur in seitlicher
Richtung geneigt ist. Betrachtet man eine Mausfigur mit dieser Ausrichtung
vom Betrachtungspunkt A in 8, so erscheint sie
wie in 10F dargestellt. Verglichen
mit 10B kann man deutlich sehen,
dass das Gesamtbild der Mausfigur in einer Weise dargestellt ist, die
man leichter erfassen kann.
-
Befindet
sich der Betrachtungspunkt in dieser Ausführungsform wie beschrieben
direkt über
der Figur, so wird diese mit einem vorgeschriebenen Winkel in eine
vorgeschriebene Richtung geneigt. Auf diese Weise lässt sich
auch während
des Spiels die Gestalt der Form der Figur in einer Weise darstellen,
die man leichter erfassen kann. Die Richtung der Neigung kann unabhängig von
der Bewegung der Figur in einer Richtung festgelegt werden. In 9A sind
die Figuren beispielsweise in der Zeichnungsebene in Aufwärtsrichtung
geneigt (Richtung des Pfeils X). Dadurch ist die Mausfigur 101a in
Vorwärts- und
Aufwärtsrichtung
geneigt, siehe 10C, und sie wird wie in 10D dargestellt angezeigt. Die Mausfigur 101b ist
in seitlicher Richtung geneigt, siehe 10E (Richtung
nach links in 10E), und sie wird wie in 10F dargestellt angezeigt.
-
Somit ändert sich
die Richtung, in die das Objekt zeigt, abhängig von der Position der Betrachtungspunktkoordinaten
im dreidimensionalen virtuellen Raum. Hierdurch lassen sich auf
dem Spielbildschirm dargestellte Objekte (Figuren) in einer Weise anzeigen,
die man leichter erfassen kann.
-
Bevor
ein Wettkampfspiel über
das Netz wie beschrieben beginnen kann, ist es erforderlich, dass die
Spielvorrichtungen A, B, C in 1 gegenseitig die
Spielvorrichtungen der gegnerischen Kämpfer erkennen. Um dies zu
erreichen schließen
die Spieler vor dem Beginn des Spiels zuerst die Spielvorrichtungen,
die die Clients im Netzsystem bilden, an den Server an (im Weiteren
als "Netzserver" bezeichnet), der
das Wettkampfspiel über
das Netz verwaltet, damit sie beim Netzserver registriert werden.
Dadurch ist eine Wettkampfgruppe gebildet. Spieler, die ein Wettkampfspiel über das
Netz austragen wollen, stellen also zuerst eine Verbindung mit dem
Netzserver her.
-
11 zeigt
ein Blockdiagramm eines Netzservers, der in einer Ausführungsform
der Erfindung verwendet werden könnte.
In 11 umfasst der Netzserver einen Hauptserver 1,
zahlreiche Hilfsserver 2a, 2b, 2c und 2d und einen gemeinsamen Speicher
3. 12 zeigt ein Flussdiagramm des Registriervorgangs
auf einem Netzserver in einer Spielvorrichtung. 13 zeigt
eine Ansicht, die ein Beispiel für
einen Darstellungsbildschirm auf einer Spielvorrichtung in jeder
Prozedur wiedergibt. 12 wird anhand von 11 und 13 beschrieben.
-
Zunächst setzt
der Spieler im Schritt S101 das Aufzeichnungsmedium (beispielsweise
eine CD-ROM), auf dem das Computerspielprogramm gespeichert ist,
in die Spielvorrichtung ein und startet das Computerspielprogramm.
Nach dem Hochlaufen des Spielprogramms wird zuerst der Spielmodus-Auswahlbildschirm
M1 in 13 dargestellt. Auf dem Spielmodus-Auswahlbildschirm
wird beispielsweise "Wettkampf
mit 4 Spielern" angezeigt,
d. h. ein Kampf innerhalb der Spielvorrichtung, und "Schwierigkeitsstufe", d. h. die gewünschte Stufe
des Kampfs kann gewählt
werden, und "Netz-Wettkampf", d. h. ein Kampfmodus über das
Netz. Der Spieler wählt durch
das Betätigen
des Controllers "Netz-Wettkampf" (Schritt S102).
-
Ist
der Netz-Wettkampfmodus gewählt,
so wird ein Auswahlbildschirm M2 (13) dargestellt, mit
dem man die Teilnehmeranzahl im Netz-Wettkampf wählen kann. Der Spieler wählt durch
das Betätigen
des Controllers die Teilnehmeranzahl (Schritt S103). An die Spielvorrichtung
kann man mehrere Controller (zum Beispiel vier) anschließen, die
die Spieler betätigen
können.
Folglich kann man auch den Fall in Betracht ziehen, dass mehrere
Spieler von einer einzigen Spielvorrichtung aus an einem Netz-Wettkampfspiel
teilnehmen.
-
Üblicherweise
können
in einem Wettkampfspiel, das in einer Spielvorrichtung gespielt
wird, ohne über
das Netz zu gehen, mehrere Spieler am Wettkampf teilnehmen, indem
sie mehrere Controller benutzen, die an eine einzige Spielvorrichtung
angeschlossen sind. Andererseits ist im Netz der Netzserver nicht
in der Lage, die Anzahl der angeschlossenen Controller (bzw. die
Anzahl der Spieler) festzustellen, indem er einfach die Anzahl der
angeschlossenen Spielvorrichtungen ermittelt.
-
Insbesondere
wird in einem herkömmlichen Wettkampfspiel,
das nicht über
das Netz abgewickelt wird, eine einzige Verbindung zwischen einer
einzigen Spielvorrichtung und dem Netzserver hergestellt. Der Netzserver
kann die Anzahl der Controller oder Spieler, die mit der Spielvorrichtung
verbunden sind, nicht feststellen. Folglich konnte nur ein einzelner Spieler
von einer einzelnen Spielvorrichtung aus an einem Wettkampfspiel über das
Netz teilnehmen.
-
Daher
wird in der Ausführungsform
die Anzahl der Spieler, die an einem Netz-Wettkampfspiel von einer einzigen Spielvorrichtung
aus teilnimmt, dem Netzserver vorab mitgeteilt. Auf diese Weise kann
der Netzserver, obwohl nur die eine Verbindung zwischen einer einzigen
Spielvorrichtung und dem Netzserver vorhanden ist, die Anzahl der
Spieler feststellen, die von einer einzigen Spielvorrichtung aus teilnehmen
und es dadurch ermöglichen,
dass mehrere Spieler von einer einzigen Spielvorrichtung aus an
einem Netz-Wettkampfspiel teilnehmen. Man beachte, dass die Auswahl
der Teilnehmeranzahl nicht darauf eingeschränkt ist, dass sie im Schritt
S103 ausgeführt
wird. Sie kann in jedem beliebigen Schritt bis zur Meldung der Teilnehmeranzahl
an den Netzserver vorgenommen werden.
-
Ist
die Teilnehmeranzahl gewählt,
so ruft die Spielvorrichtung den Internet-Dienstanbieter über das
Modem an (Schritt S104) und übermittelt
eine Anforderung für
eine Verbindung mit dem Netzserver über den Internet-Dienstanbieter.
Die Verbindungsanforderung enthält
die Kennungsinformation eines einzigen Spielers, beispielsweise
die Spielerkennung und das Passwort. Wird das Internet mit Hilfe
des TCP/IP-Protokolls genutzt, so kann die entfernte Partei der
Verbindung angegeben werden, indem man die IP-Adresse und die Portnummer spezifiziert.
Zuerst verbindet sich die Spielvorrichtung mit dem Hauptserver 1
des Netzservers, indem sie die IP-Adresse und die Portnummer des
Hauptservers 1 angibt. Die IP-Adresse und die Portnummer des Hauptservers
1 werden vorab in der Spielvorrichtung gespeichert. In diesem Fall
kennzeichnet die IP-Adresse den Netzserver und die Portnummer kennzeichnet
einzelne darin enthaltene Server. In 11 sind
der Hauptserver und die Hilfsserver durch Software unterteilt innerhalb
eines einzigen Netzservers dargestellt. Handelt es sich beim Hauptserver
und den Hilfsservern um getrennte Systeme, so werden ihnen jeweils
getrennte IP-Adressen zugewiesen.
-
Das
TCP/IP wird nun kurz erklärt. 14 zeigt
eine Ansicht der TCP/IP-Protokollschichten.
In 14 hat das TCP/IP-Protokoll eine fünfschichtige Struktur.
Im Vergleich mit dem OSI-Referenzmodell ist TOP ein Protokoll, das
eine Datenverbindung des Anschlusstyps liefert. Es entspricht einer
Transportschicht, die eine Stromschnittstelle bezüglich einer Anwendung
auf einer höheren
Schicht bildet, und stellt eine Verbindung zwischen getrennten Prozessen
auf dem Netz her. Zudem entspricht IP der Netzschicht, über die
Daten auf dem Netz übertragen
werden. Zwei Punkte auf dem Netz, über die Daten übertragen
werden, werden durch IP-Adressen dargestellt. Die obere TCP-Schicht
ist die Anwendungsschicht, und die IP-Schicht ist die Schnittstellenschicht
und die physikalische Schicht. Als untere Schicht sind das Internet
oder FDDI usw. bekannt.
-
Ein
in der Anwendungsschicht des TCP/IP-Protokolls enthaltener Socket
ist eine Anwendungsprogrammier-Schnittstelle (API) zum Erzeugen
von Anwendungen und zum Austauschen von Daten durch Kommunikation
zwischen Prozessen auf dem TOP. Ausführlicher betrachtet entspricht sie
der Sitzungsschicht im OSI-Referenzmodell. Ein Socket liefert eine
Umgebung, mit der Prozessnutzer eine Kommunikation zwischen Prozessen
so abwickeln können
wie eine Datei-Ein/Ausgabe, ohne sich über die Umgebung Gedanken machen
zu müssen (System
oder Netz usw.). Damit erzeugen zwei verbundene Prozesse (in dieser
Ausführungsform
die Spielvorrichtung und der Netzserver) Sockets (Ein/Ausgabe-Ports
für die
Kommunikation), und es werden Datensignale zwischen den Sockets
ausgetauscht.
-
Nun
zurück
zu 12. Der Hauptserver 1 im Netzserver unterzieht
eine Verbindungsanforderung von einer Spielvorrichtung einer Annahmeverarbeitung
und zusätzlich
einer Erkennungsverarbeitung (Schritt S201). Der Hauptserver 1 ist
also ein Server, der die Annahmeverarbeitung und die Gültigkeitsverarbeitung
bezüglich
einer Verbindungsanforderung einer Spielvorrichtung ausführt. Empfängt der
Hauptserver 1 eine Verbindungsanforderung, so führt er eine Gültigkeitsverarbeitung
anhand einer vorab im Server registrierten Benutzerinformation und
einer gemeldeten Kennungsinformation durch. Erkennt der Hauptserver
1, dass ein Spieler authentisch ist, so sendet er eine Verbindungsantwort
an die Spielvorrichtung und teilt dem Hilfsserver 2 die Information mit.
Die Verbindung zwischen der Spielvorrichtung und dem Netzserver
ist damit hergestellt (Schritt S105).
-
Die
Information des Hilfsservers 2 umfasst beispielsweise den Namen
eines jeden Hilfsservers 2, die IP-Adresse, die Portnummer und Information bezüglich der
Anzahl der momentan registrierten Personen. Die Information bezüglich der
Anzahl der momentan registrierten Personen wird wie im Folgenden
beschrieben in einem gemeinsamen Speicher 3 abgelegt. Der Hauptserver
1 liest die Information bezüglich
der Anzahl der momentan registrierten Personen eines jeden Hilfsservers
2 aus dem gemeinsamen Speicher 3. Der Hilfsserver 2 ist ein Server,
der das momentan laufende Netz-Wettkampfspiel verwaltet. Die Wettkampfgruppe
wird durch das Registrieren der Spieler im Hilfsserver gebil det.
-
Nach
der Verbindung mit dem Netzserver wird der Serverführungs-Bildschirm
M3 auf der Spielvorrichtung angezeigt. Die Namen der Hilfsserver
2 werden in dem Bildschirm M3 angezeigt. Ein Spieler (falls mehrere
Teilnehmer vorhanden sind, einer der Teilnehmer) wählt durch
Betätigen
des Controllers einen Hilfsserver (Schritt S106). Die Anzahl an
Spielern, die auf einem einzigen Hilfsserver registriert werden
können,
wird abhängig
von den Einzelheiten des Servers festgelegt. Wird ein Hilfsserver
gewählt, bei
dem bereits die höchstmögliche Anzahl
an Personen registriert ist, wird eine Meldung angezeigt, dass der
Server nicht gewählt
werden kann. Ein Spieler kann sich durch das Betätigen des Controllers die Anzahl
der momentan auf jedem Hilfsserver registrierten Personen anzeigen
lassen bzw. eine Information über
die Möglichkeit
einer Verbindung, die darauf beruht.
-
Ist
ein Hilfsserver 2 gewählt,
so übergibt
der Hauptserver 1 die Verbindung mit der Spielvorrichtung an den
gewählten
Hilfsserver 2 (Schritt S202). Insbesondere übermittelt der Hauptserver
1 nach der Meldung des gewählten
Hilfsservers durch die Spielvorrichtung die IP-Adresse und die Portnummer
des gewählten
Hilfsservers 2 an die Spielvorrichtung.
-
Ist
ein Hilfsserver gewählt,
so wird eine Verbindungsanforderung an den gewählten Hilfsserver übermittelt,
und zwar mit Hilfe der IP-Adresse und der Portnummer des gewählten Hilfsservers.
Bei der Annahmeverarbeitung dieser Verbindungsanforderung (Schritt
S202) meldet der gewählte
Hilfsserver der Spielvorrichtung die Information über zahlreiche
Registrierbereiche (im Weiteren als "Räume" bezeichnet), die
im gewählten
Hilfsserver 2 definiert sind. Beträgt beispielsweise die größtmögliche Anzahl
an Kämpfern
für einen
Netzwettkampf vier, so hat der Hilfsserver 2 zahlreiche Räume für das Registrieren von
Gruppen zu vier Spielern vorbereitet. Auf der Spielvorrichtung wird
ein Raumführungs-Bildschirm M4
(13) angezeigt. Diese Information kann in der Hilfsserverinformation
enthalten sein, die vom Hauptserver 1 übertragen wird. In diesem Fall
braucht bei der Wahl des Hilfsservers keine Verbindungsanforderung
an den Hilfsserver gerichtet zu werden.
-
Der
Spieler wählt
durch das Betätigen
des Controllers einen Raum (Schritt S107). Nach der Wahl eines Raums
werden der gewählte
Raum und die Teilnehmeranzahl von der Spielvorrichtung an den gewählten Hilfsserver übertragen.
Der gewählte Hilfsserver
registriert nun die Spieler (Schritt S203) bis zur Teilnehmeranzahl
im gemeldeten Raum.
-
Der
gewählte
Hilfsserver meldet der Spielvorrichtung die Spielerinformation,
die im gewählten Raum
registriert ist. Die registrierte Spielerinformation umfasst beispielsweise
die Namen der Spieler sowie die IP-Adressen und Portnummern der
Spielvorrichtungen aller Spieler. Auf diese Art erfassen die Spielvorrichtungen
die IP-Adressen und Portnummern der Spielvorrichtungen ihrer Gegner.
-
Die
Information über
die im gewählten
Raum registrierten Spieler wird im Bildschirm M5 angezeigt (13).
Nehmen beispielsweise zwei Spieler von einer einzigen Spielvorrichtung
aus teil, so werden im Bildschirm M5 in 13 der
Spieler X1 und der Spieler X2 als Spielernamen dargestellt. Dies
hat seinen Grund darin, dass der Netzserver nur die Kennungsinformation
eines einzigen Spielers bezüglich
einer einzigen Spielvorrichtung registriert. Das Spiel wird daraufhin
(Schritt S108) durch die Wahl des Startknopfs im Bildschirm M5 von
einem der für
den gewählten
Raum registrierten Spieler gestartet, der den Controller betätigt.
-
Man
beachte, dass es für
einen Spieler nicht möglich
ist, in einem gewählten
Raum registriert zu werden, falls beispielsweise die Höchstanzahl
an Wettkämpfern
(z. B. vier Personen) bereits im gewählten Raum registriert ist,
oder falls bei zwei Teilnehmern die Höchstanzahl an Wettkämpfern überschritten
wird, falls sich zwei Personen registrieren, oder falls ein Spiel
bereits begonnen hat. Ein Spieler kann sich durch das Betätigen des
Controllers auch die Anzahl der bereits registrierten Personen oder den
Zustand eines jeden Raums anzeigen lassen, beispielsweise ob ein
Spiel fortschreitet oder nicht.
-
Die
Räume des
Hilfsservers 2 können
auch eine Mehrschichtanordnung aufweisen. Ist beispielsweise ein
Hilfsserver ein Server, der Netz-Wettkampfspiele unterschiedlicher
Arten verwaltet oder der Chatrooms usw. verwaltet, so kann er mit
großen Räumen für jeden
Spieltyp ausgestattet sein sowie mit großen Räumen, die als Chatrooms dienen,
wobei zahlreiche kleine Räume
unter den großen
Räumen
eingerichtet sind.
-
Auf
den genannten Bildschirmen M2-M5 ist auch ein Punkt "Ende" dargestellt. Durch
diese Wahl ist es möglich,
in den vorhergehenden Bildschirm zurückzukehren. Wird "Ende" gewählt wenn
sich die Hilfsserverräume
in einer Mehrschichtanordnung befinden, so ist es möglich, zur
einzigen oberen Schicht zurückzukehren.
Wird im Bildschirm M4 "Ende" gewählt, so
wird der Bildschirm M3 wieder geholt, d. h., die Spielvorrichtung
wird erneut mit dem Hauptserver 1 verbunden. Ein Spieler kann den
Hilfsserver wechseln, in dem er registriert ist, falls beispielsweise
ein Freund in der Ferne in einem Raum registriert ist, der in einem
anderen Hilfsserver enthalten ist. In derartigen Fällen wäre es bisher erforderlich
gewesen, dass der Spieler "Ende" auf dem Bildschirm
M4 wählt
und nach dem erfolgten Ändern
der Verbindung auf den Hauptserver 1 den anderen Hilfsserver unter
Verwendung des Bildschirms M3 wählt.
-
Erfolgen
jedoch häufige
Wechsel des Hilfsservers, so treten die folgenden Schwierigkeiten
auf. Insbesondere sind die Verbindungsanforderungen an den Hauptserver
1 auf diejenige Anzahl eingeschränkt,
die durch die Kapazität
des Betriebssystems (allgemeiner der Software) des Hauptservers
1 sofort bearbeitet werden können.
Werden gleichzeitig eine Anzahl Verbindungsanforderungen auf den Hauptserver
1 konzentriert, die die Verarbeitungsfähigkeit des Hauptservers für Verbindungsanforderungen übersteigen,
so ist der Hauptserver 1 nicht mehr in der Lage, die Verbindungsanforderungen
anzunehmen. Damit kann sich die Spielvorrichtung nicht mit dem Hauptserver
1 verbinden.
-
15 zeigt
ein Blockdiagramm eines herkömmlichen
Netzservers. In 15 sind in herkömmlicher
Weise zahlreiche Hilfsserver 2 mit einem Hauptserver 1 verbunden
und übertragen
ihre eigene Information an den Hauptserver 1. Zwischen den Hilfsservern
2 besteht jedoch keine Verbindung, wodurch die Hilfsserver 2 keine
Information bezüglich der
anderen Hilfsserver erfassen können.
Folglich war es zum Wechseln des Hilfsservers, mit dem eine Spielvorrichtung
verbunden war, erforderlich, die Spielvorrichtung zeitweilig wieder
mit dem Hauptserver zu verbinden. Der herkömmliche Netzserver war also
derart aufgebaut, dass die Verbindungsanforderungen auf den Hauptserver
1 konzentriert wurden.
-
Es
ist daher erwünscht,
die Anzahl der Verbindungsanforderungen an den Hauptserver so weit wie
möglich
zu verringern. Daher ist es in dieser Ausführungsform möglich, den
Anschluss der Spielvorrichtung von dem Hilfsserver, mit dem sie
vorher verbunden war, direkt auf einen anderen Hilfsserver umzusetzen.
Zu diesem Zweck ist der Netzserver in 11 mit
einem gemeinsamen Speicher 3 ausgerüstet.
-
Der
gemeinsame Speicher 3 speichert Information bezüglich aller Hilfsserver 2,
beispielsweise die jeweiligen Betriebzustände der zahlreichen Hilfsserver
2, die Anzahl der darauf registrierten Personen usw. Die Information
bezüglich
der Hilfsserver 2 wird von den jeweiligen Hilfsservern selbst periodisch (beispielsweise
alle 0,5 Sekunden) aktualisiert.
-
Auf
den gemeinsamen Speicher 3 können der
Hauptserver 1 und die zahlreichen Hilfsserver 2 zugreifen. Der Hauptserver
1 liest Informationen bezüglich
aller Hilfsserver 2 aus dem gemeinsamen Speicher 3. Jeder Hilfsserver
2 liest Informationen bezüglich
der anderen Hilfsserver 2 aus dem gemeinsamen Speicher 3. Durch
das Bereitstellen des gemeinsamen Speichers, auf den alle Server
zugreifen können,
erreicht man, dass die Information der anderen Server ohne direkte
Verbindung zu jedem Server erfassbar ist.
-
16 zeigt
eine Skizze, die die Bereiche des gemeinsamen Speichers 3 darstellt.
Die Information für
jeden Hilfsserver 2 ist beispielsweise, siehe 16,
in Matrizenform gespeichert. In 16 schreiben
die vier Hilfsserver 2a, 2b, 2c, 2d die Anzahl der Personen, die
derzeit bei ihnen selbst registriert sind, bezogen auf die Spalten
der anderen Hilfsserver in ihre eigene Zeile. Damit lesen die Hilfsserver
2a, 2b, 2c, 2d Information bezüglich
der anderen Hilfsserver, die in ihre jeweilige eigene Spalte geschrieben
ist. Da sich die Bereiche unterscheiden, die die jeweiligen Hilfsserver
2a, 2b, 2c, 2d lesen, kann das Lesen auch dann gleichzeitig erfolgen, wenn
zahlreiche Hilfsserver simultan zum Lesen von Information auf den
gemeinsamen Speicher 3 zugreifen. Der Hauptserver 1 liest Information
bezüglich
aller Hilfsserver aus der Spalte des Hauptservers 1 im gemeinsamen
Speicher 3.
-
Wird
Information gelesen, so nimmt der Bereichswert der gelesenen Region
einen Wert an (beispielsweise "–1"), der den Lesezustand
anzeigt, bis er auf die folgende Information aktualisiert wird.
Ist aufgrund eines Fehlers ein Hilfsserver daran gehindert, Information
zu schreiben, so bleibt der Bereich des gemeinsamen Speichers 3
im Lesezustand. Auf diese Weise kann ein anderer Server erkennen,
dass dieser Hilfsserver nicht korrekt arbeitet.
-
Nun
zurück
zu 13. Im Bildschirm M4 wird der Punkt "Gehe zu einem anderen
Server" dargestellt.
Wird dieser Punkt gewählt,
so liest der ausgewählte
Hilfsserver 2 Information bezüglich
des anderen Hilfsservers aus seiner eigenen Spalte im gemeinsamen
Speicher 3 und überträgt sie an
die Spielvorrichtung. Die Information bezüglich des Hilfsservers besteht
in gleicher Weise wie oben beschrieben aus Information über den
Namen des Hilfsservers, seine IP-Adresse, seine Portnummer und die Anzahl
der registrierten Personen. Jeder Hilfsserver speichert vorab die
Information der IP-Adressen und Portnummern der anderen Hilfsserver.
-
Nun
wird der Führungsbildschirm
M4-1 des anderen Hilfsservers auf der Spielvorrichtung angezeigt.
Auf dem Bildschirm M4-1 sind die Namen der anderen Hilfsserver ohne
seinen eigenen Namen dargestellt. Wählt ein Spieler einen einzigen
Hilfsserver in der im Schritt S106 beschriebenen Weise, so wird
mit Hilfe der IP-Adresse und der Port nummer des gewählten Hilfsservers
eine Verbindungsanforderung an den gewählten Hilfsserver übertragen.
Die nachfolgende Verarbeitung erfolgt wie in 12.
-
Durch
das Speichern von Information bezüglich eines jeden Hilfsservers
und das Bereitstellen des gemeinsamen Speichers 3, auf den jeder
Hilfsserver zugreifen kann, wird es für jeden Hilfsserver möglich, den
Zustand der anderen Hilfsserver in Erfahrung zu bringen. Da es möglich ist,
die Information bezüglich
anderer Hilfsserver vom dem Hilfsserver, an den die Spielvorrichtung
gerade angeschlossen ist, an die Spielvorrichtung zu übertragen,
kann die Verbindung der Spielvorrichtung direkt zwischen den Hilfsservern
gewechselt werden. Insbesondere wird es überflüssig, die Spielvorrichtung
wie im herkömmlichen
Fall erneut mit dem Hauptserver 1 zu verbinden. Dadurch kann die
Anzahl der Verbindungsanforderungen an den Hauptserver 1 verringert
werden. Die Wahrscheinlichkeit, dass der Hauptserver 1 Verbindungsanforderungen
erhält,
die seine Aufnahmefähigkeit
für Verbindungsanforderungen übersteigt, wird
dadurch verringert. Damit kommt es praktisch nicht mehr vor, dass
der Hauptserver 1 Verbindungsanforderungen einer Spielvorrichtung
zurückweist. Dies
trägt zum
Verbessern der Dienstgüte
für Spieler bei,
die das Netz nutzen.
-
Auch
dann wenn die Anzahl der teilnehmenden Spieler an einem Netz-Wettkampfspiel
von einem einzigen Spielserver aus größer als eins ist, benötigt man
nur eine einzige Verbindung zwischen der Spielvorrichtung und dem
Netzserver, d. h., es wird nur ein einziger Socket erzeugt. Folglich
wird wie beschrieben die Teilnehmeranzahl von einer einzigen Spielvorrichtung
vorab an den Netzserver übertragen (genauer
an den gewählten
Hilfsserver). Die Daten der Anzahl Spieler, siehe 6,
werden mit Hilfe eines einzigen Sockets und mit einem einzigen Datensignal übertragen.
-
Man
kann zwar Verbindungen entsprechend der Teilnehmeranzahl aufbauen
(Sockets erzeugen). Man benötigt
dazu jedoch Verbindungsanforderungen entsprechend der Teilnehmeranzahl.
Dies kann jedoch wie beschrieben zu Problemen hinsichtlich der Annahmefähigkeit
von Verbindungsanforderungen führen.
Folglich wird gemäß der Erfindung
die Belastung durch die Annahmeverarbeitung von Verbindungsanforderungen
im Hauptserver 1 durch den Einsatz einer einzigen Verbindung (eines
Sockets) für
den Anschluss zwischen einer einzigen Spielvorrichtung und einem
Netzserver verringert, und zwar unabhängig von der Teilnehmeranzahl
an einer einzigen Spielvorrichtung. Die Verarbeitungsverzögerung auf
dem Hauptserver 1 kann dadurch beseitigt werden. Dies trägt zu einer
verbesserten Dienstleistung bei.
-
Eine
Kommunikationsverzögerung
auf dem Netz bedeutet auch in den folgenden Fällen ein Problem. Wird beispielsweise
ein Quizspiel (im Weiteren als Netz-Quizspiel bezeichnet) zwischen
mehreren Spielern über
das Netz gespielt, so wird in manchen Fällen zusätzlich zur Anzahl der korrekten
Antworten (oder dem Anteil der korrekten Antworten) die Rangordnung
unter Einbeziehung der Antwortzeit für die Quizfragen ermittelt.
-
17 zeigt
eine Ansicht eines Netzes, in dem eine Anzahl Spielvorrichtungen über Kommunikationsschaltungen
mit einem Hauptserver verbunden sind. Die Kommunikationszeit zwischen
dem Hauptserver 1 und den einzelnen Spielvorrichtungen unterscheidet
sich jeweils abhängig
von der geographischen Entfernung zwischen dem Hauptserver 1 und
den einzelnen Spielvorrichtungen, dem Schaltungszustand (Ausmaß der Störungen),
der Kommunikationsgeschwindigkeit und der Leistungsfähigkeit der
Kommunikationsvorrichtungen. Die Spielvorrichtungen können auch
geographisch getrennt angeordnet sein. Beispielsweise kann mindestens
eine Spielvorrichtung an einem gegenseitig geographisch getrennten
Ort A, ..., Ort Z angeordnet sein.
-
Im
Fall eines Netz-Quizspiels werden zahlreiche Quizfragen, die in
begleitender Spielinformation enthalten sind, vom Hauptserver 1
an jede Spielvorrichtung verteilt. Die Spieler beantworten die Fragen,
die nacheinander auf den Bildschirmen der Spielvorrichtungen angezeigt
werden. Die Antworten an den Spielvorrichtungen werden an den Hauptserver
1 übertragen.
An den einzelnen Spielvorrichtungen kann auch festgestellt werden,
ob die Antworten korrekt oder unkorrekt sind. Ist die Antwort korrekt, wird
eine dementsprechende Information übertragen. Der Hauptserver
1 ermittelt das Ergebnis und/oder die Reihenfolge anhand der Anzahl
der korrekten Antworten der Spieler (oder dem Anteil der korrekten Antworten).
-
Es
sei nun der Fall betrachtet, dass mehrere Spieler die gleiche Anzahl
korrekter Antworten (oder den gleichen Anteil korrekter Antworten)
gegeben haben. Eine Vorgehensweise, die man in diesem Fall verwenden
kann, besteht darin, die Antwortzeiten für alle Fragen des Quizspiels
durch jeden Spieler zu vergleichen, und dem Spieler die höchste Bewertung zu
erteilen, dessen Antwortzeit am kürzesten ist.
-
Es
tritt nun die Schwierigkeit auf, dass beim Messen dieser Antwortzeit
(Reaktionszeit) durch den Hauptserver 1 die korrekte Antwortzeit
nicht gemessen werden kann, da in den Kommunikationszeiten auf dem
Netz Diskrepanzen auftreten. Der Hauptserver 1 misst als Antwortzeit
die Zeitspanne zwischen dem Senden der Fragen an die einzelnen Spielvorrichtungen
und dem Empfang der Antwortinformation oder der korrekten Ant wortinformation
von den einzelnen Spielvorrichtungen. Sind in diesen Fall die Kommunikationszeiten
zwischen dem Hauptserver 1 und den einzelnen Spielvorrichtungen
alle gleich, so stellt der Zeitunterschied von der genannten Verteilung
unter den Spielvorrichtungen bis zum Empfang die tatsächliche
Antwortzeit von der Darstellung der Fragen auf den einzelnen Spielvorrichtungen
bis zur Antwort durch die Spieler dar.
-
Da
sich jedoch wie erwähnt
die Kommunikationszeiten zwischen dem Hauptserver 1 und den einzelnen
Spielvorrichtungen jeweils unterscheiden, spiegeln die Zeitspannen
zwischen der genannten Verteilung unter allen Spielvorrichtungen
und dem Empfang von dort die tatsächliche Antwortzeit nicht exakt
wider. Man kann die Kommunikationszeit zwischen dem Hauptserver
1 und den einzelnen Spielvorrichtungen vorab messen. Es ist jedoch
möglich, dass
sich diese Kommunikationszeit während
der Dauer des Quizspiels aufgrund eines unterschiedlichen Andrangs
an den Schaltungen ändert.
Der Hauptserver 1 kann also die Antwortzeit an jeder Spielvorrichtung
nicht messen.
-
Daher
misst jede Spielvorrichtung die Antwortzeit auf die Fragen selbst
und überträgt diese Antwortzeit
zusammen mit Information bezüglich
der Korrektheit bzw. Unkorrektheit der Antworten an den Hauptserver
1. Die Antwortzeit (Reaktionszeit) kann beispielsweise die Zeitspanne
vom Beginn des Empfangs oder vom Abschluss des Empfangs der Quizfragen,
die der Server verteilt, bis zum Beginn oder Abschluss der Eingabe
der Antworten durch den Spieler sein. Es kann sich auch um die Zeitspanne zwischen
dem Beginn der Antwortmöglichkeit
durch den Spieler (beispielsweise ab der Darstellung der Quizfrage
auf dem Bildschirm) und dem Beginn oder Abschluss der Eingabe einer
Antwort durch den Spieler handeln.
-
18 und 19 zeigen
Flussdiagramme eines Netz-Quizspiels. In 18 bieten
die Spielvorrichtungen in der Zeitperiode, in der kein Netz-Quizspiel
erfolgt, ein gewöhnliches
Quizspiel an den einzelnen Spielvorrichtungseinheiten (S400 (gewöhnlicher
Quizmodus)). D. h., die Spieler beantworten eine vorgeschriebene
Anzahl Quizfragen, die auf der Spielvorrichtung angezeigt werden,
und versuchen, so viele Fragen wie möglich korrekt zu beantworten.
-
Soll
ein Netz-Quizspiel gespielt werden, sendet der Hauptserver 1 zuerst
ein Eintrags-Beginnsignal (S300) an die einzelnen Spielvorrichtungen
und teilt ihnen dadurch mit, dass ein Netz-Quizspiel nach einer
vorgeschriebenen Zeitspanne beginnt. Empfangen die einzelnen Spielvorrichtungen
das Eintrags-Beginnsignal, so stellen sie einen Eintrags-Annahmebildschirm
dar (S401). Empfangen die Spielvorrichtungen das Eintrags- Beginnsignal, so
wird, wenn auf der einzelnen Spielvorrichtungseinheit ein gewöhnliches
Quizspiel gespielt wird, auf den Eintrags-Annahmebildschirm übergewechselt,
sobald das gewöhnliche
Spiel beendet ist.
-
20 zeigt
ein Beispiel eines Eintrags-Annahmebildschirms. Ein Spieler, der
an einem Netz-Quizspiel teilnehmen möchte, wirft Münzen bis zu
einer vorgeschriebenen Summe ein und gibt anschließend seinen
Namen ein (S402), indem er auf dem Eintrags-Annahmebildschirm dargestellte Buchstaben
wählt.
Ist der Bildschirm der Spielvorrichtung beispielsweise ein Berührbildschirm,
so kann der Spieler Buchstaben durch das Berühren der angezeigten Zeichen
wählen.
Der Spieler kann angezeigte Zeichen auch mit Hilfe eines Steuerknüppels wählen.
-
Gibt
der Spieler in 18 vor dem Ende der Eintrags-Annahme
seinen Namen ein und wählt
den "Ende-Knopf", so sendet die Spielvorrichtung
ein Eintragsvorgang-Beendet-Signal
an den Hauptserver 1. Das Eintragsvorgang-Beendet-Signal enthält beispielsweise
den eingegebenen Spielernamen, die Information über den Ort, an der die Spielvorrichtung bereitgestellt
ist und eine Spielvorrichtungs-Kennungsinformation.
-
Empfängt der
Hauptserver 1 das Eintragsvorgangssignal, so verifiziert er die
eintragende Spielvorrichtung (S301). Zu einer vorgeschriebenen Zeitspanne
(beispielsweise zwei Minuten) vor dem Ende der Eintragsannahme meldet
er jeder Spielvorrichtung, dass das Ende in zwei Minuten erreicht
ist (S302). Empfängt
die Spielvorrichtung das Warnsignal bezüglich des Endes in zwei Minuten,
so zeigt sie die verbleibende Zeit bis zum Ende der Eintragsannahme
auf dem Eintrags-Annahmebildschirm in 20 an
(S403). Ist die restliche Zeit bis zum Ende der Eintragsannahme
abgelaufen, so unterbricht jede Spielvorrichtung die Annahme von
Eintragungen (S404) und sendet dem Hauptserver 1 ein Eintragsannahme-Endsignal.
Wie das Eintragsvorgang-Beendet-Signal enthält das Eintragsannahme-Endsignal
den Namen des Spielers, der den Eintrag vornimmt, die Information über den
Ort, an der die Spielvorrichtung bereitgestellt ist und eine Spielvorrichtungs-Kennungsinformation.
Erfolgt keine Eintragung, so sendet die Spielvorrichtung anstelle
des Spielernamens ein Eintragsannahme-Endsignal, das die Information "Kein Eintrag" enthält.
-
Hat
der Hauptserver 1 eine Eintragsannahme-Endinformation von allen
Spielvorrichtungen erhalten, so trennt er aus allen Spielvorrichtungen
diejenigen Spielvorrichtungen heraus, bei denen eine Eintragung
erfolgt ist, und nimmt eine letzte Überprüfung der Spielernamen und der
einzelnen Spielvorrichtungen vor, bei denen eine Eintragung erfolgt ist (S303).
An dieser Stelle verteilt der Hauptserver 1 an die Spielvorrichtungen
mit einer Eintragung ein erklärendes
Video (S304) des Quizspiels und verwendet zu diesem Zweck eine virtuelle
Moderatoren-Figur. Die einzelnen Spielvorrichtungen stellen das
erklärende
Video dar (S405). Nach dem Ende des Videos senden sie ein Signal "Erklärung beendet" an den Hauptserver.
-
Hat
der Hauptserver 1 das Signal "Erklärung beendet" von allen Spielvorrichtungen
empfangen, an denen ein Eintrag vorliegt, so startet er das Quiz. Beträgt beispielsweise
die Gesamtanzahl der Quizfragen 30, so verteilt (S305) der Hauptserver
1 zuerst alle 30 Fragen und die korrekten Antworten an die jeweiligen
Spielvorrichtungen, die einen Eintrag aufweisen. Die Verteilung
vom Hauptserver 1 kann simultan an alle Spielvorrichtungen erfolgen
(oder an alle Spielvorrichtungen, die einen Eintrag aufweisen) oder
sie kann zeitlich gestaffelt nacheinander erfolgen. Im Fall der
sequentiellen Übertragung
kann der Hauptserver 1 nach dem Empfang es Signals "Erklärung beendet" die Fragen und ihre
korrekten Antworten an die Spielvorrichtungen senden, die dieses
Signal übertragen
haben. Man beachte, dass den Spielvorrichtungen zusätzlich zu
den Fragen und ihren korrekten Antworten auch die Anzahl der Teilnehmer
mitgeteilt wird. Die Fragen und ihre korrekten Antworten können ebenfalls
zeitlich gestaffelt verteilt werden. Beispielsweise können zuerst
die ersten 10 Fragen verteilt werden. Anschließend können vor dem Abschluss der
ersten 10 Fragen die folgenden 10 Fragen verteilt werden. Anschließend können die letzten
10 Fragen verteilt werden.
-
Nach
dem Empfang der Fragen und ihrer korrekten Antworten zeigen die
Spielvorrichtungen die verbleibende Zeitspanne bis zum Beginn des Quiz
an (beispielsweise 20 Sekunden) (S406). An dieser Stelle wird auch
die Anzahl der Teilnehmer angezeigt. Die Spieler können damit
die Teilnehmeranzahl in Erfahrung bringen. Nach dem Beginn des Quizspiels
geht die Spielvorrichtung zu 19 über und
wählt zuerst
die erste Frage (S407).
-
Sind
die Fragen dargestellt, so beginnt die Spielvorrichtung an dieser
Stelle mit Hilfe des Zeitgebers mit dem Messen der Zeit und misst
die Zeitspanne bis die Antwort gegeben wird (S408). Der Spieler erteilt
die Antwort auf die Frage durch die Auswahl einer Antwort aus mehreren
wählbaren
Alternativen, die angezeigt werden. Ist der Bildschirm der Spielvorrichtung
ein Berührbildschirm,
so berührt
der Spieler die gewählte
Auswahlalternative. Wahlweise kann die Auswahlalternative mit Hilfe
eines Steuerknüppels
gewählt
werden. 21 zeigt ein Beispiel eines Fragedarstellungs-Bildschirms.
-
Hat
der Spieler eine Antwort gewählt
(S409), so beendet die Spielvorrichtung die Zeitmessung und bestimmt
die Antwortzeit (S410). Zusätzlich
ermittelt die Spielvorrichtung mit Hilfe der verteilten korrekten Antwort,
ob die gewählte
Auswahlalternative korrekt ist (S410). Ist die Antwort zutreffend,
so wird auf dem Bildschirm eine Nachricht angezeigt, dass es sich
um die richtige Antwort handelt. Eine Antwortinformation, die die
Fragennummer enthält
und die Angabe, dass die Antwort korrekt war, wird zusammen mit
der bestimmten Antwortzeit an den Hauptserver 1 gesendet. Da jede
Spielvorrichtung die Antwortzeit misst und sie an den Hauptserver
1 überträgt, kann
der Hauptserver 1 eine exakte Antwortzeit für jede Spielvorrichtung erfassen,
obwohl sich die Kommunikationszeiten zwischen dem Hauptserver 1
und den Spielvorrichtungen jeweils unterscheiden.
-
Im
Fall einer falschen Antwort wird auf dem Bildschirm eine Meldung
angezeigt, dass es sich um eine falsche Antwort handelt. Eine Antwortinformation,
die nur die Fragennummer enthält
und die Angabe, dass die Antwort nicht korrekt war, wird ohne die Antwortzeit übertragen.
Der Fall, dass innerhalb der vorab angegebenen vorgeschriebenen
Zeitspanne zum Beantworten einer Frage keine Auswahlalternative
gewählt
wird (d. h. "Zeit
abgelaufen"), wird
als unzutreffende Antwort gewertet. Man beachte, dass die Entscheidung
bezüglich
einer korrekten Antwort auch der Hauptserver 1 treffen kann. In
diesem Fall überträgt der Hauptserver
1 nur die Fragen an die Spielvorrichtungen, und die Spielvorrichtungen
senden dem Hauptserver 1 für
jede Frage die gewählte Antwort
und die Antwortzeit. Der Hauptserver 1 entscheidet, ob die von jeder
Spielvorrichtung empfangene Antwort zutreffend oder unzutreffend
ist, und er addiert die empfangenen Antwortzeiten nur für die korrekten
Antworten.
-
Empfängt der
Hauptserver 1 die Antwortinformation (korrekte Antwort oder falsche
Antwort) und die Antwortzeit im Fall einer richtigen Antwort, so summiert
er diese Größen auf
und berechnet eine Rangordnung für
jede Frage (S306). Ist die Anzahl der korrekten Antworten gleich,
so verleiht er den höchsten
Rang an den Spieler, dessen gesamte Antwortzeit am geringsten ist.
Ist die Rangordnung ermittelt, so überträgt der Hauptserver 1 die einzeln
bestimmten kumulierten Rangordnungen an jede Spielvorrichtung (S308).
Ist am Ort, an dem die Spielvorrichtung untergebracht ist, eine
getrennte Anzeigevorrichtung zum Darstellen der Rangordnungen vorhanden
(siehe "Rangordnungs-Anzeigevorrichtung" in 17),
so übermittelt
der Hauptserver 1 beispielsweise die 10 ranghöchsten Spieler und ihre kumulierte
Rangordnung an die Rangordnungs-Anzeigevorrichtung.
Ist die Rangordnungs-Anzeigevorrichtung an einer Stelle angebracht,
die von den Spielern, die die Spielvorrichtungen betätigen, leicht
einsehbar ist, so können
die Spieler ihren eigenen Rang in Erfahrung bringen sowie zusätzlich die
Namen der Spieler in der höchsten
Rangposition für
jede Frage.
-
Empfängt die
Spielvorrichtung die individuelle kumulierte Rangordnung vom Hauptserver
1, so stellt sie diese am Rangordnungs-Anzeigeort in 21 dar
und wählt
die folgende Frage (S412). Die Verarbeitung der beschriebenen Schritte
S408 bis S410 wird wiederholt.
-
Um
die Spannung im Quizspiel zu erhalten kann so vorgegangen werden,
dass beispielsweise die kumulierten Rangordnungen in der letzten
Stufe (für
die letzten 10 Fragen) des Quizspiels nicht übertragen werden (die Rangordnungen
werden natürlich nach
wie vor berechnet). D. h., während
des Ablaufs werden die Rangordnungen nicht dargestellt. Um ein "Aufholen" zu ermöglichen
kann die Rangordnung so bestimmt werden, dass bei einer einzigen
korrekten Antwort der Zählerstand
und/oder die zulässige
Antwortzeit verdoppelt werden. Erhöht der Hauptserver 1 normalerweise
(d. h. für
Fragen, die nicht zu den letzten 10 Frage gehören) die Anzahl der korrekten Antworten
für die
richtige Beantwortung einer Frage um 1, so kann er für korrekte
Antworten auf die letzten 10 Fragen die Anzahl der korrekten Antworten
um ein Vielfaches der Anzahl (beispielsweise 2 Mal die Anzahl) pro
richtiger Beantwortung der Frage erhöhen. Zudem kann die Antwortzeit
für eine
zutreffende Antwort mit einem vorgeschriebenen Faktor multipliziert
werden (beispielsweise 2) bevor sie zu den gesamten Antwortzeiten
an dieser Stelle addiert wird. Die Differenz der Antwortzeiten wird
dadurch gegenüber
dem Normalfall vergrößert. Dies
macht es leichter, in der Rangordnung aufzuholen.
-
Sind
alle Fragen beendet (S307, S411), so stellt der Hauptserver 1 die
endgültigen
Rangordnungen zusammen und übermittelt
die einzelnen End-Rangordnungen an die einzelnen Spielvorrichtungen.
Weiterhin überträgt er die
Namen der endgültigen
höchstrangigen
Spieler und ihren Rang an die Rangordnungs-Anzeigevorrichtung (S309).
Die Spielvorrichtung zeigt die endgültigen Rangordnungen an (S413).
Es sei erwähnt,
dass man nach dem Abschluss des Quizspiels zusammen mit der Übertragung
der endgültigen
Rangordnungsinformation auch ein Performancevideo verteilen kann,
in dem ein virtueller Moderator agiert (Verkündung der ranghöchsten Spieler
usw.). Es können
auch getrennte Videos an die Spielvorrichtungen der ranghöchsten Spieler
und die Spielvorrichtungen der anderen Spieler verteilt werden.
Ist nach der Darstellung der endgültigen Rangordnung eine vorgeschriebene
Zeitspanne verstrichen, so kehrt die Spielvorrichtung in den gewöhnlichen
Quizmodus-Bildschirm zurück.
-
Als
Verfahren zur Rangordnungsbestimmung kann man anders als bei dem
Verfahren, bei dem bei gleicher Anzahl an korrekten Antworten den Spielern
mit der kürzeren
Gesamtantwortzeit der höhere
Rang zuerkannt wird, beispielsweise ein Verfahren einsetzen, bei
dem die Anzahl an Punkten für
korrekte Antworten abhängig
von der Antwortzeit verändert
wird. Man kann beispielsweise so vorgehen, dass die Anzahl der Punkte
abhängig
von der Länge der
Antwortzeit nach der Anzeige der Fragen verringert wird, beispielsweise
100 Punkte falls die Antwort innerhalb von 5 Sekunden gegeben wird,
80 Punkte falls die Antwort innerhalb von 10 Sekunden gegeben wird,
und 60 Punkte falls die Antwort innerhalb von 15 Sekunden gegeben
wird. Geht man so vor, so wird das Ergebnis und/oder die Rangordnung
durch die Gesamtanzahl an Punkten bestimmt.
-
Wie
beschrieben berechnen in einem Quizspiel über das Netz die Spielvorrichtungen
die Antwortzeit der Quizfragen und senden sie an den Hauptserver
1. Auf diese Weise kann der Hauptserver, der das Quizspiel verwaltet,
auch bei unterschiedlichen Kommunikationszeiten zwischen dem Hauptserver
und den jeweiligen Spielvorrichtungen die korrekte Antwortzeit für jede Frage
in jeder Spielvorrichtung erhalten.
-
Man
kann die obige Ausführungsform
auch auf Kommunikationsspiele anwenden, die keine Netz-Quizspiele
sind. Man kann sie beispielsweise auch auf Spiele anwenden, in denen
ein Wettbewerb hinsichtlich der Antwortzeit erzeugt wird, bis ein
Spieler einen Eingabevorgang ausführt, den das Spiel erfordert,
beispielsweise ein Eingabe-Wettspiel über das Netz, in dem mehrere
Spieler hinsichtlich der Geschwindigkeit konkurrieren, mit der sie
tatsächlich Zeichen
eingegeben können,
die der Server präsentiert,
oder ein "Mole-Bashing"-Wettspiel über das Netz,
in dem mehrere Spieler hinsichtlich der Geschwindigkeit konkurrieren,
mit der sie exakt eine Eingabeoperation vornehmen können, die
der Server präsentiert.
Im Fall eines Eingabewettspiels über
das Netz werden vorgeschriebene Buchstaben bzw. Symbole usw. vom
Server als Spielinformation verteilt. Gemessen wird beispielsweise
die Antwortzeit ab dem Punkt, ab dem es dem Spieler möglich ist, eine
Eingabeoperation vorzunehmen, die diesen verteilten Buchstaben bzw.
Symbolen entspricht, und zwar bis die tatsächliche Eingabeoperation erfolgt. Auch
im Fall eines "Mole-Bashing"-Wettspiels über das
Netz werden die Positionen, an denen Mole-Zeichen auf dem Bildschirm
erscheinen und verschwinden, als Spielinformation verteilt. Gemessen
wird beispielsweise die Antwortzeit vom Erscheinen einer Mole auf
dem Bildschirm bis zu dem Zeitpunkt, zu dem der Spieler eine Eingabeoperation
ausführt,
die dieser Position entspricht. Die gemessenen Antwortzeiten werden
an den Hauptserver gesendet. Dort werden das Ergebnis und/oder die
Rangordnung abhängig
von den gesamten Antwortzeiten berechnet. In diesem Fall erzielt
man den höchsten
Rang mit der kürzesten
Gesamt antwortzeit.
-
Wird
bei den beschriebenen Abläufen
ein Computerspiel-Wettkampf über
ein Netz ausgetragen, das eine Kommunikationsverzögerung aufweist, so
werden die Verzögerungszeiten
zwischen den Spielvorrichtungen vor Beginn des Spiels festgestellt. Mit
Hilfe dieser Zeiten erzielt man eine Synchronisierung der in den
Spielvorrichtungen gezählten
Zeiten. Während
des Spielfortschritts werden die Handlungsdatensignale nach dem
Verstreichen der längsten
Verzögerungszeit
der vorab gemessenen Verzögerungszeiten
zwischen den Spielvorrichtungen nach den Erscheinen der Signale
verarbeitet. Aus diese Weise lässt
sich das Handlungsdatensignal simultan in zahlreichen Spielvorrichtungen
verarbeiten.
-
In
einem Netzserver, der ein Netzspiel verwaltet, kann man die Last
auf dem Hauptserver verringern, der die anfänglichen Verbindungsanforderungen
von den Spielvorrichtungen empfängt.
-
Zudem
können
mehrere Spieler von einer einzigen Computerspielvorrichtung aus
an einem Netzspiel teilnehmen.
-
Herrscht
in einem Kommunikationsspiel, an dem eine Anzahl Spieler teilnehmen,
ein Wettbewerb bezüglich
der Zeitspanne, die jeder Spieler benötigt, bis er die vom Server
verteilte Spielinformation beantwortet, so messen die von den einzelnen
Spielern betätigten
Spielvorrichtungen ihre Antwortzeiten und übertragen diese an den Server.
Damit kann man exakte Antwortzeiten auch dann feststellen, wenn
sich die Verteilungszeiten der Spielinformation vom Server zu jeder
Spielvorrichtung jeweils unterscheiden.
-
Der
Schutzumfang der Erfindung ist nicht auf die hier beschriebenen
Ausführungsformen
eingeschränkt,
sondern erstreckt sich auf Äquivalente
der Erfindung, wie sie in den Patentansprüchen angegeben sind.