World of Gothic Archiv Alle Beiträge von Gawain15 |
|
10.07.2002, 19:19 | #601 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Faction_Zuordnung vom Spieler Charakter -
Wenn man 2 Gruppen hat würde ich nicht den Spieler in eine einordnen sondern die Faction dem Spieler freundlich gesonnen machen sobald der Spieler dieser Fraktion betritt... bei einer Persistant World sieht die Sache aber anders aus da ja verschiedene Leute in verschiedene Factions sollen... hm... |
||||||||||||
10.07.2002, 19:49 | #602 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Wie folgt mir ein Tier? -
Zu erst gehst du in die Eigenschaften deines Hundes in den Skripte Tab, dort ersetzt du die Scripte mit folgenden Namen: OnBlocked = nw_ch_ace OnCombatRoundEnd = nw_ch_ac3 OnConversation = nw_ch_ac4 OnDamaged = nw_ch_ac6 OnDeath = nw_ch_ac7 OnDisturbed = Das Feld lässt du vollkommen leer. OnHeartBeat = nw_ch_ac1 OnPerception = nw_ch_ac2 OnPhysicalAttacked = nw_ch_ac5 OnRested = Auch dieses Feld bleibt leer. OnSpawn = nw_ch_ac9 OnSpellCastAt = nw_ch_acb OnUserDefined = nw_ch_acd (Das sind übrigens die verhaltensweisen) So nun gehst du in den Konversations Editor und machst einen kleinen Text wenn er dir folgen soll fügst du folgendes im "erfolgte Aktionen" Skript ein: VoidMain() { SetLocalInt(OBJECT_SELF, "NW_COM_MODE_COMBAT", ASSOCIATE_COMMAND_ATTACKNEAREST); SetLocalInt(OBJECT_SELF, "NW_COM_MODE_MOVEMENT", ASSOCIATE_COMMAND_FOLLOWMASTER); AddHenchman(GetPCSpeaker()); } Dadurch folgt dir dein neuer Hund und greift den nächststehenden Gegner an... also macht so ziemlich alles was ein Hund machen würde im RL :) |
||||||||||||
10.07.2002, 20:05 | #603 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Namen -
Omega: hast du dem Erkenntnisbecken auch einen Händler zugewiesen? Zum heilen: Im Gespräch bei "Erfolgte Aktionen" an der Stelle einfügen wo du geheilt werden möchtest. (Ich hab noch nicht getestet ob es funktioniert, hab es einfach aus der Kampagne geklaut...Rückmeldung erwünscht) void FakeRestore(object oTarget); void main() { object oPC = GetPCSpeaker(); object oHenchman = GetAssociate(ASSOCIATE_TYPE_HENCHMAN,oPC); object oAnimal = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION,oPC); object oFamiliar = GetAssociate(ASSOCIATE_TYPE_FAMILIAR,oPC); object oDominated = GetAssociate(ASSOCIATE_TYPE_DOMINATED,oPC); object oSummoned = GetAssociate(ASSOCIATE_TYPE_SUMMONED,oPC); ActionPauseConversation(); ActionCastFakeSpellAtObject(SPELL_GREATER_RESTORATION, OBJECT_SELF); ActionDoCommand(FakeRestore(oPC)); if(GetIsObjectValid(oHenchman)) { ActionDoCommand(FakeRestore(oHenchman)); // checks to see if they have any cure crital wound potions; if not, creates it on them. if (!GetIsObjectValid(GetItemPossessedBy(oHenchman,"NW_IT_MPOTION003"))) { CreateItemOnObject("NW_IT_MPOTION003",oHenchman,3); } } if(GetIsObjectValid(oAnimal)) { ActionDoCommand(FakeRestore(oAnimal)); } if(GetIsObjectValid(oFamiliar)) { ActionDoCommand(FakeRestore(oFamiliar)); } if(GetIsObjectValid(oDominated)) { ActionDoCommand(FakeRestore(oDominated)); } if(GetIsObjectValid(oSummoned)) { ActionDoCommand(FakeRestore(oSummoned)); } ActionResumeConversation(); } void FakeRestore(object oTarget) { effect eVisual = EffectVisualEffect(VFX_IMP_RESTORATION_GREATER); effect eBad = GetFirstEffect(oTarget); //Search for negative effects while(GetIsEffectValid(eBad)) { if (GetEffectType(eBad) == EFFECT_TYPE_ABILITY_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_AC_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_ATTACK_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_DAMAGE_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_DAMAGE_IMMUNITY_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_SAVING_THROW_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_SPELL_RESISTANCE_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_SKILL_DECREASE || GetEffectType(eBad) == EFFECT_TYPE_BLINDNESS || GetEffectType(eBad) == EFFECT_TYPE_DEAF || GetEffectType(eBad) == EFFECT_TYPE_CURSE || GetEffectType(eBad) == EFFECT_TYPE_DISEASE || GetEffectType(eBad) == EFFECT_TYPE_POISON || GetEffectType(eBad) == EFFECT_TYPE_PARALYZE || GetEffectType(eBad) == EFFECT_TYPE_NEGATIVELEVEL) { //Remove effect if it is negative. RemoveEffect(oTarget, eBad); } eBad = GetNextEffect(oTarget); } if(GetRacialType(oTarget) != RACIAL_TYPE_UNDEAD) { //Apply the VFX impact and effects int nHeal = GetMaxHitPoints(oTarget) - GetCurrentHitPoints(oTarget); effect eHeal = EffectHeal(nHeal); if (nHeal > 0) ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget); } ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual, oTarget); } /e: Harald: zum glück bin ich nicht so faul wie du ![]() |
||||||||||||
10.07.2002, 20:08 | #604 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Hatten wir schon Geheimtüren? -
Lzoril: hab mir den ganzen Text jetzt nicht durchgelesen... kommt beim Kompilern irgendwo eine Fehlermeldung? Wenn nicht überprüf mal ob alle Namen auch richtig eingestellt sind. |
||||||||||||
10.07.2002, 20:28 | #605 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Habe Probleme mit "SetCommandable()" ! -
ActionDoCommand sagt ja das es in der Action Queue abgearbeitet werden soll... wenn du keine hast brauchste das ja auch nicht. Was genau willst du mit dem Spieler machen? SetCommandable ist AFAIK dafür zuständig die Actionqueue zu unterbrechen um andere Aktionen bei "aussergewöhnlichen" Ereignissen auszuführen... du kannst den Spieler nicht einfach "einfrieren", nur stoppen mit ClearAllActions |
||||||||||||
10.07.2002, 20:51 | #606 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Habe Probleme mit "SetCommandable()" ! -
TRUE = 1, ja, wahr FALSE = 0, nein, unwahr Also warum das so da steht kann ich dir nicht sagen, aber das ist ein und der selbe Befehl... Du kannst den Spieler keinen RandomWalk Befehl geben, du kannst ihn nicht einmal Steuern. Du kannst allerdings das Script aus dem Scriptesammlungs Thread nehmen damit der Spieler etwas sagt sobald er das Spiel betritt. |
||||||||||||
10.07.2002, 20:54 | #607 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Erfahrungspunkte!? -
Sicher das du schon Fackeln gesehen hast? Ich glaube ich hab weder im Spiel noch im Editor welche gesehen... Ich habe eine Lösung für das "XP-Problem": Du nimmst dir eine Kreatur und gehst in die Eigenschaften (bei den Golins wäre das Kopie bearbeiten und du musst sie dann unter einem anderen Namen abspeichern damit du die Kampagnen Goblins nicht überschreibst) dann in den Tab "Erweitert" dort unten links bei "Herausforderungsgrad" kannst du unter "Anpassen" bis zu 125 eintragen, dadurch wird der Gegner "schwerer" und bringt dem entsprechend mehr oder weniger XP (Es gehen auch minus Werte) allerdings kenne ich die Formel nicht wie das ganze berechnet wird also hilft nur rumprobieren. |
||||||||||||
10.07.2002, 21:11 | #608 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Test in PCGames -
nuff said |
||||||||||||
10.07.2002, 21:15 | #609 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Mein Charakter wird nicht angenommen -
Das sollte eigentlich keine Auswirkungen auf den Verlauf der Handlung haben... Es gab doch schonmal einen Thread mit dem Problem vielleicht hatten die ja eine Lösung gefunden. |
||||||||||||
10.07.2002, 21:18 | #610 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Erfahrungspunkte!? -
Die sind noch immer gleich schwer, nur der Herrausforderungsgrad wird neu berechnet, Boglins machst du noch immer mit einem Schlag platt geben dir aber z.B. 300 XP |
||||||||||||
10.07.2002, 21:27 | #611 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Namen -
Omega: ich hab das Script eben getestet und es funktioniert einwandfrei. Du musst es genau so reinkopieren wie ich es gepostet hab, auch das "void FakeRestore(object oTarget);" vor dem "Voidmain(){". Nimm das ganze Script und poste es, genau so wie es ist ohne etwas zu verändern, bei "Erfolgte Aktionen" rein. |
||||||||||||
10.07.2002, 21:33 | #612 | ||||||||||||
Gawain15 Beiträge: 1.084 |
frage an gawain an wenn sonst -
Du kannst im Tagebuch Editor auf der Rechten Seite die "ID" einstellen, das ist gleichzeitig die variable, nimm halt 4, 5 & 6. Du kannst z.B. auch 2355, 32542 & 2340 nehmen, das ist vollkommen egal. /e: Schnelltipfehler korrigiert... hatte anstatt "32542" "42542" geschrieben ;) |
||||||||||||
10.07.2002, 21:41 | #613 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Neuer Patch 1.20 nur für die Englische -
Wie schon in einem anderen Thread erwähnt halten Amis das so dass sie Europäische (oder in diesem Fall den deutschen...) Patches in Patchbundles releasen, sprich mehrere Patches für die US Version in einem großen für die Europäische zusammengefasst, also kriegen wir vielleicht bald unseren heiss erwarteten Patch! (Vielleicht auch erst nach dem 3. :) ) |
||||||||||||
10.07.2002, 21:46 | #614 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Gradlinig... -
Ein wenig Smalltalk kann auch nicht schaden :) Zur Handlungsfreiheit: Naja ein paar dinge gibt es ja doch schon. *Spoiler* *spoiler* Also mir fallen da gerade nur 2 Sachen ein... sind wohl auch die einzigen Handlungsbasierenden: Einmal die Liebesstory mit Aribeth und naja am Ende kannste ja quasi entscheiden ob Aribeth leben oder sterben soll... ansonsten halt die "kleinen" Sachen... z.B: töte ich Meldanen jetzt oder lass ich den Magier Trottel doch laufen? :) |
||||||||||||
10.07.2002, 21:48 | #615 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Erfahrungspunkte!? -
kannst mir schon glauben wenn ich sag das ich es ausgetestet hab, dann hab ich das auch :) |
||||||||||||
10.07.2002, 21:50 | #616 | ||||||||||||
Gawain15 Beiträge: 1.084 |
frage an gawain an wenn sonst -
Was genau möchtest du jetzt wissen? Also die "2" bedeutet der Quest status von dem Quest "Mein_Tolles_Quest" wird auf 2 gesetzt. Wenn dein neues Quest jetzt "cool" heisst und der Status wenn du den Kopf aufhebst "4" sein soll würde die Zeile folgender maßen aussehen: AddJournalQuestEntry("cool", 4, oPC); /e: achja, "horags_kopf" ist die Kennzeichnung des Gegenstandes den der Spieler besitzen muss damit die Bedingung (das Tagebuch update) True, also wahr wird. |
||||||||||||
10.07.2002, 21:53 | #617 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Gradlinig... -
lass mich raten... du bist "Rechtschaffen gut"? :D |
||||||||||||
10.07.2002, 21:54 | #618 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Verloren -
Nur vom "RPG-Standpunkt" mal betrachtet: wer kennt einen Zwerg mit Bogen anstatt Armbrust oder mit Schwert anstatt Axt? |
||||||||||||
10.07.2002, 21:56 | #619 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Neuer Patch 1.20 nur für die Englische -
Echt? Weiß jemand ob sie den "ATI-bug" gefixt haben? Geht mir nämlich ein wenig auf die Nerven bei jedem Gespräch einen .dll Error zu bekommen... |
||||||||||||
10.07.2002, 21:58 | #620 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Mein Charakter wird nicht angenommen -
Oh man diese Cheater immer... gut das Bioware da eine unbewußte Sperre eingebaut hat... vielleicht war es auch absicht? Who knows... |
||||||||||||
10.07.2002, 22:04 | #621 | ||||||||||||
Gawain15 Beiträge: 1.084 |
frage an gawain an wenn sonst -
ach du schei*se! Lass das Scripten bloss sein... ein nett gemeinter Rat :) void main() { object oPC; object oItem; object oItem1; oItem = GetModuleItemAcquired(); oItem1 = GetModuleItemAcquired(); if (GetIsObjectValid(oItem) == TRUE) {if (GetTag(oItem) == "Horags_Kopf") {oPC = GetItemPossessor(oItem); AddJournalQuestEntry("Mein_tolles_Quest", 2, oPC); } } if (GetIsObjectValid(oItem1) == TRUE) {if (GetTag(oItem) == "ring") {oPC = GetItemPossessor(oItem); AddJournalQuestEntry("cool", 4, oPC); } } } --- Kuck mal ob es funktioniert, hab es mal aus dem Kopf heraus geschrieben. |
||||||||||||
10.07.2002, 22:09 | #622 | ||||||||||||
Gawain15 Beiträge: 1.084 |
2 Scripts fehlerhaft -
Ich hab jetzt keine Zeit mehr mich dadrum zu kümmern, mach das aber morgen als erstes wenn ich aufsteh (so um 12 Uhr :) ) Vielleicht hat dir bis dahin aber auch schon Xerxes geholfen. |
||||||||||||
10.07.2002, 22:43 | #623 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Kleine FAQ -
da musst du nichts Scripten, das geht alles per Wizard. Bei "Ok Ich komme..." setzt du die Variable "nHarald" auf 1 (Tab "Erfolgte Aktionen" --> Wizard --> Lokale Variable zuweisen --> oben rechts der Name (hier "nHarald") daunter gibst du "1" ein (die Variable nHarald wird nun auf 1 gesetzt.) --> Weiter. Bei "Habt ihr den Kopf schon" gehst du in den Tab "Text erscheint wenn..." und startest wieder den Wizard --> Lokale Variable --> Oben rechts gibst du wieder den Variablen Namen ein ("nHarald") und daunter wieder den Wert ("1"). Nun erscheint der Text erst wenn die Variabe nHarald den Wert 1 besitzt. |
||||||||||||
10.07.2002, 22:50 | #624 | ||||||||||||
Gawain15 Beiträge: 1.084 |
frage an gawain an wenn sonst -
Das liegt aber nicht am Script :) Darf man fragen wie alt du bist wenn du schon vor 20 Jahren P&P gespielt hast? /e: Cordo: ich hab das auch nach dem Ding gemacht und hatte keinen Error sondern den Text drin... ist das Script genauso wie das oben? |
||||||||||||
10.07.2002, 22:53 | #625 | ||||||||||||
Gawain15 Beiträge: 1.084 |
Erfahrungspunkte!? -
Mit - hab ich das noch nicht wirklich ausprobiert, als ich aber bei einem Hund den Wert um 125 erhöht hab, hat der Hund 326 XP gegeben, normal hat der nur 23 gegeben... mal kucken mit den - Werten. |
||||||||||||
|