Page 1 of 1

Divine might - some files

Posted: Tue Aug 28, 2012 5:03 am
by link
The zone LaLoff Amphitheater needs alot of working doing. I don't know if ezekyel or another scripter can continue this but that zone has 5 entances that cause a headache. Having a nightmare finding cs's, so far I know:

cs 10-15 is portals
cs 32000-32004 contains a few others such as bcnm menu, run away and a cs with the hume ark angel dying.

Here is an update of npc_list which will add the ??? which gives divine might (it says NPC, i dont know how to get it to say ???).
It also contains a script for that npc which gives the correct CS and will offer the correct rewards on completion.

I did not use the ZilartStatus variable because divine might is repeatable. So instead it uses DivineMight and will delete that variable if player completes the mission.

Completing divine might will update to the next ZM mission - if players current mission is ark angels although i have not tested it.

Re: Divine might - some files

Posted: Tue Aug 28, 2012 7:39 pm
by Zedingo
Weird... If it says NPC in your client it would be because that NPC ID in the .dats says "NPC". You could hide the name though, I think.

Re: Divine might - some files

Posted: Sat Sep 08, 2012 10:23 pm
by Anged_Obscurite
link wrote:Completing divine might will update to the next ZM mission - if players current mission is ark angels although i have not tested it.
This should be the expected behavior (I believe the mission should advance when all 5 key items are gained). It also needs to check whether the players have those key items (and grant them if they don't already possess them).

Re: Divine might - some files

Posted: Sun Sep 09, 2012 4:57 am
by link
Yes if your on the mission Ark angels and you complete divine might it will update you to the next mission. If you are on a higher ZM mission and wants to repeat the DM quest for more earrings then you can go back get the cutscene, and redo DM without it effecting the higher ZM mission. So these files only deal with DM, the ZM mission 'ark angels' is untouched.

A couple of problems I found:
-In a CS a door needs to open, I don't know how to tie a new NPC to the door to use onEventUpdate.
-I could only find 1 CS with the hume ark angel dying, again he appeared at the end but in the start of the CS you can see there should be the hume arkangel npc. I can add the npc but dont know how to put that npc into the CS.

Re: Divine might - some files

Posted: Sat Sep 15, 2012 4:09 am
by bluekirby0
Doors are NPCs and have scripts just like any other NPC. The trick is finding the name for the door. Sometimes if the door has a proper label that label will be the name of the script to use, but there are two ways to find out otherwise.

1) find the X/Y/Z position of the door with @pos and reference that info with npc_list making sure to look only at NPCs in your current zone. Whatever the "name" field says, tack ".lua" on the end of it and you have your proper script name.

2) if the script isn't already covered by a generic script (i.e. "Ore Door"), it should produce a console error when you open the door saying that it cannot open the script (including the name of the script).

If you mean you don't know how to open door A from NPC B, then there are a few examples, notably one in Ranguemont Pass I did a while back, where you talk to an NPC who then opens the one-way door for you. You will probably have to do option 1 above to find the npcID for the door though.

Re: Divine might - some files

Posted: Mon Sep 17, 2012 2:18 pm
by Metalfiiish
Here is an example of how to make a door open:

https://code.google.com/p/onetimexi/sou ... s/_6i8.lua

to open the door set a return -1. If you see how I did it this door only opens for a certain quest and on the statement that includes the cutscene ID I added the return -1.

You can also do it like blue suggested and if player is at certain position from front door then it send the return -1.

Re: Divine might - some files

Posted: Mon Sep 17, 2012 5:05 pm
by PrBlahBlahtson
Not sure if link meant "player opens a door" or "cutscene opens a door." I have yet to figure out how to make them work in cutscenes. :)

Cutscenes displaying other victories: Probably changed by parameters, tbh.

Wrong name: Name is determined by npcid, so you probably used an ID that doesn't exist in the zone anymore or normally isn't targeted. It's probably 17506695 (???), 17506696 (???), 17506697 (???), 17506714 (blank), 17506799 (blank), 17506806 (blank), 17506811 (???), or 17506812 (blank.) Three of those should be pops for Olla, Ulli, and Kirin already.

Divine Might is sort of repeatable. I've never done it, but I know it involves tossing your earring and the Ark Pentasphere "quest."

Re: Divine might - some files

Posted: Mon Sep 17, 2012 6:24 pm
by link
I looked into this since a few of you replied.

BlueKirby your method seemed good so I looked at npc_list: absolutely nothing for zone 180 :(

Where would we obtain this data?

Re: Divine might - some files

Posted: Mon Sep 17, 2012 7:44 pm
by bluekirby0
Ideally it would be obtained with a zonecap, but barring that, you can get the NPC ID with POLUtils, manually find the position parameters, and copy everything else from a similar NPC.

Re: Divine might - some files

Posted: Wed Sep 19, 2012 1:24 am
by Metalfiiish
"Not sure if link meant 'player opens a door' or 'cutscene opens a door.' I have yet to figure out how to make them work in cutscenes." - PrBlahBlahtson

Yes, you can open the door for the cutscene as I specified. Here is the revision I pushed a script out like this: https://code.google.com/p/onetimexi/sou ... s/_6i8.lua

Here is an example of before when cutscene triggers and character gets stuck running into door:

Code: Select all

function onTrigger(player,npc)
        
        if(player:getQuestStatus(OUTLANDS,A_THIEF_IN_NORG) == QUEST_ACCEPTED and player:getVar("aThiefinNorgCS") == 3) then
                player:startEvent(0x00ba);
        end
        
end; 
Here is how to make the door open for the cutscene:

Code: Select all

function onTrigger(player,npc)
        
        if(player:getQuestStatus(OUTLANDS,A_THIEF_IN_NORG) == QUEST_ACCEPTED and player:getVar("aThiefinNorgCS") == 3) then
                player:startEvent(0x00ba);
                return -1
        else
                return 0
        end
        
end;