Skip to content
This repository has been archived by the owner on Dec 28, 2019. It is now read-only.

Commit

Permalink
DB improvement + 2nd job info
Browse files Browse the repository at this point in the history
Fixed a major performance problem with installing over 10000 threads when a given amount of accounts exists on the DB.
Added information for the available 2nd jobs of the Explorers, introducing to the players the gists of each job branch.
  • Loading branch information
ronancpl committed Dec 2, 2017
1 parent a3b6cf5 commit 8dba695
Show file tree
Hide file tree
Showing 7 changed files with 85 additions and 39 deletions.
5 changes: 4 additions & 1 deletion docs/mychanges_ptbr.txt
Original file line number Diff line number Diff line change
Expand Up @@ -703,4 +703,7 @@ Aprimorado mec

28 Novembro 2017,
Diversas refatora��es de classes no projeto.
Novo release: HeavenMS.
Novo release: HeavenMS.

02 Dezembro 2017,
Adicionado informa��o de classes nos NPCs para os 2o jobs de Explorer.
29 changes: 18 additions & 11 deletions scripts/npc/1012100.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,9 @@ function action(mode, type, selection) {
if (cm.canHold(1452051) && cm.canHold(2060000)){
if (cm.getJobId() == 0){
cm.changeJobById(300);
cm.gainItem(1452051, 1);
cm.gainItem(2060000, 1000);
cm.resetStats();
cm.gainItem(1452051, 1);
cm.gainItem(2060000, 1000);
cm.resetStats();
}
cm.sendNext("Alright, from here out, you are a part of us! You'll be living the life of a wanderer at ..., but just be patient as soon, you'll be living the high life. Alright, it ain't much, but I'll give you some of my abilities... HAAAHHH!!!");
} else {
Expand All @@ -95,12 +95,14 @@ function action(mode, type, selection) {
}
} else if (status == 2)
cm.sendNextPrev("You've gotten much stronger now. Plus every single one of your inventories have added slots. A whole row, to be exact. Go see for it yourself. I just gave you a little bit of #bSP#k. When you open up the #bSkill#k menu on the lower left corner of the screen, there are skills you can learn by using SP's. One warning, though: You can't raise it all together all at once. There are also skills you can acquire only after having learned a couple of skills first.");
else
cm.dispose();
} else if(actionx["2ndJob"]){
else if (status == 3)
cm.sendNextPrev("Now a reminder. Once you have chosen, you cannot change up your mind and try to pick another path. Go now, and live as a proud Bowman.");
else
cm.dispose();
} else if(actionx["2ndJob"]){
if (status == 0){
if (cm.haveItem(4031012))
cm.sendSimple("Alright, when you have made your decision, click on [I'll choose my occupation] at the bottom.#b\r\n#L0#Please explain to me what being the Hunter is all about.\r\n#L1#Please explain to me what being the Crossbowman is all about.\r\n#L2#I'll choose my occupation!");
cm.sendSimple("Alright, when you have made your decision, click on [I'll choose my occupation] at the bottom.#b\r\n#L0#Please explain to me what being the Hunter is all about.\r\n#L1#Please explain to me what being the Crossbowman is all about.\r\n#L3#I'll choose my occupation!");
else {
cm.sendNext("Good decision. You look strong, but I need to see if you really are strong enough to pass the test, it's not a difficult test, so you'll do just fine. Here, take my letter first... make sure you don't lose it!");
if(!cm.isQuestStarted(100000)) cm.startQuest(100000);
Expand All @@ -117,8 +119,13 @@ function action(mode, type, selection) {
cm.dispose();
}
} else {
if (selection < 2){
cm.sendNext("Not done.");
if (selection < 3){
if(selection == 0) { //hunter
cm.sendNext("Archers that master #rBows#k.\r\n\r\n#bHunters#k have a higher damage/minute output in early levels, with attacks having a faster pace but slightly weaker than Crossbowmans. #bHunters#k get #rArrow Bomb#k, a slightly weaker attack that can cause up to 6 enemies to get stunned.");
} else if(selection == 1) { //crossbowman
cm.sendNext("Archers that master #rCrossbows#k.\r\n\r\n#bCrossbowmans'#k attack power grows higher the higher level you are, when compared to Hunters. #bCrossbowmans#k get #rIron Arrow#k, a stronger attack that does not home on enemies but can go through walls.");
}

status -= 2;
} else
cm.sendSimple("Now... have you made up your mind? Please choose the job you'd like to select for your 2nd job advancement. #b\r\n#L0#Hunter\r\n#L1#Crossbowman");
Expand All @@ -138,7 +145,7 @@ function action(mode, type, selection) {
else if (status == 5)
cm.sendNextPrev("I have also given you a little bit of #bSP#k. Open the #bSkill Menu#k located at the bottomleft corner. you'll be able to boost up the newer acquired 2nd level skills. A word of warning, though. You can't boost them up all at once. Some of the skills are only available after you have learned other skills. Make sure yo remember that.");
else if (status == 6)
cm.sendNextPrev((job == 310 ? "Hunter" : "Crossbowman") + " need to be strong. But remember that you can't abuse that power and use it on a weaking. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
cm.sendNextPrev((job == 310 ? "Hunter" : "Crossbowman") + " need to be strong. But remember that you can't abuse that power and use it on a weakling. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
} else if (actionx["3thJobI"]){
if (status == 0){
if (cm.getPlayer().gotPartyQuestItem("JB3")){
Expand Down Expand Up @@ -258,6 +265,6 @@ function action(mode, type, selection) {
else if (status == 5)
cm.sendNextPrev("I have also given you a little bit of #bSP#k. Open the #bSkill Menu#k located at the bottomleft corner. you'll be able to boost up the newer acquired 2nd level skills. A word of warning, though. You can't boost them up all at once. Some of the skills are only available after you have learned other skills. Make sure yo remember that.");
else if (status == 6)
cm.sendNextPrev((job == 310 ? "Hunter" : "Crossbowman") + " need to be strong. But remember that you can't abuse that power and use it on a weaking. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
cm.sendNextPrev((job == 310 ? "Hunter" : "Crossbowman") + " need to be strong. But remember that you can't abuse that power and use it on a weakling. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
}
}*/
17 changes: 13 additions & 4 deletions scripts/npc/1022000.js
Original file line number Diff line number Diff line change
Expand Up @@ -88,15 +88,17 @@ function action(mode, type, selection) {
cm.gainItem(1302077, 1);
cm.resetStats();
}
cm.sendNext("From here on out, you are going to the (Incomplete)");
cm.sendNext("From here on out, you are going to the Warrior path. This is not an easy job, but if you have discipline and confidence in your own body and skills, you will overcome any difficulties in your path. Go, young Warrior!");
} else {
cm.sendNext("Make some room in your inventory and talk back to me.");
cm.dispose();
}
} else if (status == 2)
cm.sendNextPrev("You've gotten much stronger now. Plus every single one of your inventories have added slots. A whole row, to be exact. Go see for it yourself. I just gave you a little bit of #bSP#k. When you open up the #bSkill#k menu on the lower left corner of the screen, there are skills you can learn by using SP's. One warning, though: You can't raise it all together all at once. There are also skills you can acquire only after having learned a couple of skills first.");
else if (status == 3)
cm.sendNextPrev("One more warning. Once you have chosed you (Incomplete)");
cm.sendNextPrev("Now a reminder. Once you have chosen, you cannot change up your mind and try to pick another path. Go now, and live as a proud Warrior.");
else
cm.dispose();
} else if(actionx["2ndJob"]){
if (status == 0){
if (cm.haveItem(4031012))
Expand All @@ -117,7 +119,14 @@ function action(mode, type, selection) {
}
}else{
if (selection < 3){
cm.sendNext("Make up your mind and then talk to me."); //there goes the explanation of the 3 WARRIOR PATHS.
if(selection == 0) { //fighter
cm.sendNext("Warriors that master #rSwords or Axes#k.\r\n\r\n#rFighters#k get #bRage#k, which boosts your party's weapon attack by 10. During 2nd job this is strongly appreciated, as it is free (except for -10 wep def, which is not going to impact the damage you take much at all), takes no Use slots and increases each party member's damage (except Mages) by several hundreds. The other classes can give themselves a weapon attack boost as well, but need items to do so. #rFighters#k also get #bPower Guard#k, reducing touch damage by 40% and deals it back to the monster. This is the main reason why #rFighters#k are considered soloers is because this reduces pot costs immensely.");
} else if(selection == 1) { //page
cm.sendNext("Warriors that master #rSwords or Maces/Blunt weapons#k.\r\n\r\n#rPages#k get #bThreaten#k, a skill that lowers the enemies' weapon defense and weapon attack by 20; this is mostly used to lower damage dealt to you. Pages also get #bPower Guard#k, reducing touch damage by 40% and deals it back to the monster. This is one of the main reason why #bPages/WKs#k are considered soloers, that's because this reduces pot costs immensely. Of course, constant KB and #bIce Charge#k helps also to the soloing factor.");
} else { //spearman
cm.sendNext("Warriors that master #rSpears or Polearms#k.\r\n\r\n#rSpearmen#k get #bHyper Body#k, which boosts your max HP/MP and that of your party by 60% when maxed. This skill is particularly useful for helping partied Thieves, Archers, and Mages to survive more hits from enemies and/or PQ bosses. They also get #bIron Will#k which gives +20 wep def and +20 mag def for 300 sec. It is basically a nerfed Bless with 100 seconds more duration but gives no accuracy or avoidability bonus. Even with this skill maxed, it isn't even close to being in the same league as Power Guard and is why Spearmen/Dark Knights are not considered a soloing class.");
}

status -= 2;
} else
cm.sendSimple("Now... have you made up your mind? Please choose the job you'd like to select for your 2nd job advancement. #b\r\n#L0#Fighter\r\n#L1#Page\r\n#L2#Spearman");
Expand All @@ -144,7 +153,7 @@ function action(mode, type, selection) {
else if (status == 5)
cm.sendNextPrev("I have also given you a little bit of #bSP#k. Open the #bSkill Menu#k located at the bottomleft corner. you'll be able to boost up the newer acquired 2nd level skills. A word of warning, though. You can't boost them up all at once. Some of the skills are only available after you have learned other skills. Make sure yo remember that.");
else if (status == 6)
cm.sendNextPrev((job == 110 ? "Fighter" : job == 120 ? "Page" : "Spearman") + " need to be strong. But remember that you can't abuse that power and use it on a weaking. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
cm.sendNextPrev((job == 110 ? "Fighter" : job == 120 ? "Page" : "Spearman") + " need to be strong. But remember that you can't abuse that power and use it on a weakling. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
} else if (actionx["3thJobI"]){
if (status == 0){
if (cm.getPlayer().gotPartyQuestItem("JB3")){
Expand Down
15 changes: 12 additions & 3 deletions scripts/npc/1032001.js
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,9 @@ function action(mode, type, selection) {
else if (status == 4)
cm.sendNextPrev("Now, one more word of warning to you. If you fail in battle from this point on, you will lose a portion of your total EXP. Be extra mindful of this, since you have less HP than most.");
else if (status == 5)
cm.sendPrev("This is all I can teach you. Good luck on your journey, young Magician.");
cm.sendNextPrev("This is all I can teach you. Good luck on your journey, young Magician.");
else
cm.dispose();
} else if(actionx["2ndJob"]){
if (status == 0){
if (cm.haveItem(4031012))
Expand All @@ -121,7 +123,14 @@ function action(mode, type, selection) {
}
}else{
if (selection < 3){
cm.sendNext("Not done.");
if(selection == 0) {
cm.sendNext("Magicians that master #rFire/Poison-based magic#k.\r\n\r\n#bWizards#k are a active class that deal magical, elemental damage. These abilities grants them a significant advantage against enemies weak to their element. With their skills #rMeditation#k and #rSlow#k, #bWizards#k can increase their magic attack and reduce the opponent's mobility. #bFire/Poison Wizards#k contains a powerful flame arrow attack and poison attack."); //f/p mage
} else if(selection == 1) {
cm.sendNext("Magicians that master #rIce/Lightning-based magic#k.\r\n\r\n#bWizards#k are a active class that deal magical, elemental damage. These abilities grants them a significant advantage against enemies weak to their element. With their skills #rMeditation#k and #rSlow#k, #bWizards#k can increase their magic attack and reduce the opponent's mobility. #bIce/Lightning Wizards#k have a freezing ice attack and a striking lightning attack."); //i/l mage
} else {
cm.sendNext("Magicians that master #rHoly magic#k.\r\n\r\n#bClerics#k are a powerful supportive class, bound to be accepted into any Party. That's because the have the power to #rHeal#k themselves and others in their party. Using #rBless#k, #bClerics#k can buff the attributes and reduce the amount of damage taken. This class is on worth going for if you find it hard to survive. #bClerics#k are especially effective against undead monsters."); //cleric
}

status -= 2;
} else
cm.sendSimple("Now... have you made up your mind? Please choose the job you'd like to select for your 2nd job advancement. #b\r\n#L0#Wizard (Fire / Poison)\r\n#L1#Wizard (Ice / Lighting)\r\n#L2#Cleric");
Expand All @@ -145,7 +154,7 @@ function action(mode, type, selection) {
else if (status == 5)
cm.sendNextPrev("I have also given you a little bit of #bSP#k. Open the #bSkill Menu#k located at the bottomleft corner. you'll be able to boost up the newer acquired 2nd level skills. A word of warning, though. You can't boost them up all at once. Some of the skills are only available after you have learned other skills. Make sure you remember that.");
else if (status == 6)
cm.sendNextPrev((job == 210 ? "Wizard (Fire / Poison)" : job == 220 ? "Wizard (Ice / Lighting)" : "Cleric") + " need to be strong. But remember that you can't abuse that power and use it on a weaking. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
cm.sendNextPrev((job == 210 ? "Wizard (Fire / Poison)" : job == 220 ? "Wizard (Ice / Lighting)" : "Cleric") + " need to be strong. But remember that you can't abuse that power and use it on a weakling. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
} else if (actionx["3thJobI"]){
if (status == 0){
if (cm.getPlayer().gotPartyQuestItem("JB3")){
Expand Down
13 changes: 10 additions & 3 deletions scripts/npc/1052001.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ function action(mode, type, selection) {
} else if (status == 2)
cm.sendNextPrev("You've gotten much stronger now. Plus every single one of your inventories have added slots. A whole row, to be exact. Go see for it yourself. I just gave you a little bit of #bSP#k. When you open up the #bSkill#k menu on the lower left corner of the screen, there are skills you can learn by using SP's. One warning, though: You can't raise it all together all at once. There are also skills you can acquire only after having learned a couple of skills first.");
else if (status == 3)
cm.sendNextPrev("One more warning. Once you have chosed you (Incomplete)");
cm.sendNextPrev("Now a reminder. Once you have chosen, you cannot change up your mind and try to pick another path. Go now, and live as a proud Thief.");
else
cm.dispose();
} else if(actionx["2ndJob"]){
if (status == 0){
if (cm.haveItem(4031012))
Expand All @@ -119,7 +121,12 @@ function action(mode, type, selection) {
}
}else{
if (selection < 3){
cm.sendNext("Not done.");
if(selection == 0) { //assassin
cm.sendNext("Thieves that master #rClaws#k.\r\n\r\n#bAssassins#k are far ranged attackers. They are quite Meso efficient and have good damage potential, but cost more than Bandits.");
} else if(selection == 1) { //bandit
cm.sendNext("Thieves that master #rDaggers#k.\r\n\r\n#bBandits#k are quick melee attackers and are quite powerful among the 2nd jobs. They aren't as Meso efficient as Assassins and do not have the benefit of ranged attack but make up for it in much greater raw power.");
}

status -= 2;
} else
cm.sendSimple("Now... have you made up your mind? Please choose the job you'd like to select for your 2nd job advancement. #b\r\n#L0#Assassin\r\n#L1#Bandit");
Expand All @@ -146,7 +153,7 @@ function action(mode, type, selection) {
else if (status == 5)
cm.sendNextPrev("I have also given you a little bit of #bSP#k. Open the #bSkill Menu#k located at the bottomleft corner. you'll be able to boost up the newer acquired 2nd level skills. A word of warning, though. You can't boost them up all at once. Some of the skills are only available after you have learned other skills. Make sure yo remember that.");
else if (status == 6)
cm.sendNextPrev((job == 410 ? "Assassin" : "Bandit") + " need to be strong. But remember that you can't abuse that power and use it on a weaking. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
cm.sendNextPrev((job == 410 ? "Assassin" : "Bandit") + " need to be strong. But remember that you can't abuse that power and use it on a weakling. Please use your enormous power the right way, because... for you to use that the right way, that is much harden than just getting stronger. Please find me after you have advanced much further. I'll be waiting for you.");
} else if (actionx["3thJobI"]){
if (status == 0){
if (cm.getPlayer().gotPartyQuestItem("JB3")){
Expand Down
Loading

0 comments on commit 8dba695

Please sign in to comment.