Autor Thema: Respawnen auf Flugplätzen, Anzahl der Flugzeuge  (Gelesen 1322 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline II/JG26_Storm

  • Hallenfeger
  • **
  • Beiträge: 19
Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« am: 30.April.2011, 14:15 »
Ich habe bisher 2 Multiplayer Maps erstellt (Rot vs Blau, je 1 Spawnarea), die soweit erstmal funktionieren.
Problem ist jedoch, dass "verlassene" oder gecrashte Flugzeuge nach dem
man sich ein neues "erstellt" hat, immer noch auf der Map rumstehen und auch als
Icon angezeigt werden.

1.) Wie verhindert man, dass bei Flugzeugwechsel das vorher genutzte Flugzeug immer
noch auf der Map vorhanden ist?

2.) Aus mir unbekannten Gründen erscheinen teilweise mehrere KI Flugzeuge und starten
vom eigenen Flugplatz aus (ich habe natürlich eine komplett leere Karte als Grundlage und
auch keine KI Flugzeuge platziert). Woher kommen diese Geisterflugzeuge?

3.) Kann man oder muss man sogar mehrere Spawnareas auf einem Flugfeld erstellen, damit
die "erstellten" Flugzeuge auch an der richtigen Stelle stehen (und nich am Abhang usw.)?
Beispiel: ich will auf einem Flugfeld 16 menschliche Spieler freischalten, muss ich dann auch
16 Spawnareas platzieren mit jeweils Anzahl der Flugzeuge=1 ? Oder so wie ich es bisher gemacht
habe, eine Spawnarea mit Anzahl der Flugzeuge=16 ?

4.) Lässt sich sonst irgendwie festlegen, an welchem Punkt genau auf dem Flugplatz ein menschlicher
Spieler mit dem von ihm gewählten Flugzeug eingesetzt wird?

Ich weiß es siond viele Fragen und es gibt reichlich Bugs im Editor, aber vielleicht hat jeamd Antworten  :'(



Intel Core2Duo 8400@ 4,0 Ghz+Aplenföhn Nordwand
Geforce GTX285 1GB
8GB OCZ RAM
Soundblaster Audigy 2ZS+Teufel Concept Magnum
Win7 Home Premium 64bit

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #1 am: 30.April.2011, 16:01 »
Zu 1, man verwendet ein Script das die methode Destroy() enthält

Dieses Beispielscript entfernt Flugzeuge die vom Spieler verlassen wurden, da sie sonst von der KI weitergeflogen werden oder dumm in der Gegend herumstehen.

using System;
using maddox.game;
using maddox.game.world;
using System.Collections.Generic;

public class Mission : AMission
{
    // Entfernt Flugzeug das von einem Spieler verlassen wurde
    public void _DespawnEmptyPlane(AiActor actor)
    {
        if (actor == null)
        { return; }

        Player[] Players = GamePlay.gpRemotePlayers();

        bool PlaneIsEmpty = true;

        foreach (Player i in Players)
        {
            if ((i.Place() as AiAircraft) == (actor as AiAircraft))
            {
                PlaneIsEmpty = false;
                break;
            }
        }
        //Sollte das Flugzeug in der Luft sein, durch Beschädigungen dafür sorgen das es Abstürzt und nicht plötzlich verschwindet. Sonst beschweren sich die Mitspieler die es gerade beschiessen.
        if ((PlaneIsEmpty) && (actor as AiAircraft).IsAirborne())
        {

            (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsElevatorDisabled);
            (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsAileronsDisabled);
            (actor as AiAircraft).hitNamed(part.NamedDamageTypes.ControlsRudderDisabled);
            (actor as AiAircraft).hitNamed(part.NamedDamageTypes.Eng0TotalFailure);
            // 2mots
            (actor as AiAircraft).hitNamed(part.NamedDamageTypes.Eng1TotalFailure);

            //10 Minuten warten dann Flugzeug entfernen
            Timeout(600.0, () =>
            {
                (actor as AiAircraft).Destroy();
            });

        }
        else if (PlaneIsEmpty)
        {
            (actor as AiAircraft).Destroy();
        }
    }
    // Spieler verlässt das Flugzeug
    public override void OnPlaceLeave(Player player, AiActor actor, int placeIndex)
    {
        base.OnPlaceLeave(player, actor, placeIndex);
        _DespawnEmptyPlane(actor);
    }
    // Entfernt crashgelandete Flugzeuge nach 10Minuten falls einer mal wieder auf die Idee kommt im Flugzeug zu warten
    public override void OnAircraftCrashLanded(int missionNumber, string shortName, AiAircraft aircraft)
    {
        base.OnAircraftCrashLanded(missionNumber, shortName, aircraft);
        Timeout(600, () =>
        {
            aircraft.Destroy();
        });
    }
}

zu 2. Konnte ich bislang nicht beobachten.

zu 3. Nein geht nicht, hab es schon probiert, am besten das Flugzeug auswählen, Waypunkt Start setzen (können mehrere sein), die Gruppe einstellen, einen Haken bei geparkt Spawn und untätig setzen. Dann befinden sich die Flugzeuge in ihrer Parkposition und können vom Spieler in der Multiplayer Karten-Übersicht ausgewählt werden (Zuerst Seite wählen, dann muss man den Flugplatz ranzoomen und kann dann die am Flugplatz noch vorhandenen Flugzeuge anklicken und dann über den Button "Auswahl" auswählen. So kann man auch testen ob es auf dem Flugplatz Probleme mit dem Spawnen gibt. Einfach möglichst viele Flugzeuge einstellen und schauen wo es Probleme gibt. Man kann dann mit dem Flugplatz Objekt dafür sorgen das die Spawnpunkte verschoben werden, funktioniert aber auch nur mit try and error.


zu 4. Ja siehe Punkt 3, alle so erzeugten Flugzeuge sind vom Spieler wählbar. So was wie einen Wegpunkt "Parkposition" gibt es leider nicht
« Letzte Änderung: 30.April.2011, 17:12 von FG28_Kodiak »

Offline II/JG26_Storm

  • Hallenfeger
  • **
  • Beiträge: 19
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #2 am: 30.April.2011, 17:42 »
Danke Kodiak!
zu 3. wenn ich das richtig verstehe, würde ich z.B. 20 Flugzeuge geparkt Spawn aufs Flugfeld
setzen und die Mitspieler "verbrauchen" nach und nach diese 20 Flugzeuge, dann ist nichts
mehr zum Respawn vorhanden und das Multiplayergame beendet?? Also ich meine damit keine COOP-
Mission sondern einfach Dogfight.

Das mit dem Script für zerstörte Flugzeuge macht mir Angst. Das Spiel ist ja noch viel unfertiger
als ich dachte!  :o
Intel Core2Duo 8400@ 4,0 Ghz+Aplenföhn Nordwand
Geforce GTX285 1GB
8GB OCZ RAM
Soundblaster Audigy 2ZS+Teufel Concept Magnum
Win7 Home Premium 64bit

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #3 am: 30.April.2011, 19:03 »
zu 3. Jepp es sei denn ich finde noch eine Möglichkeit verbrauchte Flugzeuge wieder auferstehen zu lassen.
Mir schwebt da schon was vor, muss allerdings noch testen ob es so funktioniert wie ich mir das vorstelle. Sozusagen ein Resurrection Script.  ;D
Die ohne Spawngebiet hat auch den Vorteil das Angriffe auf den gegnerischen Flugplatz auch was bringen, denn die dabei zerstörten Flugzeuge werden aus dem "Pool" genommen.


Das Script hat nichts mit unfertig zu tun, es macht die ganze Sache nur wesentlich flexibler.

Offline usrusr

  • Flieger
  • ****
  • Beiträge: 715
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #4 am: 30.April.2011, 23:02 »
Unfertig trifft es schon ganz gut, denn ohne ein gutes Missionstemplate, in dem die wichtigen Grunddefinitionen ('coop'/'dogfight'/...) schon vorbereitet sind, werden Leute, die lieber Szenarien basteln wollen
als programmieren lernen erst mal gewaltig blockiert. Diese Teile wurden gewissermaßen auf die harte Tour an die community geoutsourcet.
 
Dafür ist andrerseits das Beispiel von kodiak jetzt schon besser als das alte il2: disconnecter dematerialisieren sich nicht einfach vor dem revi sondern knallen in den boden als wäre der pilot
(nach demontage der zündkabel) ins koma gefallen. Das kann alles noch sehr, sehr interessant werden.

Offline ulyssesOne

  • Flieger
  • ****
  • Beiträge: 450
  • No Panic !!!
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #5 am: 02.Mai.2011, 07:34 »
Röschtig ... die Scripts sind zwar wirklich flexibel, aber für den "Standard-IL2-Mapbastler" (beispielsweise Ich  ;D ) doch erstmal ein wenig zu hoch ... aber wird schon werden.

Ich hoffe ... Kodiak ... sortiert und sichert seine Scriptsammlung regelmäßig.  ;)
Intel Ivy Bridge 3770k
Nvidia GTX 680
16 GB RAM DDR3/1600
Win7 64Bit

Offline Grom

  • Hallenfeger
  • **
  • Beiträge: 11
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #6 am: 30.Mai.2011, 22:41 »

Einfach möglichst viele Flugzeuge einstellen und schauen wo es Probleme gibt. Man kann dann mit dem Flugplatz Objekt dafür sorgen das die Spawnpunkte verschoben werden, funktioniert aber auch nur mit try and error.

Hi, könntest du mal kurz aufzeigen wie du die Spawnpunkte verschiebst?
Ich sitz gerade an einer Bombermission und würde gern von einer Parkposition mit der Mission starten. Die ersten Spawnpunkte habe ich mit statischen Objekten zugebaut, geht das irgendwie komfortabler? Irgendwann bin ich in einem großen Hangar gelandet. Dieser ist recht groß und war eigendlich das Objekt meiner Begierde  ;D jedoch zerlegt es leider den Bomber beim Starten der Mission.
Ist es eigentlich anhand der Zahlen ersichtlich welcher Sapwnpunkt als nächstes an der Reihe ist?

p.s. an Kodiak: Kann man dich irgendwie zu einem kleinen [Scripting for Dummies] zu diesem Thema animieren? 

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #7 am: 30.Mai.2011, 23:17 »
Schau dir mal das Flugplatz Objekt an, mit diesem kannst du deinen eigenen Flugplatz anlegen, bzw eigene Spawnpunkte setzen. Diesen mit 0 gekennzeichneten Punkt an die gewünschte Stelle schieben und dann mit strg+Linker Maustaste neue Punkte setzen, Verzweigungen kannst du setzen indem du einen Punkt markierst und die Tasten strg+B drückst (oder die Taste die du in den Optionen beim Editor unter Zweig hinzufügen eingestellt hast).
« Letzte Änderung: 30.Mai.2011, 23:26 von FG28_Kodiak »

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #8 am: 15.Juni.2011, 23:26 »
Damit bin ich auch gerade am experimentieren.

Wenn ich z.B. auf Guines meinen eigenen Spawnpunkte setze funktioniert das für die ersten 4-6 Flieger, danach werden Spawnpunkte ignoiert und will in der Pampa gespawnt.

Nutze ich die vorgefertigten Spawnpunkte, also ohne eigenen Aerodrome und Rollbahn, werden die ersten 12 Spawnpunkte genutzt danach, wild in der Pampa gespawnt und die vorgefertigten Punkte ignoriert. Ich habe mit der eigenen Rollbahn experimentiert, vergrößert, verkleinert, rumgeschoben - hat alles nichts genützt.  :o

Bei Theville das gleich nur bis 14 Flieger gehts, nur bei Carburuet bin ich über 14 Flieger gekommen.

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #9 am: 16.Juni.2011, 13:16 »
Hast du mal die Windrichtung geändert und geschaut ob das Auswirkungen auf die Spawnplätze hat?





« Letzte Änderung: 16.Juni.2011, 13:23 von FG28_Kodiak »

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #10 am: 16.Juni.2011, 18:54 »
 :D
Ne aber ich bin heute erste mit rechts, dann mit links und dann wieder mit rechts aufgestanden, vielleicht gehts jetzt?  8)

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #11 am: 16.Juni.2011, 19:17 »
Das Ändern der Windrichtung hat Auswirkungen auf die Startrichtung, eventuell eben auch auf die Spawnplätze wenn sie z.B. beim Start im Weg sind. Deswegen die Frage.  :-*

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #12 am: 16.Juni.2011, 19:31 »
Ich versuche jedesmal den Wind und Strömung auf 0 zu setzen weil sich sonst die Flieger in den windigen Hangers im Kreisel drehen und ihr Flügel in den Wänden versenken, aber das klappt irgendwie nicht, die drehen sich trotzdem, muß an der metallischen Nase liegen.  :(

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #13 am: 16.Juni.2011, 19:34 »
Dabei habe ich gerade herausgefunden, das ich ein Launcher.exe Crash erzeugen kann, wenn ich die Flugplatz radius in der *.mis auf 0 setze.

Sobald er auf den äußeren Radius spawnen will (bei mir nach 8 Fliegern, trotz 32 gesetzter SPs) hängt er sich auf. Ich teste jetzt mal einen Radius = 1.

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #14 am: 16.Juni.2011, 19:46 »
Ich versuche jedesmal den Wind und Strömung auf 0 zu setzen weil sich sonst die Flieger in den windigen Hangers im Kreisel drehen und ihr Flügel in den Wänden versenken, aber das klappt irgendwie nicht, die drehen sich trotzdem, muß an der metallischen Nase liegen.  :(
Eher an der nicht angezogenen Handbremse  ::)

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #15 am: 16.Juni.2011, 19:48 »
Ich lege immer den ersten Gang rein wenn ich aussteige...  :P

Aber immerhin habe dabei gelernt, dass Spawnplätze die doch eine Rollbahn abgedeckt werden nicht genutzt werden. Setzt man also eine Spawnarea in eine 2000x2000m große Rollbahn, spawnen sie schön aufgereiht, vorhersehbar an der Grenze der Rollbahn die am dichtsten zur Spawnarea ist.

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #16 am: 17.Juni.2011, 16:11 »
Hab bei Theville 24 Flugzeuge untergebracht, ohne das eins davon explodiert ist, hab auch 36 drauf gebracht, dann standen allerdings schon 12 auf der Rollbahn.
Allerdings habe ich die Gruppen als Wegpunkt Start, Geparkt Spawn und Untätig darauf plaziert, ich gehe also davon aus das das Spawnarea verbuggt ist, wahrscheinlich werden die Flugzeuge nur ungenau gesetzt und kollidieren so öfters mit der Umgebung.
Leider funktioniert ja die Auswahl eines schon vorhandenes Flugzeuges mit Hilfe des Multiplayer Auswahl Dialog (noch) nicht korrekt.  :-X, sonst könnte man auf das Spawnarea verzichten, wär eh realistischer.
 

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #17 am: 17.Juni.2011, 19:13 »
Ja, wäre es, aber dann sind die Flieger ganz schnell verbraucht.

Ich teste ohne gesetzte Flugzeuge, setze maximale Fliegerzahl in der Spawnarea auf 1, hoste DF Karte und schaue wie oft ich erstellen kann, bis ich die Spawnplätze verlassen habe. Da komme ich bei Theville immer auf 14, der 15 spawnt nicht mehr auf den vorgesehenen Plätzen und auf der Rollbahn spawnen zählt nicht als Spawnplatz.  :P

Praktikabelste Lösung war bisher ein 3000x2000m großes Rollfeld zu bauchen und ein Flugplatz mit dem Radius 500m mit Spawnarea so an den Rand zu setzen, das alle am Rand des Rollfeldes spawnen, nicht im Kreis sonder in Reihe. So gibt es keine Kollisionen und es ist vorhersehbar. Die Flieger versuchen dann so nahe wie möglich an der Spawnarea zu spawnen können aber nicht auf den Kreis, weil dieser noch durch die virtuelle Rollbahn abgedeckt ist.

Das geht aber nur für menschliche Flieger.

Online FG28_Kodiak

  • il2bugtracker.com
  • Blasenteetrinker
  • *****
  • Beiträge: 1.427
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #18 am: 17.Juni.2011, 19:26 »
Wer sagt denn das man die Flugzeuge nicht durch ein Skript "wiederauferstehen" lassen kann  ;D

Offline SNAFU

  • Flugschüler
  • ***
  • Beiträge: 95
Re: Respawnen auf Flugplätzen, Anzahl der Flugzeuge
« Antwort #19 am: 17.Juni.2011, 19:39 »
Dann gibt her ;)