Page 1 of 2

Shantotto's quest line - 100% complete

Posted: Fri Dec 21, 2012 3:21 am
by ik2012
Included is the complete quest line for Shantotto, ending with a scroll of Warp II :D

Curses Foiled Again!
Curses,Foiled...Again!?
and
Curses,Foiled A-Golem!?

The final quest is not 100% retail yet. The quest calls for changing a key item out for another one if you fight certain types of Mobs in Fei'Yin (magic based mobs). This is way over my head, any suggestions? You can still complete the quest and receive your reward, but it kind of feels like cheating since there is no way to normally obtain the second key item right now lol
Anyway I did my best to write the whole quest in, including getting the spell refreshed. If we can determine a way to track if a certain family of mobs has been fought I will gladly add it in :D

Also during the cut scenes in Fei'Yin my server spit out an error: [Warning] Server need NPC <17613218> . I assume this means the big dormant Golem that is in the room with the quest NPC, which is in fact missing.

The copy of quests.lua included is from R2115 and marks the quests as available.

-- Edit 1 -- Forgot to add in my big THANK YOU to Rascr, who gave me some very helpful advice along the way!

-- EDit 2 -- Quest is now 100%. Removed old zip and attached a patch

Don't forget to run this as a new query in Navicat so you will have proper cutscenes

Code: Select all

INSERT INTO `npc_list` VALUES (17613218, 'no_name_1', 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 4:18 am
by bluekirby0
ik2012 wrote:The final quest is not 100% retail yet. The quest calls for changing a key item out for another one if you fight certain types of Mobs in Fei'Yin (magic based mobs). This is way over my head, any suggestions?
Can I get a reference for this? I don't see anything about it on ffxiclopedia so I'm not entirely sure what you need, but it seems likely you are looking for onMobDeath in the appropriate mob script for the zone.
Also during the cut scenes in Fei'Yin my server spit out an error: [Warning] Server need NPC <17613218> . I assume this means the big dormant Golem that is in the room with the quest NPC, which is in fact missing.
If you know what the NPC is supposed to look like and it only exists inside of cutscenes, then you can copy a similar NPC and change its ID to that one and set its position to the correct zone at x:0 y:0 z:0 and it should only show up during cutscenes and get rid of that warning. If you don't have the info you need then you may need to cap some of it from retail.
The copy of quests.lua included is from R2115 and marks the quests as available.
You may want to consider providing a patch instead of scripts if you want to provide changes to several files or files that are subject to frequent updates. There are instructions on how to make a patch in one of the sticky posts in the contributing section.

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 5:40 am
by PrBlahBlahtson
zoneid 204...
SELECT * FROM pxi.npc_list where zone = 204;...
Hmm, names don't help.
17613218 = 0x010CC1A2...
...dat's a lotta Cermet doors...
0x010CC1A2 is a no-name NPC ... Moogle, blank, Rukususu, 0x010CC1A2, Treasure Chest, Dalzakk
In pXI, that makes it... 17313181
INSERT INTO `npc_list` VALUES (17613181, 'no_name_1', 381, 15, 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);
Convert that to DSP table structure and we have

Code: Select all

INSERT INTO `npc_list` VALUES (17613218, 'no_name_1', 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);
Adjust as you see fit :) @costume 432 is a golem.

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 10:28 am
by ik2012
Can I get a reference for this? I don't see anything about it on ffxiclopedia so I'm not entirely sure what you need, but it seems likely you are looking for onMobDeath in the appropriate mob script for the zone.
Sure, it's actually on the talk page for the golem quest: http://wiki.ffxiclopedia.org/wiki/Talk: ... -Golem!%3F
Hmmm, looking at my directory I only see a handful of NM scripts. So normally, the regular mobs would have their own scripts as well? One script per mob name right? Not one per mob?
Also during the cut scenes in Fei'Yin my server spit out an error: [Warning] Server need NPC <17613218> . I assume this means the big dormant Golem that is in the room with the quest NPC, which is in fact missing.

If you know what the NPC is supposed to look like and it only exists inside of cutscenes, then you can copy a similar NPC and change its ID to that one and set its position to the correct zone at x:0 y:0 z:0 and it should only show up during cutscenes and get rid of that warning. If you don't have the info you need then you may need to cap some of it from retail.
IIRC from retail, it is simply a model of a Golem that stands around, even when there is no cs. In fact, technically Rukususu shouldn't have any script and it should instead be the cermet door in front of her. But instead the door just opens when you click it, admitting you into the room. Rukususu already had a script going so I didn't want to meddle.


You may want to consider providing a patch instead of scripts if you want to provide changes to several files or files that are subject to frequent updates. There are instructions on how to make a patch in one of the sticky posts in the contributing section.
Thanks, I'll look into it!

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 10:44 am
by ik2012
PrBlahBlahtson wrote:zoneid 204...
SELECT * FROM pxi.npc_list where zone = 204;...
Hmm, names don't help.
17613218 = 0x010CC1A2...
...dat's a lotta Cermet doors...
0x010CC1A2 is a no-name NPC ... Moogle, blank, Rukususu, 0x010CC1A2, Treasure Chest, Dalzakk
In pXI, that makes it... 17313181
INSERT INTO `npc_list` VALUES (17613181, 'no_name_1', 381, 15, 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);
Convert that to DSP table structure and we have

Code: Select all

INSERT INTO `npc_list` VALUES (17613218, 'no_name_1', 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);
Adjust as you see fit :) @costume 432 is a golem.
Damn, nice work sir. I'll check this out later today and report back :D

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 2:10 pm
by bluekirby0
ik2012 wrote:
Can I get a reference for this? I don't see anything about it on ffxiclopedia so I'm not entirely sure what you need, but it seems likely you are looking for onMobDeath in the appropriate mob script for the zone.
Sure, it's actually on the talk page for the golem quest: http://wiki.ffxiclopedia.org/wiki/Talk: ... -Golem!%3F
Hmmm, looking at my directory I only see a handful of NM scripts. So normally, the regular mobs would have their own scripts as well? One script per mob name right? Not one per mob?
Yes, all mobs in the database have a script that is used if it exists in the appropriate location. The mob name in the "mob_spawn_points" table is the name of the script that the game will look for (and you can change that name if you need to single a mob out for any reason). Every mob with the same name in that table uses the same script.

Looking at those comments, I would say you need to set a script on dolls golems and pots in Fei'Yin that adds to a counter variable which is then checked in the turn-in script.

As for the door triggering the quest instead of the NPC, you should be able to move the script to the door and add a "return 1" to the end of the onTrigger section if the door isn't supposed to open. If you are supposed to be able to activate the NPC normally you will have to do a little more work to get it working right.

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 4:53 pm
by ik2012
I'm not sure if a counter would be the best approach. The plan right now is to delete the SHANTOTTOS_NEW_SPELL key item in onMobDeath and add SHANTOTTOS_EX_SPELL. Still not home from work, so I imagine I won't make any real progress until tomorrow.

Not positive about the issue with the door, but at least from the golem quest page on the wiki it sounds like the door remains closed at all times and you only truly see Rukususu in the cs. I will have to check some of the other quest/mission pages to see if I can verify that. So if I do have to move the script to the door, what is the appropriate way to identify that one door?

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 6:39 pm
by bluekirby0
the sql file will be sorted by zone. you can do an @where near the door to get your position and then compare that to the database entries in the correct zone.

Re: Shantotto's quest line - 95% complete

Posted: Fri Dec 21, 2012 8:20 pm
by ik2012
Seems simple enough :D

Re: Shantotto's quest line - 95% complete

Posted: Sat Dec 22, 2012 2:17 am
by ik2012

Code: Select all

INSERT INTO `npc_list` VALUES (17613218, 'no_name_1', 0, -195.5, 0, 189.902, 17, 40, 40, 0, 0, 0, 0, 2075, 0x0000b00100000000000000000000000000000000, 32, 204);
Adjust as you see fit :) @costume 432 is a golem.
Works great! That was amazing..