-
Notifications
You must be signed in to change notification settings - Fork 758
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Horror Toy Factory Instance implementation based on official conversion. #1539
base: master
Are you sure you want to change the base?
Conversation
Such great release, what's missing in source parts other than those two commands? (possible description?). |
@hemagx |
possible description? |
Script commands actually is like the ones from AnnieRuru: http://herc.ws/board/topic/11097-setmobdata-getmobdata/ to check and adjust monsters hp according to the script. And the skills are the ones commented on mob_skill_db.txt |
Just to mention somethings
|
db/re/item_db.conf
Outdated
Loc: 136 | ||
EquipLv: 100 | ||
Script: <" | ||
bonus bMaxSP ,-300; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
space here
db/re/item_db.conf
Outdated
Type: 0 | ||
Weight: 20 | ||
BuyingStore: true | ||
Script: <" itemheal 0, rand(80,100); "> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
space here
db/re/item_db.conf
Outdated
Type: 0 | ||
Weight: 20 | ||
BuyingStore: true | ||
Script: <" itemheal rand(800,1000), 0; "> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
space here
db/re/item_db.conf
Outdated
Weight: 10 | ||
Loc: 64 | ||
Script: <" | ||
.@r = getrefine(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no need to use a variable here check #1441
db/re/item_db.conf
Outdated
Loc: 64 | ||
Script: <" | ||
.@r = getrefine(); | ||
bonus2 bAddRace, RC_All, 1+.@r/2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spaces
db/re/item_db.conf
Outdated
Script: <" | ||
.@r = getrefine(); | ||
bonus2 bAddRace, RC_All, 1+.@r/2; | ||
bonus bMatkRate, 1+.@r/2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spaces
db/re/item_db.conf
Outdated
.@r = getrefine(); | ||
bonus2 bAddRace, RC_All, 1+.@r/2; | ||
bonus bMatkRate, 1+.@r/2; | ||
bonus bMaxHPrate, -2-2*(.@r/2); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spaces
db/re/item_db.conf
Outdated
Loc: 2 | ||
Script: <" | ||
bonus bMatkRate, 10; | ||
bonus5 bAutoSpell, NPC_CRITICALWOUND, 3, 50+5*(getrefine()/3), BF_MAGIC, 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spaces
@hemagx Skill 719 - NPC_HELLBURNING https://youtu.be/jHtsfjvNXm8?t=107 I have no idea of formulas or anything. But iRO added a site on their wiki for HTF on 15th Dec. Maybe they gonna add it and probably add skill description and formulas too. |
That part was more a conversion more stricted to original script, it almost hasn't improvement, not as for instance. I guess it's better to improve it like on example. However, the usage of disable_items it is not needed, since that npc doesn't make any evaluation that involves equiped gears. Put them is meaningless, as well as don't puting it (or puting it commenting it with a note pointing that).
About translation, this text was translated some days before or by the same days of implementation of htf on iRO from chinese by a person who naturally speak chinese (as far as I know). I think this are well doned (as many other scripts that has also custom translation before were implemented by iRO). I would not mind to gather text from iRO, but I don't have the characters to met the instance requierement. As for the spaces, it will be fixed. |
@ragn0 I could give you the texts from iRO since i already gathered them when they released the instance. |
iRO translation is always the last option to follow. We use it on some other scripts but in most cases it has issues with grammar and more. |
Sorry my english I'm using google translator Is quest_db missing? |
Yes, it was missed quest_db entryes. Our mistake. It will be added in the same commit that fixes Asheraf's review. |
Prior to send new commit, I have a question. According to kRO database, item 19686 - Costume Santa Doll Headband has an effect of small chance to become in Antonio: 산타인형을 모티브로 장식된 머리띠. Second line can be translated to: "Physical, Magical Attack: There is a certain probability to transform in Antonio." This is a Costume headgear. Does this has an effect? |
@ragn0 the item has the same description on iRO too |
Added requested changes, with some more cleaning and modifications that include changes to npctalk messages with a more accurate behavior, but, this will show double npc name until issue #1523 is fixed. |
Font weight |
Yes, I know, but it is a reminiscence from original script, that is why we keep that. |
Also, since we have chinese text thanks to esu1214, we could make traditional chinese translation file to have it with huld. Already pr here: HerculesWS/CommunityTranslations#1 It may be not a big issue for us, or at least to people who doesn't speak Traditional Chinese, but, it's kinda awesome to see HULD in action with a hard language as Chinese is. That kind of things make us feel proud to have Hercules. |
//= This file is part of Hercules. | ||
//= http://herc.ws - http://github.com/HerculesWS/Hercules | ||
//= | ||
//= Copyright (C) 2016 Hercules Dev Team |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
//= Copyright (C) 2017 Hercules Dev Team
break; | ||
case 4: | ||
.@mapy -= 2; | ||
.@mapx += rand(0, 2) - 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why not use this ?
.@mapy += rand(-1, 1);
break; | ||
case 3: | ||
.@mapy += 2; | ||
.@mapx += rand(0, 2) - 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why not use this ?
.@mapy += rand(-1, 1);
break; | ||
case 2: | ||
.@mapx -= 2; | ||
.@mapy += rand(0, 2) - 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why not use this ?
.@mapy += rand(-1, 1);
switch (.@i) { | ||
case 1: | ||
.@mapx += 2; | ||
.@mapy += rand(0, 2) - 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why not use this ?
.@mapy += rand(-1, 1);
setarray(.@xy[1], 195, 47, 211, 63); | ||
break; | ||
case 7: | ||
setarray(.@xy[1], 124, 44, 140, 60); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all array should start with index 0....
setarray(.@xy[1], 124, 44, 140, 60); | ||
break; | ||
case 8: | ||
setarray(.@xy[1], 154, 44, 170, 60); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all array should start with index 0....
setarray(.@xy[1], 154, 44, 170, 60); | ||
break; | ||
case 9: | ||
setarray(.@xy[1], 225, 19, 241, 35); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all array should start with index 0....
setarray(.@xy[1], 225, 19, 241, 35); | ||
break; | ||
case 10: | ||
setarray(.@xy[1], 201, 19, 217, 35); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all array should start with index 0....
for (.@i = 0; .@i < 22; ++.@i) { | ||
getmapxy(.@mapname$, .@mapx, .@mapy, UNITTYPE_MOB, 'xm_celine_gid); | ||
.@x = (.@mapx + rand(1, 20)) - 10; | ||
.@y = (.@mapy + rand(1, 20)) - 10; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.@x = (.@mapx + rand(1, 20)) - 10;
.@y = (.@mapy + rand(1, 20)) - 10;
change to
.@x = (.@mapx + rand(-9, 10));
.@y = (.@mapy + rand(-9, 10));
thanks for awesome work :D Sorry, but i have problems to install setmobdata patch |
@Emistry: Just applied requested changes to set arrays starting index to 0. Also make some improvements allowing to drop some lines and fix one message. About npc "#bgm01" and others npc, those are the official names, but it can be changed. I think the same before, but also remember there is npcs called "Weapon Dealer", "Tool Dealer", "Fruit Gardener" and "Armor Dealer" all attached to Dewata, so, I assume having "#bgm01" was natural. However, if need to be changed just tell me to change it. Also, I have another question. The "Workers" npcs summons monsters when player has not the right transform. Almost all of them centered the area to make the summons at 8 cells around the npc coords, almost all of them except Worker#9 and Worker#10. Those npc seems to be bug on Aegis and maybe those coords aren't correct. I leave a comment pointing those npcs on last pull request and I think it can be fixed, but I want to ask what can be done in this cases. Fixing those coords would allow usage of getmapxy command to simplify the gathering of coordinates. |
the npc, just suggestion .. since its official npc name, then just ignore it then. about the monster spawn location, I have no idea, could be a bug for aegis ... maybe @HerculesWS/developers can help .... |
After check it deeply I just saw those coordinates are intended for those specific npcs, so, didn't changed them. Applied some cleaning and also introduced a function to allow server administrators to choose if enable re-entering to htf instance on same runing or deny re-entering instance (official and defaulted behaviour). If that function isn't needed I can remove it, but it has been so requested in our server that decided to share with everyone. @Ridley8819, @Asheraf @Jedzkie: Please tell me after review changes to squash commits. |
Squashed commits and updated pull request with new template. |
Just removed an extra usage of one parenthesis at line 922:
changes to:
@Asheraf: It's marking you are still requesting changes, I did those some time ago. |
db/re/item_db.conf
Outdated
Weight: 10 | ||
Loc: 64 | ||
Script: <" | ||
bonus2 bAddRace, RC_All, 1 +getrefine()/2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 + getrefine() / 2
db/re/item_db.conf
Outdated
Loc: 64 | ||
Script: <" | ||
bonus2 bAddRace, RC_All, 1 +getrefine()/2; | ||
bonus bMatkRate, 1 +getrefine()/2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 + getrefine() / 2
db/re/item_db.conf
Outdated
Script: <" | ||
bonus2 bAddRace, RC_All, 1 +getrefine()/2; | ||
bonus bMatkRate, 1 +getrefine()/2; | ||
bonus bMaxHPrate, -2 -(getrefine()/2) *2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-2 - (getrefine() / 2) * 2
db/re/item_db.conf
Outdated
Loc: 2 | ||
Script: <" | ||
bonus bMatkRate, 10; | ||
bonus5 bAutoSpell, NPC_CRITICALWOUND, 3, 50 +5 *(getrefine()/3), BF_MAGIC, 1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
50 + 5 * (getrefine() / 3)
db/re/item_db.conf
Outdated
Buy: 1440 | ||
Weight: 10 | ||
BuyingStore: true | ||
Script: <" if (rand(1000) < 300) sc_start SC_CURSE, 30000, 0, 3000, SCFLAG_NONE; "> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in a new line
db/re/item_db.conf
Outdated
bonus4 bAutoSpell, WZ_FROSTNOVA, 10, 25, 0; | ||
bonus4 bAutoSpell, SO_PSYCHIC_WAVE, 10, 15, 1; | ||
bonus5 bAutoSpell, HW_MAGICPOWER, 1, 15, BF_MAGIC, 0; | ||
bonus5 bAutoSpellWhenHit, DC_SCREAM, 1, 50, BF_WEAPON|BF_MAGIC, 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spaces BF_WEAPON | BF_MAGIC
Aplied review. Thanks @Asheraf. |
@Mysteries I'd prefer waiting #1584 before merging this. |
Signed-off-by: Ragno <ragno@atlantis-ro.net>
I have solved the conflicts. Conflict was originated on f75bfae, when was moved all mapflags for instances to zone db, making it easier to bring mapflags to new instances. As result, files changed was reduced from 17 to only 9. About the merge, this instance is completely playable even without the unit controlling script commands in #1584, but this instance is easier without it. Same for #1571, this is playable, but The script is prepared to use those pr, I'm with @Asheraf, it would be better to have those pr applied before merging this into master. |
…fixup] Signed-off-by: Ragno <ragno@atlantis-ro.net>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PCBLOCK isnt usable now.
mob_skill_db need an Upgrade to the new shema.
All other things are just working, still need some updates.
Here are mine Sheme from the Mob Skill DB:
XM_TREE:{
AS_GRIMTOOTH: {
SkillState: "MSS_RUSH"
SkillLevel: 5
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_CURSEATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 3
Rate: 1000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_UNDEADATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 3
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MG_THUNDERSTORM: {
SkillState: "MSS_BERSERK"
SkillLevel: 10
Rate: 2000
CastTime: 1000
Delay: 10000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
TF_SPRINKLESAND: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MG_LIGHTNINGBOLT: {
SkillState: "MSS_RUSH"
SkillLevel: 10
Rate: 2000
CastTime: 1000
Delay: 30000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_ANTONIO: {
AL_TELEPORT: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AL_TELEPORT: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MSS_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_RUN: {
SkillState: "MSS_BERSERk"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 0
Cancelable: false
SkillTarget: "MSS_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_RUN: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 0
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
SA_REVERSEORCISH: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
SA_REVERSEORCISH: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MG_SAFETYWALL: {
SkillState: "MSS_BERSERK"
SkillLevel: 10
Rate: 1000
CastTime: 1000
Delay: 10000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AL_INCAGI: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 700
Delay: 1000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
}
XM_COOKIE:{
MG_COLDBOLT: {
SkillState: "MSS_BERSERK"
SkillLevel: 3
Rate: 500
CastTime: 500
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MG_COLDBOLT: {
SkillState: "MSS_RUSH"
SkillLevel: 3
Rate: 500
CastTime: 500
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_ENERGYDRAIN: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_ENERGYDRAIN: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
PR_LEXAETERNA: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
PR_LEXAETERNA: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
SA_REVERSEORCISH: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 50
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
SA_REVERSEORCISH: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 50
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_CRUISER:{
NPC_COMBOATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 2
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
AC_CHARGEARROW: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
AC_CHARGEARROW: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 2000
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
AC_DOUBLE: {
SkillState: "MSS_BERSERK"
SkillLevel: 7
Rate: 2000
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_MYSTCASE:{
NPC_WIDESILENCE: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
BS_HAMMERFALL: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 500
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_CURSEATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 4
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_HALLUCINATION: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_HALLUCINATION: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_LUDE: {
AS_CLOAKING: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AS_CLOAKING: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AS_CLOAKING: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
MO_BODYRELOCATION: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MO_BODYRELOCATION: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_HYLOZOIST:{
NPC_SILENCEATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 4
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_HALLUCINATION: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_HALLUCINATION: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MO_BODYRELOCATION: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
AS_CLOAKING: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AS_CLOAKING: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_TELEKINESISATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 8
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_MARIONETTE:{
AS_CLOAKING: {
SkillState: "MSS_RUSH"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 10000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
AS_CLOAKING: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 2000
CastTime: 0
Delay: 10000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
MG_FIREBALL: {
SkillState: "MSS_BERSERK"
SkillLevel: 8
Rate: 2000
CastTime: 800
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
MG_FIREWALL: {
SkillState: "MSS_RUSH"
SkillLevel: 8
Rate: 500
CastTime: 500
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_TELEKINESISATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 8
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_TEDDY_BEAR:{
NPC_CURSEATTACK: {
SkillState: "MSS_BERSERK"
SkillLevel: 4
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_CURSEATTACK: {
SkillState: "MSS_RUSH"
SkillLevel: 4
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_CRITICALSLASH: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 500
CastTime: 0
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
SA_DISPELL: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 50
CastTime: 1000
Delay: 15000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
BS_HAMMERFALL: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 500
CastTime: 1000
Delay: 5000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
}
XM_CELINE_KIMI:{
AL_HEAL: {
SkillState: "MSS_IDLE"
SkillLevel: 10
Rate: 10000
CastTime: 500
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 90
}
NPC_CRITICALWOUND: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 1000
CastTime: 0
Delay: 10000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_PULSESTRIKE: {
SkillState: "MSS_BERSERK"
SkillLevel: 3
Rate: 10000
CastTime: 0
Delay: 20000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_DARKSTRIKE: {
SkillState: "MSS_BERSERK"
SkillLevel: 10
Rate: 500
CastTime: 0
Delay: 20000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_DARKTHUNDER: {
SkillState: "MSS_BERSERL"
SkillLevel: 9
Rate: 500
CastTime: 1000
Delay: 20000
Cancelable: true
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_WIDESTONE: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 10000
CastTime: 1000
Delay: 30000
Cancelable: true
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_WIDESLEEP: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 10000
CastTime: 1000
Delay: 30000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 20
}
NPC_WIDESOULDRAIN: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 10000
CastTime: 5000
Delay: 50000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 10
}
NPC_POWERUP: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 10000
CastTime: 0
Delay: 50000
Cancelable: false
SkillTarget: "MST_"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 5
}
}
G_XM_CELINE_KIMI:{
AL_HEAL: {
SkillState: "MSS_IDLE"
SkillLevel: 10
Rate: 10000
CastTime: 500
Delay: 5000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 90
}
NPC_CRITICALWOUND: {
SkillState: "MSS_BERSERK"
SkillLevel: 2
Rate: 1000
CastTime: 0
Delay: 10000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_PULSESTRIKE: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 20000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_DARKSTRIKE: {
SkillState: "MSS_BERSERK"
SkillLevel: 5
Rate: 500
CastTime: 0
Delay: 20000
Cancelable: false
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_DARKTHUNDER: {
SkillState: "MSS_BERSERL"
SkillLevel: 4
Rate: 500
CastTime: 1000
Delay: 20000
Cancelable: true
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_WIDESTONE: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 10000
CastTime: 1000
Delay: 30000
Cancelable: true
SkillTarget: "MST_TARGET"
CastCondition: "MSC_ALWAYS"
}
NPC_WIDESLEEP: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 10000
CastTime: 1000
Delay: 30000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 20
}
NPC_WIDESOULDRAIN: {
SkillState: "MSS_BERSERK"
SkillLevel: 3
Rate: 10000
CastTime: 5000
Delay: 50000
Cancelable: true
SkillTarget: "MST_SELF"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 10
}
NPC_POWERUP: {
SkillState: "MSS_BERSERK"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 50000
Cancelable: false
SkillTarget: "MST_"
CastCondition: "MSC_MYHPLTMAXRATE"
val0: 5
}
}
HIDDEN_MOB7: {
NPC_INVISIBLE: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
NPC_INVISIBLE: {
SkillState: "MSS_IDLE"
SkillLevel: 1
Rate: 10000
CastTime: 0
Delay: 30000
Cancelable: false
SkillTarget: "MST_SELF"
CastCondition: "MSC_ALWAYS"
}
}
Just Use raw data from HerculesWS#1539 and updated setpcblock() script command with work from Kenpachi2k13 to use it now. ToDO: - Fix setunitdata() to work correctly - Add Skill IDs 716 and 719
Pull Request Prelude
Changes Proposed
This is a conversion from the script provided by esu1214 from Hercules' Boards in a collaboration with @Ridley8819 and @AtlantisRO, with the translation from Traditional Chinese language by Steph.
Affected Branches:
master
Issues addressed: #240 Episode 14.2 : Eclage (Part of TODO list of updates)
Known Issues and TODO List
This change is