AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP] Kämpfe bei Browsergames mit verschiedenen Einheiten

[PHP] Kämpfe bei Browsergames mit verschiedenen Einheiten

Ein Thema von Master_RC · begonnen am 24. Nov 2005 · letzter Beitrag vom 11. Dez 2005
Antwort Antwort
Seite 3 von 4     123 4   
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#21

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 27. Nov 2005, 18:13
Zitat von Master_RC:
So...
die Unique-ID per auto_increment ist mir auch klar, nur wie kann ich dann bereits beim Eintragen wissen, wie die lautet? Kann man die irgendwie sogar gleich ebstimmen?
Das Autoincrement zählt ja einfach nur eins weiter, vom letzten/ höchsten Index an gerechnet. Wenn man also zum letzten Wert eins dazuaddiert, hat man die Autoincrement-ID schon.
Es gibt, glaube ich, sogar eine Funktion, die sowas (oder zumindest etwas ähnliches) macht: mysql_insert_id.

Zitat:
mysql_insert_id() liefert die ID, die bei der letzten INSERT-Operation für ein Feld vom Typ AUTO_INCREMENT vergeben wurde.
MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#22

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 27. Nov 2005, 18:48
Zitat von Master_RC:
So...
die Unique-ID per auto_increment ist mir auch klar, nur wie kann ich dann bereits beim Eintragen wissen, wie die lautet? Kann man die irgendwie sogar gleich ebstimmen?
In dem du zwei Tabellen machst.
- Schlacht
- Members

Schlacht
ID (autoInc)
Agressor
Verteidiger
Timestamp (wichtig)

Hier selectest du nach Timestamp, Agressor udn Verteidiger (die du in eienr Variable zum suchen abspeichern solltest). und ließt dann die ID aus.

Memnbers
ID (autoInc)
Schacht_ID
Einheit
Zugehörtigkeit

Zitat von Master_RC:
Ja, schon klar, wie das aussehen soll, das Kampfscript, nur wie soll das in PHP aussehen? Also dass zwei Einheiten mit drei kloppen, etc? (Variante 1)
Zwei Möglichkeiten sehe ich. Beide mit viel Aufwand verbunden, da du ein wenig die Objekte nachsimulieren mußt. Probiere das ganze erst einmal als 1vs1 und arbeite dich dann vor. Ich kann in kurzer Zeit unmöglich ein komplettes Script bieten, doch hier ein paar Ansätze.

1. Mehrdimensionale Arrays:
So kann man leicht quasiObjecte erschaffen.
XML-Code:
$array = array ("Angreifer" => array ("AT" => 5, "PA" =>3, "LeP" => 12 usw.)
$array = array ("Verteidiger" => array ("AT" => 5, "PA" =>3, "LeP" => 12 usw.)

Code:
while ($array[Angreifer,3] or $array[Verteidiger,3]) >= 0 {
  dein kampfscript
}
So kannst du Die arrays fast als werte wie objecte verwenden.
Statt arrays kann man auch Classen verwendne und dann OOP programmieren.
Weitere infos über Arrays, Classen und php findest du hier http://www.selfphp.de/funktionrefere...onen/index.php

2. Per DB:
Schwachsinn, aber auch möglich. Eine eigene Tabelle erstellen, wo du die werte Schritt für schritt änderst.
Marco
Wer Rechtschreibfehler findet, der darf sie behalten

Carpe Diem - Nutze den Tag (und zwar den ganzen!)
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#23

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 30. Nov 2005, 18:55
warum bin ich eigentlich nicht selbst drauf gekommen?

Sehr vielen Dank!
Ich werds mal genau so probieren, nur noch 1 Problem dazu
Wenn ich so alle Einheiten in nem Array hab, wie ändere ich dann dazu die Einträge in der Datenbank? ^^
Also bei mir sollte dann der Array wie folgt aussehen:
$angreifende_Einheiten = array("Einheit1" => array(....),
"Einheit2"=> array(.....), etc.)

Dabei sollte man auch beachten, dass Einheiten sterben können, also dann aus der DB gelöscht werden sollen...


Mit dieser Frage sollte dann eigentlich das Thema geklärt sein...
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#24

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 30. Nov 2005, 22:34
Kurze Antwort da schon viel zu spät umd zu denken .

Wenn der Kampf beendet, also die eine Seite keine Lebenden mehr hat, dann löscht du die einfach per SQL-Delete Befehl, da ja die meisten DB´s SQL fähig sind.
Delete * from 'Einheitenwhere ID = XYZ Die ID muß dann auch wieder aus den Array gelesen werden (also ein weiterer Punkt im Array wobei du auch bei PHP >5.0 ein Array of TObject machen kannst). Es gibt ein feines Programm, PhpMyAdmin. Dieses kann dir einen entsprechenden Befehl quasi vordefinieren, den du dann nur noch in dein Programm implementieren und mit den Variablen editieren. Dieses Programm funktioniert nur auf PHP basierende Server mit MySQL als DB. (Was ja die Standartkombie ist)
Zu finden hier
http://www.phpmyadmin.net/home_page/index.php
Marco
Wer Rechtschreibfehler findet, der darf sie behalten

Carpe Diem - Nutze den Tag (und zwar den ganzen!)
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#25

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 4. Dez 2005, 13:29
also gut, ich hab mich mal über den letzten tagen mal wieder dran gesetzt und hab jetzt eigentlich alles bis auf eins:

Wie lege ich nun fest, welche Einheit mit welcher kloppt?
Bzw. wenn 5 gegen 4 kämpfen, dass eine Einheit gegen 2 antritt...

Hab mir da schon viel ausgedacht, was aber immer schief ging...
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#26

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 4. Dez 2005, 16:12
Ich würde ungefähr so vorgehen.

Als erstes bestimmen, welche Seite die Größere ist. dann die größere Seite nach und nach einen Gegner geben. Wenn die Kleienere am schluss ist, dann wieder von vorne. Damit werden immer die ersten mehrfach angegriffen. Mal einen beispel mit 3:8

3 < 8

Seite 2 vs Seite 1
1 1
2 2
3 3
4 1
5 2
6 3
7 1
8 2

Oder alternativ mit einen zufallsgenerator verteilen. Das bringt auch mehr ähm Kampfrealität.


Gruß
Marco
Wer Rechtschreibfehler findet, der darf sie behalten

Carpe Diem - Nutze den Tag (und zwar den ganzen!)
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#27

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 7. Dez 2005, 12:48
Gut, natürlich wäre ein Zufallsgenerator am Einfachsten
Aber mein Spiel sollte diesmal mit Qualität glänzen

Also...
Das mit dem "der Reihe nach" mach ich wahrscheinlich mit ner WHILE-Schleifer, oder?

Jetzt ist es natürlich so, dass ich ja ein kleines Ekel bin und natürlich das mit dem Zuffi haben will

So...
Eigentlich einfach:
Einheit[greiftEnheitenIDan] = random(maxGegneranzahl)

So...
Jetzt überkommt mir, dass es aber ein "unberechenbarer Zufall" ist, also manche Einheit wird nicht angegriffen!
Wie sollte ich das verhindern?


(So... jetzt wäre mir eine Idee gekommen, was jedoch mit der Spielidee zu tun hat: Durch irgendein bestimmtes Ereignis - Geld, "Ausruhen-Option", etc. - könnte man ja bestimmen, ob es Zufall- oder Reihenkampf ist tut jetzt aber nichts zur Sache ^^)
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#28

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 7. Dez 2005, 13:18
Du könntest neben MaxAnzahl auch MinAnzahl machen.
Also statt

bla = Random(MaxZahl);

->

bla = Random(MaxZahl + MinZahl) - MinZahl;

air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#29

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 9. Dez 2005, 18:01
Zitat von Airblader:
Du könntest neben MaxAnzahl auch MinAnzahl machen.
Also statt

bla = Random(MaxZahl);

->

bla = Random(MaxZahl + MinZahl) - MinZahl;

air
Da gibts leider immernoch unnütze Einheiten

Beispiel: 5 gegen 5

Die Würfel der angreifenden fünf wie folgt bei Random:

2
3
4
4
2

==> 5 und 1 werden nicht angegriffen
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#30

Re: [PHP] Kämpfe bei Browsergames mit verschiedenen Einheite

  Alt 10. Dez 2005, 16:10
Dann setze als erstes 1 vs 1. und erst bei den überzähligen deine Randomschleife
Marco
Wer Rechtschreibfehler findet, der darf sie behalten

Carpe Diem - Nutze den Tag (und zwar den ganzen!)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 +2. Es ist jetzt 22:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf