Author Topic: Multiplayer Quests  (Read 422 times)

Legacy_Cybermage100

  • Newbie
  • *
  • Posts: 6
  • Karma: +0/-0
Multiplayer Quests
« on: November 08, 2010, 03:47:20 am »


                Ok, I have no doubts at all this question has been answered somewhere, but I can't seem to find it.

In working on a multiplayer pw, I am planning a number of quests which will help guide an individual to their optimal starting location. The quests I have so far are alignment-based... Good characters will get a different spin on the quests than an evil character would... The problem I have found is, whenever one person gets the quest, it adds that Journal Entry to every member of his party regardless of their alignment.

What I want to happen is for each player to get his own individual quests, at least at this early stage, regardless of their party. How do I set it so it will only give the quest to the speaker? (These quests are given in conversations, though later I will have some OnEnter triggers as well)

Later on the group can gain quests together but for now, I need to let each person forge his own beginning...

I appreciate any help you all can give me.
               
               

               
            

Legacy_GhostOfGod

  • Hero Member
  • *****
  • Posts: 1490
  • Karma: +0/-0
Multiplayer Quests
« Reply #1 on: November 08, 2010, 03:57:24 am »


               Look through your quest scripts and look for the ones that update the journal. They will have lines that looks similar to this:

AddJournalQuestEntry("Quest1", 10, oPC, FALSE, FALSE, FALSE);

The first "FALSE" in this funtion will most likely be set to "TRUE" in yours. If that is the case then just change it to "FALSE". If it is set to true then all party members' journals will be updated. If set to false then just the one player will have his journal updated. So it should look like this:

AddJournalQuestEntry("Quest1", 10, oPC, TRUE, FALSE, FALSE);

Hope it helps. Good luck.
               
               

               


                     Modifié par GhostOfGod, 08 novembre 2010 - 04:01 .
                     
                  


            

Legacy_Lightfoot8

  • Hero Member
  • *****
  • Posts: 4797
  • Karma: +0/-0
Multiplayer Quests
« Reply #2 on: November 08, 2010, 05:27:54 am »


               if your function looks like this:



AddJournalQuestEntry("Quest1", 10, oPC);



That also means that the first TRUE/FALSE that GOG stated is defaulting to TRUE.

in that case you will just need to add a FALSE argument like so:



AddJournalQuestEntry("Quest1", 10, oPC,FALSE);







               
               

               
            

Legacy_420

  • Sr. Member
  • ****
  • Posts: 370
  • Karma: +0/-0
Multiplayer Quests
« Reply #3 on: November 08, 2010, 06:01:46 am »


               

Cybermage100 wrote...

The problem I have found is, whenever one person gets the quest, it adds that Journal Entry to every member of his party regardless of their alignment.


If you want to give party members of the same alignment a quest so they don't have to each get it individually you can do something like this:

void main()
{
object oPC = GetPCSpeaker();
object oParty = GetFirstFactionMember(oPC);
while(GetIsObjectValid(oParty))
    {
    if(GetAlignmentGoodEvil(oParty) == ALIGNMENT_GOOD)
        {
        AddJournalQuestEntry("Quest1", 10, oPC, FALSE);
        }
    oParty = GetNextFactionMember(oPC);
    }
}

-420
               
               

               
            

Legacy_Cybermage100

  • Newbie
  • *
  • Posts: 6
  • Karma: +0/-0
Multiplayer Quests
« Reply #4 on: November 08, 2010, 10:33:57 pm »


               Thank all of you for your help with this. I am going in to my toolset to implement it now and see if I can get it to work properly. I had the Journal entries set with the default script the toolset uses, nothing custom, so it should be easy to pinpoint the problem and fixed it based on your input.

Thanks again!