Das Forum ist read-only und nur noch zu Archivzwecken vorhanden. Neue Benutzer werden nicht mehr freigeschalten.
Benutzt bitte unser aktuelles Forum: http://www.battle-planet.de/pbp/main/forum_neu.php
Habe mir gerade die neue Funktion der LUA-Implementation in ASC angesehen. Das sieht wirklich interessant aus und wenn Martin an bestimmten Punkten im ASC-Code die Implementation von LUA-Sripten einbaut ist sicherlich einiges von den Ideen umsetzbar (Lua-Sripte die z.B. weitere Buttons für die Einheitenmodi in die Funktionsleiste einfügen).
Nein, dieses Jahr schon meinen Urlaub verplant und leider nicht an dem WE wo das Treffen stattfindet. Daher hier mein ausführlicher Vorschlag. Ggf. kann ich ja per Telefonzuschaltung oder ICQ Abends "dazukommen" um die Ideen etwas zu erleutern.
c) der sicherlich komplexeste Part folgt nun: Bisher kennen wir grob zwei Modi, in denen sich Einheiten befinden können: Normal und ReactionFire. Eine Erweiterung könnte ich mir wie folgt vorstellen:
VehicleType { ...Abstract = true ...ID = 40006
...UnitMode { ......Type = [ normal auto switch ] ......cant_do = [ move attack defend self_repair repair refuel rearm ... (all_abilities) ] ......cant_be = [ detected:radar shot_at ... ] ......auto_condition = damage:xx ......auto_action = destroy_armor:xx auto_repair:xx ......switch_action = add_visibleif:xxxxxxxxxx add_detectionmethod:xxxxxxxxxx move_limitation:xxxxxxxx:xxx ......unswitch_action = [eigenschaft]:reset ...} UnitMode } VehicleType --------------------------------- Was soll man nun damit machen können? Am Beispiel von Reactionfire sähe die Definition so aus: ...UM_ReactionFire { ......// Art des Modus: wird durch Userklick ein und ausgeschaltet ......Type = switch ......// Grafiken des Menübuttons werden definiert ......Buttons { .........Normal = RF_Normal.pcx .........Active = RF_Active.pcx .........Clicked = RF_Clicked.pcx ......} Buttons ......// wenn die Einheit in diesem Modus ist kann sie folgende Dinge tun: ......cant_do = move self_repair move_after_shooting ... etc. ......// was mit der Einheit geschehen kann, wenn sie in diesem Modus ist: ......cant_be = [ .........detected = radar lidar eyesight ... etc. .........shot_at = true ......... ... .........//usw. was wir alles definieren wollen .........] can_be ...} UM_ReactionFire
Ein neuer Status wäre z.B. "Sinking" bei Schiffen: ab einem festgelegten Beschädigungsgrad erhält das sinkende Schiff pro Runde automatisch weiteren Schaden dazu und sinkt demnach nach weiteren x Runden, wenn es nicht repariert wird: ...UM_Sinking { ......// erscheint nicht als Userbutton, sondern ASC setzt die Einheit in diesen Modus wenn eine bestimmte Begebenheit eintrifft: ......Type = auto ......Buttons { ......} Buttons ......// die Einheit kann in diesem Zustand folgendes tun: ......cant_do = attack defend repair refuel rearm ......// und folgendes kann mit ihr passieren ......cant_be = ......// wenn damage > 80% dann switche in diesen Modus ......auto_condition [ .........damage = 80 ......] auto_condition ......; was passiert in diesem Modus: pro Runde werden 5% Panzerung zerstört ......auto_action [ .........destroy_armor = 5 ......] auto_action ...} UM_Sinking
So könnte man z.B. einen Modus einfügen "Selbstreparatur". Dies wäre eine User-Button-Aktion. Wenn eine Einheit in diesen Modus versetzt wird, könnte sie z.B. kein RF mehr durchführen, oder sich nicht mehr Bewegen. Was auch immer man definieren will.
Ein weiterer neuer Modus wäre zum Beispiel: cloak (man denke an klingonische Schiffe): ...UM_Cloak { ......Type = switch ......Buttons { .........Normal = Cloak_Normal.pcx .........Active = Cloak_Active.pcx .........Clicked = Cloak_Clicked.pcx ......} Buttons ......cant_do = move ascend descend ......cant_be = ......// die Einheit würde in diesem Modus nicht mehr durch Radar oder etwas anderes zu Entdecken sein: ......switch_action { .........remove_visibleif = radar lidar eyesight sonar ......} switch_action ......// was wieder zurück gestellt wird ......unswitch_action { .........add_visibleif = radar lidar eyesight sonar ......} unswitch_action ......// Alternativ kann man natürlich auch den Sichtbarkeitsmodus "nur" ändern: ......// wenn es einen DetectionMode "cloak" gäbe könnten nur diese Einheiten die ......// die Einheit hier im Cloak-Modus noch sehen !!! ......switch_action { .........remove_visibleif = radar lidar eyesight sonar .........add_visibleif = cloak ......} switch_action ...} UM_Cloak
Oder ein weiterer neuer Modus: Überwachung: ...UM_Surveilance { ......Type = switch ......Buttons { .........Normal = Cloak_Normal.pcx .........Active = Cloak_Active.pcx .........Clicked = Cloak_Clicked.pcx ......} Buttons ......cant_do = ......cant_be = ......// wenn im Überwachungsmodus, dann werden bestimmte Attribute verändert: ......switch_action { .........move_limitation { ............medium_level_flight = 20 ............high_level_flight = 20 .........} move_limitation .........DetectionMethod01.Range = 120 ......} switch_action ...} UM_Surveilance } VehicleType ------------------------------------ Eine Einheit kann sich immer nur in einem Modus befinden. Normal ist der Standardmodus. "Auto" sind Modi welche bei bestimmten Bedingungen automatisch aktiviert werden. "Switch" sind Modi die der User auswählen kann. Befindet sich eine Einheit in einem "Auto"-Modus können keine der Switch-Modi angewählt werden. ------------------------------------ VehicleType { ...Id = 10000
========================================== Beispiele: Einheit A ist eine Bodentruppe, Einheit B eine Radareinheit die keine Bodentruppe sehen kann, Einheit C ist ein Panzer, welcher Bodentruppen sehen kann ==========================================
VehicleType { ...// Bodentruppe ...ID = 10000 ...// kann Bodeneinheiten und Infanterie sehen ...NumberOfDetectionMethods = 1 ...// kann 2.2 Felder weit blicken mit Stärke 18, Stärke bleibt konstant ...DetectionMethod01 { ......Name = eyesight ......Range = 22 ......Strength = 18 ......Decreasing = 0 ...} DetectionMethod01
...NumberOfCamouflageMethods = 0
...// kann gesehen werden durch "Blickkontakt" ...Visible_If ->* VehicleType.VI_Infantery } VehicleType
VehicleType { ...// Radareinheit ...ID = 10001 ...// kann Bodeneinheiten sehen ...NumberOfDetectionMethods = 1 ...// kann 4.6 Felder weit blicken mit Stärke 46, Stärke abnehmen um 10 pro Feld ...DetectionMethod01 { ......Name = radar ......Range = 46 ......Strength = 46 ......Decreasing = 10 ...} DetectionMethod01
...NumberOfCamouflageMethods = 1 ...// so sähe ein JamsOnlyOwnField mit Stärke 80 aus ...// man beachte, dass diese Einheit durch Radar nur schlecht zu sehen ist, jedoch ...// durch direkten Blickkontakt entdeckt werden kann ...CamouflageMethod01 { ......Name = jamming ......Works_against = radar lidar ......Range = 10 ......Strength = 80 ......Decreasing = 0 ...} CamouflageMethod01
...// kann gesehen werden durch "Blickkontakt" und "Radar" ...Visible_If ->* VehicleType.VI_GroundUnit } VehicleType
Ein paar Ideen von meiner Seite, hauptsächlich programmseitiger Natur:
a) Erweiterungen in den ASCTXT-Dateien bzgl. des Handlings wie Sound einer Einheit zugewiesen wird nach folgendem Muster: ----------------------------- VehicleType { ...Abstract = true ...ID = 40004
...} UnitSound } VehicleType ----------------------------- Ziel: Erweiterung und Diversifizierung der Soundgeräusche. Wird direkt in der Einheit-asctxt benutzt.
Erweiterbar auch für Waffengeräusche: ----------------------------- SoundType { ...Abstract = true ...ID = 40005
...WeaponSound { ......Name = (für Identifikation wie bei TECHADAPTERN) ......File = xxx.mp3 ...}WeaponSound
} SoundType ----------------------------- Bei der Waffe wird dann als Waffenname = *Name_wie_hier* angegeben, und das passende Geräusch wird abgespielt.
Oder für Objekte/Gebäude: ----------------------------- BuildingType { ...Abstract = true ...ID = 40005
Im vergangenen Zyklus sind wir durch unbekannte Einheiten angegriffen worden. Diese Truppen wurden jedoch schnell mit vereinten Kräften der SY-Allianz vertrieben. Es stellte sich jedoch nun heraus, das der Angriff nur ein Vorwand war eine Biogene Waffe auf Zdum zu testen.
Nachdem sich die feindlichen Truppen von Zdum zurückgezogen hatten wurde die Königin unseres Stocks schwer krank und es war lange unklar ob sie überleben wird. Glücklicherweise konnten unsere Wissenschaftler den Bazillus als eine modifizierte Art eines irdischen Bakteriums identifizieren (Kryptosporidien) und ein Gegenmittel entwickeln. Die Königin ist nun wieder gesund und hat die Leitung der Kolonie wieder übernommen.
Unklar ist noch, warum die Königin des Hauptstamms der Termiden nicht durch dieses Bakterium infiziert worden ist. Weiterführende Untersuchungen haben ergeben, dass das Bakterium offensichlich mit einem genetischen Code versehen ist und spezifische Ziele angreifen kann. Die möglichen Auswirkungen dieser Entwicklung sind haarsträubend und wir werden beim Rat der ISG beantragen, dass biogene Waffen verboten werden.
auf http://www.the-blueprints.com gibt es eine Menge 3D-Modelle und Zeichnungen von Panzern aus der Vogelperspektive. Für Einheitenersteller ne mittelschwere Fundgrube... .
Fehlalarm. Mein interner Mailfilter für Savegames hat nicht mehr funktioniert und die Mails sind schlicht und einfach in einem anderen Ordner gelandet.
Wer könnte sich vorstellen während des Treffens ein kleines Turnier zu spielen?
Karten sollten sich in 10 bis 20 Runden spielen lassen und in ca. 15 Minuten pro Zug spielen lassen. Nur Duelle, max. 8 Teilnehmer im KO-Modus.
Die ersten 8 bekommen den Zuschlag. Karten erstelle ich. Gespielt wird mit dem Favorisierten Set. Wenn ihr euch also anmeldet, schreibt bitte euer Favoritenset dazu. Erlaubt sind: MK1, MK3, MK4, SY, Marlaner.
Gezockt wird auf den mitgebrachten Notebooks; ein Funknetz für Internetanbindung bzw. USB-Sticks zum Austauschen der Spielstände ist/sind vorhanden.
Übernachtungsmöglichkeiten können über http://www.meinestadt.de gesucht werden. Als Stadt bitte "Bad Oeynhausen" eingeben. "Löhne" bringt nicht so viel, da diese Pensionen hauptsächlich auf der entfernten Seite vom Löhne liegen. Eine Karte sollte dann etwa so aussehen ;o)
Wie ihr seht liegt alles recht nah zusammen. Auch euch ggf. vom Bahnhof abholen (Hauptbahnhof Bad Oeynhausen, nicht Löhne !!!) stellt kein Problem dar.
Die meisten Einheiten können nach einem Schuss nicht weiter bewegt werden (NMAS: no_move_after_shot also das Gegenteil von MAM); ebenso können andere Einheiten nach einer Bewegung nicht mehr schießen (NSAM: no_shot_after_move auch Unit_Cannot_Shoot_after_Move genannt).
Vorschlag: die jeweilige Funktion sowohl für NMAS als auch NSAM gilt immer nur für eine Runde. Warum hier nicht die Funktion erweitern und den jeweiligen Status für mehr als eine Runde aufrecht erhalten? Als Vergleichsbeispiele eine Artillerie und ein Schienengeschütz: aktuell können beide eine Runde nicht schießen, das Schienengeschütz hat aber mehr Durchschlagskraft und höhere Reichweite - daher in der Produktion sehr teuer. Für PBP könnte man sein Schienengeschütz billiger in der Produktion gestalten wenn es z.B. 2 oder 3 Runden bräuchte um schussbereit zu sein.
Als neue Option käme NSAS dazu: no_shot_after_shot - sprich: hat die Einheit 1x geschossen braucht sie x Runden um wieder schießen zu können.
Wie Gamer geschrieben hat gibt es kurzfristig nur die Anpassung der Produktionskosten bzw. die Idee von Marla Jamming nicht zu addieren ist ebenfalls eine gute Idee (wird dann Aufklärung auch nicht mehr addiert? Hmmm, würde auf eine zweite Überlegung hin das Gameplay wohl zu drastisch ändern... .
Für ein ASC3 oder welches Release auch immer fänd ich die "Einheit-ist-nach-Beschuß-Sichtbar" gar nicht so verkehrt. Neue taktische & strategische Möglichkeiten ;o)