Banner left   Banner center   Banner right

Germanenglish Home · News · Diary · Screenshots · Documentation (Wiki) · Downloads · Guestbook · Forum

Home · Benutzer registrieren · Suchen · Statistik · FAQ · Benutzerliste

Zur Zeit online: keiner ausser dir

 X-Force - Fight For Destiny - Forum —› Spielsätze, Mods & Add-Ons —› Das Tagebuch des William Walker

Seite: << [1] ... [9] 10 [11] >>

Autor Mitteilung
verfasst am: 16.10.2011, 22:45
Registrierdatum: 01.10.2011, 15:10

 Beiträge: 51
vielleicht hilft das auch, hab mir das hydrokulturlab script mal durchgedacht...
hab deine for-schleife ausgeschrieben, und 4 separate einsatzgenerationen gemacht, half nicht,
ich hab die ausrüstunge der s-drohne gecheckt, half nicht.
ich hab das script aus der vorgängerversion von 0.917a02 kopiert, half auch nicht.
dann hab ichs aufgegeben...
hab schon fast das gefühl, es liegt nicht an diesem script, oder das script wird zu früh abgebrochen...
verfasst am: 19.11.2011, 00:06
Registrierdatum: 18.11.2011, 23:44

 Beiträge: 2
Nabend

Hab ein Problem bei den Bodeineinsätzen unter Version 0.917a03
Nach ca 1 Monat ig Spielzeit(04.02.2042) stürzt das Spiel ab und kehrt zum Desktop zurück. (Muss per Taskmanager geschlossen werden.)
Angefangen hatte das ganze beim 4. Gefängniss (2. mal Soldaten als Belohnung)
Der CTD lässt sich reproduzieren:
Nachdem ca 2/3 oder mehr der Feinde ausgeschaltet sind giebt es den CTD beim anklicken eines Feindes um auf diesen zu schießen.
Das gleiche passiert auch wenn ich den Einsatz abbreche und statdessen eine der 3 Forschungsstationen angreife.
Eine Neuinstallation und kopieren der Speicherstände haben nicht geholfen.
Betriebssystem ist Vista.

Exceptionklasse: String = EAssertionFailed
Seite: String = TBodenEinsatz
Exception an Adresse: Hex = $005FD1C7
Exception Message: String = Assertion fehlges (C:\XFQuellcode\v0917\game\source\components\GameFigureManager.pas, Zeile 543)
---------------------------------------------------------------------- --------------------
Stackdump, Textstart $00401240
Assertion fehlges (C:\XFQuellcode\v0917\game\source\components\GameFigureManager.pas, Zeile 543)
$005FD1C7
$005FD1C2
$005FDD40
$005FD337
$005D7A75
$005D767E
$005DA72B
$005DA7B2
$005BB9D5
$00635C8A
$00451E97
$00456A94
$00456152
$0042CA05
verfasst am: 19.11.2011, 00:47 · Edited by: Natter
Programmierer, allgemeines

Registrierdatum: 06.06.2004, 17:19

 Beiträge: 3186
Klingt wie 2463. Falls du einen Spielstand hast, wo das reproduzierbar ist, könntest du den vielleicht direkt ans Ticket anhängen?
verfasst am: 19.11.2011, 01:03 · Edited by: OnkelEku
Registrierdatum: 18.11.2011, 23:44

 Beiträge: 2
Danke schonmal für die schnelle Antwort.
Hab gerade nochmal den Fehler reproduziert und dabei auf den Munitionsstand geachtet. Da ist es beim automatischen Waffennachladen passiert,also ja, klingt wie 2463
Kann das mit den Munitonsgürteln zusammenhängen ?
Habe die gleiche Mission nochmal OHNE Munitionsgürtel gemacht, beim automatischen Waffennachladen gab es diesmal bei 2 Versuchen KEINEN CTD.
ps. wie und wo kann ich den save an´s "Ticket" hängen ?
verfasst am: 19.11.2011, 16:51
Admin, Spielsatz GalWar

Registrierdatum: 31.08.2005, 21:51

 Beiträge: 5595
Zitat: OnkelEku
wie und wo kann ich den save an´s "Ticket" hängen ?

Wenn Du im Mantis angemeldet bist, sollte es etwa in der Mitte der Seite (unter dem Text, vor den Kommentaren) einen Link/Button zum hochladen geben
verfasst am: 21.11.2011, 20:22 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Moin, habe den Walker eben mal angespielt auf normal. Was mich etwas stört sind die teilweise sehr großen Karten und das lange Gesuche von Gegnern. Auf Schwierigkeitsgrad normal finde ich, das da die vielen Gegner bischen zu sehr konzentriert an einer Position starten. Meist hängen die alle in einem Haus ab. Etwas iritierend sind auch die Zivilisten dazwischen, die man abknallen muss, bzw. wartet man wer weiss wie viel Runden, bis die von alleine umkippen, um Muni zu sparen. Was dann noch etwas störend war, ist der knappe Lagerplatz. Lagerplatzknappheit ist zwar ein interessanter Aspekt für Micromanagement, aber da dann die überschüssigen Gegenstände auf die Soldaten verteilt werden, wird das ganze dann eher ein am Interface vorbeigetrickse. Theretisch könnte man dann also bei Lagerplatzmangel einen Soldaten erwerben und denn ein wenig lagertechnisch zweckentfremden.

Ansonsten scheint der Walker aber recht interessant zu sein, wobei ich das Spiel auf normal aber definitiv canceln werde und es mir dann nochmal auf leicht angucken werde. Normal ist mir schon ein bischen zu unnormal. ;-)

Edit:

So auf leicht gefällt er mir schon etwas besser, nicht ganz so mit Gegnern überladene Gebäude. Wenn man das mit den sterbenden Zivilisten weiss, lässt man die halt einfach solange rumrennen, bis sie alle per script exekutiert wurden. Is aber dennoch bischen verwirrend.

Am Anfang kommt man etwas durcheinander, wenn man die Taktikbesprechung erforscht und dann mit einmal gleich 2 oder 3 Bodeneinsätze generiert werden. Habe jetzt im zweiten Versuch die Taktikbesprechung in der Forschung erstmal ignoriert und Gebäude geforscht, plus der Panzerfaust.

Grafikmässig ist im Bodeneinsatz ja schon schön was passiert. Alle Achtung. Der Forschungstekk scheint auch Spass zu machen, wobei dieser 3er Raketenwerfer (wahrscheinlich von der Flugdrohne) etwas iritiert mit Intelligenz 110). Bischen kunterbunt sind dafür die Gegenstände, wo man mal handeln kann, mal wieder nicht? Klar man passt sich spieltechnisch dann darauf an, aber trotzdem an mancher Stelle bischen strange.

Bodeneinsätze ist mir aber immer noch bischen viel Gesuche da, selbst auf leicht. Größe der Karte? Oder vielleicht doch die Sichtberechnung, das is aber dann kein Problem des Spielsatzes. Die Sichtberechnung könnte etwas großzügiger sein. Gerade wenn man sich spasseshalber mal vor einen einzelnden Baum stellt, wirft der doch ziemlich viel Schatten. Das dann mit der Kartengröße wird dann teilweise ein ziemliches Versteckspiel.

Bodeneinsätze sind nicht unfair, aber das taktische Element hält sich noch immer im Rahmen. Wenn da was von der KI noch passiert, dann könnte ich mir den Spielsatz schon recht fett vorstellen. So ist es halt das alte Suchen, genug Abstand halten und dann mit hoffentlich genug Schusspower ran und ausschalten Spielchen.

Crashes hatte ich keine. Fahr aber meine Grafikkarte in der Problembehandlung bei der Hardwarebeschleunigung 2 Stufen unter maximal. Glaube vorgestern, wo ich den Spielsatz schonmal kurz auf leicht angespielt hatte und noch volle Hardwarebeschleunigung an hatte, hatte ich doch nicht wenig Crashes. Ist aber kein Problem des Spielsatzes, glaube eher hat was mit dem Direct Draw zu tun und meinem System, was da Fehler nicht so gut abfängt. Ist halt ärgerlich wenn andauernd der Rechner hängt und nur noch der Griff zum Stromschalter hilft. Jetzt geht es aber. Vielleicht komme ich sogar noch eine Stufe Hardwarebeschleunigung ran?
verfasst am: 23.11.2011, 21:37 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Habe nochmal bischen weitergespielt hier.

Ist jetzt leider gecrashed, bzw. hat sich X-Force weggehängt und ich muste dann per Taskmanager killen.

Mein Fehler war ich habe den Peter Daan gekilled.
Peter Daans Fehler war, er stand im Weg.
Mein Fehler war, das ich nicht wusste, das das Peter Daan war.
Kreks sein Fehler war dann, das er den Peter Daan etwas auffälliger hätte gestalten können. (Xforce-Truppengrafik?)
Der nächste Fehler ist dann glaube, das das Game per Script nicht sauber beendet wird? [Mutmassung]
Der finale Fehler ist dann aber das eine Nicht behandelte Exception in X-Force ausgelöst wurde. Ein Errorlog wird zwar noch erstellt, aber dann hängt der Prozess nur noch. Übern Taskmanager lässt er sich dann aber noch beenden.

Kann den Fehler morgen nochmal reproduzieren zu versuchen.

Ansonsten noch ein bissel zum Spielsatz.

Bei meiner ersten Lagerhauskomplexmission wurde einer meiner Soldaten zwischen den Aliens gleich im Lagerhaus gespawnd. Keine Sorge er hats überlebt, auch wenn er danach eine nasse Hose hatte. War ein Lagerhaus mit nur einem Eingang und sehr lang. X-Force-Truppe startete da untenlinks, Lagerhauseingang war obenlinks, Lagerhaus selber war dann länglich aufgebaut nach rechts oben.

Wie schon vorher erwähnt, finde ich das Micromanagement der Lagerkapazität etwas übertrieben. Ich glaube es würde dem Spielsatz nicht wehtun, wenn man dem Lagerbauelement etwas mehr Kapazität gibt. Vielleicht statt 40 dann 60 oder sogar 80? Schließlich nimmt das Teil 4 Felder in Anspruch, 4 Felder Werkstatt haben zudem die gleiche Kapazität nur das da noch nebenbei jede Menge Techniker noch arbeiten dürfen.

Wo wir gleich beim nächsten Thema sind. Nach knapp 1 Woche Bolzen basteln, kommt dann wochenlanges Munition bauen (die, die man nicht kaufen darf, vom Standartgewehr) bis man dann irgendwann mit den Soldatengürteln anfangen darf. Alles andere zu bauen, geht entweder nicht, oder lohnt nicht, weil man es kaufen kann.

Das leitet gleich zum nächsten Punkt. "Alienmunition", also die, die die *g* irdischen Kräfte benutzen, darf man nicht bauen, aber kann man kaufen?

Abschließend noch zu den Werten des Sturmgewehr. Ich dachte das ist endlich mal was. (Ne gute Waffe, wo wir Muni übern Handel beziehen können.) Aber bei einer Munstärke von 9 waren das dann 4 Schuss auf einen Zivilisten und dafür muss man auch noch auf 2 Felder ran, um zu treffen. Das Ding haben wir oben in den Sandkasten gelegt. Da spielen jetzt unsere Kids mit rum. ;-)

Die einzige brauchbare Waffe scheint dann die Panzerfaust zu sein, also jede Menge Geforsche von "Alienausrüstung" die wir entweder gar nicht benutzen dürfen (Int 110), bzw. nicht nachbauen dürfen, weil es Alienausrüstung ist. Sollten wir das Glück haben sie einsetzen zu dürfen, ist sie dann immer noch Schrott. Faktisch wird hier nur geforscht, damit man sie entweder zu Geld machen kann oder halt recylcen kann, wobei ich jetzt gar nicht ausprobiert habe, ob ich die auch unerforscht hätte recylcen können.

Ansonsten aber weiterhin sehr interesanter Spielsatz, auch wenn er mir selbst auf leicht noch etwas zu bodenlastig ist, sprich jede Menge noch zu langweilige Bodeneinsätze, wobei das langweilig jetzt nicht auf die Bodeneinsatzgrafik bezogen ist. Die ist teilweise schon genial und macht Spass. Ist eher das schon im Vorpost erwähnte. Großzügigere Sichtberechnung. Nicht alle Aliens auf einen Haufen. GegnerKI.
verfasst am: 23.11.2011, 23:08
Registrierdatum: 22.08.2008, 15:51

 Beiträge: 403
Jaja, die GegnerKI. Die ist gerade mein Sorgenkind... Wenn die gelöst ist geht's mal ans tuning der Waffen.

Das Problem an den Gegnerüberfüllten Häusern ist der XForce interne Platzierungsalgorythmus, der nach Räumen und nicht nach der Karte vorgeht. Wenn mal die Gegner über die ganze Karte verteilt sind, geht das gleich ganz anders (habs intern schon mal mit einem Gerüst ausprobiert gehabt).

Mit der Lagerkapazität war es so gedacht, dass man halt nicht zum Sammler wird, aber es bedarf auch hier einer Änderung, keine Frage.

Mit dem Bau der "Alien"-Waffen gabs mal etwas, warum das so ist, wie es ist, kann mich aber grad nicht daran erinnern...

Achja, der arme Soldat im Lagerhaus war wohl ein Klick-Fehler von mir.
Danke fürs Feedback!
verfasst am: 24.11.2011, 20:32 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
lol

Dein Konzept bei der Rescue Peter Daan Quest must du echt überdenken. Diesmal stand der gute Mann draussen und ich dachte schon das wird leicht.

Leider löste meiner letzter Mann auf seinen letzten Schritt, den "tollen" Reaktionsmodus einer Wachdrohne aus, die dann erstmal dank Gratismove den Seitenausgang raus ist und auf einen total anderen Trooper meines Platoons geschossen hat, natürlich One-Hit-Kill. Normalerweise cheate ich ja nicht, aber bei diesen schwachmatischen Reaktionsmodus muss man einfach cheaten. So habe ich die Mission abgebrochen, um das ganze dann nochmal zu wiederholen. Hier treffe ich dann auf den nächsten Fehler. Die Mission ist weg. Peter Daan auch. Er ist nicht befreit wurden, aber es gab auch kein Gameover. Also entweder muss die Mission dann wiederholbar sein oder der Loosescreen sollte kommen. Sonst endet das Spiel wohl in einer Sackkasse.

Und ich sage es an dieser Stelle nochmal. Dieser Reaktionsmodus in der derzeitigen Form ist absolute Scheisse, das kann man nicht oft genug sagen. Reagieren und Schiessen ja, aber nicht den vollen Moonwalk da hinlegen. Und wenn schiessen, dann nur auf den auslösenden Soldaten bitte. Da hatte ich ja schon damals mal versucht, mit meinem alternative Reaktionsskript. Das ist jetzt aber keine Kritik auf den Spielsatz bezogen.

Du tüfelst ja sowieso schon mit den Alienkiscripten, vielleicht schaust dir mal meine alternative Reaktion da an? Das ganze müsste leicht sein zu koppeln, wenn man in der Scriptmaterie steckt, so wie du. Ich muss mich da erst wieder einlesen in die Sachen. Werde mir aber auf jedenfall deine KI-Scripte anschauen, sowie ich den Kopf dafür frei habe. Das Thema KI interessiert mich schon sehr und eure KI war mir damals schon ein Dorn im Auge.

Vielleicht kann man da was zusammen machen? Für ne Ki braucht man drei Dinge.

Input Memory Output

Input sind alle möglichen Werte, die man per X-Script auslesen kann.

Output alle möglichen Befehle, die man dann durchführen lassen kann, also Move und Shoot.

Memory oder ich sage auch gerne Brain sind dann globale Variablen, bzw. sogar globale Arrays(Listen) oder eine Möglichkeit eines Dateizugriffes(Streams) um größere Kapazitäten zum speichern zu haben und um evtl. später sogar länger "denkende" Strukturen, wie nur gerade den Moment zu erarbeiten.

Ich weiss jetzt nicht, was sich seit damals schon in Sachen KI getan hat, muss mir da erstmal ein Überblick machen, besonders welche Möglichkeiten man hat, an wertvolle Inputs zu kommen. Aufjedenfall würde es sich lohnen, alles in Zusammenhang mit KI, was Input bringt und was Output bewirkt irgendwo zentral zu sammeln. Sinnvoll wäre hier eine zentrale Script-Api in X-Script selbst aufgesetzt, die die entsprechenden Strukturen nochmal über eine Api schleusst, so das man später dann leicht auf Änderungen tieferer Strukturen reagieren kann. In dieser neuen rein scripttechnischen Ki-Api sollten dann auch die Sprachelemente, um einen globalen Memory (das Brain zu steuern) intregiert werden. Damit erzeugt man eine ganz neue Ebene, die sich nur noch auf KI spezialisieren kann.

Ein weiterer möglicher(nicht unmöglicher) Schritt könnte dann sein, das man das Model Bodeneinsatz abstrahiert. Man baut eine einfache primitive Testumgebung (egal in welcher Sprache) die den Input, Output und Memoryzustand dieser neuen Ki-api simulieren kann. Es ist derzeit einfach viel zu aufwendig, irgendwelche Änderungen im X-Script zu testen, kleinste Änderungen bedürfen dermassen viel rumgeklicke und gespeichere, bis man sie testen kann und darauf basiert eine komplexe Ki-Logik zu entwicklen bedarf dann Nerven aus Stahl und viel viel Zeit. Hier könte eine vernünftige Simulation (Abstraktion) des KI-Bodenproblems einen enormen Zeitfaktor bringen, so das man ganz andere Möglichkeiten hat, neue KI-Logiken zu testen.

Alles klar? :-)
verfasst am: 25.11.2011, 20:16
Registrierdatum: 22.08.2008, 15:51

 Beiträge: 403
Zitat: Kamor
Die Mission ist weg.

Du hast ein gutes Talent Bugs zu finden. Ist mir seit kurzem schon bekannt, ist ausgebessert und ich hatte gehofft, niemand kommt drauf:)

Zitat: Kamor
später sogar länger "denkende" Strukturen, wie nur gerade den Moment zu erarbeiten

Habs zwar noch nicht ausprobiert, aber es gibt mittlerweile die Möglichkeit Objekte als globale Variablen zu definieren. Ich hatte schon sehr früh die Idee, dass der Gegner eine Art "Most Wanted"-Liste aufstellt und dadurch bestimmte Soldaten bevorzugt angreift. Das ist ein Konzept, dass ich wieder aufgreifen will.

Zitat: Kamor
Nerven aus Stahl und viel viel Zeit

Jup, das ist ein Grund warum ich grad nicht viel machen kann.
verfasst am: 25.11.2011, 20:34 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Sodele weiter gehts. :-) Ich versuche mich gerade an den KI-Scripten, aber weitgehend nur theoretisch.

Habe mir mal ein bischen deine Logik für die Zivilisten angeschaut. Warum wählst du diesen umständlichen Weg mit den escapen und den Zivilisten killen?

Lass sie doch einfach rumlaufen, check bei jedem Enemykill doch lieber, ob jetzt alle gegnerischen Military-Einheiten eleminiert sind. Wenn das passiert ist, lass den Bodeneinsatz doch einfach beenden ohne die Zivilisten zu killen. Evtl. könnte man da sogar noch schnell die Zivilisten durchzählen und einen Bonus geben. Zusätzlich könnte man auch noch bei jedem Zivilistenkill einen Strafe berechnen, wenn gewünscht. Aufjedenfall wäre das verständlicher für den Spieler, wie die derzeitige Situation, wo da jede Runde ein Zivilist stirbt?
verfasst am: 26.11.2011, 08:37
Registrierdatum: 01.10.2011, 15:10

 Beiträge: 51
man könnte meinen du spielst schon in meinem spielsatz rum :D
ich überprüfe zB. zu jeder alienrunde, ob noch andere einheiten außer den zivis lebt.
wenn ja zähle ich die noch vorhandenem zivis, und töte diese.
die die noch hier überlebenden zivis von der am anfang generierten zivis differiert, gibt es noch zusätzlich strafgelder als spenden zu bezahlen, bzw, man kann, muss aber nicht, gibt dann halt konsequenzen. ;)
verfasst am: 26.11.2011, 12:00 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Zitat: ALKOHOL
man könnte meinen du spielst schon in meinem spielsatz rum :D


Kann man da schonmal reingucken?

So, endlich den Peter Daan befreit, auch wenn ich jetzt zum drittenmal eine groteske Situation erlebt habe, dank einiger Ungereimtheiten in Sichtberechung und Schußbahnberechung. Aber das ist ein anderes Thema.

Denoch komme ich hier dann auf einen Punkt, der mir schon vorher aufgefallen war und an dieser Stelle sich jetzt zuspitzt. Es kommt sehr häufig zu Situation, wo mir nach einer Aktion gleich mehrere Sachen freigeschaltet werden. Dies führt meist zur Verwirrung, gerade für den Neuling, der den Satz zum ersten mal spielt. So wird es meist dann nach Freischaltung erstmal ein Gesuche im Ufopädia, was jetzt neues passiert ist. Dann bin ich per Zufall im Lager über das neue freigeschaltete Teil gestossen, wo man wahrscheinlich den Computerhack mit machen soll. Das vom Hack weiss ich aber nur, weil ich da schon mal das KI-Script überflogen habe. Hier wäre doch ein Hinweis auf die Notwendigkeit dieses Ding zu bauen, um an weitere Daten zu kommen sehr hilfreich.

Dann noch etwas. Auch wenn es seine Vorteile hat, neue Ereignisse und die Geschichte in Ufopädiatekks zu verstecken, geht doch vieles unter und der Fluß wird zerstört. Hier könnte noch ein bischen mehr Info per Script kommen. Irgendwie habe ich den Hinweis, das ich so ein Datapad bauen soll, nirgends registriert. Das einzige war die Freischaltung in dieser Massenfreischaltungsequenz, wo ich aber noch nicht den Überblick hatte, was ich jetzt tun soll, weil die Infos ausm Ufopädia mir noch nicht bekannt waren. Irgendwo ein auffälliger Hinweis, das man so ein Teil bauen muss, bevor man dann mit dann die Stationen besucht. Wenn ich das jetzt nicht zufällig noch im Lager gesehen hätte, wäre ich garantiert ohne so ein Datapad losgezogen.

Edit: Ok den Hinweis mit den Datapad habe ich gefunden, auch wenn er erst in der Missionsbeschreibung kommt. Wollte dann mal die Cipherstation untersuchen. 4 Mann mit dem LKW hin auf leicht, leider funzt das nicht. Es kommt mehrere Male die Meldung "Nicht genug Spawnpunkte", dann die Meldung "keine zufälligen Spawnpunkte vorhanden" , dann der Enginehänger.
verfasst am: 26.11.2011, 18:55
Programmierer, allgemeines

Registrierdatum: 06.06.2004, 17:19

 Beiträge: 3186
Zitat: Kamor
4 Mann mit dem LKW hin auf leicht, leider funzt das nicht. Es kommt mehrere Male die Meldung "Nicht genug Spawnpunkte", dann die Meldung "keine zufälligen Spawnpunkte vorhanden" , dann der Enginehänger.

Dann ist dass Kartenskript fehlerhaft, siehe 2499.
verfasst am: 27.11.2011, 13:46 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Dachte ich poste das hier, ist zwar eine Ki-Situation aus meinen Testspielsatz, lässt sich aber auch auf deine Ki zurückführen.

http://s1.directupload.net/file/d/2721/jjbxzsfu_jpg.htm

Dies scheint eines der Kernprobleme zu sein, bei der KI. Wenn man als Zielpunkt eine andere Einheit angibt, steuert die Methode

TGameFigure.MoveNextTo(TargetPoint: TPoint): Boolean;

in bestimmten Situationen immer das markierte Feld C (rechts, leicht unterhalb des eigentliches Ziels) an.

Mit den wahrscheinlich unsauberen Tiles im Bodeneinsätzen
siehe hier
http://www.xforce-online.de/forum/index.php?action=vthread&forum=4&top ic=3054

würde ich das zu den Fundamentproblemen der derzeitigen KI zählen. Diese Probleme gilt es erst mal zu eleminieren, bevor man komplexere Logicstrukturen darauf setzt.
verfasst am: 27.11.2011, 14:18
Admin, Spielsatz GalWar

Registrierdatum: 31.08.2005, 21:51

 Beiträge: 5595
Ja, da wählt der Befehl definitiv den falschen Weg.

Das liegt aber zu einem guten Teil daran, dass es momentan kaum möglich ist, die Kartenstrukturen überprüfen zu lassen.
Eventuell sollte man als interne Subroutine des Befehls die benötigten ZE zu allen vier Nebenfeldern des Ziels prüfen und dann das Nebenfeld mit der geringsten ZE tatsächlich als Ziel ausführen lassen.

Genaueres dazu muss aber Natter sagen, der kennt sich im Bodeneinsatz besser aus als ich...
verfasst am: 27.11.2011, 15:17 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Habe diese Situation nochmal weiterrecherchiert. Ich dachte erst, es hängt damit zusammen, wie mein Soldat steht. Aber das ist gar nicht wichtig.

Die Funktion

TGameFigure.MoveNextTo(TargetPoint: TPoint): Boolean;

steuert generell bei einem besetzten Ziel, ein alternatives Feld an und dieses unbeabsichtig der jeweilen Situation.

Den internen Algorhtmus

"Wenn Zielfeld blockiert ist, versuch mal rechts daneben, und wenn das auch besetzt, dann im Uhrzeigersinn vielleicht das nächste Feld? oder so ähnlich ..."

müsste dort komplett weg.

Einfach auf das angegebene Ziel laufen lassen, egal ob blockiert oder nicht. Sollte die KI dann vor einem blockierten Feld stehen, dort einfach stehen bleiben und ein Ziel erreicht triggern. Geht wahrscheinlich nicht so einfach, weil der Pathfindalgoryhtmus nur agieren kann, wenn Start und Zielfeld frei sind. Evtl. hier noch eine "Zielfeld forcen" Logik einbauen, egal was dort ist?

Alternativ kann man noch versuchen auf Scriptebene die Situation zu vermeiden ein Feld anzulaufen, wo besetzt ist.
Ich versuche mal per Script da was zu mogeln.

Dennoch ist eine Routine, der man angibt, bitte lauf genau dort hin, die dann aber meint, ne das Feld ist besetzt, du gehst jetzt da hin, nicht wirklich eine gute Grundlage für ne vernünftige KI-Gesamtlogik.
verfasst am: 27.11.2011, 15:19 · Edited by: Natter
Programmierer, allgemeines

Registrierdatum: 06.06.2004, 17:19

 Beiträge: 3186
Hmm, das ist wirklich ungünstig. Wobei MoveNextTo auch erstmal für Nahkampfeinheiten gedacht war (Hab ich im Smirkovich gebraucht), nicht zum verkürzen auf Schussreichweite - das ein benachbartes Feld gesucht wird, ist also der eigentliche Sinn der Methode. Vermutlich lässt sich der Befehl etwas optimieren, da derzeit glaube wirklich nur solange zufällig eine benachbarte Position probiert wird, bis ein Weg gefunden wurde - das muss dann natürlich nicht der kürzeste sein.
verfasst am: 27.11.2011, 19:01 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
Weiss nicht, ob du da intern ne Möglichkeit hast die Wegfindung theoretisch nur ein Feld ausführen zu lassen?

Frei nach dem Motto:

wenn A nach B gehen soll
lasse B ein Feld nach A gehen(nicht ausführen)
dieses Feld müsste dann eigentlich eine sehr optimale Position für das MoveNextTo Ziel sein.

Scripttechnisch habe ich das jetzt so gelöst, das ich immer nur ein Feld gehe (überReservedTimeUnits) und dann jedesmal checke, ob ich jetzt schiessen kann. Damit habe ich zumindest die Situationen, wo die Ki auf freiem Gelände erstmal an mir vorbeiläuft im Griff. Die Situation im Screenshot habe ich damit aber noch nicht wirklich abgefangen.
verfasst am: 04.12.2011, 00:18 · Edited by: Kamor
Registrierdatum: 20.07.2005, 00:01

 Beiträge: 203
So hier auch mal.

Du solltest alle deine
this.Viewto(NearestEnemy.GetPosition);
durch
this.ShootToUnit(NearestEnemy, stNichtSchiessen);
ersetzen. in Bezug auf diesen Beitrag http://www.xforce-online.de/forum/index.php?action=vthread&forum=4&top ic=3054 Ich muss das ganze zwar nochmal etwas genauer testen, aber meine Tests in den letzten 5 Minuten mit dem ShootView waren bei weitem besser vom Ergebnis, wie meine 2 Tage langen Tests und Versuche mit dem Viewto. Edit: Habe das ganze noch optimiert, weil Nichtschiessen doch noch auslöst, wenn ein Gegner gesehen wurde.
procedure viewto(Figure : TGameFigure ; FigureLookAt : TGameFigure);

begin
  // thisUnit.ViewTo(NearestEnemy.GetPosition);
  // viewto ist mangelhaft, da er nicht sofort ausgeführt wird
  // deshalb ein workaround mit ShootToUnit(NearestEnemy, stNichtSchiessen);
  // da shoot aber schiesst, wenn ziel in sicht, das erstmal abfragen

  if (Figure.CanSeeUnit(FigureLookAt)=false) then
  begin
    Figure.ShootToUnit(FigureLookAt, stNichtSchiessen);
  end;
end;

Seite: << [1] ... [9] 10 [11] >>




Du musst dich registrieren um auf dieses Thema zu antworten.
Login :: » Name » Passwort

Ladezeit (sec.): 0.019 · Powered by miniBB 1.6 with parts of 1.7 © 2001-2003