Der elseif Block der Bastardschwert2h abfrage befindet sich in dem if Block der Basardschwert == 0 abfragt das bedeutet ungefähr: If Bastardschwert == 0 && Bastardschwert == 1.
Das könnte es sein.
Druckbare Version
Der elseif Block der Bastardschwert2h abfrage befindet sich in dem if Block der Basardschwert == 0 abfragt das bedeutet ungefähr: If Bastardschwert == 0 && Bastardschwert == 1.
Das könnte es sein.
Echt? Genau so? :confused: Also dann bin ich im Moment auch überfragt.
Tut mir leid. Aber im Fall des Falles würde ich dann auf die alte Variante zurückgreifen bevor wir hier lange herumspekulieren.
Ja, wäre wohl besser. ;)
Wegen dem zu starken Schwert...ich glaub' ich mache da eine kleine Mini-Quest draus...
...habe aber wieder eine neue Frage. Und zwar will ich dem Spieler per Skript eine bestimmte Menge an Mana bzw Leben abziehen. Wie geht das?
Wenn du einen bestimmten Wert meinst, dann ist wohl ein per Script gecasteter spell die beste Lösung.
Wenn du einen Anteil in Prozent meinst, müssen wir uns ein nettes Script überlegen. (Aber ch frag lieber nochmal genau nach, damit ich mir nicht umsonst soviel Arbeit mache ;) )
Sagen wir mal 20 Mana, kein prozentualer Wert.
Habe übrigens wieder ein neues Problem. Ein Skript enabled einen Gegner, der allerdings brav stehen bleiben soll bis der Spieler in seine Nähe kommt und erst dann angreift. Das mit dem Angreifen funktioniert auch, aber anstatt stehen zu bleiben latscht der Gegner quer durch den Raum und bleibt erst an der gegenüberliegenden Wand stehen. Die Wander-Packages unter AI habe ich entfernt, das kann's also nicht sein...
Überprüf mal die Pathgrids
Direkt unter der Stelle, an der der Gegner enabled wird, habe ich extra einen ganzen Batzen an Pathgrids aufeinandergeklebt, aber es nützt nichts.
Hat der Gegener vielleicht noch ein altes Script dranhängen?
Nein, kein Script. Kein Script, keine AI, da ist eigentlich nichts was ihn dazu veranlassen könnte.
Das kuriose ist, er latscht sogar unbeschwert durch den Raum wenn man ihn bei Movement auf 'None' gestellt hat.
http://www.multimediaxis.de/images/s.../1/gruebel.gif Humpf!... Das ist dann wohl ein AI-Fehler. Einer von der Sorte der durch irgendwas ausgelöst wird, mit dem man ihn niemals in Verbindung bringen würde.
Um es mit den Worten von...irgendsoeinem Bethedamitarbeiter zu sagen:
You move something here and it moves something over there.
Ich weiß wirklich nicht weiter. meine Lösung für solche Probleme ist meist: nochmal machen. Also den Gegener, aber am besten mit einer anderen Basis sofern du einen alten kopiert hast.
Okay, mal sehen, irgendwie wird's schon...kommen wir also mal zum 20-Mana-absaugen-Script zurück.^^
Du brauchst einfach eine Eigenschaft mit Schaden Intelligenz oder Schaden: Magicka, die Du dem Spieler im richtigen Moment auf den Buckel hext. :D
Mit Player.AddSpell "IDDerEigenschaft".
Gibt es da keine andere Möglichkeit?
Auf diese Weise wird nämlich der erlittene Schaden durch Resistenzen/Willenskraft verringert bzw völlig abgeblockt. Davon abgesehen ist das generell etwas unpassend - ich plante nämlich, einen Zauberstab zu machen, der anstelle von Ladungen Mana benötigt. Also bei jedem Schuss eine bestimmte Menge an Mana abzwackt.
Leider nicht, von den Set/ModAv-Funktionen würde ich die Finger lassen. Ohne OBSE wird sich da kaum etwas anderes machen lassen.
So ein Mist aber auch...ernsthaft, langsam will ich wieder mein gutes, altes Aurora Toolset zurück...damit hatte man wenigstens immer die volle Kontrolle über das Spiel, auch wenn's teilweise sakrisch kompliziert war.
Mit ModAv habe ich auch schlechte Erfahrungen gemacht, das hat zwar an für sich prima funktioniert, allerdings konnte man sich früher oder später weder mit Rasten noch mit Zaubern noch mit Tränken heilen.
Zu deinem Gegner:
Gib dem Mal ein Energy-Level von 0 . Erste Zeile da wo du die Packages gelöscht hast.
Begin ON WhateverZitat:
Und zwar will ich dem Spieler per Skript eine bestimmte Menge an Mana bzw Leben abziehen. Wie geht das?
short PCManaDrain
set PCManadrain to player.getbaseav magic
if PCManadrain >= 20
cast LazarusEvilManaDrainSpell player
endif
end
und dein LazarusEvilManaDrainSpell zieht dann Magie ab.... einfach über das Zauber Menü... nen Zauber machen..
<- würde ich nur mit nem Timer einbetten (der beginnt onGame mode während der obere Script teil dann bei 0 seinen Zauber ausführt) der für die Länge des Zaubers gilt...
;)
Gruß
Ryan
Danke, werde ich mal ausprobieren. Aber wie gesagt, afair wird die abgezogene Menge an Mana durch Resistenzen/Willenskraft reduziert.
Gibt es da wirklich keine Skript-Möglichkeit? Wenn man den Mana-Wert auslesen kann, dann müsste man ihn doch auch verändern können...
Das funktioniert leider schonmal nicht.
Du willst mir erzählen, dass ein NPC mit Energy-Level von 0 und einem AI-Package mit "StayatEditorLocation" durch die Gegend wandert???????? Niemals. ;)
Oder versuch mal das EditorLocation ;) <- vielleicht hast du ja nur "Currtent" an....
Und wenn du mir jetzt wieder sagt: Nein, Ryan du Pflaume der läuft immer noch... dann nimm mal ein Savegame wo du nicht in der Zelle bist und lauf dann mal rein.... und wenn du dann behauptest der mache das immer noch.... dann schick mir das bitte... das will ich mit eigenen Augen sehen bevor ich das glaube....
Ich verstehe das jetzt nicht... das ist doch ein Script... was willst du denn da jetzt noch? Ist doch schnuppe wie die Mana-Menge sich reduziert... du musst doch nur den Zauber der nichts bewirkt halt die entsprechende Menge kosten lassen.... dann "verbraucht" es Mana....Zitat:
Danke, werde ich mal ausprobieren. Aber wie gesagt, afair wird die abgezogene Menge an Mana durch Resistenzen/Willenskraft reduziert.
Gibt es da wirklich keine Skript-Möglichkeit? Wenn man den Mana-Wert auslesen kann, dann müsste man ihn doch auch verändern können...
Gruß
Ryan
StayatEditorLocation? Was für'n Teil?
Das Viech ist auch dann noch fröhlich durch die Gegend gewandert als ich Movement auf None gestellt hatte...ist übrigens eine Kreatur, kein NPC.
edit: habe mal einen alten Spielstand geladen als ich die zelle noch nicht betreten hatte. Der einzige Unterschied ist, dass die Kreatur nun sofort losläuft sobald sie enabled wurde, sonst hat das immer 'ne kurze Weile gedauert.
Was für'n Teil?²
Ach so meinst du das...dummerweise lässt sich der Spieler nicht per Skript dazu zwingen, einen Zauber zu sprechen. Das funktioniert nur mit Kreaturen und NPCs.
Das ist ja interessant...mit diesem Package läuft das Viech los, zur nächsten Wand, bleibt kurz stehen, dreht sich um, läuft zurück und stellt sich genau da hin wo ich ihn ursprünglich haben wollte/im CS platziert habe.^^
edit: er läuft aber auch erst dann los, wenn man in die Nähe/Sichtweite kommt. Bleibt man einfach im Nebenraum stehen, greift er auf einmal an, obwohl er laut Script eigentlich erst angreifen sollte, wenn man einen bestimmten Trigger auslöst.
Übringens, ich habe verhindert dass er angreift, indem ich seinen Personality-Wert auf 255 gestellt habe - aber der übliche Weg ist das nicht, oder? ;)
Tja, dann frage ich mich wie Beth das im Ori-Spiel geschafft hat ;) ... versuch es doch einfach mal... und dann diskutieren wir ob es wirklich nicht funzt...Zitat:
Ach so meinst du das...dummerweise lässt sich der Spieler nicht per Skript dazu zwingen, einen Zauber zu sprechen. Das funktioniert nur mit Kreaturen und NPCs.
So zum NPC:
Du nimmst jetzt das Ori-Ai-Package AAAStayatEditorLocation... Nix mehr sonst (die StayatCurrentLocation haben ein Interior dabei mit nem Wert von 256)... ist das eine unique Kreatur? Wenn ja! Super... gib der einen Agression-Wert von 10 (bis 30 kannst du) kein Fraktionen und in den Trigger welcher onTrigger Player haben sollte weil ansonsten alles (auch Marker) diesen Trigger auslösen... RefKreatur.startCombat Player ... ich empfehl dir gleich das CS für Dummies wenn du so weitermachst...lol ;) *chichichi
<- Gerade sowas hab ich in RoR gemacht... und es funzt... lol ;)
Gruß
Ryan
Edit: Nur für den Fall, nicht das an der KReatur ein Script hängt... du hast irgendwo was ganz pissiges falsch eingestellt oder übersehen, deswegen komme ich damit...
Stimmt, hast recht, funktioniert schon. Allerdings frage ich mich ob das auch so toll ist, jedes mal, nachdem man mit dem Stab geschossen hat, noch den 'Ich-zieh-dir-Mana-ab-Spell' zu zaubern...^^
Wie auch immer, das mit dem wanderlustigen Gegner funktioniert jetzt. Also abgesehen davon, dass er immernoch kurz durch die Gegend spaziert bevor er zu seinem Ausgangspunkt zurückkehrt und sich brav hinstellt. Kann man aber eigentlich sogar so lassen...abgesehen von den Schritten dürfte der Spieler davon nichts mitbekommen. Notfalls lege ich ihm per Script einen schweren Gegenstand ins Inventar, damit er sich nicht mehr bewegen kann.^^
lol... ja so würde ich das und jeder andere auch machen.... lol... ;) Du hast aber auch keine blauen Pathgrids da verlegt und der NPC schwebt auch nicht beim Enablen in der Luft? Und du guckst auch immer schön mit nem Speicherstand BEVOR du in der Zelle bist... denn ansonsten kriegst du von deinem Save-Game ein ständiges Dejavu vorgespielt... <- das nimmt die Veränderung nämlich dann nicht an ...Zitat:
Notfalls lege ich ihm per Script einen schweren Gegenstand ins Inventar, damit er sich nicht mehr bewegen kann.^^
Joa. Bis er nix mehr hat, ne. Du bist auch ne Marke da kommst du mit so einer neuen Info... also Player hat Stab... hubdidu... Zaubert... verliert Zwanzig Mana... und das war es? So soll das aussehen? Immer wenn er mit dem Stab zaubert? Oder nur ein einziges Mal? ... ;) .....Zitat:
Allerdings frage ich mich ob das auch so toll ist, jedes mal, nachdem man mit dem Stab geschossen hat, noch den 'Ich-zieh-dir-Mana-ab-Spell' zu zaubern...^^
Gruß
Ryan
Keine blauen Pathgrids und Zelle zum ersten mal betreten.
Zum Test kann ich den Gegner auch nochmal neu einfügen, vielleicht bringt's ja was.
Der Stab soll irgendeinen mehr oder weniger stinknormalen Zauber ausspucken - aber eben anstelle von Ladungen Mana verbrauchen. Und ja, bei jeder Benutzung. ;)
Ja, dann muss die Script-Line an den Stab und ... öhhhhhhhhhhhhhhhhh.... öhm... nicht onuse.... sonder... On Activate? Sowat halt... ist nur die Veränderung des Begin Blocks... und wenn das einmal durchläuft mit z.B. doonce dann müsste er es bei jedem abwurf eines Feuerballes oder was auch immer seine Scriptline runterrasseln... joa...
Und Gegner auch nicht in deR Luft? Wenn du die nämlich auf den Boden fallen lässt suchen die sich DAS NÄCHSTE Pathgrid von ihnen Entfernt (also nicht das unter ihnen) und laufen da hin.... ;)Zitat:
Keine blauen Pathgrids und Zelle zum ersten mal betreten.
Gruß
ryan
Nein. Erfahrungsgemäß werden Gegner auch nur beim nächsten Pathgrid enabled, ganz egal ob in der Luft oder nicht. Deshalb habe ich unter den Füßen von einigen wenigen Exemplaren nen' ganzen Batzen an Pathgrids druntergeklebt. Damit sie nicht auf die Idee kommen, ein paar Meter daneben zu spawnen. Und ja, alle schön ordentlich, Fehler dürfte es dadurch also keine geben. ;)
Hm,
sind da vielleicht andere NPCs in der Nähe. Vielleicht will er ja nur ein gepflegtes Pläuschchen halten und merkt gar nicht, dass er da eine Wand dazwischen hat.:confused:
EDIT: Eine Creature? Gut, dann kann er natürlich kein Pläschchen halten, auch wenn er es noch so gern wollte.
Gibt es eine Möglichkeit, zu verhindern, dass einem bestimmten Gegner die Waffe aus der Hand geschlagen wird?
Wenn du einen OnDeath befehl ausführst läuft dieser bevor die Waffe als WorldObject erscheint. Das heißt, wenn der Gegner stirbt, kannst du einen RemoveItem Block durchführen und dann einen AddItem dann hat er die Waffe wieder im Inventar, aber halt nicht ausgerüstet.
Ich glaube du hast mich falsch verstanden, ich will verhindern dass der Spieler dem Gegner während des Kampfes die Waffe aus der Hand schlagen kann(Perk, den man ab Waffenskill Stufe 50 bekommt). ;)
Oh, wenn du ihm Geschicklichkeit 100, Waffenskill 100 u.s.w gibst dürfte sich die Chance auf einen sehr, sehr gerigen Wert reduzieren.
Naja, gestern konnte ich ihm mit meinem Level 12 Char(gerademal 50 Punkte auf Schwert) drei mal in kurzer Folge die Waffe wegschlagen...und er hat 100 dex und auch 100 Waffenskill. Ich glaube ich leg ein Script auf sein Schwert, das ihm sofort ein neues ins Inventar schiebt und ausrüstet, sobald sein altes flöten geht.
Mal eine ganz andere Frage an die TES-Lore-Kenner, die eigentlich nichts mit Modding zu tun hat: angenommen ich schreibe ein Tagebuch, das von irgendjemandem während der 1. Ära verfasst wurde. Würde dann dieses '1. Ära' mit im Datum stehen oder nicht? Ich würde jetzt einfach mal sagen, dass die 1. Ära erst in den späteren Ären(Äras? Ärata? Äri?) auch als solche bezeichnet wurde, ist allerdings nur eine Vermutung.
Kommt denke ich auf den Kulturkreis an, aber generell glaube ich schon, schließlich wird die dritte Ära, auch eben 3. Ära von den Menschen der 3. Ära genannt.
...aber auch nur weil die 1. und 2. Ära vorhergingen, darauf muss nun mal die 3. folgen. Aber was hätte die damaligen Menschen dazu veranlassen sollen, nicht nur eine (neue) Zeitrechnung zu beginnen, sondern das ganze auch noch in Ären zu unterteilen? Könnte ja sein dass die 1. Ära erst in der 2. oder 3. als solche bezeichnet wurde. Außerdem meine ich, mal in Morrowind oder Oblivion irgendetwas von 'alter Zeitrechnung' gelesen zu haben...
edit: es gibt in MW und Obl die Buchreihe '2920', die das letzte Jahr der 1. Ära behandelt. Zeitangaben innerhalb der Handlung werden da immer ohne den Zusatz '1. Ära' gemacht,
meine Vermutung scheint sich also zu bestätigen...zur Sicherheit seh' ich nachher nochmal in Morrowind nach, vielleicht hat sich in Obl da auch ein Fehler reingeschlichen. ;)Zitat:
24 Sonnenhöhe, 2920
Ich glaube weniger dass die erste Ära damals gar keinen Namen hatte. Warscheinlich hatte sie zwei Namen. Unter den Menschen erste Ära, unter den Elfen Ära der Menschen. Die Ären wurden schon seit der Merethischen Ära (übersetzt Ära der Elfen) gezählt. Anscheinend haben die Kaiserlichen oder die Nord die erste Ära dann erste Ära genannt (erste Ära der Menschen). Die Elfen werden warscheinlich nur Ära der Menschen gesagt haben, es war schließlich nicht die zweite Ära der Elfen.
Ich glaube ich lasse das '1. Ära' sicherheitshalber weg - dass es so auf jeden Fall (auch) richtig ist, beweist ja diese Buchreihe.
Mal dazu ein Gedanke: Ich habe festgestellt, daß dem Spieler Questitem-Waffen (z.B. Rockshatter) nicht aus der Hand geschlagen werden können (logisch, wäre ja eine Möglichkeit, das Teil zu verlieren). Vielleicht gilt das auch für NPC's? Wenn ja, gib der Waffe Questitem-Status und setz selbigen im OnDeath-Block des NPC-Skriptes zurück.
(Macht aber nur Sinn bei einem Einzelgegner mit uniquer Waffe, da SetQuestObject sich immer auf alle Items eines Typs bezieht.)
Das wäre eine gute Möglichkeit...habe es inzwischen allerdings anders gelöst. Sobald ihm die Waffe weggeschlagen wird, bekommt er eine neue. Auf diese Weise könnte man sich zwar theoretisch unendlich viele Schwerter bei ihm abholen - ist aber nicht weiter schlimm, da das ziemlich starke Teil im Inventar des Spielers als normales Standard-Item ankommt. Und wer es schafft, diesen Gegner zu besiegen, der hat auch schon genügend Gold als dass er daraus großartig Profit schlagen könnte.^^
Wieder 'ne Scriptfrage...24 Ingame-Stunden nachdem ein Objekt aktiviert wurde, soll es verschwinden. Wie stelle ich das an?
Wenn du das Objekt activierst setzt du eine Variable auf GetCurrentGameDay und dann fragst du ab if Variable > GetCurrentGameDay
Disable
GetCurrentGameDay gibt es nicht, habe GetDayOfWeek genommen, funktioniert prächtig. ;)
Habe es gestern erst per GetCurrentTime versucht und wollte das Objekt verschwinden lassen, sobald die Variable +24 Stunden erreicht hat...aber Pustekuchen, die 24 Stunden werden ja nicht kumulativ auf die Variable aufgerechnet.
Hopla, da hab ich mich wohl grob vertan. Ich meinte eigentlich GameDaysPassed. (Globale) mit der ließe sich sowas auch machen.
An die Globalen Variablen habe ich gar nicht gedacht, habe bisher immer nur auf die Skriptfunktionen geachtet...werd's mir aber merken, danke.
Ich will, dass ein Scriptbefehl ausgeführt wird, sobald der Spieler mit einer (bestimmten, notfalls mit jeder) Waffe gegen einen Activator schlägt.
Dummerweise zeigt OnHit bzw OnHitWith scheinbar nur bei Kreaturen und NPCs Wirkung, aber nicht bei einem Activator. Die reagieren nur auf Zauber, mit verzauberten Waffen wiederum geht's nicht.
Gibt es trotzdem irgendeine Möglichkeit, das zu regeln? Wäre wirklich schade wenn es nicht funktionieren würde.
Wie wärs mit einem Fake Actor der direkt nebem dem Activator steht, unsichtbar ist, bewusstlos und außerdem nicht Aktivierbar? Sonst fiele mir auch nichts ein.
Ich könnte eine Kreatur basteln, die genauso aussieht wie der Activator.
Da gäbe es allerdings schon das Problem, dass sie wegrutschen könnte/würde...
Dann nutz einfach die Kreatur selbst als Activator.
Wie gesagt, als Kreatur würde sie bei einem Treffer wegrutschen.
Ich habe das ganze jetzt anders gelöst. Die Waffe, mit der man draufschlagen sollte, ist jetzt ein Stab, der 'nen unsichtbaren Scripted Spell auslöst. Und der wird vom Activator abgefragt.
Nicht so wie ich es ursprünglich haben wollte, aber auf jeden Fall zufriedenstellend.
Sagmal in der festung rayles oder so gibts doch 2 statuen, die man mit nem pfeil beschießen muss damit ein tor aufgeht. (meine ich zu denken tun:D ) kanns ja mal anschauhen
Hab mal geschaut. Da ist eine Trigzone um ein kleines objekt wo man draufschießen muss und da is folgendes script drauf.
Also ganz simpel. aber da du ja ein großes objekt willst is dass vielleicht nicht das gelbe vom EiCode:scn TrigZoneANY01reset2SCRIPT
; Activates linked Parent object once
; Any object will activate this (arrows, havok objects)
; 2 second reset timer
short triggered
ref target
ref mySelf
float timer
begin onTrigger
if triggered == 0
set target to getParentRef
set mySelf to getSelf
target.activate mySelf 1
set triggered to 1
set timer to 2
endif
end
begin gameMode
if triggered == 1 && timer <= 0
set triggered to 0
endif
if timer >= 0
set timer to timer - getSecondsPassed
endif
end
Ja, mit einem Pfeil. Das ist der springende Punkt. Mit Pfeil+Bogen funktioniert das ganze, nicht aber mit Nahkampfwaffen.
Dann leg zusätzlich ein Script auf die Kreature, dass wenn die Distanz zum OrgianlPunkt größer als...sagen wir...genau 1, ist, wird sie zurückteleportiert. Das sollte, da die Distanz so gering ist, nicht auffallen.
Würde mich wundern wenn das so funktioniert, erfahrungsgemäß arbeitet Oblivions Mechanik ja eher unsauber.
Davon abgesehen könnte man die Kreatur auch dank Perks lähmen bzw umschlagen, und was weiß ich alles noch.
So wie ichs jetzt habe, lasse ich es auch. Ist gut genug, kommt auch gut rüber. Aber vor allem: es funktioniert tadellos. ;)
Nicht wenn du sie resistenz gegen Lähmung machst und mit den richtigen Animationen dafür sorgst, dass sie nicht umfällt wenn sie eigentlich umfallen sollte. Also mit einer leeren Ani die sie einfach stehen lässt.
Es gibt keine Umfall-Animation. Das wird von Havok geregelt.
Außerdem würde man ein zusätzliches Matsch-Geräusch beim Schlagen hören, was gänzlich ungewollt ist. Bei den Activatoren handelt es sich nämlich um fünf Glocken, die nur klingen sollen, nicht matschen. So gesehen ist meine Lösung sogar noch besser als das was ich anfangs versucht habe, da würde man nämlich ebenfalls ein zusätzliches Geräusch(Waffe auf Metall) hören wenn man draufschlägt.
Havoc greift aber erst durch die Animation. Das ist bei der Death-Idle bei NPCs genauso.
Lazarus hat da schon recht. Für den Zweck, den er angegeben hat, ist die Lösung mit dem Stab und dem Spell wohl am besten. Das Problem wird nur sein, dass man mit dem Stab die Glocken auch auf Entfernung leuten können wird, da man Stäben ja nur "auf Ziel"-Effekte zuweisen kann. Das könnte man damit umgehen, dass man in das Skript der Glocken schreibt, dass sie auf den auf sie mittels Stab gecasteten Spell nur dann reagieren, wenn sich der Spieler in unmittelbarer Nähe befindet (GetDistance < 200 oder so, müsste man testen, welcher Abstand angemessen erscheint).
Schönen Gruß, Haldor.
Ja wenn es fünf sind... ;) Ne ihr habt schon recht, bei Glocken wären Creatures sicher suboptimal. Aber bei anderen Dingen (zb. Lorkahns Herz in MW also organisches) würde ich das weiterhin eher nutzen.
Ich habe gerade ein sehr seltsames Problem...der Spieler aktiviert einen Activator und wird in einen Raum zu einen NPC teleportiert.
Der NPC hat einen simplen Script, der mit onDeath ausgelöst wird und erst eine globale Variable auf 1 setzt, einen Activator enabled und außerdem den Spieler zurückteleportiert.
Soweit, so gut, das funktioniert alles.
Aber sobald man zurück ist, wird man alle paar Sekunden abermals zu diesen Marker teleportiert, als wäre der NPC ein zweites mal gestorben...:confused:
Ich habe schon alles mögliche versucht, auch per Variable festgelegt dass der Spieler eigentlich nur ein einziges mal teleportiert werden kann, ich habe sogar in den Script geschrieben dass der NPC nach seinem Ableben zusätzlich noch deaktiviert werden soll, aber das hilft alles nichts.
edit: Problem scheint fürs erste dank weiterer Variablen-Verschachtelung gelöst.
Der Teleport-Code Player.MoveToMarker steht im OnDeath-Block? Dann sollte er eigentlich auch nur einmal ausgeführt werden... Versuch doch mal alternativ die Zeile in den GameMode-Block der zu tötenden Kreatur zu schreiben: If dead == 1 && doonce != 1, dann Teleport und set doonce to 1. Damit läuft das definitiv nur einmal. Wenn das Phänomen dann immer noch auftritt, muss es an der Funktion von MoveToMarker liegen. Dann könntest du es mal mit MoveTo oder PositionCell versuchen. Einfach mal rumprobieren... Mehr fällt mir zu diesem seltsamen Problem gerade nicht ein.
Schönen Gruß, Haldor.
MoveToMarker? Kannte ich bisher gar nicht, habe schon immer MoveTo genommen. Gibt es da einen Unterschied?
Naja, jetzt funktioniert's ja...trotzdem seltsam.
MoveToMarker MarkerID bewegt den Actor halt zu dem genannten Marker, wobei man die ReferenzID angeben muss und nicht die BasisID. Wenn man einen XMarkerHeading nimmt, wird auch gleich die Blickrichtung übernommen. Bei MoveTo muss man Koordinaten und Blickwinkel angeben. PositionCell ist wie MoveTo, nur für den Transfer zwischen Zellen, was bei MoveTo wohl nicht immer richtig klappt. Will man übrigens andere Objekte als Actors bewegen, so muss man etwas umständlicher Skripten. Das gilt z.B. für Container, Activators oder Lights:
Quelle: CS-Wiki. Selbst getestet und funktionstüchtig.Code:myObject.disable
myObject.moveTo [location]
myObject.enable
set xp to myObject.getPos x
myObject.setPos x xp
Was hast du nun eigentlich geändert, damit es klappt? Oder hat sich das Problem von selbst gelöst?
Schönen Gruß, Haldor.
Ähm, Moveto funktioniert genausogut auf Marker. Blickrichung wird auch genommen. Und Moveto funktioniert auch sehr gut zwischen Zellen.
:rolleyes: Nein, und was glaubst du warum ich hier mache was ich mache. Ein Gewisser Stand an Wissen wird auch von mir verlangt.
Erklär mir doch bitte die Vorteile die Moveto zur "besseren Lösung" machen. Überhaupt scheint aus deiner Beschreibung in deinem vorherigen Post, Moveto nicht als die bessere Lösung hervorzugehen.
Nun streitet euch mal nicht.
Zum MoveTo-Befehl:
das könnte vielleicht sogar den Fehler ausgelöst haben.Zitat:
Zitat von CSWiki
Angaben wie Koordinaten/Blickrichtung ist bei MoveTo übrigens optional.
Hallo,
also zum MoveTo/MoveToMarker-Problem:
Meiner Meinung nach gibt es zwischen den beiden Funktionen keinen großen Unterschied.
MoveToMarker ist spezieller, Objekte werden zu einem Marker bewegt.
Mit MoveTo kann das Objekt auch zu anderen Objekten bzw. Koordinaten bewegt werden. Die Angabe der Koordinaten ist jedoch optional, d.h. die müssen nicht unbedingt angegeben werden.
Weiterhin müsste man testen, ob es noch weitere Unterschiede gibt. Z.B. entspricht ein MoveTo, sollte es auf den Player angewandt werden, einem Return. Ob das beim MoveToMarker genauso ist, kann ich, wie gesagt, nicht bestätigen. Das muss man ausprobieren.
Was jetzt aber der große Unterschied an diesen beiden Funktionen ist, kann ich nicht genau sagen, denn MoveTo kann alles, was auch MoveToMarker kann.
Edit: Äh ... ja, wie Lazarus sagt, nur umständlich ausgedrückt. :D
:rolleyes: Erstens habe ich dir keinerlei Kompetenzen abgesprochen, zweitens habe ich nicht gesagt, dass MoveTo "besser" sei als MoveToMarker. Ich persönlich favorisiere lediglich MoveToMarker. Es sollte ja jedem Modder erlaubt sein, seinen persönlichen Skript-Stil zu entwickeln. Aber wie Meister Rung schon sagte, sind die Unterschiede da wohl recht diffus. Hauptsache ist aber doch, dass die Skripte im Endeffekt so funktionieren, wie man es haben will. Und das Ziel wurde in diesem konkreten Fall erreicht. Also freuen wir uns doch einfach und warten auf das nächste Problem, das es zu lösen gilt! ;)
Schönen Gruß, Haldor.
Ein Activator verschießt durch einen Script einen Feuerball mit Flächenwirkung. Kann ich irgendwie dafür sorgen, dass der Spieler von der Schadenswirkung verschont bleibt?
Wenn der Activator durch den Spieler direkt aktiviert wird, würde ich empfehlen, den Spieler den Fläschenzauber wirken zu lassen. Ansonsten mit einer zeitweiligen 100%igen Magie-/Feuerresistenz? :\
Wenn ich den Player per Script einen Spruch casten lassen will, funktioniert das nie - es tut sich einfach nichts.
Hm,
und was ist, wenn Du das Script des Ayleiden-Brunnen für Deine Bedürfnisse abänderst?
Hast du den Spruch auch auf Novice oder Häckchen bei AutoCalculate weggemacht?
Das liegt wohl daran, dass es ein Range-Spruch ist.
Aus dem Wiki unter dem Eintrag zu Cast:Edit:Zitat:
This function can be used to force the player to cast a spell on himself, but cannot force him to cast Touch or Target range spells at other actors or objects.
Wenn Du den Spruch von einem Activator castest, weißt Du dann wen es alles treffen kann? D.h. sind Dir jene, die Du damit verletzen willst, bekannt?