World of Gothic Archiv
Alle Beiträge von Elessar
Seite 19 von 20 « Erste 15  16  17  18  19  20 
31.08.2002, 14:18 #451
Elessar
Beiträge: 495
Hilfe -
Die Vorlage darf nicht statisch sein, sonst kann man sie weder zerstören noch neu machen...
02.09.2002, 12:43 #452
Elessar
Beiträge: 495
Rotieren ? -
Mit Rechtsklick sollte es klappen ;)
02.09.2002, 16:32 #453
Elessar
Beiträge: 495
Rotieren ? -
Ah sorry, ich dachte du meinst die Tileset Stücke, dass man die Drehbuttons nicht sieht habe ich mir nicht vorstellen können :D ;) ;)
03.09.2002, 20:50 #454
Elessar
Beiträge: 495
Rollenspiele nur am PC ? -
Grüsse,

Ich habe noch nie D&D gespielt, bekomme aber mehr und mehr Lust mal solche Bücher zu wälzen und gegebenenfalls auch zu spielen... Daher muss ich hier, wo es ja so viele D&D Spieler gibt, fragen was man so als Grundlage kauft, was danach und und... möglichst aktuelle Regeln natürlich, das Problem dabei ist, dass wenn man mal unter Amazon sucht man eigentlich keine Ahnung hat was nun wichtig ist und was grundlegender... Es wäre total nett von euch, wenn ihr mir die Namen oder gleich Links zu Bestellseiten geben könntet... Englisch oder deutsch ist egal...
Vielen, vielen Dank, wenn sich jemand die Mühe macht :)

PS: Bin übrigens auch aus der Schweiz (erinner mich an irgendwen obendran, der sich auch geoutet hat :D )
06.09.2002, 05:18 #455
Elessar
Beiträge: 495
Selbsterstellte Gegenstände level runtersetzen? -
Du könntest mal in den .2da Dateien herumfummeln (Backup!) oder man kann die Gegenstände auf Handlung stellen, dann kann man sie mit jedem Level anziehen...
06.09.2002, 05:35 #456
Elessar
Beiträge: 495
Tagesablauf - Tagesablauf
Grüsse allerseits

Ich bin momentan an einem Tagesablaufsscript für NPCs und brauche Anregungen und Tester... das Script sollte relativ einfach zu bedienen sein... und hier ist es zu finden:
http://213.221.106.91/forum/showthr...10&pagenumber=1

Momentan stosse ich mich vorallem am letzten Problem (im Forum mit den Scripts), wenn jemand eine Idee hat, wie man das lösen kann, dann bitte raus damit :D

PS: Ich bin Frin Tozz ;)
06.09.2002, 11:27 #457
Elessar
Beiträge: 495
Tagesablauf -
Oho, dann funktioniert dieses Heartbeat event also auch, wenn man nicht in dem Gebiet ist, das ist schonmal super... vielen Dank.
07.09.2002, 07:48 #458
Elessar
Beiträge: 495
Tagesablauf -
Hrhr, ehrlichgesagt habe ich es mir nicht genau durchgelesen und dann ist klar, dass ich das auch ned sofort begriffen habe :D . Jedenfalls ist das ne gute Idee, ich bin jedenfalls nicht darauf gekommen, mal sehen was sich so alles daraus machen lässt...
08.09.2002, 13:21 #459
Elessar
Beiträge: 495
Stadtportale -
Sollte eher so aussehen, der zweite Code, ausserdem muss dein Portal benutzbar sein, weiss ned ob du das gemacht hast, ist unter den Eigenschaften...
code\:

void main()
{
object oPC = GetLastUsedBy();
AssignCommand(oPC, JumpToLocation(GetLocation(GetWaypointByTag
("townportal"))));

SetLocalLocation(oPC, "TP",GetLocation(OBJECT_SELF));
}

08.09.2002, 13:36 #460
Elessar
Beiträge: 495
NPC aus Gebiet herteleportieren -
Noch ein paar Verbesserungen zu GuradonHellsing:
code\:

object oWp=GetWaypointByTag("Tag_des_Wp); //Der Tag, nicht ResRef
location lWp=GetLocation(oWp);
CreateObject(OBJECT_TYPE_CREATURE, "ResRefVorlage_der_Kreatur", lWp); /*Hab ich mal aufgefüllt*/

08.09.2002, 17:50 #461
Elessar
Beiträge: 495
Wieder mal ein paar dumme Fragen -
Kann man glaube ich nicht abkürzen. Jedenfalls habe ich mir erlaubt das ganze noch etwas herauszuputzen :D :
code\:

/*********************************************
Script zur Leerung des Inventars
by: Rhaegar, Argos und Frin Tozz
*********************************************/
void main()
{
object oPC = GetFirstPC();

object oItem = GetFirstItemInInventory(oPC);

while(oItem != OBJECT_INVALID)
{
DestroyObject(oItem);
oItem=GetNextItemInInventory(oPC);
}
oItem = GetItemInSlot(INVENTORY_SLOT_ARMS, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_ARROWS, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_BELT, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_BOLTS, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_BOOTS, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_BULLETS, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CARMOUR, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CLOAK, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_HEAD, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_NECK, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);

oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oPC);
if(oItem != OBJECT_INVALID) DestroyObject(oItem);
}

09.09.2002, 05:02 #462
Elessar
Beiträge: 495
Wieder mal ein paar dumme Fragen -
Er muss das eigentlich ohne Fehler durcharbeiten können, da die Abbruchbedingung ziemlich real ist und irgendwann eintreten muss. Kein Spieler hat ein unendlich grosses Inventar mit ebenso vielen Gegenständen...
09.09.2002, 05:05 #463
Elessar
Beiträge: 495
sprechendes Item ... -
Du kannst im Moduleheartbeat überprüfen, ob der Spieler die besagte Waffe gerade in der Hand hat und dann nach dem Zufallsprinzip einen Text ausgeben, sollte recht einfach gehen...
09.09.2002, 10:46 #464
Elessar
Beiträge: 495
sprechendes Item ... -
ich bin gerade in der Schule, wenn du willst, kann ich dir heute abend das Script kurz hineinstellen, oder du versuchst mal und stellst es einfach rein, wenn du nicht mehr weiterweisst und ich oder andere helfen dann.
09.09.2002, 16:42 #465
Elessar
Beiträge: 495
Stadtportale -
Wenn es mehrere solche Objekte gibt, dann könnte es sein, dass zwei verschiedene verglichen werden, also würde ich es so machen:
code\:

if(GetTag(Item) == "schriftrolledess")


Und zur Sicherheit nochmals den Tag überprüfen...
09.09.2002, 16:51 #466
Elessar
Beiträge: 495
sprechendes Item ... -
code\:

void main()
{
object oPC = GetFirstPC();
object oItem = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oPC);

if(GetTag(oItem) == "Tag_der_Waffe")/*Ich hoffe mal, dass das der richtige Slot ist, habe damit noch nicht gearbeitet bisher*/
{
if(Random(5) == 0)//Eine Chance von 20% pro Heartbeat
{
switch(Random(10))//10 verschiedene Sprueche
{
case 0:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 1:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 2:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 3:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 4:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 5:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 6:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 7:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 8:
AssignCommand(oItem, SpeakString("blabla"));
break;
case 9:
AssignCommand(oItem, SpeakString("blabla"));
break;
//Bin mir nicht sicher, ob ein Item sprechen kann, sonst setzt ein oPC anstatt oItem ein...
}
}
}
}

09.09.2002, 20:12 #467
Elessar
Beiträge: 495
sprechendes Item ... -
Probiers mal mit INVENTORY_SLOT_RIGHTHAND anstatt INVENTORY_SLOT_CWEAPON_R... Und setzt das erste Random mal testweise auf Random(1)
09.09.2002, 20:24 #468
Elessar
Beiträge: 495
Stadtportale -
Hm, komisch...
11.09.2002, 11:39 #469
Elessar
Beiträge: 495
Sitzende Wache -
Für das zzzz gibt es nen effeckt, snore heisst der glaube ich. Das Problem beim letzt geposteten Schlafscript ist, dass man den Effeckt nicht einfach ein RemoveEffect mit der Art des Effeckts in der Klammer hintun kann, sondern man muss durch sämtliche Effeckte auf dem Objekt scrollen und sich den Schlafeffeckt heraussuchen und diesen dann löschen...
Ich bin momentan in der Schule, kann dir frühstens heute Abend ein Script liefern...
11.09.2002, 16:38 #470
Elessar
Beiträge: 495
Wachen erschaffen die in einem MP Modul aufpassen -
Die Ursache ist schnell gefunden, es braucht ein include:
code\:

#include "NW_I0_GENERIC"
void main()
{
ActionWalkWaypoints();
}

11.09.2002, 18:09 #471
Elessar
Beiträge: 495
Wachen erschaffen die in einem MP Modul aufpassen -
*räusper*
quote:

#include "NW_I0_GENERIC"
void main()
{
WalkWayPoints();
}


12.09.2002, 04:47 #472
Elessar
Beiträge: 495
Wachen erschaffen die in einem MP Modul aufpassen -
Ist nicht nötig, höchstens, wenn du ein anderes object hast als OBJECT_SELF, ansonsten ist das automatischen bei der Kreatur, das Problem ist, dass die Funktion WalkWayPoints heisst und nicht ActionWalkWaypoints...
12.09.2002, 10:43 #473
Elessar
Beiträge: 495
Wache soll reden ... -
Du musst die Aktionen dem Wächter auch zuweisen:
code\:

void main()
{
object oWacheGemach=GetObjectByTag("Wache_Gemach");
object oPC=GetEnteringObject();
AssignCommand(oWacheGemach, ActionForceMoveToObject(oPC));
AssignCommand(oWacheGemach, ActionStartConversation(oPC));
}

13.09.2002, 04:51 #474
Elessar
Beiträge: 495
Stadtportale -
Das haben schon viele gesagt, aber du kannst dir 100% sicher sein, dass du irgend einen Fehler bei der Erstellung der Portale gemacht hast. ResRef überprüfen, Tag überprüfen...
13.09.2002, 04:54 #475
Elessar
Beiträge: 495
Wachen erschaffen die in einem MP Modul aufpassen -
Das einzige was mir dazu einfällt:
Lass mal die Türe sich selber öffnen, ich hatte auch schon Probleme mit Unlock und Wächtern, das Scirpt sähe dann so aus:
code\:

void main()
{
object oTuer = GetObjectByTag("marlen_door");
AssignCommand(oTuer, ActionUnlockObject(oTuer));
ActionOpenDoor(oTuer);
}

Seite 19 von 20 « Erste 15  16  17  18  19  20