kostenloser Webspace werbefrei: lima-city


Kampf Script für Browsergame

lima-cityForumDie eigene HomepageHomepage Allgemein

  1. Autor dieses Themas

    ultimate-bravery

    ultimate-bravery hat kostenlosen Webspace.

    Hallo zusammen,

    schon mal vorab, ich bin nicht auf der Suche nach Quellcode oder sowas, das kann ich selber schreiben, ich brauche nur eine grundlegende Idee ;) Also hier ist meine Situation:

    Ich brauche eine Idee, wie ein Angriff bei einem Browsergame ablaufen soll. Und zwar gibt es verschiedene Inseln und Person A möchte mit seiner Flotte die Insel von Person B angreifen.

    Person A gibt natürlich an, wie viele Schiffe er von welcher Sorte losschicken möchte und bei Person B kämpfen alle Schiffe, die auf der Insel stationiert sind. Jede Schiffart hat einen eigenen Angriff und Verteidigungs Wert.

    Beispiel:

    Person A schickt folgende Schiffe los:

    6x Transportschiff
    5x Kriegsschiff
    1x Tanker

    Person B hält mit all seinen Schiffen, die auf der Insel sind, dagegen:

    2x Transportschiff
    3x Kriegsschiff
    4x Tanker

    Werte von Schiffen:

    Transportschiff: 10 Angriff, 10 Verteidigung
    Kriegsschiff: 100 Angriff, 100 Verteidigung
    Tanker: 10 Angriff, 10 Verteidigung

    Ich bin jetzt am überlegen, wie die einzelnen Werte mit in den Kampf eingebunden werden sollen. Außerdem stelle ich mir die Fragen:

    Verliert der Verlierer alle Schiffe?
    Wie viele Schiffe verliert der Gewinner? Genauso viele wie der Verlierer?
    Welche Schiffe verliert der Gewinner?

    Wenn ihr mit sowas Erfahrung habt oder euch spontan Ideen einfallen, wäre ich froh, wenn ihr mir helfen könnt.

    Liebe Grüße
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Haben die Schiffe auf einen gewissen "Lebenswert" wie viel sie aushalten ?
  4. t**k

    Um Grundlegend einen Gewinner festzustellen, würde ich zu allererst mal Angriff auf beiden Seiten addieren und Verteidigung addieren und dann vergleichen.

    => Person A: 570 Angriff, 570 Verteidigung
    => Person B: 360 Angriff, 360 Verteidigung

    (Dabei würde ich vorschlagen die Werte etwas variieren zu lassen.)

    Dann würde ich anregen, zu überprüfen, ob einer mehr Angriff zustande bringen kann als der andere Verteidigung hat, damit hätte dieser Gewonnen, bei Gleichstand gewinnt der Verteidiger.

    Zum Schiffe verlieren kann man davon ausgehen, dass der Verlierer alle verliert, wobei ich dafür noch einen Lebenswert für die Schiffe erstellen würde, damit man dies auch gut berechnen kann.

    Ich hoffe, das war hilfreich und nicht zu verwirrend.
  5. Autor dieses Themas

    ultimate-bravery

    ultimate-bravery hat kostenlosen Webspace.

    Haben die Schiffe auf einen gewissen "Lebenswert" wie viel sie aushalten ?


    Nein. Es gibt nur die Angriffs- und Verteidigungswerte.

    Meine Idee war, die Angriffswerte von den Schiffen des Angreifers und die Verteidigungswerte der Schiffe des Verteidigers zu berechnen und die beiden Zahlen zu vergleichen.

    In meinem beispiel also:

    Person A: 570 Angriff
    Person B: 360 Verteidigung

    So kann man erkennen, dass Person A gewonnen hat, aber die oben genannten Fragen stelle ich mir immer noch.

    Zum Schiffe verlieren kann man davon ausgehen, dass der Verlierer alle verliert, wobei ich dafür noch einen Lebenswert für die Schiffe erstellen würde, damit man dies auch gut berechnen kann.


    Lebenswerte finde ich dann doch zu kompliziert, da dann evtl Schiffe zurück kommen, die nur noch 50% Leben haben usw. Das hatte ich eigentlich nicht so geplant. Wobei ich auch daran denke, dass im späteren Spielverlauf um die 100.000 Schiffe pro Kampf beteiligt sind, die Werte aus dem Beispiel dienen nur der Einfachkeitshalbar.

    Beitrag zuletzt geändert: 18.3.2013 18:28:21 von ultimate-bravery
  6. Vielleicht wäre eine Berechnung über x Runden empfehlenswert.
    D.h das der Kampf auch unentschieden ausgehn kann wenn die Gegner gleichstark sind.
  7. Beispiel:


    Person A schickt folgende Schiffe los:

    6x Transportschiff
    5x Kriegsschiff
    1x Tanker

    Person B hält mit all seinen Schiffen, die auf der Insel sind, dagegen:

    2x Transportschiff
    3x Kriegsschiff
    4x Tanker

    Werte von Schiffen:

    Transportschiff: 10 Angriff, 10 Verteidigung Lebenspunkte 100
    Kriegsschiff: 100 Angriff, 100 Verteidigung, Lebenspunkte 100
    Tanker: 10 Angriff, 10 Verteidigung, Lebenspunkte 10


    => Person A: 570 Angriff, 570 Verteidigung, 570 Leben
    => Person B: 360 Angriff, 360 Verteidigung, 360 Leben


    Nun teilen wir den Schaden der einen durch das Leben der anderen Armee. Dies ergibt dann den Anteil an Einheiten jedes Typs, der im Kampf stirbt.

    570/360=1,58. 15,8% der verteidigenden Armee werden sterben.

    360/570=0,63. 6,3% der Angreife Armee werden sterben.



    Nun rechnen wir wieder die Schadenswerte der beiden Armeen aus. Die stärkere entscheidet den Kampf für sich.

    Angreifer Armee:

    570 in Angriffs Schaden

    Verteidiger Armee:

    360 in Verteidigungs Schaden.

    Der Angreifer gewinnt den Kampf somit.
  8. Autor dieses Themas

    ultimate-bravery

    ultimate-bravery hat kostenlosen Webspace.

    @ ringelsocke:

    Ja das hört sich schon mal gut an. Aber brauch man dafür Lebenswerte? Man könnte doch auch Angriff_A/Verteidigung_B bzw. Angriff_B/Verteidigung_A rechnen, dann kommt man auf die gleichen Werte. Ich werde mir das nochmal genauer angucken und dann schreib ich dir nochmal.


    Beitrag zuletzt geändert: 18.3.2013 18:42:28 von ultimate-bravery
  9. Bleibt dann nur die Frage wer bei den % bei den gefallenen dabei ist.
    Oder man rechnet z.b von den Transporter 15,8% weg usw.
  10. Autor dieses Themas

    ultimate-bravery

    ultimate-bravery hat kostenlosen Webspace.

    easylein schrieb:
    Bleibt dann nur die Frage wer bei den % bei den gefallenen dabei ist.
    Oder man rechnet z.b von den Transporter 15,8% weg usw.


    Ja das ist mir grad auch eingefallen. Aber ich würde eher sagen, dass beim Angreifer die Kriegsschiffe bevorzugt werden, damit die Transportschiffe so viele Rohstoffe wie möglich mit von der Insel nehmen können. Aber was ist, wenn wie im Beispiel 6,3% der Flotte zerstört werden soll, die Anzahl der Kriegsschiffe aber nur 3% der Gesamtflotte ist. Dann müssen ja auch noch andere Schiffe zerstört werden. Hat jemand ne Idee, wie das berechnet werden könnte?
  11. Nun teilen wir den Schaden der einen durch das Leben der anderen Armee. Dies ergibt dann den Anteil an Einheiten jedes Typs, der im Kampf stirbt.



    Hab mal dick gemacht ;)

    Beitrag zuletzt geändert: 18.3.2013 19:26:09 von ringelsocke
  12. Im obigen Konzept kann jemand die Prozentrechnung nicht.

    Ich würde das ohne Angriffs und Verteidigungswerte machen.

    Ich würde jedem Schiffstyp 2 andere Typen zuordnen, und zwar 2 Typen die bei einem Angriff (und einer Verteidigung) von einem betreffenden Schiff vernichtet werden.

    Bsp.

    1 Kreuzer vernichtet 2 Zerstörer und 3 Mienenboote
    1 U-Boot vernichtet 5 Mienenboote und 2 Kreuzer
    1 Zerstörer vernichtet 5 U-Boote und 1 Kreuzer

    Hat der angreifende Spieler jetzt:

    3 U-Boote
    2 Kreuzer
    2 Zerstörer

    Und der verteidigende Spieler:

    5 Zerstörer
    10 Mienenboote
    1 Kreuzer

    Jetzt muss man noch eine kampfreihenfolge festlegen

    Ich sage die U-Boote schießen zuerst, der Angreifer vernichtet also theoretisch:

    3 x 5 Mienenboote = 15 Mienenboote

    Der Verteidiger hat 10 Mienenboote also verliert er alle, er hat weiterhin keine U-Boote und richtet deshalb gerade keinen Schaden an

    Jetzt sind sagen wir die Zerstörer drann:

    Die zerstörer des Angreifers finden keine Ziele, dümpelkn also rum.

    Der Verteidiger hat 5 Zerstörer und kann damit theoretisch 5x 5 U-Boote vernichten, der Angreifer hat nur 3 also verliert er alle

    Das geht jetzt immer so weiter bis jeder Typ gegen seinen ersten gegnertyp angetreten ist. Dann kann man das Ganze noch gegen den 2. Gegnertyp machen.

    Wer gewinnt jetzt ?

    Das kommt darauf an:

    Man kann Schiffe machen die durch sinnvolle Zusammenstellung der Flotte überleben müssen oder zerstört werden müssen um den Sieg zu bestimmen, es könnte z.B.

    Der Verteidiger muss eine Menge Kommandoschiffe haben von denen mindestens 1 überleben muss um erfolgreich zu verteidigen oder der Angreifer alle Kommandoschiffe des Verteidigers zerstören muss um die Insel zu übernehmen. Man könnte bspw. sagen das ein Spieler mit vielen Inseln mehr Kommandoschiffe bekommt sodass es schwieriger wird Ihn anzugreifen.

    Man könnte auch sgaen der Angreifer muss eine Menge Landungsschiffe mitbringen und davon müssen je nach Stärke des Verteidigers eine bestimmte Menge überleben damit der Angreifer die Insel besetzen kann.

    Oder man macht eine Rohstoffdifferenz, Sieger ist der der die geringsten Verluste in Rohstoffen hat.

    So erhält man ein Stein-Papier-Schere Prinzip und durch die Reihenfolge in der der Kampf abläuft und der unterschiedlichen Effektivität der einzelnen Schiffe gegen bestimmte Gegner eine ganz erhebliche taktische Tiefe, führt man noch weitere Kampfsequenzen ein bspw. eine 3. für eine stationäre Küstenverteidigung die bspw. Landungs und Kommandoschiffe angreift oder eine 4. für einen strategischen Gegenschlag kann man sehr gut kann man sehr gut auch weitere Gebäude und Technologien einbinden.

    Man kann einem Spieler auch mehrer Flotten geben denen er seine Schiffe zuteilen kann, so kann man bspw. gleichzeitig angreifen und verteidigen oder einem verbündeten beistehen während man selbst angreift oder angegriffen wird...der phantasie sind keine Grenzen gesetzt.

    Im übrigen stammt die idee nicht von mir sondern hat in battlewars sehr gut funktioniert.

    Beitrag zuletzt geändert: 18.3.2013 19:31:12 von fatfox
  13. Fatfox' Vorschlag ist ziemlich gut. ;)
    Allerdings (vergleichsweise) schwierig umzusetzen.
    Sollte es doch auf eine "richtige" Schadensberechnung hinauslaufen würde ich vorschlagen Schadensreduzierung zu berechnen. Eine Flotte kann exakt ihren Angriffswert an Schaden machen.
    Das ganze wird allerdings mit dem Verteidigungswert der anderen Flotte verrechnet. Anbieten tuen sich da Formeln wie

    ( Verteidigung * 100 ) / 100 o.ä.


    Man könnte da dann auch noch Sachen wie Rüstungsdurchdringung einbringen, die vor der Schadensreduzierung die DEF Werte temporär verringern. Das eröffnet ein paar spielerische Freiheiten bleibt aber simpel zu berechnen und sehr überschaubar. ;)
  14. f*******r

    Ich bezweifle aber das man wirklich um einen Wert wie lebenspunkte rum kommt
    Da das System besonders am Anfang sonst zu ungenau wird.

    nehmen wir an Flotte A greift an und hat insgesamt 600 Angriff
    Flotte B hat 5 Schiffe (x) mit 100 Leben und 50 Verteidigung
    Und 5 Schiffe (y) mit 100 Leben und 30 Verteidigung.

    Der Schaden wird erstmal grundlegend auf die Anzahl der Schiffe verteilt
    5 Schiffe (x) würden je 60-60*(50/100) Schaden erhalten also 30 und
    5 Schiffe (y) würden je 60-60*(30/100) Schaden erhalten also 42 :scared:

    Eine Rüstungs Durchdringung könnte man einfach machen indem man
    Die rüstungs Durchdringung der gesamten Flotte ausrechnet und
    die Verteidigung von Flotte B um soviel Prozent verringert.

    Wenn Flotte A 4 Schiffe hat von denen die Hälfte eine Rüstungsdurchdringung von 7 hat
    Hätte die Flotte eine Rüstungsdurchdringung von 2*7 / 4 = 3,5
    Jetzt muss man im Kampf einfach immernoch Verteidigung*3,5/100 von der Verteidigung von Flotte B abziehen.

    Bei 5 Schiffe (y) wäre das 30-30*3,5/100 also nur noch 28,5 Verteidigung und somit würden sie
    60-60*(28,5/100) also 42,9 Schaden bekommen




  15. filesaver schrieb:
    Ich bezweifle aber das man wirklich um einen Wert wie lebenspunkte rum kommt
    Da das System besonders am Anfang sonst zu ungenau wird.
    Warum sollte das zu ungenau werden ?

    Man muss es wie bei jedem Spiel natürlich in der Testphase balancen. Es funktioniert wie geschildert, vertrau mir. Es war bereits jahrelang mit vielen hundert Spielern im Einsatz :-)

    Beitrag zuletzt geändert: 18.3.2013 22:28:56 von fatfox
  16. f*******r

    Aber kann man in deinem System so etwas wie Boni und Rüstungsdurchdringung einbringen ?
  17. Muss man zwar nicht aber ginge z.B. indem die Werte eines Schiffstyps für seine Gegnertypen modifiziert oder neue Gegnertypen einfügt.
  18. kalinawalsjakoff

    Kostenloser Webspace von kalinawalsjakoff

    kalinawalsjakoff hat kostenlosen Webspace.

    Du könntest für jeden Schifsstypen einen sogenannten Initiativewert festlegen beispielsweise zwischen 0 und 10. Je höher der Angriffswert desto höher der Initiativewert. Dann addierst du das ganze für die Flotte des Spielers A auf und das selbe machste mit der Flotte für den Spieler B. Wer den höheren Ini-Wert hat hat natürlich im Spiel den ersten Zug.

    Vielleicht ist das auch noch ne Option.
  19. welchen Anspruch hast du denn an dein kampfsystem? schmeißt du flotten gegeneinander?

    dann maximalwerte errechnen, random +/- 20% schaden, +/- 10% panzerungsverhalten und dann einfach prozentual abziehen:


    Beispiel:


    Angreifer:
    20 flugzeugträger 2000Att /5000 Def
    50 Zerstörer 800 Att/ 2000 Def
    30 Kreuzer 1200 Att / 3000 Def
    10 Kanonenboote 500 Att / 800 Def
    5 Uboote 2000 Att / 300 Def

    -> 131000 Att / 299500 Def

    Verteidiger:
    20 schlachtschiffe 5000 Att / 12000 Def

    -> 100000 Att / 240000 Def


    Kampfsimulation mit beispielrandom:

    Runde 1: (kannst schauen: schießen beide gleichzeitig oder wer bekommt first strike?
    Angriff Flotte 1: Def flotte 2 - Att Flotte 1
    250000 - 120000 = 130000 RestDef Flotte 2
    Angriff Flotte 2: Def Flotte 1 - Att Flotte 2
    299500 - 110000 = 189500 RestDef Flotte 1


    Kampfergebnis Runde 1:

    130k/250k -> 52% restStruktur Flotte 2 ->10 schlachtschiffe bleiben übrig
    189,5k/299,5k -> 63% Reststruktur Flotte 1 -> Übrige Flotte:
    13 Flugzeugträger (es muss aufgerundet werden)
    32 Zerstörer
    19 Kreuzer
    7 Kanonenboote
    3 Uboote


    die struktur musst du ja jetzt nicht neu ausrechnen, sondern jetzt musst du nur die Att werte neu ausrechnen.


    Das wäre ein sehr primitives Kampfsystem ohne hirn unt taktik.

    Für alles weitere müsstest du die Kampfflotten gliedern in Untereinheiten., wenn du angriffsreihenfolge vorgeben willst, möglichkeit, dass ferfehlt wird, möglichkeit kritischer Treffer, Panzerrungs-Effekte(Schuss) abgeprallt einzelangriffberecfhnung(wenn das schlachtschiff eine artilleriegranate mit 1000 kampfkraft auf ein 800def Kanonenboot feuert, dann sind 200 Att verloren, die nciht in schadensberechnungen mit eingehen. schlachtschiffe können nciht auf Uvboote losgehen, sondern nur Zerstörer und andere Uboote... solche sachen sind es. Einfach mal im Kopf logisch eine schlachtensimulation durchgehen.

    Oder kann die Pistole des Kapitäns eines Frachters wircklich ein schlachtschiff beschädigen? (angriffskraft Ziviler schifffahrt mein ich damit)

  20. f******s

    Ich spiele schon eine ganze Zeit Schulterglatze.
    Vielleicht ist das für dich Interessant.
    http://board.unikatmedia.de/schulterglatze/index.php?/topic/7917-tutorial-manoeverberechnung/
  21. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!