summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/re/mob_db.conf10
-rw-r--r--db/re/mob_skill_db.conf22
-rw-r--r--npc/003-0/mages.txt14
-rw-r--r--npc/020-7-1/_import.txt5
-rw-r--r--npc/020-7-1/core.txt1
-rw-r--r--npc/020-7-1/janitors.txt64
-rw-r--r--npc/020-7-1/pagefinders.txt45
-rw-r--r--npc/020-7-1/pagemakers.txt54
-rw-r--r--npc/020-7-1/sage.txt21
-rw-r--r--npc/020-7/_import.txt2
-rw-r--r--npc/020-7/elias.txt49
-rw-r--r--npc/020-7/workers.txt132
12 files changed, 413 insertions, 6 deletions
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index 0c80211f8..101beaf71 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -8378,7 +8378,7 @@ mob_db: (
Lv: 1
Hp: 2032
Sp: 0
- Exp: 5
+ Exp: 45
JExp: 8
AttackRange: 1
Attack: [81, 93]
@@ -8404,12 +8404,12 @@ mob_db: (
ChangeChase: true
CastSensorChase: true
}
- MoveSpeed: 300
+ MoveSpeed: 250
AttackDelay: 1872
AttackMotion: 672
DamageMotion: 200
Drops: {
- SulfurPowder: 100
+ SulfurPowder: 10
}
},
{
@@ -8417,7 +8417,7 @@ mob_db: (
SpriteName: "PsiConscience"
Name: "Psi Conscience"
Lv: 120
- Hp: 48016
+ Hp: 58016
Sp: 0
Exp: 70132
JExp: 200
@@ -8438,6 +8438,7 @@ mob_db: (
Race: 2
Element: (0, 1)
Mode: {
+ CanMove: true
CanAttack: true
Aggressive: true
ChangeTargetMelee: true
@@ -8445,6 +8446,7 @@ mob_db: (
CastSensorChase: true
Boss: true
}
+ MoveSpeed: 5000
AttackDelay: 3072
AttackMotion: 672
DamageMotion: 200
diff --git a/db/re/mob_skill_db.conf b/db/re/mob_skill_db.conf
index 8877371f7..8ab5ca960 100644
--- a/db/re/mob_skill_db.conf
+++ b/db/re/mob_skill_db.conf
@@ -1255,8 +1255,8 @@ SKILL_COND2 = {
/**********************************************************************/
PsiConscience: {
- NPC_SUMMONSLAVE: {
- SkillState: "MSS_ANY"
+ NPC_SUMMONMONSTER: {
+ SkillState: "MSS_ANYTARGET"
SkillLevel: 3
Rate: 10000
CastTime: 100
@@ -1265,6 +1265,24 @@ SKILL_COND2 = {
CastCondition: "MSC_ALWAYS"
val0: 1220
}
+ NPC_STUNATTACK: {
+ SkillState: "MSS_ANYTARGET"
+ SkillLevel: 1
+ Rate: 10000
+ CastTime: 100
+ Delay: 2000
+ SkillTarget: "MST_TARGET"
+ CastCondition: "MSC_CLOSEDATTACKED"
+ }
+ TF_BACKSLIDING: {
+ SkillState: "MSS_ANYTARGET"
+ SkillLevel: 1
+ Rate: 10000
+ CastTime: 100
+ Delay: 3000
+ SkillTarget: "MST_SELF"
+ CastCondition: "MSC_CLOSEDATTACKED"
+ }
}
}
diff --git a/npc/003-0/mages.txt b/npc/003-0/mages.txt
index 2ef40f8bd..4b057850a 100644
--- a/npc/003-0/mages.txt
+++ b/npc/003-0/mages.txt
@@ -26,3 +26,17 @@
// ALL_RESURRECTION (Revive at 10% HP. May insta-kill undead.)
// PR_ASPERSIO (Change anyone weapon to holy for 60s. Or 40 defense-disregard holy dmg to undead/evil)
// TF_DETOXIFY (cancels poison. 40% MP.)
+
+
+// New skills for storyline:
+// Health Conversion (Skill ID# 373, iRO Name: Indulge)
+// Converts 10% of your HP into SP. The higher the skill level the more effective the conversion will be. The conversion rate is 10:1 modified by SkillLV, so a 2000 HP Professor with Health Conversion LV 3 would consume 2000*10%=200 HP and obtain a total of 200*30%=60 SP.
+
+
+// Meditatio (Skill ID# 363)
+// When meditating (sitting), you will have a better SP Recovery as well as increase your Maximum SP. This skill also improves the amount of HP that are healed by the Heal skill by 2% per SkillLV (sitting is of course not required).
+// 1 Maximum SP +1%, SP Rec +3%, +2% Heal
+// 2 Maximum SP +2%, SP Rec +6%, +4% Heal
+// 3 Maximum SP +3%, SP Rec +9%, +6% Heal
+// 10 Maximum SP +10%, SP Rec +30%, +20% Heal
+
diff --git a/npc/020-7-1/_import.txt b/npc/020-7-1/_import.txt
index e231ccd83..81c8b454d 100644
--- a/npc/020-7-1/_import.txt
+++ b/npc/020-7-1/_import.txt
@@ -1,3 +1,8 @@
// Map 020-7-1: Blue Sages' Mansion
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/020-7-1/_warps.txt",
+"npc/020-7-1/core.txt",
+"npc/020-7-1/janitors.txt",
+"npc/020-7-1/pagefinders.txt",
+"npc/020-7-1/pagemakers.txt",
+"npc/020-7-1/sage.txt",
diff --git a/npc/020-7-1/core.txt b/npc/020-7-1/core.txt
new file mode 100644
index 000000000..8fbb318d2
--- /dev/null
+++ b/npc/020-7-1/core.txt
@@ -0,0 +1 @@
+// Core functions
diff --git a/npc/020-7-1/janitors.txt b/npc/020-7-1/janitors.txt
new file mode 100644
index 000000000..1163a2a1c
--- /dev/null
+++ b/npc/020-7-1/janitors.txt
@@ -0,0 +1,64 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// In charge to clear the mess
+// helperCleaning* + helperJanitor
+
+020-7-1,50,63,6 script Pyry NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("I warn about dangers and controls the fights.");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+020-7-1,53,39,0 script Nea NPC_BLUESAGEWORKER_FA,{
+ npctalk3 l("Crybaby about slimes");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+020-7-1,79,70,0 script Arvo NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("Investigation.");
+ goodbye;
+ end;
+
+OnInit:
+ end;
+}
+
+
+
+
+020-7-1,62,83,0 script Kristian NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("Same as Arvo.");
+ goodbye;
+ end;
+
+OnInit:
+ end;
+}
+
+
+
+020-7-1,40,78,0 script Mirjami NPC_BLUESAGEWORKER_FA,{
+ npctalk3 l("Checking storage, could give a reward for completion?");
+ goodbye;
+ end;
+
+OnInit:
+ end;
+}
+
diff --git a/npc/020-7-1/pagefinders.txt b/npc/020-7-1/pagefinders.txt
new file mode 100644
index 000000000..011239e99
--- /dev/null
+++ b/npc/020-7-1/pagefinders.txt
@@ -0,0 +1,45 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// Responsible for recovering the lost pages
+// helperBookpages*
+
+020-7-1,36,39,4 script Ensio NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("Collects book pages");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+020-7-1,33,39,4 script Henriikka NPC_BLUESAGEWORKER_FA,{
+ npctalk3 l("Currently helping Ensio, not useful");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+
+
+
+020-7-1,45,39,0 script Teuvo NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("Angry generic NPC, hates mages :o");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
diff --git a/npc/020-7-1/pagemakers.txt b/npc/020-7-1/pagemakers.txt
new file mode 100644
index 000000000..58188a8ea
--- /dev/null
+++ b/npc/020-7-1/pagemakers.txt
@@ -0,0 +1,54 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// Workers which produces pages
+// helperM*
+
+020-7-1,34,56,0 script Eevert NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("I make illustrations with ink/powders.");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+020-7-1,44,56,0 script Janika NPC_BLUESAGEWORKER_FA,{
+ npctalk3 l("I make bindings with silk cocoon.");
+ goodbye;
+ end;
+
+OnInit:
+ end;
+}
+
+
+
+020-7-1,45,31,4 script Kullervo NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("I make book pages with... something.");
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+
+
+020-7-1,36,31,4 script Santeri NPC_BLUESAGEWORKER_MA,{
+ npctalk3 l("I make glue with... not yeti claws, for sure.");
+ goodbye;
+ end;
+
+OnInit:
+ end;
+}
+
+
+
diff --git a/npc/020-7-1/sage.txt b/npc/020-7-1/sage.txt
new file mode 100644
index 000000000..fcb4e2c6c
--- /dev/null
+++ b/npc/020-7-1/sage.txt
@@ -0,0 +1,21 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// Blue Sage (and officers)
+
+// Peetu: Move to 020-7 (so, not on this file)
+
+// Oskari: Need to be placed somewhere here (on this file)
+
+020-7-1,35,59,0 script The Blue Sage NPC_BLUESAGEWORKER_MA,{
+ mesn l("Nikolai, the Blue Sage");
+ mes l("The big boss");
+ close;
+
+OnInit:
+ npcsit;
+ end;
+}
+
diff --git a/npc/020-7/_import.txt b/npc/020-7/_import.txt
index f049965c8..8ba944b64 100644
--- a/npc/020-7/_import.txt
+++ b/npc/020-7/_import.txt
@@ -1,3 +1,5 @@
// Map 020-7: Blue Sages' Mansion
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/020-7/_warps.txt",
+"npc/020-7/elias.txt",
+"npc/020-7/workers.txt",
diff --git a/npc/020-7/elias.txt b/npc/020-7/elias.txt
new file mode 100644
index 000000000..71200e6ce
--- /dev/null
+++ b/npc/020-7/elias.txt
@@ -0,0 +1,49 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// Controls access to Blue Sage Residence
+// Minimum level: 36 (implicit)
+
+// NivalisQuest_BlueSage STRUCTURE
+// FIELD 1:
+// INVESTIGATION
+// 1 - ACCESS GRANTED
+// 2~10 - FOLLOW LOGIC
+// FIELD 2:
+// BOOK MAKING QUEST
+// FIELD 3:
+// SLIME HUNTING QUEST
+
+020-7,43,42,0 script #BlueSageEntry NPC_HIDDEN,1,1,{
+OnTouch:
+ .@q=getq(NivalisQuest_BlueSage);
+ if (!.@q) {
+ slide 42, 43;
+ doevent "Elias::OnAccessDenied";
+ }
+ end;
+}
+
+020-7,40,41,0 script Elias NPC_SAGRATHA,{
+ .@q=getq(General_Narrator);
+ if (.@q < 10) {
+ npctalk3 l("ERROR/TODO: Explain that library and residence is off-limits");
+ } else {
+ npctalk3 l("ERROR/TODO: Grant access to Blue Sage Library after showing Rakinorf recommendation letter.");
+ }
+ goodbye;
+ end;
+
+OnAccessDenied:
+ npctalk3 l("You can't go in there!");
+ end;
+
+OnInit:
+ .sex=G_MALE;
+ .distance=5;
+ end;
+
+}
+
diff --git a/npc/020-7/workers.txt b/npc/020-7/workers.txt
new file mode 100644
index 000000000..5c4683e95
--- /dev/null
+++ b/npc/020-7/workers.txt
@@ -0,0 +1,132 @@
+// TMW2 scripts.
+// Authors:
+// Jesusalva
+// TMW Org.
+// Description:
+// Resting workers
+
+020-7,46,30,6 script Miro NPC_BLUESAGEWORKER_MA,{
+ function askQuestion;
+ mesn;
+ mesq l("I'm so tired... Slimes everywhere... Chaos everywhere... Yawn...");
+ next;
+ mesn;
+ mesq l("After cleaning for twelve hours straight, they allowed me to rest a bit.");
+ .@q=getq(NivalisQuest_BlueSage);
+ switch (.@q) {
+ case 1:
+ case 2:
+ break;
+ case 3:
+ case 4:
+ askQuestion(.Q_VISITOR);
+ break;
+ case 5:
+ case 8:
+ askQuestion(.Q_HELPER);
+ break;
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ askQuestion(.Q_VISITOR | .Q_HELPER);
+ break;
+ default:
+ next;
+ mesn;
+ mesq l("You did a good job too. Rest a bit, too. There's still one chair.");
+ close;
+ }
+ close;
+
+function askQuestion {
+ .@qs=getarg(0);
+ do {
+ .@q=getq(NivalisQuest_BlueSage);
+ next;
+ select
+ rif(.@qs & .Q_VISITOR, l("Do you know anything about the strange visitor?")),
+ rif(.@qs & .Q_HELPER, l("What's your opinion of Peetu and his work?")),
+ any(l("I need to leave."), l("See you."), l("Bye."));
+ mes "";
+ switch (@menu) {
+ case 1:
+ mesn;
+ mesq l("With a mask? I really don't know. I'm usually in the workshop and most of the visitors spend their time in the library. Sometimes they come to have a quick look in the workshop too, but I don't really pay attention to that, so... I can't recall a visitor with a mask, sorry.");
+ break;
+ case 2:
+ mesn;
+ mesq l("Peetu? He is very cautious. It is not like him to make mistakes. After all, he is a elf. Elves are really careful with their jobs.");
+ next;
+ mesn;
+ mesq l("If Nikolai's helpers weren't so carefully chosen, I'd think this was some kind of a bad joke from someone.");
+ if (is_between(4, 7, .@q))
+ setq1 NivalisQuest_BlueSage, .@q + 3;
+ break;
+ }
+ } while (@menu != 3);
+ close;
+}
+
+OnInit:
+ // Bitwise questions
+ .Q_VISITOR=1;
+ .Q_HELPER=2;
+
+ .sex=G_MALE;
+ .distance=5;
+ npcsit;
+ end;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+020-7,50,31,2 script Lenita NPC_BLUESAGEWORKER_FA,{
+ goodbye;
+ end;
+
+OnInit:
+ npcsit;
+ end;
+}
+
+