diff options
Diffstat (limited to 'npc/functions/event.txt')
-rw-r--r-- | npc/functions/event.txt | 44 |
1 files changed, 28 insertions, 16 deletions
diff --git a/npc/functions/event.txt b/npc/functions/event.txt index 5e3edca84..3ba1bb786 100644 --- a/npc/functions/event.txt +++ b/npc/functions/event.txt @@ -457,36 +457,36 @@ function script CraftmasterDay { if (!playerattached()) return; - // Date check - if (!$BETASERVER) - return; - if (gettime(7) != 2021) - return; - if (gettime(6) != JUNE) - return; - if (gettime(5) != 21) - return; - if (getmap() != "018-3") + // Event Check + if ($EVENT$ != "Worker") return; - // Scored a Blue Print (2.5%) - if (rand2(10000) < 250) { - if (BaseLevel > 80 && REBIRTH) + // Base chance is from 0.1% up to 2.5%, looping + .@odds = 10 + (MONSTERS_KILLED % 240); + // Your level reduces the odds of getting the blueprint + // (But unlocks higher rarity ones) (Can be negative) (Up to -0.2%) + .@odds -= (BaseLevel-10) / 10; + // At event map you get an extra 0.5% bonus + if (getmap() == "001-5") + .@odds += 50; + // Scored a Blue Print (up to 3.0% chance) + if (rand2(10000) < .@odds) { + if (BaseLevel >= 100 && REBIRTH) getitem any(EquipmentBlueprintE, AlchemyBlueprintE, EquipmentBlueprintD, AlchemyBlueprintD, EquipmentBlueprintC, AlchemyBlueprintC, EquipmentBlueprintB, AlchemyBlueprintB, EquipmentBlueprintA, AlchemyBlueprintA), 1; - else if (BaseLevel > 70) + else if (BaseLevel >= 80) getitem any(EquipmentBlueprintD, AlchemyBlueprintD, EquipmentBlueprintC, AlchemyBlueprintC, EquipmentBlueprintB, AlchemyBlueprintB, EquipmentBlueprintA, AlchemyBlueprintA), 1; - else if (BaseLevel > 45) + else if (BaseLevel >= 55) getitem any(EquipmentBlueprintC, AlchemyBlueprintC, EquipmentBlueprintB, AlchemyBlueprintB, EquipmentBlueprintA, AlchemyBlueprintA), 1; - else if (BaseLevel > 20) + else if (BaseLevel >= 30) getitem any(EquipmentBlueprintB, AlchemyBlueprintB, EquipmentBlueprintA, AlchemyBlueprintA), 1; else @@ -494,6 +494,18 @@ function script CraftmasterDay { return; } + // Date check + if (!$BETASERVER) + return; + if (gettime(7) != 2021) + return; + if (gettime(6) != JUNE) + return; + if (gettime(5) != 21) + return; + if (getmap() != "018-3") + return; + // Scored Monster Points (9%) if (rand2(10000) < 900) { .@mpt=rand2(BaseLevel*10, BaseLevel*100); // 600~6000 usually |