Compare commits

..

161 Commits

Author SHA1 Message Date
Aleos
1e01f6448f Merge branch 'master' into hotfix/issue4984 2023-01-09 13:05:01 -05:00
Lemongrass3110
913519ed50 Fixed online_char_db (#7539)
Added a missing map entry assignment from an invalid DBMap ensure conversion.

Fixes #7538

Thanks to @MaouDaiou and @zdurexz
2023-01-09 16:09:36 +01:00
Lemongrass3110
e64c5bce35 Fixed item restrictions for noreturn
Fixes #7537

Thanks to @mazvi
2023-01-09 15:12:31 +01:00
Lemongrass3110
4836d8e77a Added latest constants and names 2023-01-06 22:58:50 +01:00
Lemongrass3110
4fb6740ebf Replaced DBMap usage in char-server (#7514)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2023-01-06 20:29:01 +01:00
Lemongrass3110
c9aaf540bf Added reloadbarterdb (#7530)
Fixes #7520

Thanks to @attackjom
2023-01-06 00:23:25 +01:00
Balfear
134bfbe986 Added new guild UI features (#6285)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Null Ragnarok Relation <59070443+iberryRO@users.noreply.github.com>
2023-01-05 23:39:30 +01:00
Aleos
7323800838 Fixes shadowing for private variables (#7531)
* Fixes #7508.
* Follow C++ convention for private variable declaration.
Thanks to @Lemongrass3110 and @idk-whoami!
2023-01-05 12:30:39 -05:00
Lemongrass3110
9dda166c0e Converted cash shop database to YAML (#6299)
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2023-01-05 18:30:07 +01:00
Aleos
503b57dbef Add extra validation checks for map coordinates (#7526)
* Add extra validation checks for map coordinates
* Adds some extra validation checks for map coordinates when parsed in YAML.
2023-01-04 14:30:29 -05:00
Atemo
ea3464598d Added support for new maps up to december 21 2022 (#7525) 2023-01-04 15:19:57 +01:00
Jittapan Pluemsumran
857a34832f Prevent opening vending UI multiple times (#6430)
Prevent opening vending UI multiple times in one vending session.
Discard cart modification packet when the player is in a 'can't act' state.

Fixes #3408

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2023-01-04 15:19:26 +01:00
Atemo
3958a96771 Added sp_rudus4, dungeon level 200 (#7334)
* Added mobs db, mobs spawn and quests related to sp_rudus4

Thanks to @Dieby, @secretdataz !

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2023-01-03 22:51:34 +01:00
Aleos
b867a2171f Adds char_server config for clearing parties (#7523)
* Adds a character server config to clear empty parties at start up.
* The commented code was hidden in the source and is pretty useless unless you are digging for it.
2023-01-03 16:22:30 -05:00
Atemo
936abe13eb Doc update (#7517)
* Updated the description of instance_id and getitemname script commands
2023-01-03 20:55:55 +01:00
Lemongrass3110
1361e9c1df Enabled conformance mode in MSVS (#7513) 2023-01-03 18:50:16 +01:00
Lemongrass3110
64228cd18f Fixed bAddMonsterDropItemGroup (#7516)
Fixes #7515

Thanks to @AcDczZ
2022-12-30 22:03:55 +01:00
Atemo
d0b51d91a0 Fixed an issue with mail (#7518)
* mail should accept card with ID 0 (no card) when the parameter card is provided
2022-12-29 23:36:55 +01:00
Atemo
fa0253342a Added items etc, combo, equipment (#7507)
Added items Enchant
Added items reform
Small correction of a combo

Thanks to @fab10Carvalho for the review
2022-12-29 02:05:57 +01:00
Aleos
42eccbb1bf Merge branch 'master' into hotfix/issue4984 2022-12-24 00:35:02 -05:00
aleos
50bd9cdfbe Fixes statuses with tick intervals
* Adds a new storage location for these tick types.
* Reverts some of the tick_total variable assignments.
* Adjusts sc_start to account for 64 bit tick values.
Thanks to @eppc0330!
2022-12-23 16:22:35 -05:00
idk-whoami
323a541074 Item db updated (#7485)
* Implementations + corrections of a bunch of items
2022-12-21 15:12:18 +01:00
Aleos
70d729ecf8 Fixes GitHub Workflow Concurrency flag (#7505)
* Do not cancel master workflow.
2022-12-20 19:53:39 -05:00
Lemongrass3110
39d5a02a31 Initial release of adventure agency (#7224)
Thanks to @Dia, @OptimusM, @Balferian and @ecdarreola
2022-12-21 01:17:42 +01:00
Atemo
3d5cd57c54 Added new etc/equipment/enchant up to december 2022 (#7489)
* Implemented new equipments and etc
* Updated item_enchant.yml

Thanks to @attackjom !
2022-12-21 00:47:23 +01:00
Lemongrass3110
2c4ee64b59 Start refactoring the core to C++ (#7303) 2022-12-20 23:37:31 +01:00
Aleos
ef4d52fd7b Adds official Wand of Hermode clear list (#7494)
* Wand of Hermode has a unique status clear list separate from the list other skills use.
* Adds RemoveOnHermode status flag to identify statuses that can be removed from Wand of Hermode.
Thanks to @mrjnumber1 and @Lemongrass3110!
2022-12-20 17:05:27 -05:00
Lemongrass3110
3bfead228e Additional safeguards for upgrade_20221218.sql
Thanks to @mazvi for his help.
2022-12-20 20:20:05 +01:00
Singe Horizontal
9e476cce31 Fixed specialeffect with npc names (#7502)
Fixes #7501

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-12-20 17:27:59 +01:00
Lemongrass3110
448d8febfa Follow up to 3b71f77
Thanks to @Atemo
2022-12-20 14:09:58 +01:00
Balfear
3b71f77c27 pc_isUseitem: update flywings list (#7487)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-12-20 14:03:59 +01:00
idk-whoami
5b8d0ee6a5 Update EDP requirements (#7463)
Fixes #7458

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-12-19 12:19:30 +01:00
Balfear
9b6a4de288 Roulette: Bonus item reward (#7427)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-12-19 00:15:02 +01:00
Balfear
817b86d5e1 Roulette: Bonus item reward (#7427)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-12-19 00:14:38 +01:00
Atemo
0e948b5f9a Fixed a potential issue with getmapxy (#7498) 2022-12-18 13:15:57 +01:00
Lemongrass3110
eda702ca2c Fixed gaps in random options (#7449)
Fixes #7447

Thanks to @Abszoluto
2022-12-18 02:52:18 +01:00
Lemongrass3110
d1e184e46c Initial version of cashmall (#7450)
Introduces the cashmall
Added Cachua_Coupon exchange NPC
Enabled Devil Enchant Master and moved to Cash Mall
Moved Mergician
Added Basta, Mighty Hammer and Brock
Moved Shadow Blacksmith
Added Cash Hair Stylist
Added a feature switch for Stylist UI
Updated Hair Stylist

Thanks to @aleos89, @Atemo and @eppc0330!

Co-authored-by: aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
2022-12-18 00:39:50 +01:00
Pokye
ee91ab507a Item DB update (#7451)
* Added Missing Items
* Correction of several item names
* Added missing hateffects
2022-12-17 23:47:54 +01:00
Lemongrass3110
165e0d668f Fixed dynamic NPC timeout (#7497)
Fixes #7473
Updates the last interaction time on end; and close;
Additionally added the official dynamic NPC result packet.

Thanks to @eppc0330
2022-12-17 22:33:19 +01:00
idk-whoami
93cf18736a Update warper npc (#7413)
* Updated and added new warps entries up to episode 19
2022-12-17 14:15:02 +01:00
Atemo
b862aed75c Small correction for SHC_SAVAGE_IMPACT and SHC_DANCING_KNIFE skills (#7496)
* Small correction for SHC_SAVAGE_IMPACT and SHC_DANCING_KNIFE skills
* SHC_SAVAGE_IMPACT should move the player from 1 cell to the target, between the target and the player
* SHC_DANCING_KNIFE shouldn't force the player to stand
* The behaviour should be the same for GC_CROSSIMPACT than SHC_SAVAGE_IMPACT

Thanks to @aleos89 @Lemongrass3110 !
2022-12-17 14:08:09 +01:00
Lemongrass3110
ae686056a0 Added CodeQL analysis (#7208)
Adds CodeQL analysis because LGTM was disabled and removed.
2022-12-16 22:34:59 +01:00
Lemongrass3110
4d734abc53 Cleaned up monster skill status checks (#7495)
Fixes 4 more warnings introduced in 1f4c068
2022-12-16 21:56:55 +01:00
Atemo
ef602d98cb Multiple dynamic npc (#7486)
* Vectorize npc_id_dynamic to support multiple dynamic npc with different ids

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>

Thanks to @dimasshotta and @eppc0330 !
2022-12-16 21:22:31 +01:00
idk-whoami
20dedc7918 Update items first aid starter pack (#7493) 2022-12-16 20:24:47 +01:00
Singe Horizontal
8eac71f57f Cleaned struct tokens for map_session_data and status_change (#7490)
Fixes #7492
2022-12-16 19:16:29 +01:00
aleos
5676a45908 Resolves compile errors 2022-12-14 15:08:50 -05:00
Aleos
1c1bb9892c Merge branch 'master' into hotfix/issue4984 2022-12-14 14:41:56 -05:00
Aleos
da375a04c1 Adds battle config mob_respawn_time (#7312)
* Adjusts the minimum respawn time of a monster to be 1 second as it is officially.
* Adds a battle config to allow for easy adjustment.
* Monsters that don't define a delay1 for permanent spawn scripts are defaulted to 5 seconds.
Thanks to @mrjnumber1, @vstumpf, @Lemongrass3110, and @Atemo!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-12-14 14:17:41 -05:00
Vincent Stumpf
1f4c068c39 Refactor status change entries (#7356)
* Make map_session_data a class, call constructor/destructor on alloc/free

* add getSCE

* add create, delete, clear SCE

* Use getSCE, make data access private

* add a cache for last-fetched status
2022-12-13 23:47:53 -08:00
Aleos
ee2dcf816e New macro detection features (#7359)
* Adds battle config macro_detection_punishment to ban or jail characters.
* Adds battle config macro_detection_punishment_time to adjust the duration of ban/jail for players who fail the captcha challenges.
* Adds script command macro_detector which invokes the captcha challenge.
* General cleanups to the jail functions to remove duplicate code.
* General cleanups to the macro punishment calls to remove duplicate code.
* Ending SC_JAILED will now properly remove the jail status rather than trying to reset the timer to 1 second resolving any possibility of players getting stuck.
Thanks to @Lemongrass3110!
2022-12-13 15:44:42 -05:00
Singe Horizontal
5a533a7a12 Fixes drop rate for size-moded mobs (#7482)
* Fixes #7481.
* Restores correct drop rate for spawned size-modified monsters so that they read the current memory instead of the database value if changed.
2022-12-13 08:23:00 -05:00
Aleos
3545a9c82f Minor corrections to SQL readme (#7484)
* Cleans up a bit of the SQL readme so it's less confusing.
Thanks to @emmamarshall451!
2022-12-12 15:09:24 -05:00
Takius
a1798f7094 Fix skill SO_VARETYR_SPEAR (#7425)
* Corrects the hit type resulting in a variance of damage.
2022-12-12 10:53:40 -05:00
Singe Horizontal
1f1b5fe4a0 Restores Dispell removing NPC_AGIUP (#7479)
Fixes #7478
2022-12-11 11:06:07 +07:00
lighta
f7dbe79c34 Fix wedding skill checks (#5579)
* Fixes #5576 and fixes #7475.
* Fix WE_CALLPARTNER, WE_CALLPARENT and WE_CALLBABY fallthrough check.
* Adds usage of packet struct.
* Add autotrade check for WE_CALLPARTNER.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: aleos <aleos89@users.noreply.github.com>
2022-12-10 16:16:52 -05:00
Aleos
c951f68250 Merge branch 'master' into hotfix/issue4984 2022-12-09 14:54:37 -05:00
Aleos
aa2bbaa31f Update GitHub workflows (#7477)
* Updates gcc to work on Ubuntu 22.04.
* Force clang to use Ubuntu 20.04 until some build errors are resolved in the environment.
* Adds a concurrency check to disable any active prior runs when pushing a new commit.
2022-12-09 14:53:25 -05:00
aleos
9440ba8929 Minor clif fix
* tick_total is not a timer ID and thus a lookup is unnecessary.
2022-12-08 08:11:08 -05:00
aleos
9ff252d2b1 Merge branch 'master' into hotfix/issue4984 2022-12-07 13:12:16 -05:00
eppc0330
7bfae25c74 Fix grade upgrade fail announcement (#7189)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-12-05 09:55:58 +01:00
rosald
5549ad2ac2 Update agit_start_se.txt (#7448) 2022-11-30 22:07:43 +01:00
Jittapan Pluemsumran
c9f23e691a Follow up to 4e638838de (#7468) 2022-11-30 15:11:25 +07:00
idk-whoami
795414de4f Removed duplicates list of menu items (#7459)
(from ghost palace exchange npc)
2022-11-29 14:24:24 +01:00
Jittapan Pluemsumran
4e638838de Corrected server response when adding an item to a trade session fails. (#7462)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-11-29 13:24:34 +07:00
Vincent Stumpf
4661016445 Generate Reputation UI bson files (#7340) 2022-11-27 00:53:54 -08:00
Jittapan Pluemsumran
bc4934373d Implemented itemmoveinfov5.txt generator (#7457) 2022-11-26 17:33:27 +07:00
Atemo
9398f698fc Added missing etcs and equips items up to 22 11 2022 (#7453) 2022-11-24 18:35:21 +01:00
Atemo
4353ec3fec Added missing items usable/cash (#7456)
* Added several usable (container) and cash items
* Corrected some aegis item name
* Commented items with rate 0 for subgroup > 0
2022-11-24 13:58:26 +01:00
Aleos
3024d08a39 Fixes a crash from script command searchitem (#7446) 2022-11-19 08:54:47 -05:00
eppc0330
0e1285a94b Remove range & path check for NPC's skill cast (#7422) 2022-11-19 08:06:40 -05:00
Atemo
526a3fa048 Added close3 script command (#7439)
Thanks to @aleos89 @Lemongrass3110 @vstumpf !
2022-11-18 15:39:00 +01:00
Lemongrass3110
eb8587f5b5 Removed the strange ACK function concept (#7404)
Cleans up packet database a little more.
Turned some more packets into structs.

Co-authored-by: Vincent Stumpf <vincents.995@gmail.com>
2022-11-17 22:09:12 +01:00
Atemo
cc5770eda4 Removed deprecated script command "unitemote" (#7443) 2022-11-16 23:00:53 +01:00
Atemo
77aed690ea Small clean-up and correction in item_db / combo DB (#7442) 2022-11-16 23:00:39 +01:00
Livia Medeiros
129ce465b0 Adjust installation and service scripts (#7407)
* Fix install in directory with spaces

* Use $() notation instead of legacy backticks

* Fix help->start enlog message

* Fix typo

* Whitespace cleanup

* Fix restart delay

* Make get_status robust
2022-11-16 13:04:26 -08:00
Atemo
5d8e034868 Added HelpMeShorty dynamic npc and quest (#7415)
* Short quest to allow the player to summon, via an item, a dynamic NPC that gives basic game information.
* After level 30, the player can get a costume in exchange for the item.

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-11-16 14:42:53 +01:00
Aleos
15e27b3567 Updates the db README (#7436)
Updates the db README
Updates a couple examples from TXT to YML.
Wrap examples in code blocks
2022-11-15 23:31:07 +01:00
mazvi
9512eb81ca Added roulette command documentation (#7438)
Added roulette command atcommands.yml

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-11-15 22:47:08 +01:00
Atemo
c415b51b88 isdead script command (#7434)
* return true if a player is dead else false

Thanks to @aleos89 and @Lemongrass3110
2022-11-15 14:45:09 +01:00
Lemongrass3110
a090a0a7ba Added an atcommand for roulette (#7433) 2022-11-14 21:32:10 +01:00
violent01
03f04ed507 Fixed a small typo in Poring Village Instance (#7432) 2022-11-12 19:04:17 +01:00
Jittapan
3f7155bf84 Revert "Bumped db version"
This reverts commit 9db030fcc6.
2022-11-12 12:13:53 +07:00
Jittapan
9db030fcc6 Bumped db version 2022-11-12 12:12:57 +07:00
Balfear
a3703495a0 New Achievements & first aid starter pack (#7414)
Fixes #7406
2022-11-12 00:18:02 +01:00
SapitoSucio
55d3c1578c Itemlink command and integration (#7291)
Co-authored-by: Akkarinage <mike.langford@industrial-illusions.net>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: cydh<cydh@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: secretdataz<secretdataz@users.noreply.github.com>
2022-11-11 18:04:41 +01:00
Lemongrass3110
96efb0e426 Block dynamic NPCs in instances (#7429)
Fixes #7420

Thanks to @attackjom
2022-11-10 22:14:42 +01:00
Balfear
4cb1af31f8 Don't show attendance UI (#7424) 2022-11-10 13:35:27 +01:00
Livia Medeiros
d5bb710eb3 Fix typos (#7421) 2022-11-09 15:59:40 +07:00
Atemo
3515285f43 Correction of getpetinfo parameter in item db (#7401)
Fixed #7398

Thanks to @idk-whoami @kaninhot004 and @Lemongrass3110 !
2022-11-08 22:51:44 +01:00
Lemongrass3110
a763ad0629 Implemented dynamic NPCs (#7402)
This is required for features like #6640
Added COLOR_LIGHT_YELLOW
Cleaned up color definitions, its useless to store them as string first.
Dynamic NPCs will stay when you switch map and come back in time.
Dynamic NPCs will be removed instantly when you log out.
You can only create one dynamic NPC at a time.

Thanks to @Atemo!
2022-11-07 00:41:10 +01:00
Lemongrass3110
774d4ca2e8 Follow up to 99faa58
Thanks to @Singe-Horizontal
2022-11-06 22:51:36 +01:00
idk-whoami
8d536e7ffe Corrected script for some item #12 (#7399)
Thanks to @Atemo
2022-11-06 17:36:21 +01:00
Vietlubu
b351e40070 Fix item script for Paradise Luxury Suit (#7409) 2022-11-06 17:32:13 +01:00
Livia Medeiros
63c3e67d93 Fix typos in Renewal scripts (#7408) 2022-11-06 16:53:23 +01:00
Lemongrass3110
a76e7b8818 Cleanup for guild position change (#7405)
Fixes #7387
This not really fully fixes it, but it makes it more clear.
Additionally changed to structs.

Thanks to @MrAntares
2022-11-05 17:27:02 +01:00
Vincent Stumpf
bf2b62bc9c Fix an issue when running map-server-generator in opt mode (#7378) 2022-11-04 21:00:58 -07:00
Joam
9c0d574787 Adds reputation script command (#7374) 2022-11-03 18:30:58 +01:00
Jittapan
b28eac7b56 Cleaned up CZ_PC_SELL_ITEMLIST and its related functions
* Added a validation check for remaining item amount
2022-11-03 22:08:36 +07:00
HAO YAN
88d6d798c7 Minor fixes to plagiarize script commands (#7394)
* Fix plagiarizeskillreset unable to reset.
* Update plagiarizeskill documentation.
2022-11-02 13:50:18 -04:00
Aleos
66b348c547 Fixes NPC_COMET duration (#7388)
* Fixes #7355.
* Follow up to 2993c0b.
* Resolves an issue with the duration of Burning overlapping with the duration of NPC_COMET.
Thanks to @sonniez and @OptimusM!
2022-11-02 13:01:19 -04:00
idk-whoami
0018c39965 Locations correction of item ID 480023 (#7396) 2022-11-01 12:43:56 +07:00
eppc0330
2896ae21b0 Fix NPC_MAXPAIN skill mechanism (#5820)
* Max Pain will deal reflect damage to all characters on screen.
* Caster of Max Pain will get damaged.
* Max Pain will reflect both weapon and magic damage.
* Max Pain damages as special physical melee attack. PR_KYRIE, MG_SAFETYWALL, etc. can block the damage.
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Daegaladh <Daegaladh@users.noreply.github.com>
2022-10-31 13:54:53 -04:00
idk-whoami
73112801c6 Corrected script for some item (#7392)
* Added missing ; on active_transform and various fixes

Fixed #7382

Thanks to @kaninhot004 !
2022-10-29 23:33:45 +02:00
userid0
086a757235 Add navigenerator.bat to gitignore (#7386) 2022-10-26 08:20:48 -04:00
eppc0330
d0e39fbea7 Remove ASC_EDP nosave flag (#7384) 2022-10-25 15:55:09 +07:00
userid0
4836e09199 Fix compiler warning C4244. (#7295) 2022-10-24 10:02:27 -04:00
Pokye
de00e03bd9 Added Missing Shops Script (#7362)
* Added Character Position Change Coupon seller
* Added Emperium Seller

Thanks @aleos89 @Atemo @Balferian @Everade @secretdataz !
2022-10-23 13:54:16 +02:00
HAO YAN
9bf012d297 Update plagiarism script command name (#7377) 2022-10-22 15:11:17 -04:00
Atemo
59432412be Added missing SubType for item ID 1998 (#7373)
Fixed #7371

Thanks to @kaninhot004 !
2022-10-22 12:58:22 +02:00
Atemo
53d5fc609a Updated damagetaken (#7372)
Save damagetaken in mob_data for mob controller
2022-10-22 12:57:46 +02:00
Aleos
4a5b8e33dc Follow up to c3a171d (#7375)
* Fixes a compile warning.
2022-10-21 10:44:17 -04:00
HAO YAN
a001e1c6e3 Add Player Fame script commands (#7310)
* Add the ability to update and retrieve fame info of a character.
2022-10-20 13:05:39 -04:00
HAO YAN
07c18f248b Add getrandmobid script command (#7309)
* Used to generate random monster ID in NPC scripts.
2022-10-20 12:25:49 -04:00
HAO YAN
c3a171da81 Add skill_plagiarism script commands (#6304)
* Allow players to copy skills with script command skill_plagiarism.
* Plagiarized skills can be cleared with script command skill_plagiarism_reset.
2022-10-20 11:16:46 -04:00
HAO YAN
7d19b4bbdd Add cap_value script command (#7307)
* Supports int64.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-20 10:33:20 -04:00
Aleos
8073d4e084 Adds EndOnEnd node to status database (#7313)
* Any status defined under EndOnEnd will be removed when the status becomes inactive.
* Renames End to EndOnStart.
* Removes some hard coded statuses.
* Includes YamlUpgrade Tool update to rename End -> EndOnStart.
Thanks to @Lemongrass3110!
2022-10-20 10:04:00 -04:00
Atemo
bc2afbdfc2 SubType correction of item ID 28141 (#7368)
Fixed #7366

Thanks to @kaninhot004
2022-10-19 02:08:41 +02:00
Balfear
067ecbdeb4 Okolnir quest (missed warp coordinates) (#7286)
Added official warp coordinates in the quest
2022-10-17 11:34:01 +02:00
Atemo
43036926cf Added new items up to october 2022 (#7357)
* Removed duplicate combos and sorted the item ID in item_db_etc.yml
* Updated etc items
* Added equip items
2022-10-16 12:53:16 +02:00
Pokye
e95eb0ad84 Minor fix script Carbonated Water Vending Machine (#7361)
* Minor fix script Carbonated Water Vending Machine
* Added Atemo suggestion.

Fixed #7360
2022-10-15 12:05:05 +02:00
Aleos
d7bf5ebb58 Adds support for macro detection (#7315)
* Adds the official client macro detection system.
* Includes the ability to load imagery at server boot.
* See doc/captcha_db.txt for more information!
Thanks to @Asheraf and @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-14 10:54:19 -04:00
Atemo
750c7d72de Permanent mob spawn definition update (#7352)
* Added support for mob name (sprite) as parameter in mob permanent spawn definition

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-13 23:44:26 +02:00
Aleos
8138281d90 Fixes a possible size mismatch for isspace() (#7311)
* Fixes #5928.
* Passing a char type argument to isspace() could result in unpredictable results.
Thanks to @hyunji-Hong and @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-13 11:05:43 -04:00
Atemo
bbc516a4d5 Deprecated itemdb_exists (#7353)
Deprecated itemdb_exists to use item_db.exists() or item_db.find() instead

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-13 16:39:40 +02:00
Aleos
a9a47dcde4 Updates the cooldowns for new guild skills (#7306)
* Fixes #6184.
* Adjusts the cooldown of Charge Shout Flag to 15 minutes.
* Adjusts the cooldown of Charge Shout Beating to 15 minutes.
* Adjusts the cooldown of Emergency Move to 1 minute.
Thanks to @Everade and Dia!
2022-10-13 09:49:23 -04:00
Vincent Stumpf
64959d30cd Add custom depenencies for atcommand, script, and battle (#7274) 2022-10-13 15:06:00 +02:00
Aleos
fba0f4ee70 Fixes SA_DRAGONOLOGY MATK behavior (#7328)
* The MATK bonus should only be doubled versus Dragons, not quadrupled like the other bonuses.
* Confirmed the behaviors between pre-renewal and renewal.
Thanks to @mrjnumber1!
2022-10-13 08:26:42 -04:00
Atemo
e56694f161 Updated mapcache (#7354) 2022-10-13 12:22:30 +02:00
HAO YAN
f6633b5e7d Update Autopot NPC (#7308)
Fix delay shouldn't go below the `.MinDelay` or above `.MaxDelay`.
2022-10-12 23:27:24 +02:00
Aleos
7f82194eca Adds SC_WEAPONBREAKER status (#7265)
* Fixes #6915.
* Adds the SC_WEAPONBREAKER status which is applied via NPC_WEAPONBRAKER's self cast ability.
* Adds a chance to break a target's weapon at 2 * skill_lv% for 30 seconds.
Thanks to @Playtester!
2022-10-12 16:53:49 -04:00
Lemongrass3110
5b396bf7f1 Fixed some more hardcoded directions (#7317)
Replaced hardcoded numbers with their respective constants to increase maintainability and readability.
2022-10-12 22:38:22 +02:00
Lemongrass3110
e4e4ba1af0 Removed a debug message in web-server (#7305)
Fixes #7194
If a character/account logs in the first time, we silently store the default configuration in the foreseen tables now.
Fixes the problem that the client does not call account configuration save in newer versions and therefore always triggers the debug message.

Thanks to @idk-whoami
2022-10-12 21:44:03 +02:00
Vincent Stumpf
e28fb93f1e Fix warning when sending party message (#7350)
Fixes #7344
Thanks @24msz6eo
2022-10-12 21:04:51 +07:00
Lemongrass3110
311cda80af Fixed an invalid primary key in web.sql (#7304)
Fixes #7290

Thanks to @Tolimatoi
2022-10-11 23:41:08 +07:00
Aleos
3d3a5159e3 Updates NPC_SIEGEMODE comment to known behavior (#7327) 2022-10-11 08:03:30 -04:00
Vincent Stumpf
7b2a682c47 Fix pet_endautobonus crash (#7342)
Fixes #7292
2022-10-11 15:04:15 +07:00
idk-whoami
323a44ad86 Corrected rockridge shop name (#7341) 2022-10-11 00:04:24 +02:00
Atemo
7649947d50 Initial release of Juno monster society (#7323)
Thanks to @Daegaladh !
2022-10-11 00:03:13 +02:00
Jittapan Pluemsumran
43f5094620 Fixed "Unequip All" button not working on main server clients. Fixes #7337 (#7338) 2022-10-10 11:06:23 +07:00
Jittapan Pluemsumran
fa36ae27dd Fixed zero-length packet warning on party member logoff. Fixes #7324 (#7339)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-10-09 18:21:57 +07:00
Vincent Stumpf
6bb29c0743 add nlohmann json to better support web service (#7325) 2022-10-08 20:18:04 -07:00
Aleos
7d09041018 Updates the script command doc min/max int value (#7329) 2022-10-08 08:03:50 -04:00
Vincent Stumpf
0de6ff37f7 Add map-server-generator to gitignore (#7331) 2022-10-07 21:16:59 -07:00
Aleos
4ae56ba94c Fixes Marine Sphere behavior (#7333)
* Fixes #7332.
* Resolves an issue where Marine Sphere were not casting their skills after being hit.
Thanks to @violent01 and @Daegaladh!
2022-10-07 15:54:07 -04:00
Jittapan Pluemsumran
9d0fa3523e Allow Blacksmith Blessing usage on level 5 weapons and level 2 armors (#7326) 2022-10-07 22:28:27 +07:00
Kasper Sandin
b568f2fb11 Remove unclosed npc script code blocks (#7330) 2022-10-07 13:47:57 +07:00
mazvi
1b0c50ad01 Update bug_report.yml (#7294)
* Include command line steps to retrieve git hash.
Thanks to @Lemongrass3110
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-05 13:19:21 -04:00
Lemongrass3110
99faa588ad Fixed names of two timer functions (#7319)
Blame it on me in 01f61cfa
2022-10-05 16:31:03 +02:00
Atemo
79bb537fa2 Initial release of the Poring village instance (#7293)
* Initial release of the Poring village instance

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-10-04 21:19:48 +02:00
JohnnyPlayy
85a938ecce Implementing the Script Gemstone Bagger! (#7318)
* Adding The Gem Bagging!

* Adding suggestion from @aleos89 
* Adding suggestion from @Atemo
2022-10-04 21:18:06 +02:00
idk-whoami
48f1493747 Corrected script for some item #11 (#7277)
Thanks to @Atemo
Thanks to @Balferian
2022-10-04 19:47:57 +02:00
Atemo
edc7137176 Fixed several item scripts (#7316) 2022-10-04 16:05:28 +02:00
Jittapan Pluemsumran
19fe27932f Implemented refine result broadcast packet (#7301) 2022-10-04 15:27:25 +07:00
Jittapan Pluemsumran
6fc3a07247 Follow up to 588f321d08
[ci skip]
2022-10-03 14:36:48 +07:00
Jittapan Pluemsumran
588f321d08 Follow up to 39b3e5fe29 2022-10-03 12:46:07 +07:00
Jittapan Pluemsumran
39b3e5fe29 Jewelers across the server now sells more jewel items (#7320)
Follow-up for enchantgrade feature.
2022-10-03 12:36:32 +07:00
Sader Fawall
9c2576f47a duplicate npc command script (#5960)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-10-01 22:58:53 +02:00
Everade
c7ec076a6c Database entries for Episode 16.1 and 16.2 Memorial Dungeons (#7297)
Half Moon In The Daylight, Weekend Dungeon, Friday Dungeon
2022-10-01 04:03:46 +02:00
aleos
7a345b85cb Cleanups
Thanks to @Lemongrass3110!
2020-08-13 10:37:43 -04:00
aleos
da8d77bfc1 Corrects status icon timer after relog
* Fixes #4984.
* Resolves status icon timers not properly showing the difference of remaining/total time when a player relogs.
* Fixes status icon timers going into negative values.
Thanks to @attackjom!
2020-08-03 10:20:07 -04:00
299 changed files with 114798 additions and 12404 deletions

View File

@@ -6,7 +6,9 @@ body:
id: hash
attributes:
label: rAthena Hash
description: Please specify the rAthena [GitHub hash](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) on which you encountered this issue.
description: |
Please specify the rAthena [GitHub hash](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) on which you encountered this issue.
One way to get your hash is to type `git rev-parse --short HEAD` on your console.
validations:
required: true
- type: input

91
.github/workflows/analysis_codeql.yml vendored Normal file
View File

@@ -0,0 +1,91 @@
name: Analyse servers with CodeQL
# analysis_codeql.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
- master
pull_request:
paths:
# Always trigger all Github Actions if an action or something CI related was changed
- '.github/workflows/**'
- 'tools/ci/**'
# This workflow should run when a file in a source directory has been modified.
- 'src/**'
- '3rdparty/**'
jobs:
analyze:
# Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
# It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
if: "!contains(github.event.head_commit.message, 'ci-skip')"
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['10']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE','RE']
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
languages: cpp
# Trigger security and quality findings
# https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# TODO: Resolve the issues and then enable it again
#queries: +security-and-quality
# A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
- name: Variable Parsing - PRE
if: ${{ matrix.mode == 'PRE' }}
run: |
echo "PRERE=yes" >> $GITHUB_ENV
- name: Variable Parsing - RE
if: ${{ matrix.mode == 'RE' }}
run: |
echo "PRERE=no" >> $GITHUB_ENV
- name: Update & Install packages
# Ubuntu runners already have most of the packages rAthena requires to build.
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
run: |
sudo apt update
sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
#- name: Autobuild
# uses: github/codeql-action/autobuild@v2
# ✏️ If the Autobuild fails above, remove it and uncomment the following
# three lines and modify them (or add more) to build your code if your
# project uses a compiled language
- name: Command - configure
env:
CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-buildbot=yes'
run: ./configure $CONFIGURE_FLAGS
- name: Command - make clean
run: make clean
- name: Command - make server
run: make server
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -1,6 +1,10 @@
name: Build servers with Clang
# build_servers_clang.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,9 +26,9 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
os: [ubuntu-20.04]
# Version list can be found on https://github.com/marketplace/actions/install-clang
clang: ['6.0', '7', '8', '9', '10', '11'] #, '12', '13']

View File

@@ -1,6 +1,10 @@
name: Build servers with CMake
# build_servers_cmake.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,7 +26,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]

View File

@@ -1,6 +1,10 @@
name: Build servers with GCC
# build_servers_gcc.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,11 +26,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['7', '8', '9', '10']
gcc: ['9', '10', '11']
steps:
- uses: actions/checkout@v2

View File

@@ -1,6 +1,10 @@
name: Build servers in Pre-Renewal and Renewal
# build_servers_modes.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,11 +26,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['10']
gcc: ['11']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE','RE']

View File

@@ -1,6 +1,10 @@
name: Build servers with MSVS
# build_servers_msbuild.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:

View File

@@ -1,6 +1,10 @@
name: Build servers with different packet versions
# build_servers_packetversions.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,11 +26,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['10']
gcc: ['11']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE','RE']
# Check build success for different packet-versions

View File

@@ -1,6 +1,10 @@
name: Build servers in VIP mode
# build_servers_vip.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -22,11 +26,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['10']
gcc: ['11']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE', 'RE']

View File

@@ -4,6 +4,10 @@ name: Validate NPC Scripts and DB Changes
# For NPC and DB validation we only need two builds: one of Renewal and one for Pre-Renewal checks.
# NPC scripts and database files are not platform dependent, so we can achieve this validation using only a simple linux setup.
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
on:
push:
branches:
@@ -25,11 +29,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-20.04.
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-latest]
# Only a single version of GCC is required for validating NPC scripts and database changes.
gcc: ['10']
gcc: ['11']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE', 'RE']

2
.gitignore vendored
View File

@@ -39,6 +39,7 @@ Thumbs.db
/Makefile
/Makefile.cache
/map-server
/map-server-generator
/mapcache
/nbproject
/web-server
@@ -136,6 +137,7 @@ Thumbs.db
/webserv.bat
/yaml2sql.bat
/yamlupgrade.bat
/navigenerator.bat
# dlls
/libmysql.dll

View File

@@ -48,6 +48,7 @@ endmacro( CONFIGURE_WITH_LOCAL_OR_SYSTEM )
add_subdirectory( httplib )
add_subdirectory( json )
add_subdirectory( libconfig )
add_subdirectory( mysql )
add_subdirectory( pcre )

1
3rdparty/README.txt vendored
View File

@@ -6,3 +6,4 @@ libconfig - library for processing structured configuration files (http://www.hy
mysql - library for MySQL Community Server (http://www.mysql.com)
pcre - library for Perl Compatible Regular Expressions (http://www.pcre.org)
zlib - library for DEFLATE lossless compression algorithm (http://www.zlib.net)
json - library for nlohmann json (https://github.com/nlohmann/json/tree/4b2c8ce6bcfe7f39f2bb9e680c1e7a4d67c2dd48)

7
3rdparty/json/CMakeLists.txt vendored Normal file
View File

@@ -0,0 +1,7 @@
cmake_minimum_required(VERSION 2.8)
set (JSON_INCLUDE_DIRS
"${CMAKE_CURRENT_SOURCE_DIR}/include"
CACHE INTERNAL "json include dir" )
mark_as_advanced( JSON_INCLUDE_DIRS )

21
3rdparty/json/LICENSE.MIT vendored Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2013-2022 Niels Lohmann
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

24641
3rdparty/json/include/nlohmann/json.hpp vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,177 @@
// __ _____ _____ _____
// __| | __| | | | JSON for Modern C++
// | | |__ | | | | | | version 3.11.2
// |_____|_____|_____|_|___| https://github.com/nlohmann/json
//
// SPDX-FileCopyrightText: 2013-2022 Niels Lohmann <https://nlohmann.me>
// SPDX-License-Identifier: MIT
#ifndef INCLUDE_NLOHMANN_JSON_FWD_HPP_
#define INCLUDE_NLOHMANN_JSON_FWD_HPP_
#include <cstdint> // int64_t, uint64_t
#include <map> // map
#include <memory> // allocator
#include <string> // string
#include <vector> // vector
// #include <nlohmann/detail/abi_macros.hpp>
// __ _____ _____ _____
// __| | __| | | | JSON for Modern C++
// | | |__ | | | | | | version 3.11.2
// |_____|_____|_____|_|___| https://github.com/nlohmann/json
//
// SPDX-FileCopyrightText: 2013-2022 Niels Lohmann <https://nlohmann.me>
// SPDX-License-Identifier: MIT
// This file contains all macro definitions affecting or depending on the ABI
#ifndef JSON_SKIP_LIBRARY_VERSION_CHECK
#if defined(NLOHMANN_JSON_VERSION_MAJOR) && defined(NLOHMANN_JSON_VERSION_MINOR) && defined(NLOHMANN_JSON_VERSION_PATCH)
#if NLOHMANN_JSON_VERSION_MAJOR != 3 || NLOHMANN_JSON_VERSION_MINOR != 11 || NLOHMANN_JSON_VERSION_PATCH != 2
#warning "Already included a different version of the library!"
#endif
#endif
#endif
#define NLOHMANN_JSON_VERSION_MAJOR 3 // NOLINT(modernize-macro-to-enum)
#define NLOHMANN_JSON_VERSION_MINOR 11 // NOLINT(modernize-macro-to-enum)
#define NLOHMANN_JSON_VERSION_PATCH 2 // NOLINT(modernize-macro-to-enum)
#ifndef JSON_DIAGNOSTICS
#define JSON_DIAGNOSTICS 0
#endif
#ifndef JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
#define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 0
#endif
#if JSON_DIAGNOSTICS
#define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS _diag
#else
#define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS
#endif
#if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
#define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON _ldvcmp
#else
#define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_NO_VERSION
#define NLOHMANN_JSON_NAMESPACE_NO_VERSION 0
#endif
// Construct the namespace ABI tags component
#define NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b) json_abi ## a ## b
#define NLOHMANN_JSON_ABI_TAGS_CONCAT(a, b) \
NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b)
#define NLOHMANN_JSON_ABI_TAGS \
NLOHMANN_JSON_ABI_TAGS_CONCAT( \
NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS, \
NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON)
// Construct the namespace version component
#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch) \
_v ## major ## _ ## minor ## _ ## patch
#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(major, minor, patch) \
NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch)
#if NLOHMANN_JSON_NAMESPACE_NO_VERSION
#define NLOHMANN_JSON_NAMESPACE_VERSION
#else
#define NLOHMANN_JSON_NAMESPACE_VERSION \
NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(NLOHMANN_JSON_VERSION_MAJOR, \
NLOHMANN_JSON_VERSION_MINOR, \
NLOHMANN_JSON_VERSION_PATCH)
#endif
// Combine namespace components
#define NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b) a ## b
#define NLOHMANN_JSON_NAMESPACE_CONCAT(a, b) \
NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b)
#ifndef NLOHMANN_JSON_NAMESPACE
#define NLOHMANN_JSON_NAMESPACE \
nlohmann::NLOHMANN_JSON_NAMESPACE_CONCAT( \
NLOHMANN_JSON_ABI_TAGS, \
NLOHMANN_JSON_NAMESPACE_VERSION)
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_BEGIN
#define NLOHMANN_JSON_NAMESPACE_BEGIN \
namespace nlohmann \
{ \
inline namespace NLOHMANN_JSON_NAMESPACE_CONCAT( \
NLOHMANN_JSON_ABI_TAGS, \
NLOHMANN_JSON_NAMESPACE_VERSION) \
{
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_END
#define NLOHMANN_JSON_NAMESPACE_END \
} /* namespace (inline namespace) NOLINT(readability/namespace) */ \
} // namespace nlohmann
#endif
/*!
@brief namespace for Niels Lohmann
@see https://github.com/nlohmann
@since version 1.0.0
*/
NLOHMANN_JSON_NAMESPACE_BEGIN
/*!
@brief default JSONSerializer template argument
This serializer ignores the template arguments and uses ADL
([argument-dependent lookup](https://en.cppreference.com/w/cpp/language/adl))
for serialization.
*/
template<typename T = void, typename SFINAE = void>
struct adl_serializer;
/// a class to store JSON values
/// @sa https://json.nlohmann.me/api/basic_json/
template<template<typename U, typename V, typename... Args> class ObjectType =
std::map,
template<typename U, typename... Args> class ArrayType = std::vector,
class StringType = std::string, class BooleanType = bool,
class NumberIntegerType = std::int64_t,
class NumberUnsignedType = std::uint64_t,
class NumberFloatType = double,
template<typename U> class AllocatorType = std::allocator,
template<typename T, typename SFINAE = void> class JSONSerializer =
adl_serializer,
class BinaryType = std::vector<std::uint8_t>, // cppcheck-suppress syntaxError
class CustomBaseClass = void>
class basic_json;
/// @brief JSON Pointer defines a string syntax for identifying a specific value within a JSON document
/// @sa https://json.nlohmann.me/api/json_pointer/
template<typename RefStringType>
class json_pointer;
/*!
@brief default specialization
@sa https://json.nlohmann.me/api/json/
*/
using json = basic_json<>;
/// @brief a minimal map-like container that preserves insertion order
/// @sa https://json.nlohmann.me/api/ordered_map/
template<class Key, class T, class IgnoredLess, class Allocator>
struct ordered_map;
/// @brief specialization that maintains the insertion order of object keys
/// @sa https://json.nlohmann.me/api/ordered_json/
using ordered_json = basic_json<nlohmann::ordered_map>;
NLOHMANN_JSON_NAMESPACE_END
#endif // INCLUDE_NLOHMANN_JSON_FWD_HPP_

View File

@@ -20,8 +20,7 @@ print_start() {
get_status(){
PIDFILE=.$1.pid
if [ -e ${PIDFILE} ]; then
ISRUN=$(ps ax | grep $(cat ${PIDFILE}) | grep $1)
PSRUN=$(echo "$ISRUN" | awk '{ print $1 }')
PSRUN=$(pgrep -F ${PIDFILE})
fi
#return ${PSRUN} #seems to cause an issue for some os
}
@@ -36,11 +35,11 @@ start_serv(){
echo "stat_serv, log is enabled"
echo "My logfile=${LOGFILE}"
if [ -z ${PSRUN} ]; then
if [ -e ./${FIFO} ]; then rm "$FIFO"; fi
if [ -e ./${FIFO} ]; then rm "$FIFO"; fi
mkfifo "$FIFO"; tee "$LOGRUN" < "$FIFO" & "./$1" > "$FIFO" 2>&1 & PID=$!
#"./$1" > >(tee "$LOGRUN") 2>&1 & PID=$! #bash only
echo "$PID" > .$1.pid
echo "Server '$1' started at `date +"%m-%d-%H:%M-%S"`" | tee ${LOGFILE}
echo "Server '$1' started at $(date +"%m-%d-%H:%M-%S")" | tee ${LOGFILE}
else
echo "Cannot start '$1', because it is already running p${PSRUN}" | tee ${LOGFILE}
fi
@@ -48,7 +47,7 @@ start_serv(){
if [ -z ${PSRUN} ]; then
./$1&
echo "$!" > .$1.pid
echo "Server '$1' started at `date +"%m-%d-%H:%M-%S"`"
echo "Server '$1' started at $(date +"%m-%d-%H:%M-%S")"
else
echo "Cannot start '$1', because it is already running p${PSRUN}"
fi
@@ -66,20 +65,20 @@ watch_serv(){
LOGFILE="$LOG_DIR/$i.launch.log"
LOGRUN="$LOG_DIR/$i.log"
FIFO=$i"_fifo"
get_status $i
get_status ${i}
#echo "Echo id of $i is ${PSRUN}"
if [ -z ${PSRUN} ]; then
count=$((count+1))
#echo "fifo=$FIFO"
echo "server '$i' is down"
echo "server '$i' is down" >> ${LOGFILE}
echo "restarting server at time at `date +"%m-%d-%H:%M-%S"`"
echo "restarting server at time at `date +"%m-%d-%H:%M-%S"`" >> ${LOGFILE}
echo "restarting server at time at $(date +"%m-%d-%H:%M-%S")"
echo "restarting server at time at $(date +"%m-%d-%H:%M-%S")" >> ${LOGFILE}
if [ -e $FIFO ]; then rm $FIFO; fi
mkfifo "$FIFO"; tee "$LOGRUN" < "$FIFO" & "./$i" > "$FIFO" 2>&1 & PID=$!
echo "$PID" > .$i.pid
if [ $2 ] && [ $2 -lt $count ]; then break; fi
if [ $2 ] && [ $2 -lt $count ]; then break; fi
fi
done
sleep $1
@@ -101,11 +100,11 @@ restart(){
fi
done
done
$0 start
$0 start
}
case $1 in
'start')
'start')
print_start
check_files
echo "Check complete."
@@ -123,7 +122,7 @@ case $1 in
done
echo "rAthena was started."
;;
'watch')
'watch')
if [ ! -d "$LOG_DIR" ]; then mkdir -p $LOG_DIR; fi
if [ -z $2 ]; then Restart_count=10; else Restart_count=$2; fi
if [ -z $3 ]; then Restart_sleep=3; else Restart_sleep=$3; fi
@@ -134,7 +133,7 @@ case $1 in
done
watch_serv $Restart_count $Restart_sleep
echo "Watching rAthena now."
;;
;;
'stop')
for i in ${W_SRV} ${M_SRV} ${C_SRV} ${L_SRV}
do
@@ -155,7 +154,7 @@ case $1 in
done
;;
'restart')
restart
restart "$@"
;;
'status')
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
@@ -181,7 +180,7 @@ case $1 in
'start')
echo "syntax: 'start {--enlog}'"
echo "This option will start the servers"
echo "--enlog will write all terminal output into a log/$servname.log file"
echo "--enlog will write all terminal output into a log/\$servname.log file"
;;
'stop')
echo "This option will shut the servers down"
@@ -205,11 +204,11 @@ case $1 in
;;
'val_runonce')
echo "syntax: 'val_runonce'"
echo "This option will run valgrin with run-once to check the servers"
echo "This option will run valgrind with run-once to check the servers"
;;
'valchk')
echo "syntax: 'valchk'"
echo "This option will run valgrin with the servers"
echo "This option will run valgrind with the servers"
;;
*)
echo "Please specify a command you would like more info on { start | stop | restart | status | watch }"

View File

@@ -1016,6 +1016,9 @@ Body:
- Command: enchantgradeui
Help: |
Opens the enchantgrade UI.
- Command: roulette
Help: |
Opens the roulette UI.
Footer:
Imports:

View File

@@ -148,3 +148,24 @@ show_skill_scale: yes
// Note: Enabling this is known to cause problems on clients that make use of REST API calls.
// Official: no
drop_connection_on_quit: no
// Macro Detector retries
// Number of times someone can fail the macro detection before being banned.
// Official: 3 (minimum: 1)
macro_detection_retry: 3
// Macro Detector timeout
// Amount of time in milliseconds before the macro detection will fail and the user will be banned.
// Official: 60000
macro_detection_timeout: 60000
// Macro Detector punishment type
// 0 - Ban
// 1 - Jail
// Official: 0
macro_detection_punishment: 0
// Macro Detector punishment duration
// Amount of time in minutes that the punishment type is active for. Use 0 for infinite.
// Official: 0
macro_detection_punishment_time: 0

View File

@@ -56,7 +56,7 @@ feature.autotrade_head_direction: 0
// 1 = Sitting
feature.autotrade_sit: 1
// Delay in miliseconds to open vending/buyingsotre after player logged in.
// Delay in milliseconds to open vending/buyingsotre after player logged in.
feature.autotrade_open_delay: 5000
// Battlegrounds queue interface. Makes it possible to queue for a battleground anywhere using the battle menu.
@@ -67,6 +67,10 @@ feature.bgqueue: on
// Requires: 2014-10-22bRagexe or later
feature.roulette: on
// Roulette bonus reward
// Multiply amount by 2 if the reward item ID is the same as bonus item ID
feature.roulette_bonus_reward: on
// Achievement (Note 1)
// Requires: 2015-05-13aRagexe or later
feature.achievement: on
@@ -119,3 +123,30 @@ feature.barter: on
// Extended Barter Shop System (Note 1)
// Requires: 2019-11-06RagexeRE or later
feature.barter_extended: on
// The timeout in milliseconds when a dynamic NPC will be despawned if not used.
// Default: 60000 (60s)
feature.dynamicnpc_timeout: 60000
// The x range in which the dynamic NPC will be spawned relative to the player.
// Default: 2
feature.dynamicnpc_rangex: 2
// The y range in which the dynamic NPC will be spawned relative to the player.
// Default: 2
feature.dynamicnpc_rangey: 2
// Should the dynamic NPCs look into the direction of the player? (Note 1)
// Default: no
feature.dynamicnpc_direction: no
// Itemlink System on informational related commands (Note 1)
// Generates <ITEML> string for an item and can be used for npctalk, message,
// dispbottom, and broadcast commands. The result is clickable-item name just
// like from SHIFT+Click from player's inventory/cart/equipment window.
// Requires: 2010-00-00RagexeRE or later
feature.itemlink: on
// Stylist UI (Note 1)
// Requires: 2015-11-04 or later
feature.stylist: on

View File

@@ -116,7 +116,7 @@ default_bind_on_equip: 4
allow_bound_sell: 0x0
// Hide n last characters of player's name with asterisk (*) when the player
// obtained an item with special broadcast flag.
// obtained an item with special broadcast flag or refined an item at a level with broadcast flag.
// Note: Players with short names can be fully converted to asterisks if this
// config value is set high.
broadcast_hide_name: 2

View File

@@ -297,3 +297,8 @@ achievement_mob_share: no
// Should slaves teleport back to their master if they get too far during chase? (Note 1)
// Default (Official): no
slave_stick_with_master: no
// Absolute minimum respawn time in milliseconds of a monster.
// Also used in delaying the spawning of guardians when a guild is not loaded.
// Default (Official): 1000
mob_respawn_time: 1000

View File

@@ -121,7 +121,8 @@ start_point_doram: lasa_fild01,48,297
// Format: <id>,<amount>,<position>{:<id>,<amount>,<position>...}
// To auto-equip an item, include the position where it will be equipped; otherwise, use zero.
// NOTE: For Doram, this requires client 20151001 or newer.
start_items: 1201,1,2:2301,1,16
start_items: 1201,1,2:2301,1,16:23484,1,0
start_items_pre: 1201,1,2:2301,1,16
start_items_doram: 1681,1,2:2301,1,16
// Starting zeny for new characters
@@ -197,6 +198,9 @@ char_del_restriction: 3
// Uncomment to customize the restriction
//allowed_job_flag: 3
// Should parties that don't have any members be cleared from the party_db table at start up?
clear_parties: no
// Folder that contains the database files.
db_path: db

View File

@@ -216,6 +216,7 @@ Body:
hack_info: true
any_warp: true
view_hpmeter: true
macro_detect: true
- Id: 99
Name: Admin
Level: 99
@@ -238,6 +239,7 @@ Body:
item_unconditional: false
bypass_stat_onclone: true
bypass_max_stat: true
macro_register: true
#all_permission: true
Footer:

View File

@@ -147,8 +147,6 @@ item_table: item_db
renewal-item_table: item_db_re
item2_table: item_db2
renewal-item2_table: item_db2_re
item_cash_table: item_cash_db
item_cash2_table: item_cash_db2
mob_table: mob_db
renewal-mob_table: mob_db_re
mob2_table: mob_db2
@@ -158,6 +156,7 @@ renewal-mob_skill_table: mob_skill_db_re
mob_skill2_table: mob_skill_db2
renewal-mob_skill2_table: mob_skill_db2_re
mapreg_table: mapreg
partybookings_table: party_bookings
sales_table: sales
vending_table: vendings
vending_items_table: vending_items
@@ -166,7 +165,7 @@ roulette_table: db_roulette
guild_storage_log: guild_storage_log
// Web Database Tables
// NOTE: The web server reads the login (login) and char (guild) tables, so it needs
// NOTE: The web server reads the login (login) and char (party,guild) tables and map (party_bookings), so it needs
// the ability to connect to those databases.
guild_emblems: guild_emblems
user_configs: user_configs

View File

@@ -1517,6 +1517,9 @@ map: bl_grass
map: bl_lava
map: bl_ice
map: bl_death
map: bl_soul
map: bl_temple
map: bl_venom
// Clock Tower: Unknown Basement
map: clock_01
@@ -1535,12 +1538,37 @@ map: 1@vrcas
map: 1@vrev
map: 1@vrgen
map: 1@vrpo
map: 1@vrac1
map: 1@vrac2
map: 1@vrclo
map: 1@vrhha
map: 2@vrclo
// ??
map: 1@pdb
map: airplane2
map: vr_bob
// Heroria
map: hero_dun1
map: hero_ent1
map: hero_ent2
map: hero_ent3
map: hero_in1
map: hero_in2
map: hero_in3
map: hero_in4
map: hero_lb
map: hero_out1
map: hero_out2
map: hero_out3
map: hero_out4
map: hero_tra
map: herosria
// Level 260 Expansion
map: mjo_wst01
map: ra_pol01
//------------------------- Clone Maps ---------------------------
//------------------------- Extra Maps ---------------------------

View File

@@ -927,7 +927,10 @@
// Enchant UI
829: Enchanting is not possible for your item's enchant grade.
//830-899 free
// @reloadbarterdb
830: Barter database has been reloaded.
//831-899 free
//------------------------------------
// More atcommands message

37
db/captcha_db.yml Normal file
View File

@@ -0,0 +1,37 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Captcha Database Table
###########################################################################
#
# Captcha Database Settings
#
###########################################################################
# - Id Index value.
# Filename Name of the BMP image file (with location).
# Answer Correct answer for the captcha (case-sensitive).
# Bonus Bonus Script ran on success. (Default: Level 10 Blessing and Increase Agility)
###########################################################################
Header:
Type: CAPTCHA_DB
Version: 1
Footer:
Imports:
- Path: db/import/captcha_db.yml

View File

@@ -26,174 +26,18 @@
# Map Map name to be considered as the castle map.
# Name Name of the castle (used by scripts and guardian name tags).
# Npc NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
# Type The WoE type this castle belongs to. (Default: First_Edition)
# ClientId Client side ID of the castle. (Default: 0)
# WarpEnabled If the warp to the castle is enabled. (Default: false)
# WarpX X coordinate to warp to. (Default: 0)
# WarpY Y coordinate to warp to. (Default: 0)
# WarpCost Zeny cost to use the warp. (Default: 100)
# WarpCostSiege Zeny cost to use the warp during WoE. (Default: 100000)
###########################################################################
Header:
Type: CASTLE_DB
Version: 1
Body:
# WOE FE castle
- Id: 0
Map: aldeg_cas01
Name: Neuschwanstein
#Name: Noisyubantian
Npc: Agit#aldeg_cas01
- Id: 1
Map: aldeg_cas02
Name: Hohenschwangau
#Name: Hohensyubangawoo
Npc: Agit#aldeg_cas02
- Id: 2
Map: aldeg_cas03
Name: Nuernberg
#Name: Nyirenverk
Npc: Agit#aldeg_cas03
- Id: 3
Map: aldeg_cas04
Name: Wuerzburg
#Name: Byirtsburi
Npc: Agit#aldeg_cas04
- Id: 4
Map: aldeg_cas05
Name: Rothenburg
#Name: Rotenburk
Npc: Agit#aldeg_cas05
- Id: 5
Map: gefg_cas01
Name: Repherion
#Name: Reprion
Npc: Agit#gefg_cas01
- Id: 6
Map: gefg_cas02
Name: Eeyolbriggar
#Name: Yolbriger
Npc: Agit#gefg_cas02
- Id: 7
Map: gefg_cas03
Name: Yesnelph
#Name: Isinlife
Npc: Agit#gefg_cas03
- Id: 8
Map: gefg_cas04
Name: Bergel
#Name: Berigel
Npc: Agit#gefg_cas04
- Id: 9
Map: gefg_cas05
Name: Mersetzdeitz
#Name: Melsedetsu
Npc: Agit#gefg_cas05
- Id: 10
Map: payg_cas01
Name: Bright Arbor
#Name: Mingting
Npc: Agit#payg_cas01
- Id: 11
Map: payg_cas02
Name: Scarlet Palace
#Name: Tiantan
Npc: Agit#payg_cas02
- Id: 12
Map: payg_cas03
Name: Holy Shadow
#Name: Fuying
Npc: Agit#payg_cas03
- Id: 13
Map: payg_cas04
Name: Sacred Altar
#Name: Honglou
Npc: Agit#payg_cas04
- Id: 14
Map: payg_cas05
Name: Bamboo Grove Hill
#Name: Zhulinxian
Npc: Agit#payg_cas05
- Id: 15
Map: prtg_cas01
Name: Kriemhild
#Name: Creamhilt
Npc: Agit#prtg_cas01
- Id: 16
Map: prtg_cas02
Name: Swanhild
#Name: Sbanhealt
Npc: Agit#prtg_cas02
- Id: 17
Map: prtg_cas03
Name: Fadhgridh
#Name: Lazrigees
Npc: Agit#prtg_cas03
- Id: 18
Map: prtg_cas04
Name: Skoegul
#Name: Squagul
Npc: Agit#prtg_cas04
- Id: 19
Map: prtg_cas05
Name: Gondul
#Name: Guindull
Npc: Agit#prtg_cas05
# WOE NGuild castle
- Id: 20
Map: nguild_alde
Name: Earth
Npc: Agit_N01
- Id: 21
Map: nguild_gef
Name: Air
Npc: Agit_N02
- Id: 22
Map: nguild_pay
Name: Water
Npc: Agit_N03
- Id: 23
Map: nguild_prt
Name: Fire
Npc: Agit_N04
# WOE SE castle
- Id: 24
Map: schg_cas01
Name: Himinn
Npc: Manager#schg_cas01
- Id: 25
Map: schg_cas02
Name: Andlangr
Npc: Manager#schg_cas02
- Id: 26
Map: schg_cas03
Name: Viblainn
Npc: Manager#schg_cas03
- Id: 27
Map: schg_cas04
Name: Hljod
Npc: Manager#schg_cas04
- Id: 28
Map: schg_cas05
Name: Skidbladnir
Npc: Manager#schg_cas05
- Id: 29
Map: arug_cas01
Name: Mardol
Npc: Manager#arug_cas01
- Id: 30
Map: arug_cas02
Name: Cyr
Npc: Manager#arug_cas02
- Id: 31
Map: arug_cas03
Name: Horn
Npc: Manager#arug_cas03
- Id: 32
Map: arug_cas04
Name: Gefn
Npc: Manager#arug_cas04
- Id: 33
Map: arug_cas05
Name: Bandis
Npc: Manager#arug_cas05
Version: 2
Footer:
Imports:

View File

@@ -30,7 +30,9 @@
# Refine Required refine level.
# Chance Base chance of success out of 0~10000.
# Bonus Enchantgrade bonus. (Default: 0)
# Announce Announce if someone tries to increase the enchantgrade. (Default: true)
# AnnounceSuccess Announce on upgrade success. (Default: true)
# AnnounceFail Announce on upgrade failure. (Default: false)
# Announce Announce on upgrade success and failure.
# Catalyst: Catalyst item to increase chance of success.
# Item The item that can be used.
# AmountPerStep Amount of Item needed.
@@ -49,7 +51,7 @@
Header:
Type: ENCHANTGRADE_DB
Version: 1
Version: 2
Footer:
Imports:

View File

@@ -0,0 +1,33 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Captcha Database Table
###########################################################################
#
# Captcha Database Settings
#
###########################################################################
# - Id Index value.
# Filename Name of the BMP image file (with location).
# Answer Correct answer for the captcha (case-sensitive).
# Bonus Bonus Script ran on success. (Default: Level 10 Blessing and Increase Agility)
###########################################################################
Header:
Type: CAPTCHA_DB
Version: 1

View File

@@ -26,8 +26,15 @@
# Map Map name to be considered as the castle map.
# Name Name of the castle (used by scripts and guardian name tags).
# Npc NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
# Type The WoE type this castle belongs to. (Default: First_Edition)
# ClientId Client side ID of the castle. (Default: 0)
# WarpEnabled If the warp to the castle is enabled. (Default: false)
# WarpX X coordinate to warp to. (Default: 0)
# WarpY Y coordinate to warp to. (Default: 0)
# WarpCost Zeny cost to use the warp. (Default: 100)
# WarpCostSiege Zeny cost to use the warp during WoE. (Default: 100000)
###########################################################################
Header:
Type: CASTLE_DB
Version: 1
Version: 2

View File

@@ -30,7 +30,9 @@
# Refine Required refine level.
# Chance Base chance of success out of 0~10000.
# Bonus Enchantgrade bonus. (Default: 0)
# Announce Announce if someone tries to increase the enchantgrade. (Default: true)
# AnnounceSuccess Announce on upgrade success. (Default: true)
# AnnounceFail Announce on upgrade failure. (Default: false)
# Announce Announce on upgrade success and failure.
# Catalyst: Catalyst item to increase chance of success.
# Item The item that can be used.
# AmountPerStep Amount of Item needed.
@@ -49,4 +51,4 @@
Header:
Type: ENCHANTGRADE_DB
Version: 1
Version: 2

View File

@@ -0,0 +1,33 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Cash Database
###########################################################################
#
# Item Cash Settings
#
###########################################################################
# - Tab Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
# Items: List of possible items.
# - Item Item name.
# Price Item cost in cash points (#CASHPOINTS).
###########################################################################
Header:
Type: ITEM_CASH_DB
Version: 1

View File

@@ -1,19 +0,0 @@
// Cash Shop Database
// Contains the items sold in the ingame cash shop.
//
// Structure of Database:
// Type,ItemID,Price
//
// Type:
// 0: New
// 1: Hot
// 2: Limited
// 3: Rental
// 4: Gear
// 5: Buff
// 6: Heal
// 7: Other
// 8: Sale
//
// Price:
// Item cost, in cash points (#CASHPOINTS).

View File

@@ -30,6 +30,8 @@
# Bonus Refinement bonus. (Default: 0)
# RandomBonus Extra refinement bonus of 0~RandomBonus stacked on Bonus. (Default: 0)
# BlacksmithBlessingAmount Amount of Blacksmith Blessing required. (Default: 0)
# BroadcastSuccess Broadcast to the whole server when a refine attempt at this level succeeds. (Default: false)
# BroadcastFailure Broadcast to the whole server when a refine attempt at this level fails. (Default: false)
# Chances: Success chance based on cost type. (Default: null)
# - Type Refinement cost type based on ore used.
# Rate Chance of success out of 0~10000. (Default: 0)
@@ -41,7 +43,7 @@
Header:
Type: REFINE_DB
Version: 1
Version: 2
###########################################################################
# Event Refine Rates

View File

@@ -0,0 +1,33 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Group Database
###########################################################################
#
# Reputation Group Settings
#
###########################################################################
# - Id Client side group index.
# ScriptName Unused? Used for "ID" in client
# Name Visible name in window
# ReputeList List of Reputations
###########################################################################
Header:
Type: REPUTATION_GROUP_DB
Version: 1

View File

@@ -35,10 +35,11 @@
# MinRate Minimum rate after status change reduction (10000 = 100%). (Default: 0)
# MinDuration Minimum duration in milliseconds after status change reduction. (Default: 1)
# Fail: List of Status Changes that causes the status to fail to activate. (Optional)
# End: List of Status Changes that will end when the status activates. (Optional)
# EndOnStart: List of Status Changes that will end when the status activates. (Optional)
# EndReturn: List of Status Changes that will end when the status activates and won't give its effect. (Optional)
# EndOnEnd: List of Status Changes that will end when the status becomes inactive. (Optional)
###########################################################################
Header:
Type: STATUS_DB
Version: 2
Version: 3

37
db/item_cash.yml Normal file
View File

@@ -0,0 +1,37 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Cash Database
###########################################################################
#
# Item Cash Settings
#
###########################################################################
# - Tab Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
# Items: List of possible items.
# - Item Item name.
# Price Item cost in cash points (#CASHPOINTS).
###########################################################################
Header:
Type: ITEM_CASH_DB
Version: 1
Footer:
Imports:
- Path: db/import/item_cash.yml

Binary file not shown.

View File

@@ -1185,6 +1185,31 @@ prt_elib
1@pdb
airplane2
vr_bob
hero_dun1
hero_ent1
hero_ent2
hero_ent3
hero_in1
hero_in2
hero_in3
hero_in4
hero_lb
hero_out1
hero_out2
hero_out3
hero_out4
hero_tra
herosria
1@vrac1
1@vrac2
1@vrclo
1@vrhha
2@vrclo
bl_soul
bl_temple
bl_venom
mjo_wst01
ra_pol01
//======================================================================================
// - Other/Extra maps -

View File

@@ -126,6 +126,26 @@ Body:
Dialog: This is the truth! Hahahahah!
- Id: 58 # !todo Unknown dialogue
Dialog: Attack!
- Id: 60
Dialog: Go !! Ultra Critical Bash EX !!
- Id: 61
Dialog: Come on!! Hell's Fireball !!
- Id: 62
Dialog: Kneel before me!! The vast power of capitalism !!
- Id: 63
Dialog: You can't run from me!! Double Strafe, pierce through my enemies !!
- Id: 64
Dialog: I'm gonna make you sick!!! Ultimate generational Envenom !!
- Id: 65
Dialog: I'll roll over you!! Ultimate Decrease Agility GX !!
- Id: 67
Dialog: Dark cast that narrows the field of vision! It can only be removed with a green potion!
- Id: 68
Dialog: A poison that continuously lowers HP for a certain period of time! But it is not released with a green herb!
- Id: 69
Dialog: Let's start with recovery!
- Id: 70
Dialog: Silence that cannot use skills! You can only escape by eating green potions!
Footer:
Imports:

View File

@@ -26,8 +26,242 @@
# Map Map name to be considered as the castle map.
# Name Name of the castle (used by scripts and guardian name tags).
# Npc NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
# Type The WoE type this castle belongs to. (Default: First_Edition)
# ClientId Client side ID of the castle. (Default: 0)
# WarpEnabled If the warp to the castle is enabled. (Default: false)
# WarpX X coordinate to warp to. (Default: 0)
# WarpY Y coordinate to warp to. (Default: 0)
# WarpCost Zeny cost to use the warp. (Default: 100)
# WarpCostSiege Zeny cost to use the warp during WoE. (Default: 100000)
###########################################################################
Header:
Type: CASTLE_DB
Version: 1
Version: 2
Body:
# WOE FE castle
- Id: 0
Map: aldeg_cas01
Name: Neuschwanstein
#Name: Noisyubantian
Npc: Agit#aldeg_cas01
Type: First_Edition
ClientId: 6
- Id: 1
Map: aldeg_cas02
Name: Hohenschwangau
#Name: Hohensyubangawoo
Npc: Agit#aldeg_cas02
Type: First_Edition
ClientId: 7
- Id: 2
Map: aldeg_cas03
Name: Nuernberg
#Name: Nyirenverk
Npc: Agit#aldeg_cas03
Type: First_Edition
ClientId: 8
- Id: 3
Map: aldeg_cas04
Name: Wuerzburg
#Name: Byirtsburi
Npc: Agit#aldeg_cas04
Type: First_Edition
ClientId: 9
- Id: 4
Map: aldeg_cas05
Name: Rothenburg
#Name: Rotenburk
Npc: Agit#aldeg_cas05
Type: First_Edition
ClientId: 10
- Id: 5
Map: gefg_cas01
Name: Repherion
#Name: Reprion
Npc: Agit#gefg_cas01
Type: First_Edition
ClientId: 11
- Id: 6
Map: gefg_cas02
Name: Eeyolbriggar
#Name: Yolbriger
Npc: Agit#gefg_cas02
Type: First_Edition
ClientId: 12
- Id: 7
Map: gefg_cas03
Name: Yesnelph
#Name: Isinlife
Npc: Agit#gefg_cas03
Type: First_Edition
ClientId: 13
- Id: 8
Map: gefg_cas04
Name: Bergel
#Name: Berigel
Npc: Agit#gefg_cas04
Type: First_Edition
ClientId: 14
- Id: 9
Map: gefg_cas05
Name: Mersetzdeitz
#Name: Melsedetsu
Npc: Agit#gefg_cas05
Type: First_Edition
ClientId: 15
- Id: 10
Map: payg_cas01
Name: Bright Arbor
#Name: Mingting
Npc: Agit#payg_cas01
Type: First_Edition
ClientId: 16
- Id: 11
Map: payg_cas02
Name: Scarlet Palace
#Name: Tiantan
Npc: Agit#payg_cas02
Type: First_Edition
ClientId: 17
- Id: 12
Map: payg_cas03
Name: Holy Shadow
#Name: Fuying
Npc: Agit#payg_cas03
Type: First_Edition
ClientId: 18
- Id: 13
Map: payg_cas04
Name: Sacred Altar
#Name: Honglou
Npc: Agit#payg_cas04
Type: First_Edition
ClientId: 19
- Id: 14
Map: payg_cas05
Name: Bamboo Grove Hill
#Name: Zhulinxian
Npc: Agit#payg_cas05
Type: First_Edition
ClientId: 20
- Id: 15
Map: prtg_cas01
Name: Kriemhild
#Name: Creamhilt
Npc: Agit#prtg_cas01
Type: First_Edition
ClientId: 1
- Id: 16
Map: prtg_cas02
Name: Swanhild
#Name: Sbanhealt
Npc: Agit#prtg_cas02
Type: First_Edition
ClientId: 2
- Id: 17
Map: prtg_cas03
Name: Fadhgridh
#Name: Lazrigees
Npc: Agit#prtg_cas03
Type: First_Edition
ClientId: 3
- Id: 18
Map: prtg_cas04
Name: Skoegul
#Name: Squagul
Npc: Agit#prtg_cas04
Type: First_Edition
ClientId: 4
- Id: 19
Map: prtg_cas05
Name: Gondul
#Name: Guindull
Npc: Agit#prtg_cas05
Type: First_Edition
ClientId: 5
# WOE NGuild castle
- Id: 20
Map: nguild_alde
Name: Earth
Npc: Agit_N01
Type: First_Edition
- Id: 21
Map: nguild_gef
Name: Air
Npc: Agit_N02
Type: First_Edition
- Id: 22
Map: nguild_pay
Name: Water
Npc: Agit_N03
Type: First_Edition
- Id: 23
Map: nguild_prt
Name: Fire
Npc: Agit_N04
Type: First_Edition
# WOE SE castle
- Id: 24
Map: schg_cas01
Name: Himinn
Npc: Manager#schg_cas01
Type: Second_Edition
ClientId: 26
- Id: 25
Map: schg_cas02
Name: Andlangr
Npc: Manager#schg_cas02
Type: Second_Edition
ClientId: 27
- Id: 26
Map: schg_cas03
Name: Viblainn
Npc: Manager#schg_cas03
Type: Second_Edition
ClientId: 28
- Id: 27
Map: schg_cas04
Name: Hljod
Npc: Manager#schg_cas04
Type: Second_Edition
ClientId: 29
- Id: 28
Map: schg_cas05
Name: Skidbladnir
Npc: Manager#schg_cas05
Type: Second_Edition
ClientId: 30
- Id: 29
Map: arug_cas01
Name: Mardol
Npc: Manager#arug_cas01
Type: Second_Edition
ClientId: 21
- Id: 30
Map: arug_cas02
Name: Cyr
Npc: Manager#arug_cas02
Type: Second_Edition
ClientId: 22
- Id: 31
Map: arug_cas03
Name: Horn
Npc: Manager#arug_cas03
Type: Second_Edition
ClientId: 23
- Id: 32
Map: arug_cas04
Name: Gefn
Npc: Manager#arug_cas04
Type: Second_Edition
ClientId: 24
- Id: 33
Map: arug_cas05
Name: Bandis
Npc: Manager#arug_cas05
Type: Second_Edition
ClientId: 25

View File

@@ -67,7 +67,7 @@ Body:
- Id: 3
Name: Orc's Memory
Enter:
Map: 1@orcs
Map: 1@orcs
X: 179
Y: 15
AdditionalMaps:

View File

@@ -1,19 +0,0 @@
// Cash Shop Database
// Contains the items sold in the ingame cash shop.
//
// Structure of Database:
// Type,ItemID,Price
//
// Type:
// 0: New
// 1: Hot
// 2: Limited
// 3: Rental
// 4: Gear
// 5: Buff
// 6: Heal
// 7: Other
// 8: Sale
//
// Price:
// Item cost, in cash points (#CASHPOINTS).

View File

@@ -7433,3 +7433,45 @@ Body:
Rate: 1
- Item: Gold_Tiara_
Rate: 1
- Group: MF_NOTELEPORT
SubGroups:
- SubGroup: 0
List:
- Item: Wing_Of_Fly
- Item: Giant_Fly_Wing
- Item: N_Fly_Wing
- Item: E_Giant_Fly_Wing
- Item: F_Giant_Fly_Wing
- Group: MF_NORETURN
SubGroups:
- SubGroup: 0
List:
- Item: Wing_Of_Butterfly
- Item: N_Butterfly_Wing
- Item: Dun_Tele_Scroll1
- Item: Dun_Tele_Scroll2
- Item: Dun_Tele_Scroll3
- Item: E_Dun_Tele_Scroll1
- Item: F_Dun_Tele_Scroll1
- Item: WOB_Rune
- Item: E_WOB_Rune
- Item: F_WOB_Rune
- Item: WOB_Schwaltz
- Item: E_WOB_Schwaltz
- Item: F_WOB_Schwaltz
- Item: WOB_Rachel
- Item: E_WOB_Rachel
- Item: F_WOB_Rachel
- Item: WOB_Local
- Item: E_WOB_Local
- Item: F_WOB_Local
- Item: Siege_Teleport_Scroll
- Item: Siege_Teleport_Scroll2
- Item: E_Siege_Teleport_Scroll
- Group: GIANT_FLY_WING
SubGroups:
- SubGroup: 0
List:
- Item: Giant_Fly_Wing
- Item: E_Giant_Fly_Wing
- Item: F_Giant_Fly_Wing

View File

@@ -717,8 +717,8 @@
1141,Marina@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
1141,Marina@NPC_EMOTION,walk,197,1,2000,0,5000,yes,self,always,0,19,,,,,,
1141,Marina@NPC_WATERATTACK,attack,184,2,500,500,5000,no,target,always,0,,,,,,6,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,target,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,alchemist,,,,,,,,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,master,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,afterskill,331,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,500,2000,5000,no,self,myhpltmaxrate,99,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,2000,5000,no,self,skillused,173,,,,,,,
1142,Marine Sphere@NPC_SPEEDUP,idle,332,1,10000,0,700,yes,target,always,,,,,,,,

View File

@@ -30,6 +30,8 @@
# Bonus Refinement bonus. (Default: 0)
# RandomBonus Extra refinement bonus of 0~RandomBonus stacked on Bonus. (Default: 0)
# BlacksmithBlessingAmount Amount of Blacksmith Blessing required. (Default: 0)
# BroadcastSuccess Broadcast to the whole server when a refine attempt at this level succeeds. (Default: false)
# BroadcastFailure Broadcast to the whole server when a refine attempt at this level fails. (Default: false)
# Chances: Success chance based on cost type. (Default: null)
# - Type Refinement cost type based on ore used.
# Rate Chance of success out of 0~10000. (Default: 0)
@@ -41,7 +43,7 @@
Header:
Type: REFINE_DB
Version: 1
Version: 2
Body:
- Group: Armor

View File

@@ -9325,15 +9325,13 @@ Body:
Name: NPC_WEAPONBRAKER
Description: Break weapon
MaxLevel: 10
Type: Weapon
TargetType: Attack
TargetType: Self
Flags:
IsNpc: true
Range: 9
Hit: Single
HitCount: 1
Element: Weapon
Status: BrokenWeapon
Duration: 30000
Status: WeaponBreaker
- Id: 344
Name: NPC_ARMORBRAKE
Description: Break armor

File diff suppressed because it is too large Load Diff

View File

@@ -1784,6 +1784,12 @@ Body:
Rewards:
TitleId: 1034
Score: 10
- Id: 130005 # TODO (Terra Gloria: give achievement when player visit the coronation ceremony)
Group: Chatting
Name: Who made the king
Rewards:
TitleID: 1046
Score: 10
- Id: 170000
Group: Chatting
Name: Song chamber is not an accident
@@ -1902,7 +1908,7 @@ Body:
Name: Elite Adventurer! (1)
Condition: " Class >= JOB_RUNE_KNIGHT && Class <= JOB_GUILLOTINE_CROSS "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 50
- Id: 200012
@@ -1910,7 +1916,7 @@ Body:
Name: Transcendentaler! (1)
Condition: " Class >= JOB_RUNE_KNIGHT_T && Class <= JOB_GUILLOTINE_CROSS_T "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 60
- Id: 200013
@@ -1918,7 +1924,7 @@ Body:
Name: Elite Adventurer! (2)
Condition: " Class >= JOB_ROYAL_GUARD && Class <= JOB_SHADOW_CHASER "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 50
- Id: 200014
@@ -1926,7 +1932,7 @@ Body:
Name: Transcendentaler! (2)
Condition: " Class >= JOB_ROYAL_GUARD_T && Class <= JOB_SHADOW_CHASER_T "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 60
- Id: 200015
@@ -1941,7 +1947,7 @@ Body:
Name: This is My way!
Condition: " Class == JOB_STAR_GLADIATOR || Class == JOB_SOUL_LINKER || Class == JOB_KAGEROU || Class == JOB_OBORO || Class == JOB_REBELLION "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 20
- Id: 200017
@@ -2021,7 +2027,7 @@ Body:
Name: Incarnation of Love and Hate
Condition: " BaseLevel == 99 && Class == JOB_NOVICE "
Rewards:
Item: Abrasive_Box_10
Item: E_Abrasive_Box10
Script: " specialeffect2 EF_BLESSING; sc_start SC_BLESSING,30000,10; "
Score: 30
- Id: 200030
@@ -2029,7 +2035,7 @@ Body:
Name: I really love it!
Condition: " BaseLevel == 99 && (Class >= JOB_SWORDMAN && Class <= JOB_THIEF) "
Rewards:
Item: Bubble_Gum_Box_10
Item: E_Bubble_Gum_Box
Script: " specialeffect2 EF_BLESSING; sc_start SC_BLESSING,30000,10; "
Score: 30
- Id: 200031
@@ -2037,30 +2043,38 @@ Body:
Name: Reborn in Valhalla!
Condition: " Class == JOB_NOVICE_HIGH "
Rewards:
# Item: Adventurer_Box_1
Item: Adventurer_Box_1
Script: " specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,30000,10; "
Score: 10
- Id: 200032
Group: Goal_Level
Name: The start of another adventure!
Condition: " BaseLevel == 100 "
#Rewards:
# Item: Rebeginer_Box_100
Rewards:
Item: Rebeginer_Box_100
Score: 10
- Id: 200033
Group: Goal_Level
Name: With a new mind!(1)
Condition: " BaseLevel == 170 && (Class >= JOB_RUNE_KNIGHT && Class <= JOB_GUILLOTINE_CROSS_T) "
#Rewards:
# Item: Costume_Ticket
Rewards:
Item: Costume_Ticket
Score: 50
- Id: 200034
Group: Goal_Level
Name: With a new mind!(2)
Condition: " BaseLevel == 170 && (Class >= JOB_ROYAL_GUARD && Class <= JOB_SHADOW_CHASER_T) "
#Rewards:
# Item: Costume_Ticket
Rewards:
Item: Costume_Ticket
Score: 50
- Id: 200035
Group: Goal_Level
Name: Level 200 achieved!
Condition: " BaseLevel == 200 "
Rewards:
Item: C_Magestic_Goat2
Script: " specialeffect2 EF_BLESSING; sc_start SC_BLESSING,30000,10; "
Score: 100
- Id: 220000
Group: Chatting_Create
Name: Community begin

View File

@@ -26,51 +26,384 @@
# Map Map name to be considered as the castle map.
# Name Name of the castle (used by scripts and guardian name tags).
# Npc NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
# Type The WoE type this castle belongs to. (Default: First_Edition)
# ClientId Client side ID of the castle. (Default: 0)
# WarpEnabled If the warp to the castle is enabled. (Default: false)
# WarpX X coordinate to warp to. (Default: 0)
# WarpY Y coordinate to warp to. (Default: 0)
# WarpCost Zeny cost to use the warp. (Default: 100)
# WarpCostSiege Zeny cost to use the warp during WoE. (Default: 100000)
###########################################################################
Header:
Type: CASTLE_DB
Version: 1
Version: 2
Body:
# WOE FE castle
- Id: 0
Map: aldeg_cas01
Name: Neuschwanstein
#Name: Noisyubantian
Npc: Agit#aldeg_cas01
Type: First_Edition
ClientId: 6
WarpEnabled: true
WarpX: 212
WarpY: 175
- Id: 1
Map: aldeg_cas02
Name: Hohenschwangau
#Name: Hohensyubangawoo
Npc: Agit#aldeg_cas02
Type: First_Edition
ClientId: 7
WarpEnabled: true
WarpX: 82
WarpY: 71
- Id: 2
Map: aldeg_cas03
Name: Nuernberg
#Name: Nyirenverk
Npc: Agit#aldeg_cas03
Type: First_Edition
ClientId: 8
WarpEnabled: true
WarpX: 109
WarpY: 112
- Id: 3
Map: aldeg_cas04
Name: Wuerzburg
#Name: Byirtsburi
Npc: Agit#aldeg_cas04
Type: First_Edition
ClientId: 9
WarpEnabled: true
WarpX: 60
WarpY: 116
- Id: 4
Map: aldeg_cas05
Name: Rothenburg
#Name: Rotenburk
Npc: Agit#aldeg_cas05
Type: First_Edition
ClientId: 10
WarpEnabled: true
WarpX: 61
WarpY: 185
- Id: 5
Map: gefg_cas01
Name: Repherion
#Name: Reprion
Npc: Agit#gefg_cas01
Type: First_Edition
ClientId: 11
WarpEnabled: true
WarpX: 40
WarpY: 43
- Id: 6
Map: gefg_cas02
Name: Eeyolbriggar
#Name: Yolbriger
Npc: Agit#gefg_cas02
Type: First_Edition
ClientId: 12
WarpEnabled: true
WarpX: 22
WarpY: 66
- Id: 7
Map: gefg_cas03
Name: Yesnelph
#Name: Isinlife
Npc: Agit#gefg_cas03
Type: First_Edition
ClientId: 13
WarpEnabled: true
WarpX: 112
WarpY: 23
- Id: 8
Map: gefg_cas04
Name: Bergel
#Name: Berigel
Npc: Agit#gefg_cas04
Type: First_Edition
ClientId: 14
WarpEnabled: true
WarpX: 58
WarpY: 46
- Id: 9
Map: gefg_cas05
Name: Mersetzdeitz
#Name: Melsedetsu
Npc: Agit#gefg_cas05
Type: First_Edition
ClientId: 15
WarpEnabled: true
WarpX: 66
WarpY: 48
- Id: 10
Map: payg_cas01
Name: Bright Arbor
#Name: Mingting
Npc: Agit#payg_cas01
Type: First_Edition
ClientId: 16
WarpEnabled: true
WarpX: 115
WarpY: 57
- Id: 11
Map: payg_cas02
Name: Scarlet Palace
#Name: Tiantan
Npc: Agit#payg_cas02
Type: First_Edition
ClientId: 17
WarpEnabled: true
WarpX: 26
WarpY: 265
- Id: 12
Map: payg_cas03
Name: Holy Shadow
#Name: Fuying
Npc: Agit#payg_cas03
Type: First_Edition
ClientId: 18
WarpEnabled: true
WarpX: 43
WarpY: 264
- Id: 13
Map: payg_cas04
Name: Sacred Altar
#Name: Honglou
Npc: Agit#payg_cas04
Type: First_Edition
ClientId: 19
WarpEnabled: true
WarpX: 36
WarpY: 272
- Id: 14
Map: payg_cas05
Name: Bamboo Grove Hill
#Name: Zhulinxian
Npc: Agit#payg_cas05
Type: First_Edition
ClientId: 20
WarpEnabled: true
WarpX: 274
WarpY: 246
- Id: 15
Map: prtg_cas01
Name: Kriemhild
#Name: Creamhilt
Npc: Agit#prtg_cas01
Type: First_Edition
ClientId: 1
WarpEnabled: true
WarpX: 107
WarpY: 180
- Id: 16
Map: prtg_cas02
Name: Swanhild
#Name: Sbanhealt
Npc: Agit#prtg_cas02
Type: First_Edition
ClientId: 2
WarpEnabled: true
WarpX: 94
WarpY: 56
- Id: 17
Map: prtg_cas03
Name: Fadhgridh
#Name: Lazrigees
Npc: Agit#prtg_cas03
Type: First_Edition
ClientId: 3
WarpEnabled: true
WarpX: 46
WarpY: 97
- Id: 18
Map: prtg_cas04
Name: Skoegul
#Name: Squagul
Npc: Agit#prtg_cas04
Type: First_Edition
ClientId: 4
WarpEnabled: true
WarpX: 260
WarpY: 262
- Id: 19
Map: prtg_cas05
Name: Gondul
#Name: Guindull
Npc: Agit#prtg_cas05
Type: First_Edition
ClientId: 5
WarpEnabled: true
WarpX: 26
WarpY: 38
# WOE NGuild castle
- Id: 20
Map: nguild_alde
Name: Earth
Npc: Agit_N01
Type: First_Edition
- Id: 21
Map: nguild_gef
Name: Air
Npc: Agit_N02
Type: First_Edition
- Id: 22
Map: nguild_pay
Name: Water
Npc: Agit_N03
Type: First_Edition
- Id: 23
Map: nguild_prt
Name: Fire
Npc: Agit_N04
Type: First_Edition
# WOE SE castle
- Id: 24
Map: schg_cas01
Name: Himinn
Npc: Manager#schg_cas01
Type: Second_Edition
ClientId: 26
WarpEnabled: true
WarpX: 233
WarpY: 300
- Id: 25
Map: schg_cas02
Name: Andlangr
Npc: Manager#schg_cas02
Type: Second_Edition
ClientId: 27
WarpEnabled: true
WarpX: 101
WarpY: 372
- Id: 26
Map: schg_cas03
Name: Viblainn
Npc: Manager#schg_cas03
Type: Second_Edition
ClientId: 28
WarpEnabled: true
WarpX: 81
WarpY: 94
- Id: 27
Map: schg_cas04
Name: Hljod
Npc: Manager#schg_cas04
Type: Second_Edition
ClientId: 29
WarpEnabled: true
WarpX: 233
WarpY: 300
- Id: 28
Map: schg_cas05
Name: Skidbladnir
Npc: Manager#schg_cas05
Type: Second_Edition
ClientId: 30
WarpEnabled: true
WarpX: 233
WarpY: 300
- Id: 29
Map: arug_cas01
Name: Mardol
Npc: Manager#arug_cas01
Type: Second_Edition
ClientId: 21
WarpEnabled: true
WarpX: 77
WarpY: 371
- Id: 30
Map: arug_cas02
Name: Cyr
Npc: Manager#arug_cas02
Type: Second_Edition
ClientId: 22
WarpEnabled: true
WarpX: 301
WarpY: 332
- Id: 31
Map: arug_cas03
Name: Horn
Npc: Manager#arug_cas03
Type: Second_Edition
ClientId: 23
WarpEnabled: true
WarpX: 322
WarpY: 91
- Id: 32
Map: arug_cas04
Name: Gefn
Npc: Manager#arug_cas04
Type: Second_Edition
ClientId: 24
WarpEnabled: true
WarpX: 322
WarpY: 91
- Id: 33
Map: arug_cas05
Name: Bandis
Npc: Manager#arug_cas05
Type: Second_Edition
ClientId: 25
WarpEnabled: true
WarpX: 322
WarpY: 91
# WOE TE castle
- Id: 34
Map: te_aldecas1
Name: Kafragarten 1
Npc: Manager_TE#Glaris
Type: Third_Edition
- Id: 35
Map: te_aldecas2
Name: Kafragarten 2
Npc: Manager_TE#Defolty
Type: Third_Edition
- Id: 36
Map: te_aldecas3
Name: Kafragarten 3
Npc: Manager_TE#Sorin
Type: Third_Edition
- Id: 37
Map: te_aldecas4
Name: Kafragarten 4
Npc: Manager_TE#Bennit
Type: Third_Edition
- Id: 38
Map: te_aldecas5
Name: Kafragarten 5
Npc: Manager_TE#W
Type: Third_Edition
- Id: 39
Map: te_prtcas01
Name: Gloria 1
Npc: Manager_TE#Gaebolg
Type: Third_Edition
- Id: 40
Map: te_prtcas02
Name: Gloria 2
Npc: Manager_TE#Richard
Type: Third_Edition
- Id: 41
Map: te_prtcas03
Name: Gloria 3
Npc: Manager_TE#Wigner
Type: Third_Edition
- Id: 42
Map: te_prtcas04
Name: Gloria 4
Npc: Manager_TE#Heine
Type: Third_Edition
- Id: 43
Map: te_prtcas05
Name: Gloria 5
Npc: Manager_TE#Nerious
Type: Third_Edition

View File

@@ -30,7 +30,9 @@
# Refine Required refine level.
# Chance Base chance of success out of 0~10000.
# Bonus Enchantgrade bonus. (Default: 0)
# Announce Announce if someone tries to increase the enchantgrade. (Default: true)
# AnnounceSuccess Announce on upgrade success. (Default: true)
# AnnounceFail Announce on upgrade failure. (Default: false)
# Announce Announce on upgrade success and failure.
# Catalyst: Catalyst item to increase chance of success.
# Item The item that can be used.
# AmountPerStep Amount of Item needed.
@@ -49,7 +51,7 @@
Header:
Type: ENCHANTGRADE_DB
Version: 1
Version: 2
Body:
- Type: Armor
@@ -98,6 +100,7 @@ Body:
Refine: 11
Chance: 5000
Bonus: 50
AnnounceFail: true
Catalyst:
Item: Blessed_Etel_Dust
AmountPerStep: 5
@@ -117,6 +120,7 @@ Body:
Refine: 11
Chance: 4000
Bonus: 100
AnnounceFail: true
Catalyst:
Item: Blessed_Etel_Dust
AmountPerStep: 7
@@ -178,6 +182,7 @@ Body:
Refine: 11
Chance: 5000
Bonus: 50
AnnounceFail: true
Catalyst:
Item: Blessed_Etel_Dust
AmountPerStep: 5
@@ -197,6 +202,7 @@ Body:
Refine: 11
Chance: 4000
Bonus: 100
AnnounceFail: true
Catalyst:
Item: Blessed_Etel_Dust
AmountPerStep: 7

View File

@@ -0,0 +1,43 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Database
###########################################################################
#
# Reputation Settings
#
###########################################################################
# - Id Client side index.
# Visibility Always = Always show
# Never = Never show
# Exist = Only show if greater than 0
###########################################################################
Header:
Type: REPUTATION_DB
Version: 1
Body:
- Id: 1
Visibility: Always
- Id: 2
Visibility: Always
- Id: 3
Visibility: Exist
- Id: 4
Visibility: Exist

View File

@@ -0,0 +1,51 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Group Database
###########################################################################
#
# Reputation Group Settings
#
###########################################################################
# - Id Client side group index.
# ScriptName Unused? Used for "ID" in client
# Name Visible name in window
# ReputeList List of Reputations
###########################################################################
Header:
Type: REPUTATION_GROUP_DB
Version: 1
Body:
- Id: 1
ScriptName: MonsterGroup1
Name: Monster Friends
ReputeList:
- 1
- 2
- Id: 2
ScriptName: Arunafelts
Name: Arunafeltz
ReputeList:
- 3
- Id: 3
ScriptName: Isgard
Name: Isgard
ReputeList:
- 4

View File

@@ -67,7 +67,7 @@ Body:
- Id: 3
Name: Orc's Memory
Enter:
Map: 1@orcs
Map: 1@orcs
X: 179
Y: 15
AdditionalMaps:
@@ -345,3 +345,33 @@ Body:
Map: 1@cor
X: 176
Y: 169
- Id: 44
Name: Half Moon In The Daylight
TimeLimit: 7200
Enter:
Map: 1@pop1
X: 47
Y: 133
AdditionalMaps:
1@pop2: true
1@pop3: true
- Id: 45
Name: Weekend Dungeon
TimeLimit: 3600
Enter:
Map: 1@md_pay
X: 240
Y: 29
- Id: 46
Name: Friday Dungeon
TimeLimit: 7200
Enter:
Map: 1@md_gef
X: 106
Y: 129
- Id: 47
Name: Poring Village
Enter:
Map: 1@begi
X: 100
Y: 22

View File

@@ -1,19 +0,0 @@
// Cash Shop Database
// Contains the items sold in the ingame cash shop.
//
// Structure of Database:
// Type,ItemID,Price
//
// Type:
// 0: New
// 1: Hot
// 2: Limited
// 3: Rental
// 4: Gear
// 5: Buff
// 6: Heal
// 7: Other
// 8: Sale
//
// Price:
// Item cost, in cash points (#CASHPOINTS).

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -180,34 +180,34 @@ Body:
Groups:
- Group: 0
Items:
- Item: Attacker_Booster_Plate_
- Item: Attacker_Booster_Manteau_
- Item: Attacker_Booster_Greaves_
- Item: Attacker_Booster_Ring
- Item: Atker_Plate
- Item: Atker_Manteau
- Item: Atker_Greave
- Item: Atker_Ring
- Item: Boost_Up_1
Amount: 3
- Group: 1
Items:
- Item: Ranger_Booster_Suits_
- Item: Ranger_Booster_Manteau_
- Item: Ranger_Booster_Boots_
- Item: Range_Booster_Brooch
- Item: Ran_Suits
- Item: Ran_Manteau
- Item: Ran_Boots
- Item: Ran_Brooch
- Item: Boost_Up_1
Amount: 3
- Group: 2
Items:
- Item: Elemental_Booster_Robe_
- Item: Elemental_Booster_Muffler_
- Item: Elemental_Booster_Shoes_
- Item: Elemental_Booster_Earring
- Item: Ele_Robe
- Item: Ele_Muffler
- Item: Ele_Shoes
- Item: Ele_Earing
- Item: Boost_Up_1
Amount: 3
- Group: 3
Items:
- Item: Defender_Booster_Robe_
- Item: Defender_Booster_Muffler_
- Item: Defender_Booster_Shoes_
- Item: Defender_Booster_Earring
- Item: Defn_Robe
- Item: Defn_Muffler
- Item: Defn_Shoes
- Item: Defn_Earing
- Item: Boost_Up_1
Amount: 3
- Item: Special_Coin_Pack

View File

@@ -6892,3 +6892,91 @@ Body:
# Amount: 150
# ResultItem: Blessed_Knife_LT
# ChangeRefine: 1
- Item: Dimmen_A_Reform
BaseItems:
- BaseItem: Under_Seal_D_Key
MaximumRefine: 0
CardsAllowed: false
Materials:
- Material: Dimmension_Jewel
Amount: 1
- Material: Dimmension_Jewelry
Amount: 1
- Material: Herosria_Jewel
Amount: 1
- Material: Creed_Of_Herosria
Amount: 1
ResultItem: Dimmension_W_Key
- BaseItem: Under_Seal_D_Padlock
MaximumRefine: 0
CardsAllowed: false
Materials:
- Material: Dimmension_Jewel
Amount: 1
- Material: Dimmension_Jewelry
Amount: 1
- Material: Herosria_Jewel
Amount: 1
- Material: Justice_Of_Herosria
Amount: 1
ResultItem: Dimmension_W_Padlock
- BaseItem: Under_Seal_D_keyring
MaximumRefine: 0
CardsAllowed: false
Materials:
- Material: Dimmension_Jewel
Amount: 1
- Material: Dimmension_Jewelry
Amount: 1
- Material: Herosria_Jewel
Amount: 1
- Material: Glory_Of_Herosria
Amount: 1
ResultItem: Dimmension_W_Keyring
- Item: Dimmen_A_Refine
BaseItems:
- BaseItem: Dimmension_W_Key
MinimumRefine: 9
MaximumRefine: 11
CardsAllowed: false
Materials:
- Material: Heros_Gold_Bar
Amount: 50
- Material: Heros_Silver_Bar
Amount: 100
- Material: Heros_Copper_Bar
Amount: 200
- Material: Heros_Iron_Bar
Amount: 300
ResultItem: Dimmension_W_Key
ChangeRefine: 1
- BaseItem: Dimmension_W_Padlock
MinimumRefine: 9
MaximumRefine: 11
CardsAllowed: false
Materials:
- Material: Heros_Gold_Bar
Amount: 50
- Material: Heros_Silver_Bar
Amount: 100
- Material: Heros_Copper_Bar
Amount: 200
- Material: Heros_Iron_Bar
Amount: 300
ResultItem: Dimmension_W_Padlock
ChangeRefine: 1
- BaseItem: Dimmension_W_Keyring
MinimumRefine: 9
MaximumRefine: 11
CardsAllowed: false
Materials:
- Material: Heros_Gold_Bar
Amount: 50
- Material: Heros_Silver_Bar
Amount: 100
- Material: Heros_Copper_Bar
Amount: 200
- Material: Heros_Iron_Bar
Amount: 300
ResultItem: Dimmension_W_Keyring
ChangeRefine: 1

View File

@@ -37,7 +37,7 @@ Header:
Version: 1
Body:
- Item: Shadow_Exchange_Box
- Item: Shadow_Mix_Recipe
RewardGroup: SHADOW_EXCHANGE_BOX
RequiredRequirementsCount: 3
Requirements:
@@ -345,42 +345,42 @@ Body:
- Item: S_Gunslinger_Shield
- Item: S_Thief_earring
- Item: S_Archer_earring
- Item: S_Hasty_Shoes_II
- Item: S_Bearer's_Pendant_II
- Item: S_Gemstone_Earring_II
- Item: S_Spellflow_Shield_II
- Item: S_Spiritual_Weapon_II
- Item: S_Malicious_Armor_II
- Item: S2_Hasty_Shoes
- Item: S2_Bearers_Pendent
- Item: S2_Gemstone_Earring
- Item: S2_Spell_Flow_Shield
- Item: S2_Spiritual_Weapon
- Item: S2_Malicious_Armor
- Item: S_Sigrun_Armor
- Item: S_Sigrun_Shield
- Item: S_Force_Executioner_Weapon
- Item: S_Spirit_Magic_Executioner_Weapon
- Item: S_Caster_Armor_II
- Item: S_Reload_Armor_II
- Item: S2_Force_Ex_Weapon
- Item: S2_Spirit_M_E_Weapon
- Item: S2_Caster_Armor
- Item: S2_Reload_Armor
- Item: S_Critical_Shield
- Item: S_Critical_Shoes
- Item: S_Magic_Compose_Armor
- Item: S_Gemstone_Weapon_II
- Item: S_Gemstone_Shield_II
- Item: S_Bearer's_Armor_II
- Item: S_Bearer's_Shoes_II
- Item: S_MagicCompose_Armor
- Item: S2_Gemstone_Weapon
- Item: S2_Gemstone_Shield
- Item: S2_Bearers_Armor
- Item: S2_Bearers_Shoes
- Item: S_AllMighty_Earring
- Item: S_AllMighty_Pendant
- Item: S_Tempest_Shield
- Item: S_Tempest_Shoes
- Item: S_Magic_Executioner_Holy_Water_Armor
- Item: S_Magic_Exorcist_Corrupted_Armor
- Item: S_Magic_Vibration_Dragon_Killer_Armor
- Item: S_Magic_Scissor_Hunting_Armor
- Item: S_Magic_Fishing_Insect_Net_Armor
- Item: S_Plasterer's_Armor_II
- Item: S_Insomniac_Shoes_II
- Item: S_Peerless_Armor_II
- Item: S_Adulate_Shoes_II
- Item: S_Unfreezing_Weapon_II
- Item: S_Vitality_Earring_II
- Item: S_Neutral_Weapon_II
- Item: S_Uncursed_Pendant_II
- Item: S_M_ExeHoly_Armor
- Item: S_M_ExoCorrupt_Armor
- Item: S_M_DragonVib_Armor
- Item: S_M_SciHunting_Armor
- Item: S_M_FishInsect_Armor
- Item: S2_Plasterer's_Armor
- Item: S2_Insomniac_Shoes
- Item: S2_Peerless_Armor
- Item: S2_Adurate_Shoes
- Item: Unfreez_Weapon_S2
- Item: Vitality_Earing_S2
- Item: S2_Neutral_Weapon
- Item: S2_Curse_Lift_Pendent
- Item: S_Tension_Weapon
- Item: S_Tension_Earring
- Item: S_Tension_Pendent
@@ -390,17 +390,17 @@ Body:
- Item: S_Healing_Shield
- Item: S_Healing_Shoes
- Item: S_Restore_Earring
- Item: S_Restore_Pendant
- Item: S_Mortal_Blow_Weapon
- Item: S_Mortal_Blow_Earring
- Item: S_Mortal_Blow_Pendant
- Item: S_Restore_Pendent
- Item: S_MortalBlow_Weapon
- Item: S_MortalBlow_Earring
- Item: S_MortalBlow_Pendent
- Item: S_Penetration_Shoes
- Item: S_Penetration_Shield
- Item: S_Executioner_Holy_Water_Armor
- Item: S_Exorcist_Corrupted_Armor
- Item: S_Vibration_Dragon_Killer_Armor
- Item: S_Scissor_Hunting_Armor
- Item: S_Fishing_Insect_Net_Armor
- Item: S_ExeHoly_Armor
- Item: S_ExoCorrupt_Armor
- Item: S_DragonVib_Armor
- Item: S_SciHunting_Armor
- Item: S_FishInsect_Armor
- Item: Sentimental_Weapone_S
- Item: Sentimental_Earring_S
- Item: Sentimental_Pendant_S
@@ -414,8 +414,8 @@ Body:
- Item: S_Magical_Shoes
- Item: S_Magical_Shield
- Item: S_Magical_Armor
- Item: S_Immune_Athena_Shield
- Item: S_Hard_Champion_Shoes
- Item: S_ImmunedAthena_Shield
- Item: S_HardChamption_Shoes
- Item: S_KingbirdAncient_Armor
- Item: S_CriticalHit_Armor
- Item: S_Rebellion_Armor
@@ -657,8 +657,8 @@ Body:
- Item: S_FullPene_Armor
- Item: S_FullPene_Pendant
- Item: S_FullPene_Earring
- Item: S_All_Race_Shoes
- Item: S_All_Race_Shield
- Item: S_AllRace_Shoes
- Item: S_AllRace_Shield
- Item: S_Blitz_Weapon
- Item: S_Blitz_Armor
- Item: S_FullTemp_Earring
@@ -857,9 +857,9 @@ Body:
- Item: MechanicStone_Bottom
- Item: MechanicStone_Robe
- Item: WanderMinstrelStone_Top
- Item: WanderMinstrelStone_Middle
- Item: WanderMinstrelStone_Bottom
- Item: WanderMinstrelStone_Robe
- Item: WanderMinstStone_Middle
- Item: WanderMinstStone_Bottom
- Item: WanderMinstreStone_Robe
- Item: HPStone_Bottom
- Item: DoubleAttack_Stone
- Item: Critical_Stone_Robe
@@ -890,14 +890,14 @@ Body:
- Item: ShadowchasStone_Bottom2
- Item: ShadowchasStone_Middle2
- Item: ShadowchaserStone_Top2
- Item: SoulReaperStone_Robe
- Item: SoulLinkerStone_Top
- Item: SoulLinkerStone_Middle
- Item: SoulLinkerStone_Bottom
- Item: StarGladiatorStone_Top
- Item: StarGladiatorStone_Middle
- Item: StarGladiatorStone_Bottom
- Item: StarEmperorStone_Garment
- Item: SoulreaperStone_Robe
- Item: SoullinkerStone_Top
- Item: SoullinkerStone_Middle
- Item: SoullinkerStone_Bottom
- Item: GladiatorStone_Top
- Item: GladiatorStone_Middle
- Item: GladiatorStone_Bottom
- Item: StaremperorStone_Robe
- Item: NinjaStone_Top
- Item: NinjaStone_Middle
- Item: NinjaStone_Bottom
@@ -906,35 +906,35 @@ Body:
- Item: GunslingerStone_Top
- Item: GunslingerStone_Middle
- Item: GunslingerStone_Bottom
- Item: GunslingerStone_Robe
- Item: RebellionStone_Robe
- Item: DoramStone_Top
- Item: DoramStone_Middle
- Item: DoramStone_Bottom
- Item: DoramStone_Robe
- Item: RangerStone_II_Top
- Item: RangerStone_II_Middle
- Item: RangerStone_II_Bottom
- Item: RangerStone_II_Garment
- Item: MechanicStone_II_Top
- Item: MechanicStone_II_Middle
- Item: MechanicStone_II_Bottom
- Item: MechanicStone_II_Garment
- Item: HighpriestStone_II_Top
- Item: HighpriestStone_II_Middle
- Item: HighpriestStone_II_Bottom
- Item: ArchbishopStone_II_Garment
- Item: RangerStone_Top2
- Item: RangerStone_Middle2
- Item: RangerStone_Bottom2
- Item: RangerStone_Robe2
- Item: MechanicStone_Top2
- Item: MechanicStone_Middle2
- Item: MechanicStone_Bottom2
- Item: MechanicStone_Robe2
- Item: HighpriestStone_Top2
- Item: HighpriestStone_Middle2
- Item: HighpriestStone_Bottom2
- Item: ArchbishopStone_Robe2
- Item: WarlockStone_Robe2
- Item: WarlockStone_Top2
- Item: WarlockStone_Middle2
- Item: WarlockStone_Bottom2
- Item: RoyalGuardStone_Robe2
- Item: RoyalGuardStone_Top2
- Item: RoyalGuardStone_Middle2
- Item: RoyalGuardStone_Bottom2
- Item: GuillotineCrossStone_Robe2
- Item: GuillotineCrossStone_Top2
- Item: GuillotineCrossStone_Middle2
- Item: GuillotineCrossStone_Bottom2
- Item: RoyalguardStone_Robe2
- Item: PaladinStone_Top2
- Item: PaladinStone_Middle2
- Item: PaladinStone_Bottom2
- Item: GuillcrossStone_Robe2
- Item: AssacrossStone_Top2
- Item: AssacrossStone_Middle2
- Item: AssacrossStone_Bottom2
- Item: RuneknightStone_Robe2
- Item: RuneknightStone_Top2
- Item: RuneknightStone_Middle2
@@ -994,7 +994,7 @@ Body:
- Item: ShadowchasStone_Top3
- Item: ShadowchasStone_Middle3
- Item: ShadowchasStone_Bottom3
- Item: Collectibles_Box
- Item: EventItem_Recipe
# TODO: Add official rewards
RewardGroup: VIOLETBOX
RequiredRequirementsCount: 10
@@ -1387,7 +1387,7 @@ Body:
Amount: 10
- Item: Frozen_Stone_Fragment
Amount: 10
- Item: Spirit_Jewel
- Item: SpritJewel
Amount: 10
- Item: Snowball
Amount: 10
@@ -1419,7 +1419,7 @@ Body:
Amount: 10
- Item: Fine_Old_Doll
Amount: 10
- Item: Old_Shell
- Item: OldShell
Amount: 10
- Item: Ein_SOLIDDUST
Amount: 10
@@ -1427,7 +1427,7 @@ Body:
Amount: 10
- Item: Ein_EYEROCK
Amount: 10
- Item: Pet_Egg_Box
- Item: PetEgg_Recipe
RewardGroup: PET_EGG_BOX
RequiredRequirementsCount: 2
Requirements:
@@ -1502,7 +1502,7 @@ Body:
- Item: Miyabi_Ningyo_Egg
- Item: Leaf_Cat_Egg
- Item: Dark_Priest_Egg
- Item: Costume_Exchange_Box
- Item: Nyang_Costume_Recipe
RewardGroup: COSTUME_EXCHANGE_BOX
Requirements:
- Item: C_Rabbit_Ear_Hat
@@ -1554,7 +1554,7 @@ Body:
- Item: C_Cowlick_OM
- Item: C_Cowlick_BU
- Item: C_Cowlick_WH
- Item: C_Bouncing_Hair_Black
- Item: C_Cowlick_BL
- Item: C_Straight_Pony_YL
- Item: C_Straight_Pony_GN
- Item: C_Straight_Pony_PP
@@ -1562,7 +1562,7 @@ Body:
- Item: C_Straight_Pony_OM
- Item: C_Straight_Pony_BU
- Item: C_Straight_Pony_WH
- Item: C_Straight_Pony_Black
- Item: C_Straight_Pony_BL
- Item: C_Loose_Wave_Twin_YL
- Item: C_Loose_Wave_Twin_GN
- Item: C_Loose_Wave_Twin_PP
@@ -1570,7 +1570,7 @@ Body:
- Item: C_Loose_Wave_Twin_OM
- Item: C_Loose_Wave_Twin_BU
- Item: C_Loose_Wave_Twin_WH
- Item: C_Loose_Wave_Twin
- Item: C_Loose_Wave_Twin_BL
- Item: C_Cupid_Wing_Pink
- Item: C_Pecopeco_Cap
- Item: C_Green_Hat
@@ -1602,7 +1602,7 @@ Body:
- Item: C_Charleston_Antenna
- Item: C_Wings_of_Uriel
- Item: C_Pig_Nose
- Item: C_Cat_Ears_Hat
- Item: C_Cat_Ear_Hat
- Item: C_Valkyrie_Circlet
- Item: C_Eremes_Scarf_Black
- Item: C_Eleanor_Wig
@@ -1639,7 +1639,7 @@ Body:
- Item: C_Long_Pony_OM
- Item: C_Long_Pony_PP
- Item: C_Piggyback
- Item: C_RuneHelm
- Item: C_Rune_Helm
- Item: C_Shaving_Foam
- Item: C_Blue_Fairy_Wing
- Item: C_Black_Cat
@@ -1649,7 +1649,7 @@ Body:
- Item: C_Thanatos_Sword
- Item: C_Warm_Cat_Muffler
- Item: C_Clock_Casket
- Item: C_Happy_Parrot_J
- Item: C_Chatty_Parrot
- Item: C_Flame_Muffler
- Item: C_Teddy_Bear_Hood
- Item: C_Mouton_Life_BL
@@ -1659,7 +1659,7 @@ Body:
- Item: C_BelieversCap
- Item: C_Pope_Ribbon
- Item: C_Alice_Wig
- Item: Khalitzburg_KN_Helm_BL
- Item: C_Khalitzburg_Helm_BL
- Item: C_Wanderer_Sakkat
- Item: C_Wings_of_Michael
- Item: C_Shura_King_Pledge
@@ -1738,13 +1738,13 @@ Body:
- Item: C_Big_Foxtail
- Item: C_T_Bear_Bag
- Item: C_Poring_On_Shoulder
- Item: Costume_Yawata_Seal
- Item: C_FortunetellinSealed
- Item: C_Pretty_Bear_WH
- Item: C_Bicolor_Cat_Witch_Hat
- Item: C_Nifl_Bloom
- Item: C_Floating_Ball_TW
- Item: C_Dark_Snake_Lord_Stall
- Item: Costume_Twin_Cannon
- Item: C_Twin_Canon
- Item: C_Picnic_Basket
- Item: C_Magic_Helm
- Item: C_ManyStars_TW
@@ -1773,13 +1773,13 @@ Body:
- Item: C_Disapear_Time_TW
- Item: C_Magic_Heir_TW
- Item: C_Blink_Eyes_Sakura
- Item: Costume_Angola_Intention
- Item: C_Stole_Of_Dominion
- Item: C_Angola_Intention
- Item: C_Stall_Of_Dominions
- Item: C_Flowery_Vision_TH
- Item: C_Frill_Collar
- Item: C_Rose_Gothic_Bonnet
- Item: C_LittleGarden
- Item: Costume_Twinkling_Red_Eyes
- Item: C_Blinking_Eyes_RD
- Item: C_P_Ulysses_Feather
- Item: C_DancingButterfly_TW
- Item: C_Blue_Pencil_In_Mouth
@@ -1790,7 +1790,7 @@ Body:
- Item: C_Frog_Hood
- Item: C_Lude_Hood
- Item: C_Blessings_Of_Soul
- Item: C_Crow
- Item: C_Gossip_Raven
- Item: C_Halloween_Hat
- Item: C_Blessed_Veil
- Item: C_Eyes_Of_Ifrit
@@ -1799,7 +1799,7 @@ Body:
- Item: C_Wildcat_Knit_Cap
- Item: C_Pink_Fur_Hat
- Item: C_Gift_Of_Snow
- Item: C_Large_Ribbon_Muffler_Red
- Item: C_L_RibbonMuff_Red
- Item: C_Imperial_Glory
- Item: C_Black_Shiba_Inu_Hat
- Item: C_Black_Glasses
@@ -1809,18 +1809,18 @@ Body:
- Item: C_Fairy_Feathers
- Item: C_Giant_White_Rabbit
- Item: C_Katashiro_Flying
- Item: C_Yellow_Hunting_Cap
- Item: C_Love_Daddy
- Item: C_Sakura_Coronet
- Item: C_Full_Bloom_Hairpin
- Item: Cons_Of_Earth
- Item: Costume_Master_Of_Wind
- Item: C_Cons_Of_Wind
- Item: C_Cons_Of_Darkness
- Item: C_Boitata_Hat_J
- Item: C_Jioia_TW
- Item: C_Baldr_Wing_TW
- Item: C_Brabery_Hat
- Item: C_Carefree_Face
- Item: C_Stings_Silk_Ribbon
- Item: C_Sting_Silk_Ribbon
- Item: C_Adventure_Cat_Bag
- Item: C_Flower_Summer_Hat
- Item: C_Cherry_Ribbon
@@ -1858,12 +1858,12 @@ Body:
RewardGroup: SUIT_UPGRADE_KIT
Requirements:
- Item: Kafra_Uniform
- Item: Scroll_of_Fallen_Angel_Wings
- Item: FallenAngelWing_Reset
RewardGroup: SCROLL_OF_FALLEN_ANGEL_WINGS
Requirements:
- Item: Fallen_Angel_Wings_
- Item: Fallen_Angel_Wing
- Item: Class_Shadow_Box_Weapon
- Item: JobShadow_Mix_Weapon
RewardGroup: CLASS_SHADOW_BOX_WEAPON
MinimumRefine: 7
Requirements:
@@ -1886,7 +1886,7 @@ Body:
- Item: S_Ranger_Weapon
- Item: S_Minstrel_Weapon
- Item: S_Wanderer_Weapon
- Item: Class_Shadow_Box_Armor
- Item: JobShadow_Mix_Armor
RewardGroup: CLASS_SHADOW_BOX_ARMOR
MinimumRefine: 7
Requirements:
@@ -1910,7 +1910,7 @@ Body:
- Item: S_DoramMagical_Armor
- Item: S_Star_Emperor_Armor
- Item: S_Soul_Reaper_Armor
- Item: Class_Shadow_Box_Shoes
- Item: JobShadow_Mix_Shoes
RewardGroup: CLASS_SHADOW_BOX_SHOES
MinimumRefine: 7
Requirements:
@@ -1934,7 +1934,7 @@ Body:
- Item: S_DoramMagical_Shoes
- Item: S_Star_Emperor_Shoes
- Item: S_Soul_Reaper_Shoes
- Item: Class_Shadow_Box_Shield
- Item: JobShadow_Mix_Shield
RewardGroup: CLASS_SHADOW_BOX_SHIELD
MinimumRefine: 7
Requirements:
@@ -1957,7 +1957,7 @@ Body:
- Item: S_DoramMagical_Shield
- Item: S_SuperNovice_Shield
- Item: S_Gunslinger_Shield
- Item: Class_Shadow_Box_Pendant
- Item: JobShadow_Mix_Pendant
RewardGroup: CLASS_SHADOW_BOX_PENDANT
MinimumRefine: 7
Requirements:
@@ -1967,7 +1967,7 @@ Body:
- Item: S_Thief_Pendant
- Item: S_Magician_Pendant
- Item: S_Archer_Pendant
- Item: Class_Shadow_Box_Earring
- Item: JobShadow_Mix_Earing
RewardGroup: CLASS_SHADOW_BOX_EARRING
MinimumRefine: 7
Requirements:
@@ -2067,7 +2067,7 @@ Body:
- Item: Magical_Cat_Hand
RewardGroup: MAGICAL_CAT_HAND
Requirements:
- Item: Neko_Headress
- Item: Cat_Lace_Hairband_K
- Item: StabilityShadow_Mix
RewardGroup: STABILITYSHADOW_MIX
RequiredRequirementsCount: 3
@@ -2829,7 +2829,7 @@ Body:
RequiredRequirementsCount: 2
MinimumRefine: 7
Requirements:
- Item: S_Hasty_Shoes_II
- Item: S2_Hasty_Shoes
- Item: S_Hasty_Armor
- Item: S_Hasty_Shoes
- Item: EnchantStone_Recipe_4m
@@ -2911,7 +2911,7 @@ Body:
RewardGroup: SHIVER_KATAR_K_CUBE
MinimumRefine: 9
Requirements:
- Item: Katar_of_Shiver
- Item: Shiver_Katar_K
- Item: Blade_Katar_Cube
RewardGroup: BLADE_KATAR_CUBE
MinimumRefine: 9
@@ -3212,7 +3212,7 @@ Body:
RewardGroup: DEMON_HUNT_BIBLE_CUBE
MinimumRefine: 9
Requirements:
- Item: Exoricists_Bible_
- Item: Demon_Hunting_Bible_K
- Item: Saint_Hall_Cube
RewardGroup: SAINT_HALL_CUBE
MinimumRefine: 9
@@ -3233,12 +3233,12 @@ Body:
MinimumRefine: 9
Requirements:
- Item: Humma_Clear
- Item: Thousand_Sun_Cube
- Item: OneSkyOneSun_Cube
RewardGroup: THOUSAND_SUN_CUBE
MinimumRefine: 9
Requirements:
- Item: OneSkyOneSun
- Item: Spirit_Pendulum_Cube
- Item: SoulWeight_Cube
RewardGroup: SPIRIT_PENDULUM_CUBE
MinimumRefine: 9
Requirements:
@@ -3253,17 +3253,17 @@ Body:
MinimumRefine: 9
Requirements:
- Item: Master_Soul_Rifle
- Item: Golden_Lord_Launcher_Cube
- Item: Golden_L_Launcher_Cube
RewardGroup: GOLDEN_LORD_LAUNCHER_CUBE
MinimumRefine: 9
Requirements:
- Item: Golden_L_Launcher
- Item: The_Black_Cube
- Item: The_Black_Gatling_Cube
RewardGroup: THE_BLACK_CUBE
MinimumRefine: 9
Requirements:
- Item: The_Black_Gatling
- Item: Demon_Slayer_Shot_Cube
- Item: Demon_S_Shot_Cube
RewardGroup: DEMON_SLAYER_SHOT_CUBE
MinimumRefine: 9
Requirements:
@@ -3272,11 +3272,11 @@ Body:
# RewardGroup: ENCHANTSTONE_RECIPE_3M
# Requirements:
# - Item: C_Pretty_Bear_WH
# - Item: Costume_Yawata_Seal
# - Item: C_FortunetellinSealed
# - Item: C_Floating_Ball_TW
# - Item: C_Dark_Snake_Lord_Stall
# - Item: C_Bicolor_Cat_Witch_Hat
# - Item: Costume_Twin_Cannon
# - Item: C_Twin_Canon
# - Item: C_Picnic_Basket
# - Item: C_Magic_Helm
# - Item: C_Fawn_Ear
@@ -3291,7 +3291,7 @@ Body:
# - Item: C_Frill_Collar
# - Item: C_Rose_Gothic_Bonnet
# - Item: C_LittleGarden
# - Item: Costume_Twinkling_Red_Eyes
# - Item: C_Blinking_Eyes_RD
# - Item: Egirnion_Box
# RewardGroup: EGIRNION_BOX
# Requirements:
@@ -3307,11 +3307,11 @@ Body:
Requirements:
- Item: S_Penetration_Shoes
- Item: S_Penetration_Shield
- Item: S_Executioner_Holy_Water_Armor
- Item: S_Exorcist_Corrupted_Armor
- Item: S_Vibration_Dragon_Killer_Armor
- Item: S_Scissor_Hunting_Armor
- Item: S_Fishing_Insect_Net_Armor
- Item: S_ExeHoly_Armor
- Item: S_ExoCorrupt_Armor
- Item: S_DragonVib_Armor
- Item: S_SciHunting_Armor
- Item: S_FishInsect_Armor
- Item: S_Penetration_Earring
- Item: S_Penetration_Pendent
- Item: S_Executioner_Weapon
@@ -3324,7 +3324,7 @@ Body:
- Item: S_Vibration_Weapon
- Item: S_Holy_Water_Weapon
- Item: S_Scissors_Weapon
- Item: S_Force_Executioner_Weapon
- Item: S2_Force_Ex_Weapon
- Item: S_Penetration_Weapon
- Item: S_Penetration_Armor
- Item: S_Exe_Ho_Weapon
@@ -3344,11 +3344,11 @@ Body:
Requirements:
- Item: S_Tempest_Shoes
- Item: S_Tempest_Shield
- Item: S_Magic_Executioner_Holy_Water_Armor
- Item: S_Magic_Exorcist_Corrupted_Armor
- Item: S_Magic_Vibration_Dragon_Killer_Armor
- Item: S_Magic_Scissor_Hunting_Armor
- Item: S_Magic_Fishing_Insect_Net_Armor
- Item: S_M_ExeHoly_Armor
- Item: S_M_ExoCorrupt_Armor
- Item: S_M_DragonVib_Armor
- Item: S_M_SciHunting_Armor
- Item: S_M_FishInsect_Armor
- Item: S_Tempest_Earring
- Item: S_Tempest_Pendent
- Item: S_M_Executioner_Weapon
@@ -3361,7 +3361,7 @@ Body:
- Item: S_M_Vibration_Weapon
- Item: S_M_Holy_Water_Weapon
- Item: S_M_Scissors_Weapon
- Item: S_Spirit_Magic_Executioner_Weapon
- Item: S2_Spirit_M_E_Weapon
- Item: S_Tempest_Weapon
- Item: S_Tempest_Armor
- Item: S_M_Exe_Ho_Weapon
@@ -3700,11 +3700,11 @@ Body:
# - Item: S_AllMighty_Pendant
# - Item: S_Tempest_Shield
# - Item: S_Tempest_Shoes
# - Item: S_Magic_Executioner_Holy_Water_Armor
# - Item: S_Magic_Exorcist_Corrupted_Armor
# - Item: S_Magic_Vibration_Dragon_Killer_Armor
# - Item: S_Magic_Scissor_Hunting_Armor
# - Item: S_Magic_Fishing_Insect_Net_Armor
# - Item: S_M_ExeHoly_Armor
# - Item: S_M_ExoCorrupt_Armor
# - Item: S_M_DragonVib_Armor
# - Item: S_M_SciHunting_Armor
# - Item: S_M_FishInsect_Armor
# - Item: S_Plasterer's_Armor_II
# - Item: S_Insomniac_Shoes_II
# - Item: S_Peerless_Armor_II
@@ -3728,11 +3728,11 @@ Body:
# - Item: S_Mortal_Blow_Pendant
# - Item: S_Penetration_Shoes
# - Item: S_Penetration_Shield
# - Item: S_Executioner_Holy_Water_Armor
# - Item: S_Exorcist_Corrupted_Armor
# - Item: S_Vibration_Dragon_Killer_Armor
# - Item: S_Scissor_Hunting_Armor
# - Item: S_Fishing_Insect_Net_Armor
# - Item: S_ExeHoly_Armor
# - Item: S_ExoCorrupt_Armor
# - Item: S_DragonVib_Armor
# - Item: S_SciHunting_Armor
# - Item: S_FishInsect_Armor
# - Item: Sentimental_Weapone_S
# - Item: Sentimental_Earring_S
# - Item: Sentimental_Pendant_S
@@ -4209,9 +4209,9 @@ Body:
- Item: S_Gemstone_Earring
- Item: S_Gemstone_Pendent
- Item: S_Gemstone_Armor
- Item: S_Gemstone_Weapon_II
- Item: S_Gemstone_Shield_II
- Item: S_Gemstone_Earring_II
- Item: S2_Gemstone_Weapon
- Item: S2_Gemstone_Shield
- Item: S2_Gemstone_Earring
- Item: Mammoth_Mix
RewardGroup: MAMMOTH_MIX
RequiredRequirementsCount: 6
@@ -4247,11 +4247,11 @@ Body:
- Item: S_Spiritual_Weapon
- Item: S_Spiritual_Earring
- Item: S_Spiritual_Pendent
- Item: S_Spiritual_Weapon_II
- Item: S2_Spiritual_Weapon
- Item: S_Malicious_Armor
- Item: S_Malicious_Shoes
- Item: S_Malicious_Shield
- Item: S_Malicious_Armor_II
- Item: S2_Malicious_Armor
- Item: MajorAutoSpell_Mix
RewardGroup: MAJORAUTOSPELL_MIX
RequiredRequirementsCount: 6
@@ -4341,18 +4341,18 @@ Body:
- Item: S_Reload_Armor
- Item: S_Reload_Shoes
- Item: S_Reload_Shield
- Item: S_Reload_Armor_II
- Item: S2_Reload_Armor
- Item: SpellCasterShadow_Mix
RewardGroup: SPELLCASTERSHADOW_MIX
RequiredRequirementsCount: 6
MinimumRefine: 7
MaximumRefine: 10
Requirements:
- Item: S_Spellflow_Shield_II
- Item: S2_Spell_Flow_Shield
- Item: S_Spell_Flow_Shield
- Item: S_Spell_Flow_Armor
- Item: S_Spell_Flow_Shoes
- Item: S_Caster_Armor_II
- Item: S2_Caster_Armor
- Item: S_Caster_Armor
- Item: S_Caster_Shield
- Item: S_Caster_Shoes
@@ -4469,9 +4469,9 @@ Body:
MinimumRefine: 7
MaximumRefine: 10
Requirements:
- Item: S_Bearer's_Shoes_II
- Item: S_Bearer's_Armor_II
- Item: S_Bearer's_Pendant_II
- Item: S2_Bearers_Shoes
- Item: S2_Bearers_Armor
- Item: S2_Bearers_Pendent
- Item: S_Bearers_Earring
- Item: S_Bearers_Pendent
- Item: S_Bearers_Armor

View File

@@ -60,7 +60,7 @@ Body:
# - Item: Ein_1HSWORD
# - Item: Ein_1HGUN
# - Item: Ein_1H_Foxtail
- Item: Metal_Smelting_Ticket
- Item: Metal_Rifine_Ticket
ResultRefine: 7
CardsAllowed: true
TargetItems:
@@ -74,7 +74,7 @@ Body:
- Item: Metal_Bow
- Item: Metal_Two_Hand_Sword
- Item: Metal_Revolver
- Item: Huuma_Metal_Shuriken
- Item: Metal_Huuma_Shuriken
- Item: Metal_Foxtail
# - Item: Ein_Ddbox2
# TargetItems:
@@ -475,46 +475,46 @@ Body:
- Item: S_DoramMagical_Shield
- Item: S_SuperNovice_Shield
- Item: S_Gunslinger_Shield
- Item: S_Hasty_Shoes_II
- Item: S_Bearer's_Pendant_II
- Item: S_Gemstone_Earring_II
- Item: S_Spellflow_Shield_II
- Item: S_Spiritual_Weapon_II
- Item: S_Malicious_Armor_II
- Item: S2_Hasty_Shoes
- Item: S2_Bearers_Pendent
- Item: S2_Gemstone_Earring
- Item: S2_Spell_Flow_Shield
- Item: S2_Spiritual_Weapon
- Item: S2_Malicious_Armor
- Item: S_Sigrun_Armor
- Item: S_Sigrun_Shield
- Item: S_Force_Executioner_Weapon
- Item: S_Spirit_Magic_Executioner_Weapon
- Item: S_Caster_Armor_II
- Item: S_Reload_Armor_II
- Item: S2_Force_Ex_Weapon
- Item: S2_Spirit_M_E_Weapon
- Item: S2_Caster_Armor
- Item: S2_Reload_Armor
- Item: S_Critical_Shield
- Item: S_Critical_Shoes
- Item: S_Magic_Compose_Armor
- Item: S_Gemstone_Weapon_II
- Item: S_Gemstone_Shield_II
- Item: S_Bearer's_Armor_II
- Item: S_Bearer's_Shoes_II
- Item: S_MagicCompose_Armor
- Item: S2_Gemstone_Weapon
- Item: S2_Gemstone_Shield
- Item: S2_Bearers_Armor
- Item: S2_Bearers_Shoes
- Item: S_AllMighty_Earring
- Item: S_AllMighty_Pendant
- Item: S_All_Race_Shoes
- Item: S_All_Race_Shield
- Item: S_AllRace_Shoes
- Item: S_AllRace_Shield
- Item: S_Blitz_Weapon
- Item: S_Blitz_Armor
- Item: S_Tempest_Shield
- Item: S_Tempest_Shoes
- Item: S_Magic_Executioner_Holy_Water_Armor
- Item: S_Magic_Exorcist_Corrupted_Armor
- Item: S_Magic_Vibration_Dragon_Killer_Armor
- Item: S_Magic_Scissor_Hunting_Armor
- Item: S_Magic_Fishing_Insect_Net_Armor
- Item: S_Plasterer's_Armor_II
- Item: S_Insomniac_Shoes_II
- Item: S_Peerless_Armor_II
- Item: S_Adulate_Shoes_II
- Item: S_Unfreezing_Weapon_II
- Item: S_Vitality_Earring_II
- Item: S_Neutral_Weapon_II
- Item: S_Uncursed_Pendant_II
- Item: S_M_ExeHoly_Armor
- Item: S_M_ExoCorrupt_Armor
- Item: S_M_DragonVib_Armor
- Item: S_M_SciHunting_Armor
- Item: S_M_FishInsect_Armor
- Item: S2_Plasterer's_Armor
- Item: S2_Insomniac_Shoes
- Item: S2_Peerless_Armor
- Item: S2_Adurate_Shoes
- Item: Unfreez_Weapon_S2
- Item: Vitality_Earing_S2
- Item: S2_Neutral_Weapon
- Item: S2_Curse_Lift_Pendent
- Item: S_Tension_Weapon
- Item: S_Tension_Earring
- Item: S_Tension_Pendent
@@ -524,17 +524,17 @@ Body:
- Item: S_Healing_Shield
- Item: S_Healing_Shoes
- Item: S_Restore_Earring
- Item: S_Restore_Pendant
- Item: S_Mortal_Blow_Weapon
- Item: S_Mortal_Blow_Earring
- Item: S_Mortal_Blow_Pendant
- Item: S_Restore_Pendent
- Item: S_MortalBlow_Weapon
- Item: S_MortalBlow_Earring
- Item: S_MortalBlow_Pendent
- Item: S_Penetration_Shoes
- Item: S_Penetration_Shield
- Item: S_Executioner_Holy_Water_Armor
- Item: S_Exorcist_Corrupted_Armor
- Item: S_Vibration_Dragon_Killer_Armor
- Item: S_Scissor_Hunting_Armor
- Item: S_Fishing_Insect_Net_Armor
- Item: S_ExeHoly_Armor
- Item: S_ExoCorrupt_Armor
- Item: S_DragonVib_Armor
- Item: S_SciHunting_Armor
- Item: S_FishInsect_Armor
- Item: Sentimental_Weapone_S
- Item: Sentimental_Earring_S
- Item: Sentimental_Pendant_S
@@ -548,8 +548,8 @@ Body:
- Item: S_Magical_Shoes
- Item: S_Magical_Shield
- Item: S_Magical_Armor
- Item: S_Immune_Athena_Shield
- Item: S_Hard_Champion_Shoes
- Item: S_ImmunedAthena_Shield
- Item: S_HardChamption_Shoes
- Item: S_KingbirdAncient_Armor
- Item: S_CriticalHit_Armor
- Item: S_Thief_earring
@@ -1207,46 +1207,46 @@ Body:
- Item: S_Reload_Shoes
- Item: S_Reload_Shield
- Item: S_Reload_Armor
- Item: S_Hasty_Shoes_II
- Item: S_Bearer's_Pendant_II
- Item: S_Gemstone_Earring_II
- Item: S_Spellflow_Shield_II
- Item: S_Spiritual_Weapon_II
- Item: S_Malicious_Armor_II
- Item: S2_Hasty_Shoes
- Item: S2_Bearers_Pendent
- Item: S2_Gemstone_Earring
- Item: S2_Spell_Flow_Shield
- Item: S2_Spiritual_Weapon
- Item: S2_Malicious_Armor
- Item: S_Sigrun_Armor
- Item: S_Sigrun_Shield
- Item: S_Force_Executioner_Weapon
- Item: S_Spirit_Magic_Executioner_Weapon
- Item: S_Caster_Armor_II
- Item: S_Reload_Armor_II
- Item: S2_Force_Ex_Weapon
- Item: S2_Spirit_M_E_Weapon
- Item: S2_Caster_Armor
- Item: S2_Reload_Armor
- Item: S_Critical_Shield
- Item: S_Critical_Shoes
- Item: S_Magic_Compose_Armor
- Item: S_Gemstone_Weapon_II
- Item: S_Gemstone_Shield_II
- Item: S_Bearer's_Armor_II
- Item: S_Bearer's_Shoes_II
- Item: S_MagicCompose_Armor
- Item: S2_Gemstone_Weapon
- Item: S2_Gemstone_Shield
- Item: S2_Bearers_Armor
- Item: S2_Bearers_Shoes
- Item: S_AllMighty_Earring
- Item: S_AllMighty_Pendant
- Item: S_All_Race_Shoes
- Item: S_All_Race_Shield
- Item: S_AllRace_Shoes
- Item: S_AllRace_Shield
- Item: S_Blitz_Weapon
- Item: S_Blitz_Armor
- Item: S_Tempest_Shield
- Item: S_Tempest_Shoes
- Item: S_Magic_Executioner_Holy_Water_Armor
- Item: S_Magic_Exorcist_Corrupted_Armor
- Item: S_Magic_Vibration_Dragon_Killer_Armor
- Item: S_Magic_Scissor_Hunting_Armor
- Item: S_Magic_Fishing_Insect_Net_Armor
- Item: S_Plasterer's_Armor_II
- Item: S_Insomniac_Shoes_II
- Item: S_Peerless_Armor_II
- Item: S_Adulate_Shoes_II
- Item: S_Unfreezing_Weapon_II
- Item: S_Vitality_Earring_II
- Item: S_Neutral_Weapon_II
- Item: S_Uncursed_Pendant_II
- Item: S_M_ExeHoly_Armor
- Item: S_M_ExoCorrupt_Armor
- Item: S_M_DragonVib_Armor
- Item: S_M_SciHunting_Armor
- Item: S_M_FishInsect_Armor
- Item: S2_Plasterer's_Armor
- Item: S2_Insomniac_Shoes
- Item: S2_Peerless_Armor
- Item: S2_Adurate_Shoes
- Item: Unfreez_Weapon_S2
- Item: Vitality_Earing_S2
- Item: S2_Neutral_Weapon
- Item: S2_Curse_Lift_Pendent
- Item: S_Tension_Weapon
- Item: S_Tension_Earring
- Item: S_Tension_Pendent
@@ -1256,17 +1256,17 @@ Body:
- Item: S_Healing_Shield
- Item: S_Healing_Shoes
- Item: S_Restore_Earring
- Item: S_Restore_Pendant
- Item: S_Mortal_Blow_Weapon
- Item: S_Mortal_Blow_Earring
- Item: S_Mortal_Blow_Pendant
- Item: S_Restore_Pendent
- Item: S_MortalBlow_Weapon
- Item: S_MortalBlow_Earring
- Item: S_MortalBlow_Pendent
- Item: S_Penetration_Shoes
- Item: S_Penetration_Shield
- Item: S_Executioner_Holy_Water_Armor
- Item: S_Exorcist_Corrupted_Armor
- Item: S_Vibration_Dragon_Killer_Armor
- Item: S_Scissor_Hunting_Armor
- Item: S_Fishing_Insect_Net_Armor
- Item: S_ExeHoly_Armor
- Item: S_ExoCorrupt_Armor
- Item: S_DragonVib_Armor
- Item: S_SciHunting_Armor
- Item: S_FishInsect_Armor
- Item: Sentimental_Weapone_S
- Item: Sentimental_Earring_S
- Item: Sentimental_Pendant_S
@@ -1280,8 +1280,8 @@ Body:
- Item: S_Magical_Shoes
- Item: S_Magical_Shield
- Item: S_Magical_Armor
- Item: S_Immune_Athena_Shield
- Item: S_Hard_Champion_Shoes
- Item: S_ImmunedAthena_Shield
- Item: S_HardChamption_Shoes
- Item: S_KingbirdAncient_Armor
- Item: S_CriticalHit_Armor
- Item: S_Tempest_Weapon
@@ -2017,46 +2017,46 @@ Body:
- Item: S_DoramMagical_Shield
- Item: S_SuperNovice_Shield
- Item: S_Gunslinger_Shield
- Item: S_Hasty_Shoes_II
- Item: S_Bearer's_Pendant_II
- Item: S_Gemstone_Earring_II
- Item: S_Spellflow_Shield_II
- Item: S_Spiritual_Weapon_II
- Item: S_Malicious_Armor_II
- Item: S2_Hasty_Shoes
- Item: S2_Bearers_Pendent
- Item: S2_Gemstone_Earring
- Item: S2_Spell_Flow_Shield
- Item: S2_Spiritual_Weapon
- Item: S2_Malicious_Armor
- Item: S_Sigrun_Armor
- Item: S_Sigrun_Shield
- Item: S_Force_Executioner_Weapon
- Item: S_Spirit_Magic_Executioner_Weapon
- Item: S_Caster_Armor_II
- Item: S_Reload_Armor_II
- Item: S2_Force_Ex_Weapon
- Item: S2_Spirit_M_E_Weapon
- Item: S2_Caster_Armor
- Item: S2_Reload_Armor
- Item: S_Critical_Shield
- Item: S_Critical_Shoes
- Item: S_Magic_Compose_Armor
- Item: S_Gemstone_Weapon_II
- Item: S_Gemstone_Shield_II
- Item: S_Bearer's_Armor_II
- Item: S_Bearer's_Shoes_II
- Item: S_MagicCompose_Armor
- Item: S2_Gemstone_Weapon
- Item: S2_Gemstone_Shield
- Item: S2_Bearers_Armor
- Item: S2_Bearers_Shoes
- Item: S_AllMighty_Earring
- Item: S_AllMighty_Pendant
- Item: S_All_Race_Shoes
- Item: S_All_Race_Shield
- Item: S_AllRace_Shoes
- Item: S_AllRace_Shield
- Item: S_Blitz_Weapon
- Item: S_Blitz_Armor
- Item: S_Tempest_Shield
- Item: S_Tempest_Shoes
- Item: S_Magic_Executioner_Holy_Water_Armor
- Item: S_Magic_Exorcist_Corrupted_Armor
- Item: S_Magic_Vibration_Dragon_Killer_Armor
- Item: S_Magic_Scissor_Hunting_Armor
- Item: S_Magic_Fishing_Insect_Net_Armor
- Item: S_Plasterer's_Armor_II
- Item: S_Insomniac_Shoes_II
- Item: S_Peerless_Armor_II
- Item: S_Adulate_Shoes_II
- Item: S_Unfreezing_Weapon_II
- Item: S_Vitality_Earring_II
- Item: S_Neutral_Weapon_II
- Item: S_Uncursed_Pendant_II
- Item: S_M_ExeHoly_Armor
- Item: S_M_ExoCorrupt_Armor
- Item: S_M_DragonVib_Armor
- Item: S_M_SciHunting_Armor
- Item: S_M_FishInsect_Armor
- Item: S2_Plasterer's_Armor
- Item: S2_Insomniac_Shoes
- Item: S2_Peerless_Armor
- Item: S2_Adurate_Shoes
- Item: Unfreez_Weapon_S2
- Item: Vitality_Earing_S2
- Item: S2_Neutral_Weapon
- Item: S2_Curse_Lift_Pendent
- Item: S_Tension_Weapon
- Item: S_Tension_Earring
- Item: S_Tension_Pendent
@@ -2066,17 +2066,17 @@ Body:
- Item: S_Healing_Shield
- Item: S_Healing_Shoes
- Item: S_Restore_Earring
- Item: S_Restore_Pendant
- Item: S_Mortal_Blow_Weapon
- Item: S_Mortal_Blow_Earring
- Item: S_Mortal_Blow_Pendant
- Item: S_Restore_Pendent
- Item: S_MortalBlow_Weapon
- Item: S_MortalBlow_Earring
- Item: S_MortalBlow_Pendent
- Item: S_Penetration_Shoes
- Item: S_Penetration_Shield
- Item: S_Executioner_Holy_Water_Armor
- Item: S_Exorcist_Corrupted_Armor
- Item: S_Vibration_Dragon_Killer_Armor
- Item: S_Scissor_Hunting_Armor
- Item: S_Fishing_Insect_Net_Armor
- Item: S_ExeHoly_Armor
- Item: S_ExoCorrupt_Armor
- Item: S_DragonVib_Armor
- Item: S_SciHunting_Armor
- Item: S_FishInsect_Armor
- Item: Sentimental_Weapone_S
- Item: Sentimental_Earring_S
- Item: Sentimental_Pendant_S
@@ -2090,8 +2090,8 @@ Body:
- Item: S_Magical_Shoes
- Item: S_Magical_Shield
- Item: S_Magical_Armor
- Item: S_Immune_Athena_Shield
- Item: S_Hard_Champion_Shoes
- Item: S_ImmunedAthena_Shield
- Item: S_HardChamption_Shoes
- Item: S_KingbirdAncient_Armor
- Item: S_CriticalHit_Armor
- Item: S_Thief_earring
@@ -2499,8 +2499,8 @@ Body:
- Item: Iron_Staff
- Item: Oriental_Sword
- Item: Undine_Spear_K
- Item: Exoricists_Bible_
- Item: Katar_of_Shiver
- Item: Demon_Hunting_Bible_K
- Item: Shiver_Katar_K
- Item: OneSkyOneSun
- Item: SoulWeight
- Item: MeawFoxtail
@@ -2573,8 +2573,8 @@ Body:
- Item: Iron_Staff
- Item: Oriental_Sword
- Item: Undine_Spear_K
- Item: Exoricists_Bible_
- Item: Katar_of_Shiver
- Item: Demon_Hunting_Bible_K
- Item: Shiver_Katar_K
- Item: OneSkyOneSun
- Item: SoulWeight
- Item: MeawFoxtail
@@ -2639,39 +2639,39 @@ Body:
MaximumRefine: 9
CardsAllowed: true
TargetItems:
- Item: Attacker_Booster_Plate_
- Item: Attacker_Booster_Manteau_
- Item: Attacker_Booster_Greaves_
- Item: Ranger_Booster_Suits_
- Item: Ranger_Booster_Manteau_
- Item: Ranger_Booster_Boots_
- Item: Elemental_Booster_Robe_
- Item: Elemental_Booster_Muffler_
- Item: Elemental_Booster_Shoes_
- Item: Defender_Booster_Robe_
- Item: Defender_Booster_Muffler_
- Item: Defender_Booster_Shoes_
- Item: Atker_Plate
- Item: Atker_Manteau
- Item: Atker_Greave
- Item: Ran_Suits
- Item: Ran_Manteau
- Item: Ran_Boots
- Item: Ele_Robe
- Item: Ele_Muffler
- Item: Ele_Shoes
- Item: Defn_Robe
- Item: Defn_Muffler
- Item: Defn_Shoes
- Item: Boost_Up_2
ResultRefine: 10
CardsAllowed: true
TargetItems:
- Item: Boost_TH_Sword
- Item: Boost_Katar
- Item: Boost_Mace
- Item: Boost_Hall
- Item: Boost_Staff
- Item: Boost_Bow
- Item: Boost_Spear
- Item: Boost_Sword
- Item: Boost_Dagger
- Item: Boost_Spellbook
- Item: Boost_Spl_Book
- Item: Boost_Guitar
- Item: Boost_Knuckles
- Item: Boost_Knuckle
- Item: Boost_Whip
- Item: Boost_Nindo
- Item: Boost_Gatling
- Item: Boost_Axe
- Item: Boost_Book
- Item: Boost_Rod
- Item: Boost_Text
- Item: Boost_Soul_Rod
- Item: Boost_Foxtail
- Item: Metal_7_Ticket
ResultRefine: 7
@@ -2689,7 +2689,7 @@ Body:
- Item: Metal_Bow
- Item: Metal_Foxtail
- Item: Metal_Revolver
- Item: Huuma_Metal_Shuriken
- Item: Metal_Huuma_Shuriken
- Item: Noblesse_Rifine_Ticket
ResultRefine: 9
CardsAllowed: true
@@ -3884,8 +3884,8 @@ Body:
- Item: Iron_Staff
- Item: Oriental_Sword
- Item: Undine_Spear_K
- Item: Exoricists_Bible_
- Item: Katar_of_Shiver
- Item: Demon_Hunting_Bible_K
- Item: Shiver_Katar_K
- Item: OneSkyOneSun
- Item: SoulWeight
- Item: MeawFoxtail
@@ -4091,41 +4091,41 @@ Body:
MaximumRefine: 11
CardsAllowed: true
TargetItems:
- Item: Staff_of_Miracle
- Item: Staff_Of_Miracle
- Item: Gravitation_Staff
- Item: Adorare_Staff
- Item: Volar
- Item: Vernan
- Item: Ripper_Cross
- Item: Reaper_Cross
- Item: Agudo_Filo
- Item: Maxi_Spanner
- Item: Rapid_Fire
- Item: Rapid_Fire_C_Bow
- Item: Sharp_Star_Bow
- Item: Aiming_Bow
- Item: Falken_Shooter
- Item: Wind_Gale
- Item: Golden_Wrench
- Item: Raging_Dragon_Fist
- Item: Dedicated_Bandage
- Item: Combo_Fist
- Item: Asura_Bandage
- Item: Engine_Pilebuncker
- Item: Coolant_Injection
- Item: Gene_Rod
- Item: Lucis_Flail
- Item: Bright_Pendulum
- Item: Bright_Mace
- Item: Crimson_Rose_Stick
- Item: Psychic_Spear_Rod
- Item: Dust_Grave
- Item: Penitentia
- Item: Ponitendtia
- Item: Heart_Whip
- Item: Scarlet_Ribbon
- Item: Boltijin
- Item: Boltigin
- Item: Judgement_Slasher
- Item: Repent_Slasher
- Item: Jack_The_Knife
- Item: Platinum_Dagger
- Item: Argen_Blanco
- Item: Harve
- Item: Fortridge
- Item: Fortrage
- Item: Black_Circle
- Item: Antique_Cello
- Item: Farthezan
@@ -5148,3 +5148,11 @@ Body:
# - Item: S_M_Mammoth_Shoes
# - Item: S_M_Mammoth_Earring
# - Item: S_M_Mammoth_Pendant
- Item: SubjectCape_Refine_Cube
ResultRefine: 12
MaximumRefine: 11
CardsAllowed: true
TargetItems:
- Item: Subject_CapeRange_TH
- Item: Subject_CapeMagic_TH
- Item: Subject_CapeMelee_TH

View File

@@ -611,3 +611,69 @@ Body:
Skills:
- Name: MER_INVINCIBLEOFF2
MaxLevel: 1
- Id: 3569
AegisName: POPE_MD_H_MERC_NORMAL
Name: Official Pope
Level: 120
Hp: 120000
Sp: 200
Attack: 123
Defense: 999
MagicDefense: 105
Str: 2
Vit: 400
Int: 10
Dex: 110
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Demihuman
Element: Neutral
ElementLevel: 3
WalkSpeed: 100
AttackDelay: 576
AttackMotion: 750
DamageMotion: 384
Skills:
- Name: MER_MAGNIFICAT
MaxLevel: 1
- Name: MER_DECAGI
MaxLevel: 1
- Name: MER_TENDER
MaxLevel: 1
- Name: MER_BLESSING
MaxLevel: 3
- Id: 3570
AegisName: POPE_MD_H_MERC_CASUAL
Name: Casual Pope
Level: 120
Hp: 120000
Sp: 200
Attack: 123
Defense: 999
MagicDefense: 105
Str: 2
Vit: 400
Int: 10
Dex: 110
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Demihuman
Element: Neutral
ElementLevel: 3
WalkSpeed: 100
AttackDelay: 576
AttackMotion: 750
DamageMotion: 384
Skills:
- Name: MER_MAGNIFICAT
MaxLevel: 1
- Name: MER_DECAGI
MaxLevel: 1
- Name: MER_TENDER
MaxLevel: 1
- Name: MER_BLESSING
MaxLevel: 3

File diff suppressed because it is too large Load Diff

View File

@@ -719,8 +719,8 @@
1141,Marina@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
1141,Marina@NPC_EMOTION,walk,197,1,2000,0,5000,yes,self,always,0,19,,,,,,
1141,Marina@NPC_WATERATTACK,attack,184,2,500,500,5000,no,target,always,0,,,,,,6,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,target,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,alchemist,,,,,,,,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,master,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,afterskill,331,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,500,2000,5000,no,self,myhpltmaxrate,99,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,2000,5000,no,self,skillused,173,,,,,,,
1142,Marine Sphere@NPC_SPEEDUP,idle,332,1,10000,0,700,yes,target,always,,,,,,,,
@@ -12403,6 +12403,274 @@
3505,DR_BIG_EGGRING@NPC_SUMMONSLAVE,attack,196,4,10000,2000,10000,no,self,slavele,3,3508,,,,,,
3505,DR_BIG_EGGRING@NPC_SUMMONSLAVE,idle,196,4,10000,2000,10000,no,self,slavele,3,3508,,,,,,
// Episode 16.1 - EDDA Half Moon In The Daylight
3510,POPE_MD_H_GUARD@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,,,,,,,,
3510,POPE_MD_H_GUARD@NPC_COMBOATTACK,angry,171,1,500,700,5000,no,target,always,0,,,,,,6,
3510,POPE_MD_H_GUARD@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3510,POPE_MD_H_GUARD@NPC_COMBOATTACK,angry,171,1,500,700,5000,no,target,always,0,,,,,,9,
3510,POPE_MD_H_GUARD@SM_BASH,attack,5,3,500,0,5000,no,target,always,0,,,,,,27,
3510,POPE_MD_H_GUARD@SM_BASH,angry,5,3,500,0,5000,no,target,always,0,,,,,,27,
3511,POPE_MD_H_BELIEVER_1@SM_BASH,attack,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3511,POPE_MD_H_BELIEVER_1@SM_BASH,angry,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3511,POPE_MD_H_BELIEVER_1@SM_MAGNUM,attack,7,3,500,500,5000,no,self,always,0,,,,,,,
3511,POPE_MD_H_BELIEVER_1@CR_AUTOGUARD,chase,249,2,500,0,300000,yes,self,longrangeattacked,,,,,,,,
3512,POPE_MD_H_BELIEVER_2@NPC_CURSEATTACK,chase,181,1,1000,800,5000,yes,target,always,0,,,,,,9,
3512,POPE_MD_H_BELIEVER_2@NPC_WIDECURSE,attack,677,1,500,0,5000,no,self,always,0,,,,,,,
3512,POPE_MD_H_BELIEVER_2@NPC_CRITICALWOUND,attack,673,2,500,0,5000,yes,target,always,0,,,,,,,
3513,POPE_MD_H_DOG@NPC_LICK,attack,206,3,500,0,5000,yes,target,always,0,,,,,,6,
3513,POPE_MD_H_DOG@NPC_AGIUP,attack,350,1,10000,0,100000,yes,self,always,0,,,,,,,
3513,POPE_MD_H_DOG@NPC_AGIUP,loot,350,1,10000,0,10000,yes,self,always,0,,,,,,,
3513,POPE_MD_H_DOG@NPC_BLEEDING,attack,660,3,500,0,5000,yes,target,always,0,,,,,,32,
3513,POPE_MD_H_DOG@SM_BASH,attack,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3513,POPE_MD_H_DOG@SM_BASH,chase,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3514,POPE_MD_H_BISHOP@NPC_CRITICALSLASH,attack,170,1,1000,0,5000,no,target,always,0,,,,,,,
3514,POPE_MD_H_BISHOP@NPC_POWERUP,attack,349,2,10000,0,30000,yes,self,myhpltmaxrate,50,,,,,,,
3514,POPE_MD_H_BISHOP@NPC_AGIUP,attack,350,2,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,,
3514,POPE_MD_H_BISHOP@KN_TWOHANDQUICKEN,attack,60,2,10000,0,120000,yes,self,myhpltmaxrate,30,,,,,,,
3514,POPE_MD_H_BISHOP@NPC_HALLUCINATION,attack,207,1,500,500,5000,yes,target,always,,,,,,,29,
3514,POPE_MD_H_BISHOP@NPC_CRITICALWOUND,attack,673,2,500,0,5000,yes,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@WZ_ICEWALL,chase,87,3,10000,500,25000,no,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@WZ_ICEWALL,attack,87,3,10000,500,25000,no,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_DRAGONFEAR,attack,659,1,10000,0,30000,yes,self,myhpltmaxrate,70,,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_WATERATTACK,attack,184,2,2000,0,5000,no,target,always,0,,,,,,6,
3516,POPE_MD_H_LUWMIN@NPC_WATERATTACK,chase,184,2,2000,0,5000,no,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_WATERATTACK,chase,184,2,2000,0,5000,no,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,3,3000,1000,5000,yes,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,3,3000,1000,5000,yes,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,3,3000,1000,5000,yes,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,3,3000,1000,5000,yes,target,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_PULSESTRIKE,attack,661,1,2000,0,30000,yes,self,always,0,,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,chase,196,1,10000,700,60000,no,self,slavele,3,3517,,,,,,
3516,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,idle,196,1,10000,700,60000,no,self,onspawn,0,3517,,,,,,
3517,POPE_MD_H_GUARD@NPC_COMBOATTACK,idle,171,3,500,700,5000,no,target,always,,,,,,,,
3517,POPE_MD_H_GUARD@NPC_COMBOATTACK,attack,171,3,500,500,5000,no,target,always,0,,,,,,,
3517,POPE_MD_H_GUARD@NPC_CRITICALSLASH,idle,170,3,1000,700,5000,no,target,always,0,,,,,,,
3517,POPE_MD_H_GUARD@NPC_CRITICALSLASH,attack,170,3,1000,500,5000,no,target,always,0,,,,,,,
3517,POPE_MD_H_GUARD@SM_BASH,attack,5,5,500,0,5000,no,target,always,0,,,,,,27,
3517,POPE_MD_H_GUARD@SM_BASH,angry,5,5,500,0,5000,no,target,always,0,,,,,,27,
3518,POPE_MD_H_BELIEVER_1@SM_BASH,attack,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3518,POPE_MD_H_BELIEVER_1@SM_BASH,angry,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3518,POPE_MD_H_BELIEVER_1@SM_MAGNUM,attack,7,3,500,500,5000,no,self,always,0,,,,,,,
3518,POPE_MD_H_BELIEVER_1@CR_AUTOGUARD,chase,249,2,500,0,300000,yes,self,longrangeattacked,,,,,,,,
3519,POPE_MD_H_BELIEVER_2@NPC_CURSEATTACK,chase,181,3,1000,800,5000,yes,target,always,0,,,,,,9,
3519,POPE_MD_H_BELIEVER_2@NPC_WIDECURSE,attack,677,3,500,0,5000,no,self,always,0,,,,,,,
3519,POPE_MD_H_BELIEVER_2@NPC_CRITICALWOUND,attack,673,5,500,0,5000,yes,target,always,0,,,,,,,
3520,POPE_MD_H_DOG@NPC_LICK,attack,206,3,500,0,5000,yes,target,always,0,,,,,,6,
3520,POPE_MD_H_DOG@NPC_AGIUP,attack,350,1,10000,0,100000,yes,self,always,0,,,,,,,
3520,POPE_MD_H_DOG@NPC_AGIUP,loot,350,1,10000,0,10000,yes,self,always,0,,,,,,,
3520,POPE_MD_H_DOG@NPC_BLEEDING,attack,660,3,500,0,5000,yes,target,always,0,,,,,,32,
3520,POPE_MD_H_DOG@SM_BASH,attack,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3520,POPE_MD_H_DOG@SM_BASH,chase,5,4,500,1000,5000,no,target,always,0,,,,,,27,
3522,POPE_MD_H_BISHOP@NPC_CRITICALSLASH,attack,170,3,1000,0,5000,no,target,always,0,,,,,,,
3522,POPE_MD_H_BISHOP@NPC_POWERUP,attack,349,4,10000,0,30000,yes,self,myhpltmaxrate,50,,,,,,,
3522,POPE_MD_H_BISHOP@NPC_AGIUP,attack,350,4,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,,
3522,POPE_MD_H_BISHOP@KN_TWOHANDQUICKEN,attack,60,3,10000,0,120000,yes,self,myhpltmaxrate,30,,,,,,,
3522,POPE_MD_H_BISHOP@NPC_HALLUCINATION,attack,207,2,500,500,5000,yes,target,always,,,,,,,29,
3522,POPE_MD_H_BISHOP@NPC_CRITICALWOUND,attack,673,4,500,0,5000,yes,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@WZ_ICEWALL,chase,87,5,10000,500,25000,no,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@WZ_ICEWALL,attack,87,5,10000,500,25000,no,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_DRAGONFEAR,attack,659,3,10000,0,30000,yes,self,myhpltmaxrate,70,,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_WATERATTACK,attack,184,4,2000,0,5000,no,target,always,0,,,,,,6,
3524,POPE_MD_H_LUWMIN@NPC_WATERATTACK,chase,184,4,2000,0,5000,no,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_WATERATTACK,chase,184,4,2000,0,5000,no,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,5,3000,1000,5000,yes,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,5,3000,1000,5000,yes,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,5,3000,1000,5000,yes,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@MG_FROSTDIVER,chase,15,5,3000,1000,5000,yes,target,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_PULSESTRIKE,attack,661,3,2000,0,30000,yes,self,always,0,,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,chase,196,3,10000,700,60000,no,self,slavele,3,3517,,,,,,
3524,POPE_MD_H_LUWMIN@NPC_SUMMONSLAVE,idle,196,3,10000,700,60000,no,self,onspawn,0,3517,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_WATERATTACK,attack,184,3,1000,500,5000,no,target,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_RANDOMATTACK,attack,183,2,1000,500,5000,no,target,always,0,,,,,,6,
3526,POPE_MD_H_KTULLANUX@NPC_WIDEFREEZE,chase,664,1,10000,0,20000,yes,self,myhpltmaxrate,80,,,,,,32,
3526,POPE_MD_H_KTULLANUX@NPC_WIDEFREEZE,attack,664,1,10000,0,20000,yes,self,myhpltmaxrate,80,,,,,,32,
3526,POPE_MD_H_KTULLANUX@NPC_ARMORBRAKE,attack,344,3,2000,0,5000,yes,target,always,0,,,,,,29,
3526,POPE_MD_H_KTULLANUX@MG_FROSTDIVER,idle,15,3,5000,1000,7000,no,randomtarget,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@MG_FROSTDIVER,chase,15,3,5000,1000,7000,no,target,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@WZ_STORMGUST,chase,89,3,5000,1000,20000,no,target,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@WZ_STORMGUST,attack,89,3,5000,1000,20000,no,target,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_ICEBREATH,chase,655,2,500,3000,5000,no,target,always,0,,,,,,32,
3526,POPE_MD_H_KTULLANUX@NPC_ICEBREATH,attack,655,2,500,3000,5000,no,target,always,0,,,,,,32,
3526,POPE_MD_H_KTULLANUX@WZ_FROSTNOVA,chase,88,3,5000,0,20000,yes,self,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@WZ_FROSTNOVA,attack,88,3,5000,0,20000,yes,self,always,0,,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_POWERUP,attack,349,1,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_AGIUP,attack,350,1,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,,
3526,POPE_MD_H_KTULLANUX@AL_HEAL,idle,28,5,10000,0,10000,yes,self,myhpltmaxrate,50,,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
3526,POPE_MD_H_KTULLANUX@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,3517,,,,,,
// Weekend Memorial Dungeon
3637,MD_SKELETON_60@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3637,MD_SKELETON_60@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3637,MD_SKELETON_60@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3637,MD_SKELETON_60@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3637,MD_SKELETON_60@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3637,MD_SKELETON_60@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3638,MD_SKELETON_80@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3638,MD_SKELETON_80@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3638,MD_SKELETON_80@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3638,MD_SKELETON_80@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3638,MD_SKELETON_80@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3638,MD_SKELETON_80@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3639,MD_SKELETON_100@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3639,MD_SKELETON_100@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3639,MD_SKELETON_100@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3639,MD_SKELETON_100@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3639,MD_SKELETON_100@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3639,MD_SKELETON_100@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3640,MD_SKELETON_120@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3640,MD_SKELETON_120@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3640,MD_SKELETON_120@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3640,MD_SKELETON_120@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3640,MD_SKELETON_120@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3640,MD_SKELETON_120@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3641,MD_SKELETON_140@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3641,MD_SKELETON_140@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3641,MD_SKELETON_140@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3641,MD_SKELETON_140@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3641,MD_SKELETON_140@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3641,MD_SKELETON_140@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3642,MD_SKELETON_160@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,,1,,,,,,
3642,MD_SKELETON_160@NPC_UNDEADATTACK,attack,347,1,2000,0,5000,yes,target,always,,,,,,,,
3642,MD_SKELETON_160@AS_SONICBLOW,attack,136,10,500,800,5000,no,target,always,,,,,,,,
3642,MD_SKELETON_160@NPC_COMBOATTACK,attack,171,2,500,700,5000,no,target,always,,,,,,,,
3642,MD_SKELETON_160@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
3642,MD_SKELETON_160@NPC_UNDEADATTACK,attack,347,5,2000,0,5000,yes,target,always,,,,,,,,
3643,MD_FARMILIAR_60@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3643,MD_FARMILIAR_60@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3643,MD_FARMILIAR_60@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3643,MD_FARMILIAR_60@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3644,MD_FARMILIAR_80@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3644,MD_FARMILIAR_80@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3644,MD_FARMILIAR_80@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3644,MD_FARMILIAR_80@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3645,MD_FARMILIAR_100@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3645,MD_FARMILIAR_100@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3645,MD_FARMILIAR_100@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3645,MD_FARMILIAR_100@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3646,MD_FARMILIAR_120@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3646,MD_FARMILIAR_120@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3646,MD_FARMILIAR_120@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3646,MD_FARMILIAR_120@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3647,MD_FARMILIAR_140@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3647,MD_FARMILIAR_140@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3647,MD_FARMILIAR_140@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3647,MD_FARMILIAR_140@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3648,MD_FARMILIAR_160@NPC_BLINDATTACK,angry,177,1,500,0,5000,yes,target,always,0,,,,,,,
3648,MD_FARMILIAR_160@NPC_DARKNESSATTACK,angry,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3648,MD_FARMILIAR_160@NPC_DARKSTRIKE,attack,340,1,100,0,5000,yes,target,always,,,,,,,29,
3648,MD_FARMILIAR_160@MO_BODYRELOCATION,chase,264,1,100,500,5000,no,target,always,,,,,,,,
3649,MD_ZOMBIE_60@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3649,MD_ZOMBIE_60@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3649,MD_ZOMBIE_60@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3649,MD_ZOMBIE_60@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3649,MD_ZOMBIE_60@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3649,MD_ZOMBIE_60@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3649,MD_ZOMBIE_60@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
3650,MD_ZOMBIE_80@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3650,MD_ZOMBIE_80@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3650,MD_ZOMBIE_80@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3650,MD_ZOMBIE_80@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3650,MD_ZOMBIE_80@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3650,MD_ZOMBIE_80@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3650,MD_ZOMBIE_80@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
3651,MD_ZOMBIE_100@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3651,MD_ZOMBIE_100@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3651,MD_ZOMBIE_100@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3651,MD_ZOMBIE_100@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3651,MD_ZOMBIE_100@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3651,MD_ZOMBIE_100@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3651,MD_ZOMBIE_100@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
3652,MD_ZOMBIE_120@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3652,MD_ZOMBIE_120@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3652,MD_ZOMBIE_120@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3652,MD_ZOMBIE_120@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3652,MD_ZOMBIE_120@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3652,MD_ZOMBIE_120@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3652,MD_ZOMBIE_120@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
3653,MD_ZOMBIE_140@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3653,MD_ZOMBIE_140@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3653,MD_ZOMBIE_140@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3653,MD_ZOMBIE_140@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3653,MD_ZOMBIE_140@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3653,MD_ZOMBIE_140@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3653,MD_ZOMBIE_140@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
3654,MD_ZOMBIE_160@NPC_BLINDATTACK,attack,177,5,500,0,5000,yes,target,always,0,,,,,,,
3654,MD_ZOMBIE_160@NPC_COMBOATTACK,attack,171,1,500,700,5000,no,target,always,0,,,,,,6,
3654,MD_ZOMBIE_160@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
3654,MD_ZOMBIE_160@KN_BRANDISHSPEAR,attack,57,5,500,1000,5000,no,target,always,0,,,,,,,
3654,MD_ZOMBIE_160@NPC_POISON,attack,176,3,500,800,5000,no,target,always,,,,,,,,
3654,MD_ZOMBIE_160@NPC_UNDEADATTACK,angry,347,3,2000,0,5000,yes,target,always,,,,,,,,
3654,MD_ZOMBIE_160@NPC_POISONATTACK,attack,188,3,500,800,5000,no,target,always,,,,,,,,
// Friday Memorial Dungeon
3658,MD_LICH_LORD_100@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
3658,MD_LICH_LORD_100@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
3658,MD_LICH_LORD_100@NPC_AGIUP,attack,350,5,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,6,
3658,MD_LICH_LORD_100@MG_FIREWALL,chase,18,10,2000,500,5000,no,target,always,0,,,,,,,
3658,MD_LICH_LORD_100@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3658,MD_LICH_LORD_100@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3658,MD_LICH_LORD_100@NPC_HELLJUDGEMENT,chase,662,5,10000,800,10000,no,self,always,0,,,,,,36,
3658,MD_LICH_LORD_100@NPC_HELLJUDGEMENT,attack,662,5,10000,800,10000,no,self,always,0,,,,,,36,
3658,MD_LICH_LORD_100@NPC_DARKBLESSING,attack,203,1,500,800,5000,no,target,always,0,,,,,,9,
3658,MD_LICH_LORD_100@NPC_HELMBRAKE,attack,345,10,2000,500,5000,no,target,always,0,,,,,,,
3658,MD_LICH_LORD_100@NPC_SUMMONSLAVE,attack,196,3,10000,700,10000,no,self,slavele,3,1605,,,,,,
3658,MD_LICH_LORD_100@NPC_SUMMONSLAVE,idle,196,3,10000,700,10000,no,self,slavele,3,1605,,,,,,
3658,MD_LICH_LORD_100@WZ_METEOR,attack,83,11,5000,500,2000,no,target,always,0,,,,,,,
3658,MD_LICH_LORD_100@WZ_METEOR,chase,83,11,5000,500,2000,no,target,skillused,18,,,,,,,
3658,MD_LICH_LORD_100@WZ_METEOR,chase,83,11,5000,500,2000,no,target,always,0,,,,,,,
3658,MD_LICH_LORD_100@NPC_CRITICALWOUND,attack,673,3,500,0,5000,yes,target,always,0,,,,,,,
3659,MD_LICH_LORD_160@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
3659,MD_LICH_LORD_160@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
3659,MD_LICH_LORD_160@NPC_AGIUP,attack,350,5,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,6,
3659,MD_LICH_LORD_160@MG_FIREWALL,chase,18,10,2000,500,5000,no,target,always,0,,,,,,,
3659,MD_LICH_LORD_160@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3659,MD_LICH_LORD_160@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
3659,MD_LICH_LORD_160@NPC_HELLJUDGEMENT,chase,662,10,10000,800,10000,no,self,always,0,,,,,,36,
3659,MD_LICH_LORD_160@NPC_HELLJUDGEMENT,attack,662,10,10000,800,10000,no,self,always,0,,,,,,36,
3659,MD_LICH_LORD_160@NPC_DARKBLESSING,attack,203,1,500,800,5000,no,target,always,0,,,,,,9,
3659,MD_LICH_LORD_160@NPC_HELMBRAKE,attack,345,10,2000,500,5000,no,target,always,0,,,,,,,
3659,MD_LICH_LORD_160@NPC_SUMMONSLAVE,attack,196,3,10000,700,10000,no,self,slavele,3,1605,,,,,,
3659,MD_LICH_LORD_160@NPC_SUMMONSLAVE,idle,196,3,10000,700,10000,no,self,slavele,3,1605,,,,,,
3659,MD_LICH_LORD_160@WZ_METEOR,attack,83,11,5000,500,2000,no,target,always,0,,,,,,,
3659,MD_LICH_LORD_160@WZ_METEOR,chase,83,11,5000,500,2000,no,target,skillused,18,,,,,,,
3659,MD_LICH_LORD_160@WZ_METEOR,chase,83,11,5000,500,2000,no,target,always,0,,,,,,,
3659,MD_LICH_LORD_160@NPC_CRITICALWOUND,attack,673,3,500,0,5000,yes,target,always,0,,,,,,,
3660,MD_NIGHTMARE_100@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3660,MD_NIGHTMARE_100@NPC_CURSEATTACK,attack,181,3,500,800,5000,no,target,always,0,,,,,,,
3660,MD_NIGHTMARE_100@NPC_MENTALBREAKER,attack,159,1,500,800,5000,no,target,always,0,,,,,,,
3660,MD_NIGHTMARE_100@NPC_TELEKINESISATTACK,attack,191,5,500,0,5000,yes,target,always,0,,,,,,,
3661,MD_NIGHTMARE_160@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3661,MD_NIGHTMARE_160@NPC_CURSEATTACK,attack,181,3,500,800,5000,no,target,always,0,,,,,,,
3661,MD_NIGHTMARE_160@NPC_MENTALBREAKER,attack,159,1,500,800,5000,no,target,always,0,,,,,,,
3661,MD_NIGHTMARE_160@NPC_TELEKINESISATTACK,attack,191,5,500,0,5000,yes,target,always,0,,,,,,,
3662,MD_JAKK_100@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3662,MD_JAKK_100@NPC_CURSEATTACK,attack,181,3,500,800,5000,no,target,always,0,,,,,,29,
3662,MD_JAKK_100@NPC_CURSEATTACK,chase,181,3,500,800,5000,no,target,always,0,,,,,,29,
3662,MD_JAKK_100@NPC_FIREATTACK,attack,186,3,500,500,5000,no,target,always,0,,,,,,6,
3662,MD_JAKK_100@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,19,0x81,,,,,
3662,MD_JAKK_100@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,2,0x3695,,,,,
3663,MD_JAKK_160@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3663,MD_JAKK_160@NPC_CURSEATTACK,attack,181,3,500,800,5000,no,target,always,0,,,,,,29,
3663,MD_JAKK_160@NPC_CURSEATTACK,chase,181,3,500,800,5000,no,target,always,0,,,,,,29,
3663,MD_JAKK_160@NPC_FIREATTACK,attack,186,3,500,500,5000,no,target,always,0,,,,,,6,
3663,MD_JAKK_160@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,19,0x81,,,,,
3663,MD_JAKK_160@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,2,0x3695,,,,,
3664,MD_GHOUL_100@NPC_POISON,angry,176,3,500,800,5000,no,target,always,0,,,,,,,
3664,MD_GHOUL_100@NPC_POISON,attack,176,3,500,800,5000,no,target,always,0,,,,,,,
3665,MD_GHOUL_160@NPC_POISON,angry,176,3,500,800,5000,no,target,always,0,,,,,,,
3665,MD_GHOUL_160@NPC_POISON,attack,176,3,500,800,5000,no,target,always,0,,,,,,,
3666,MD_DRAINLIAR_100@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3666,MD_DRAINLIAR_100@NPC_BLOODDRAIN,attack,199,1,500,0,5000,yes,target,always,0,,,,,,,
3666,MD_DRAINLIAR_100@NPC_DARKNESSATTACK,attack,190,1,2000,0,5000,yes,target,always,0,,,,,,,
3667,MD_DRAINLIAR_160@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
3667,MD_DRAINLIAR_160@NPC_BLOODDRAIN,attack,199,1,500,0,5000,yes,target,always,0,,,,,,,
3667,MD_DRAINLIAR_160@NPC_DARKNESSATTACK,attack,190,1,2000,0,5000,yes,target,always,0,,,,,,,
// ep16.2
3621,EP16_2_MM_CUTIE@NPC_AGIUP,attack,350,1,10000,0,20000,yes,self,always,0,,,,,,,
3621,EP16_2_MM_CUTIE@NPC_MENTALBREAKER,attack,159,2,10000,1000,30000,no,target,always,0,,,,,,,
@@ -12595,6 +12863,30 @@
3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,35000,yes,self,always,0,,,,,,,53
3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,30000,yes,self,always,0,,,,,,,54
// Poring Village instance
3810,MD_KING_PORING@SM_BASH,attack,5,3,1000,1000,9000,yes,target,always,0,,,,,,,60
3810,MD_KING_PORING@MG_FIREBALL,attack,17,3,1000,1000,9000,yes,target,always,0,,,,,,,61
3810,MD_KING_PORING@MC_MAMMONITE,attack,42,3,1000,1000,9000,yes,target,always,0,,,,,,,62
3810,MD_KING_PORING@AC_DOUBLE,attack,46,3,1000,1000,9000,yes,target,always,0,,,,,,,63
3810,MD_KING_PORING@TF_POISON,attack,52,3,1000,1000,9000,yes,target,always,0,,,,,,,64
3810,MD_KING_PORING@AL_DECAGI,attack,30,3,1000,1000,9000,yes,target,always,0,,,,,,,65
3811,MD_GOLDRING@NPC_STUNATTACK,attack,179,5,3500,1000,10000,no,target,always,0,,,,,,,
// todo NPC_WIDECONFUSE2
//3812,MD_AMERING@NPC_WIDECONFUSE2,attack,762,1,3000,2000,20000,yes,target,always,0,,,,,,,
3812,MD_AMERING@NPC_WIDECONFUSE,attack,667,1,3000,2000,20000,yes,target,always,0,,,,,,,
3813,MD_DROPS@NPC_EMOTION,loot,197,1,2000,0,5000,yes,self,always,0,,,,,,,
3813,MD_DROPS@NPC_FIREATTACK,attack,186,1,2000,100,5000,yes,target,always,0,,,,,,,
3813,MD_DROPS@NPC_BLINDATTACK,attack,177,3,2000,1000,15000,yes,target,always,0,,,,,,,67
3814,MD_POPORING@NPC_EMOTION,loot,197,1,2000,0,5000,yes,self,always,0,,,,,,2,
3814,MD_POPORING@NPC_POISON,attack,176,1,500,1000,15000,no,target,always,0,,,,,,,
3814,MD_POPORING@NPC_POISONATTACK,attack,188,1,2000,900,15000,yes,target,always,0,,,,,,,68
3815,MD_PORING@NPC_EMOTION,loot,197,1,2000,0,5000,yes,self,always,0,,,,,,2,
3815,MD_PORING@NPC_SILENCEATTACK,attack,178,2,1500,1000,15000,no,target,always,0,,,,,,,70
3816,MD_MARIN@NPC_EMOTION,loot,197,1,2000,0,5000,yes,self,always,0,,,,,,2,
3816,MD_MARIN@NPC_WATERATTACK,attack,184,1,2000,1000,15000,yes,target,always,0,,,,,,,
3816,MD_MARIN@AL_HEAL,idle,28,1,10000,500,5000,yes,friend,myhpltmaxrate,90,,,,,,2,
3816,MD_MARIN@AL_HEAL,attack,28,1,10000,500,5000,yes,friend,myhpltmaxrate,90,,,,,,,69
// Episode 17.1 - Illusion (custom) #!todo
20340,EL-A17T@NPC_AGIUP,chase,350,5,2000,0,60000,no,self,always,0,,,,,,6,
20340,EL-A17T@NPC_POWERUP,attack,349,5,2000,0,60000,no,self,always,0,,,,,,6,
@@ -12749,6 +13041,69 @@
20837,ABR_INFINITY@ABR_INFINITY_BUSTER,chase,8605,1,10000,500,5000,yes,target,always,0,,,,,,,
20837,ABR_INFINITY@ABR_INFINITY_BUSTER,attack,8605,1,10000,500,5000,yes,target,always,0,,,,,,,
// sp_rudus4
20929,GIANT_CAPUT@NPC_EMOTION,chase,197,1,1000,0,30000,yes,self,always,0,,,,,,19,
20929,GIANT_CAPUT@NPC_EMOTION,idle,197,1,8000,0,30000,yes,self,always,0,,,,,,44,
20929,GIANT_CAPUT@NPC_COMBOATTACK,attack,171,2,1000,500,15000,no,target,always,0,,,,,,,
20929,GIANT_CAPUT@LK_SPIRALPIERCE,chase,397,3,3000,500,30000,no,target,always,0,,,,,,,
20929,GIANT_CAPUT@NPC_DARKNESSATTACK,chase,190,3,5000,500,10000,no,target,always,0,,,,,,,
20929,GIANT_CAPUT@NPC_DARKNESSATTACK,attack,190,3,5000,500,10000,no,target,always,0,,,,,,,
20929,GIANT_CAPUT@NPC_HELMBRAKE,attack,345,5,3000,0,30000,yes,target,always,0,,,,,,,
20929,GIANT_CAPUT@NPC_PULSESTRIKE,attack,661,3,2000,1000,60000,no,self,always,0,,,,,,,
20929,GIANT_CAPUT@NPC_POWERUP,attack,349,3,5000,0,60000,yes,self,myhpltmaxrate,30,,,,,,,
20929,GIANT_CAPUT@NPC_POWERUP,chase,349,3,5000,0,60000,yes,self,myhpltmaxrate,30,,,,,,,
20930,DOLORIAN@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
20930,DOLORIAN@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
20930,DOLORIAN@NPC_CRITICALWOUND,attack,673,1,2000,0,60000,yes,target,always,0,,,,,,,
20930,DOLORIAN@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
20930,DOLORIAN@NPC_BLOODDRAIN,chase,199,1,3000,0,30000,yes,target,always,0,,,,,,,
20930,DOLORIAN@NPC_STONESKIN,chase,675,3,3000,500,30000,no,self,myhpltmaxrate,30,,,,,,47,
20930,DOLORIAN@NPC_POISONATTACK,attack,188,3,2000,500,10000,no,target,always,0,,,,,,,
20931,PLAGARION@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
20931,PLAGARION@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
20931,PLAGARION@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
20931,PLAGARION@NPC_CRITICALWOUND,attack,673,3,2000,0,60000,yes,target,always,0,,,,,,,
20931,PLAGARION@MG_FIREBALL,chase,17,3,3000,500,30000,no,target,always,0,,,,,,,
20931,PLAGARION@NPC_FIREATTACK,chase,186,2,2000,500,30000,no,target,always,0,,,,,,,
20931,PLAGARION@NPC_DARKSTRIKE,chase,340,5,3000,500,30000,no,target,always,0,,,,,,,
20932,DEADRE@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
20932,DEADRE@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
20932,DEADRE@AL_HEAL,idle,28,9,7000,500,5000,no,friend,myhpltmaxrate,50,,,,,,3,
20932,DEADRE@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,14,
20932,DEADRE@AL_HEAL,attack,28,9,3000,500,15000,no,friend,always,0,,,,,,3,
20932,DEADRE@NPC_DARKCROSS,attack,338,5,3000,500,15000,no,target,always,0,,,,,,,
20932,DEADRE@AL_HOLYLIGHT,chase,156,1,3000,300,15000,no,target,always,0,,,,,,,
20932,DEADRE@NPC_HOLYATTACK,chase,189,3,4000,500,15000,no,target,always,0,,,,,,,
20932,DEADRE@AL_HEAL,idle,28,9,10000,700,3000,no,friend,friendhpltmaxrate,50,,,,,,,
20933,VENEDI@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
20933,VENEDI@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
20933,VENEDI@NPC_BLINDATTACK,chase,177,3,3000,500,30000,no,target,always,0,,,,,,,
20933,VENEDI@NPC_POISONATTACK,attack,188,5,1000,0,5000,yes,target,always,0,,,,,,,
20933,VENEDI@NPC_POISON_BUSTER,attack,742,1,2000,1500,30000,no,self,always,0,,,,,,,
20933,VENEDI@NPC_CLOUD_KILL,attack,739,3,2000,500,15000,no,target,always,0,,,,,,,
20934,R001_BESTIA@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
20934,R001_BESTIA@WZ_METEOR,idle,83,9,10000,0,5000,no,target,longrangeattacked,0,,,,,,,
20934,R001_BESTIA@AL_PNEUMA,idle,25,1,10000,0,1000,no,self,longrangeattacked,0,,,,,,,
20934,R001_BESTIA@AL_HEAL,idle,28,11,10000,0,3000,no,friend,myhpltmaxrate,50,,,,,,,
20934,R001_BESTIA@AL_HEAL,idle,28,5,10000,0,3000,no,friend,myhpltmaxrate,99,,,,,,,
20934,R001_BESTIA@NPC_SUMMONSLAVE,idle,196,1,10000,1000,30000,no,self,slavele,1,,,,,,,
20934,R001_BESTIA@NPC_CALLSLAVE,idle,352,1,10000,0,30000,no,self,always,0,,,,,,,
20934,R001_BESTIA@NPC_FIREBREATH,chase,654,10,2000,500,5000,no,target,myhpltmaxrate,80,,,,,,,
// 20934,R001_BESTIA@NPC_EARTHQUAKE_K,chase,750,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
20934,R001_BESTIA@NPC_EARTHQUAKE,chase,653,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
20934,R001_BESTIA@NPC_CALLSLAVE,attack,352,1,10000,0,30000,no,self,always,0,,,,,,,
20934,R001_BESTIA@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,2,,,,,,,
20934,R001_BESTIA@ST_FULLSTRIP,attack,476,5,2000,0,5000,no,target,always,0,,,,,,,
20934,R001_BESTIA@NPC_CRITICALWOUND,attack,673,3,2000,0,30000,no,target,always,0,,,,,,,
20934,R001_BESTIA@NPC_FIREBREATH,attack,654,10,2000,500,5000,no,target,myhpltmaxrate,80,,,,,,,
20934,R001_BESTIA@WZ_METEOR,attack,83,11,2000,500,5000,no,target,myhpltmaxrate,90,,,,,,,
20934,R001_BESTIA@KN_TWOHANDQUICKEN,attack,60,9,10000,0,100000,no,self,myhpltmaxrate,30,,,,,,,
// 20934,R001_BESTIA@NPC_EARTHQUAKE_K,attack,750,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
20934,R001_BESTIA@NPC_EARTHQUAKE,attack,653,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
20934,R001_BESTIA@NPC_PULSESTRIKE,attack,661,5,10000,0,15000,no,self,myhpltmaxrate,60,,,,,,,
20934,R001_BESTIA@NPC_DRAGONFEAR,attack,659,5,10000,0,10000,no,self,always,0,,,,,,,
// 20934,R001_BESTIA@NPC_DAMAGE_HEAL,attack,753,1,3000,1500,40000,no,target,myhpltmaxrate,20,,,,,,,
// Training Ground outside Prontera
21064,S_DUMMY_100_SMALL@NPC_ALLHEAL,attack,687,1,10000,0,500,no,self,myhpltmaxrate,90,,,,,,,
21064,S_DUMMY_100_SMALL@NPC_ALLHEAL,idle,687,1,10000,0,500,no,self,myhpltmaxrate,90,,,,,,,

View File

@@ -1322,24 +1322,66 @@ Body:
- Id: 3469
Title: Illusion of Underwater 100 Kills - Standby
TimeLimit: 4h
- Id: 3471
Title: Subjugation-Einbroch Field-2
Targets:
- Id: 1
Count: 80
Location: ein_fild03
- Id: 3472
Title: "[Standby] Subjugation-Einbroch Field-2"
TimeLimit: 4h
- Id: 3473
Title: Subjugation-Lighthalzen Field-2
Targets:
- Id: 1
Count: 80
Location: lhz_fild03
- Id: 3474
Title: "[Standby] Subjugation-Lighthalzen Field-2"
TimeLimit: 4h
- Id: 3475
Title: Subjugation-Ida Plains-1
Targets:
- Id: 1
Count: 80
Location: ra_fild12
- Id: 3476
Title: "[Standby] Subjugation-Ida Plains-1"
TimeLimit: 4h
- Id: 3477
Title: Subjugation-Veins Field-1
Targets:
- Id: 1
Count: 80
Location: ve_fild07
- Id: 3478
Title: "[Standby] Subjugation-Veins Field-1"
TimeLimit: 4h
- Id: 3479
Title: "Subjugation-Ida Plains-2"
Targets:
- Id: 1
Count: 80
Location: ra_fild08
- Id: 3480
Title: "[Standby] Subjugation-Ida Plains-2"
TimeLimit: 4h
- Id: 3481
Title: "Subjugation-Veins Field-2"
Targets:
- Id: 1
Count: 80
Location: ve_fild01
- Id: 3482
Title: "[Standby] Subjugation-Veins Field-2"
TimeLimit: 4h
- Id: 3483
Title: "Subjugation-Ice Cave 1st Floor"
Targets:
- Id: 1
Count: 80
Location: ice_dun01
- Id: 3484
Title: "[Standby] Subjugation-Ice Cave 1st Floor"
TimeLimit: 4h
@@ -2812,29 +2854,101 @@ Body:
- Id: 5900
Title: "[Waiting] Cleaning the first power plant."
TimeLimit: 4h
- Id: 5916
Title: "Subjugation-Einbroch Field-1"
Targets:
- Id: 1
Count: 80
Location: ein_fild06
MapMobTargets:
MOLE: true
METALING: true
- Id: 5917
Title: "[Standby] Subjugation-Einbroch Field-1"
TimeLimit: 4h
- Id: 5918
Title: "Subjugation-Lighthalzen Field-1"
Targets:
- Id: 1
Count: 80
Location: lhz_fild01
MapMobTargets:
RAFFLESIA: true
STEM_WORM: true
METALING: true
- Id: 5919
Title: "[Standby] Subjugation-Lighthalzen Field-1"
TimeLimit: 4h
- Id: 5920
Title: "Subjugation - Geffen field"
Targets:
- Id: 1
Count: 80
Location: gef_fild06
MapMobTargets:
PETIT: true
MANTIS: true
SIDE_WINDER: true
- Id: 5921
Title: "[Standby] Subjugation-Geffen Field"
TimeLimit: 4h
- Id: 5922
Title: "Subjugation - Turtle Island"
Targets:
- Id: 1
Count: 80
Location: tur_dun01
MapMobTargets:
SPRING_RABBIT: true
DRAGON_TAIL: true
PERMETER: true
PEST: true
- Id: 5923
Title: "[Standby] Subjugation-Turtle Island"
TimeLimit: 4h
- Id: 5924
Title: "Subjugation - In front of Thanatos Tower"
Targets:
- Id: 1
Count: 80
Location: hu_fild01
MapMobTargets:
NOVUS: true
NOVUS_: true
GEOGRAPHER: true
DRAGON_EGG: true
- Id: 5925
Title: "[Standby] Subjugation-Thanatos Tower"
TimeLimit: 4h
- Id: 5926
Title: "Subjugation - Starlight Coral Zone"
Targets:
- Id: 1
Count: 80
Location: mal_dun01
MapMobTargets:
RED_ERUMA: true
SIORAVA: true
C5_RED_ERUMA: true
- Id: 5927
Title: "[Standby] Subjugation-Coral Zone"
TimeLimit: 4h
- Id: 5928
Title: "Subjugation - Turtle Island Dungeon"
Targets:
- Id: 1
Count: 80
Location: tur_dun02
MapMobTargets:
SOLIDER: true
PERMETER: true
PEST: true
FREEZER: true
- Id: 5929
Title: "[Standby] Subjugation-Turtle Island Dungeon"
TimeLimit: 4h
- Id: 5930
Title: Subjugation-Yanggeochon
Title: "Subjugation - Yanggeochon"
Targets:
- Id: 1
Count: 80
@@ -5590,24 +5704,99 @@ Body:
- Id: 8661
Title: "[Standby] Subjugation-Audumra Chowon-3"
TimeLimit: 4h
- Id: 8662
Title: "Subjugation-Audumla Meadow-3"
Targets:
- Id: 1
Count: 80
Location: ra_fild01
MapMobTargets:
ANOPHELES: true
DESERT_WOLF: true
ROWEEN: true
- Id: 8664
Title: "[Standby] Subjugation-Ida Plains-3"
TimeLimit: 4h
- Id: 8665
Title: "Subjugation-Ida Plains-3"
Targets:
- Id: 1
Count: 80
Location: ra_fild03
MapMobTargets:
ANACONDAQ: true
ANOPHELES: true
HILL_WIND_1: true
ROWEEN: true
- Id: 8667
Title: "[Standby] Subjugation-Audumra Chowon-1"
TimeLimit: 4h
- Id: 8668
Title: "Subjugation-Audumla Meadow-1"
Targets:
- Id: 1
Count: 80
Location: ra_fild04
MapMobTargets:
ANOPHELES: true
ROWEEN: true
HILL_WIND_1: true
DESERT_WOLF: true
- Id: 8670
Title: "[Standby] Subjugation-Audumra Chowon-2"
TimeLimit: 4h
- Id: 8671
Title: "Subjugation-Audumla Meadow-2"
Targets:
- Id: 1
Count: 80
Location: ra_fild05
MapMobTargets:
ANOPHELES: true
KOBOLD_1: true
KOBOLD_2: true
KOBOLD_3: true
- Id: 8672
Title: "Subjugation - Porto Luna"
Targets:
- Id: 1
Count: 80
Location: ra_fild06
MapMobTargets:
ANOPHELES: true
KOBOLD_1: true
KOBOLD_2: true
KOBOLD_3: true
KOBOLD_ARCHER: true
- Id: 8673
Title: "[Standby] Subjugation-Portu Luna"
TimeLimit: 4h
- Id: 8676
Title: "[Standby] Subjugation-Veins Field-3"
TimeLimit: 4h
- Id: 8677
Title: "Subjugation-Veins Field-3"
Targets:
- Id: 1
Count: 80
Location: ve_fild04
MapMobTargets:
GALION: true
DROSERA: true
MUSCIPULAR: true
- Id: 8679
Title: "[Standby] Subjugation-Veins Field-4"
TimeLimit: 4h
- Id: 8680
Title: "Subjugation-Veins Field-4"
Targets:
- Id: 1
Count: 80
Location: ve_fild03
MapMobTargets:
MAGMARING: true
DROSERA: true
MUSCIPULAR: true
- Id: 9000
Title: Job Change to Knight
- Id: 9001
@@ -8147,12 +8336,15 @@ Body:
TimeLimit: 4h
- Id: 12376
Title: First transaction
- Id: 12377
Title: Attack on Weekend Dungeon
TimeLimit: +1h
- Id: 12378
Title: Fatigue recovery required
TimeLimit: 0h
Title: Time to Rest
TimeLimit: 4h
- Id: 12379
Title: Fatigue recovery required
TimeLimit: 0h
Title: Time to Rest
TimeLimit: 4h
- Id: 12381
Title: New Continent's Food Supplier
- Id: 12382
@@ -8248,9 +8440,13 @@ Body:
- Id: 12411
Title: Come Back Tomorrow
TimeLimit: 4h
- Id: 12416
Title: Contract with Emily
- Id: 12417
Title: Recovering Fatigue
TimeLimit: 4h
- Id: 12418
Title: First visit to Poring Village
- Id: 12420
Title: Recovering Fatigue
TimeLimit: 4h
@@ -9326,9 +9522,19 @@ Body:
Title: To Granma
- Id: 14584
Title: Back to Recorder
- Id: 14585
Title: Investigating the Cause
Targets:
- Mob: POPE_MD_E_LUWMIN
Count: 1
- Id: 14586
Title: Time to Rest
TimeLimit: 4h
- Id: 14587
Title: Investigating the Cause
Targets:
- Mob: POPE_MD_H_KTULLANUX
Count: 1
- Id: 14588
Title: The Competition
Targets:
@@ -9584,6 +9790,17 @@ Body:
- Id: 14687
Title: Mysterious Device
TimeLimit: +1h
- Id: 14688
Title: My name is Shorty
- Id: 14689
Title: Help Shorty
- Id: 14693
Title: To Payon
- Id: 14694
Title: To Prontera Field
- Id: 14695
Title: Cheer up, Sunsammi!
TimeLimit: +30mn
- Id: 14699
Title: Event once a day
TimeLimit: 4h
@@ -10203,15 +10420,37 @@ Body:
- Id: 16439
Title: Award Garden-Waiting
TimeLimit: 4h
- Id: 16521
Title: 4th floor of Rudus, an organic field for waste specimens
- Id: 16522
Title: 4th floor of Rudus, an organic field for waste specimens
- Id: 16523
Title: The solitude of the abyss
Title: Abyssal Solitude - Standby
TimeLimit: 4h
- Id: 16524
Title: Abyssal Solitude
Targets:
- Mob: DEADRE
Count: 10
- Mob: DOLORIAN
Count: 10
- Mob: PLAGARION
Count: 10
- Id: 16525
Title: Transformation and development - Standby
Title: Transformation and Evolution - Standby
TimeLimit: 4h
- Id: 16526
Title: Transformation and Evolution
Targets:
- Mob: GIANT_CAPUT
Count: 15
- Mob: VENEDI
Count: 15
- Id: 16527
Title: Data backup - Waiting
TimeLimit: 4h
- Id: 16528
Title: Data Backup
- Id: 16530
Title: The ground and fire
TimeLimit: 4h
@@ -10227,8 +10466,12 @@ Body:
- Id: 16538
Title: Natural change - Waiting
TimeLimit: 4h
- Id: 16540
Title: Data Backup
- Id: 16546
Title: Farm Worker
- Id: 16547
Title: Juno Monster Society
- Id: 17000
Title: Meet with Father Bamph
- Id: 17001

View File

@@ -30,6 +30,8 @@
# Bonus Refinement bonus. (Default: 0)
# RandomBonus Extra refinement bonus of 0~RandomBonus stacked on Bonus. (Default: 0)
# BlacksmithBlessingAmount Amount of Blacksmith Blessing required. (Default: 0)
# BroadcastSuccess Broadcast to the whole server when a refine attempt at this level succeeds. (Default: false)
# BroadcastFailure Broadcast to the whole server when a refine attempt at this level fails. (Default: false)
# Chances: Success chance based on cost type. (Default: null)
# - Type Refinement cost type based on ore used.
# Rate Chance of success out of 0~10000. (Default: 0)
@@ -41,7 +43,7 @@
Header:
Type: REFINE_DB
Version: 1
Version: 2
Body:
- Group: Armor
@@ -252,6 +254,8 @@ Body:
- Level: 13
Bonus: 2800
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -267,6 +271,8 @@ Body:
- Level: 14
Bonus: 3200
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -281,6 +287,8 @@ Body:
DowngradeAmount: 1
- Level: 15
Bonus: 3600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -295,6 +303,8 @@ Body:
DowngradeAmount: 1
- Level: 16
Bonus: 4000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -309,6 +319,8 @@ Body:
DowngradeAmount: 1
- Level: 17
Bonus: 4500
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -323,6 +335,8 @@ Body:
DowngradeAmount: 1
- Level: 18
Bonus: 5000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -337,6 +351,8 @@ Body:
DowngradeAmount: 1
- Level: 19
Bonus: 5500
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -351,6 +367,8 @@ Body:
DowngradeAmount: 1
- Level: 20
Bonus: 6000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -452,6 +470,7 @@ Body:
DowngradeAmount: 1
- Level: 8
Bonus: 1440
BlacksmithBlessingAmount: 1
Chances:
- Type: Normal
Rate: 2000
@@ -465,6 +484,7 @@ Body:
DowngradeAmount: 1
- Level: 9
Bonus: 1800
BlacksmithBlessingAmount: 2
Chances:
- Type: Normal
Rate: 2000
@@ -478,6 +498,7 @@ Body:
DowngradeAmount: 1
- Level: 10
Bonus: 2160
BlacksmithBlessingAmount: 4
Chances:
- Type: Normal
Rate: 900
@@ -491,6 +512,7 @@ Body:
DowngradeAmount: 1
- Level: 11
Bonus: 2520
BlacksmithBlessingAmount: 7
Chances:
- Type: Normal
Rate: 800
@@ -504,6 +526,7 @@ Body:
BreakingRate: 10000
- Level: 12
Bonus: 2880
BlacksmithBlessingAmount: 11
Chances:
- Type: Normal
Rate: 800
@@ -517,6 +540,9 @@ Body:
BreakingRate: 10000
- Level: 13
Bonus: 3360
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -530,6 +556,9 @@ Body:
BreakingRate: 10000
- Level: 14
Bonus: 3840
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -543,6 +572,8 @@ Body:
BreakingRate: 10000
- Level: 15
Bonus: 4320
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -556,6 +587,8 @@ Body:
BreakingRate: 10000
- Level: 16
Bonus: 4800
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -569,6 +602,8 @@ Body:
BreakingRate: 10000
- Level: 17
Bonus: 5400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -582,6 +617,8 @@ Body:
BreakingRate: 10000
- Level: 18
Bonus: 6000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -595,6 +632,8 @@ Body:
BreakingRate: 10000
- Level: 19
Bonus: 6600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -608,6 +647,8 @@ Body:
BreakingRate: 10000
- Level: 20
Bonus: 7200
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -824,6 +865,8 @@ Body:
Bonus: 2600
RandomBonus: 1800
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -840,6 +883,8 @@ Body:
Bonus: 2800
RandomBonus: 2100
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -855,6 +900,8 @@ Body:
- Level: 15
Bonus: 3000
RandomBonus: 2400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -870,6 +917,8 @@ Body:
- Level: 16
Bonus: 4800
RandomBonus: 2700
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -885,6 +934,8 @@ Body:
- Level: 17
Bonus: 5100
RandomBonus: 3000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -900,6 +951,8 @@ Body:
- Level: 18
Bonus: 5400
RandomBonus: 3300
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -915,6 +968,8 @@ Body:
- Level: 19
Bonus: 5700
RandomBonus: 3600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -930,6 +985,8 @@ Body:
- Level: 20
Bonus: 6000
RandomBonus: 3900
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -1149,6 +1206,8 @@ Body:
Bonus: 3900
RandomBonus: 3500
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1165,6 +1224,8 @@ Body:
Bonus: 4200
RandomBonus: 4000
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1180,6 +1241,8 @@ Body:
- Level: 15
Bonus: 4500
RandomBonus: 4500
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1195,6 +1258,8 @@ Body:
- Level: 16
Bonus: 8000
RandomBonus: 5000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1210,6 +1275,8 @@ Body:
- Level: 17
Bonus: 8500
RandomBonus: 5500
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1225,6 +1292,8 @@ Body:
- Level: 18
Bonus: 9000
RandomBonus: 6000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1240,6 +1309,8 @@ Body:
- Level: 19
Bonus: 9500
RandomBonus: 6500
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -1255,6 +1326,8 @@ Body:
- Level: 20
Bonus: 10000
RandomBonus: 7000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -1478,6 +1551,8 @@ Body:
Bonus: 6500
RandomBonus: 6400
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1494,6 +1569,8 @@ Body:
Bonus: 7000
RandomBonus: 7200
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1509,6 +1586,8 @@ Body:
- Level: 15
Bonus: 7500
RandomBonus: 8000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1800
@@ -1524,6 +1603,8 @@ Body:
- Level: 16
Bonus: 11200
RandomBonus: 8800
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1539,6 +1620,8 @@ Body:
- Level: 17
Bonus: 11900
RandomBonus: 9600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1554,6 +1637,8 @@ Body:
- Level: 18
Bonus: 12600
RandomBonus: 10400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1700
@@ -1569,6 +1654,8 @@ Body:
- Level: 19
Bonus: 13300
RandomBonus: 11200
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -1584,6 +1671,8 @@ Body:
- Level: 20
Bonus: 14000
RandomBonus: 12000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 1500
@@ -1811,6 +1900,8 @@ Body:
Bonus: 9100
RandomBonus: 12600
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -1827,6 +1918,8 @@ Body:
Bonus: 9800
RandomBonus: 14000
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -1842,6 +1935,8 @@ Body:
- Level: 15
Bonus: 10500
RandomBonus: 15400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -1857,6 +1952,8 @@ Body:
- Level: 16
Bonus: 16000
RandomBonus: 16800
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -1872,6 +1969,8 @@ Body:
- Level: 17
Bonus: 17000
RandomBonus: 18200
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -1887,6 +1986,8 @@ Body:
- Level: 18
Bonus: 18000
RandomBonus: 19600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -1902,6 +2003,8 @@ Body:
- Level: 19
Bonus: 19000
RandomBonus: 21000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -1917,6 +2020,8 @@ Body:
- Level: 20
Bonus: 20000
RandomBonus: 22400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -2018,6 +2123,7 @@ Body:
DowngradeAmount: 1
- Level: 8
Bonus: 6400
BlacksmithBlessingAmount: 1
Chances:
- Type: Normal
Rate: 2000
@@ -2031,6 +2137,7 @@ Body:
DowngradeAmount: 1
- Level: 9
Bonus: 7200
BlacksmithBlessingAmount: 2
Chances:
- Type: Normal
Rate: 2000
@@ -2044,6 +2151,7 @@ Body:
DowngradeAmount: 1
- Level: 10
Bonus: 8000
BlacksmithBlessingAmount: 4
Chances:
- Type: Normal
Rate: 900
@@ -2057,6 +2165,7 @@ Body:
DowngradeAmount: 1
- Level: 11
Bonus: 8800
BlacksmithBlessingAmount: 7
Chances:
- Type: Normal
Rate: 800
@@ -2070,6 +2179,7 @@ Body:
BreakingRate: 10000
- Level: 12
Bonus: 9600
BlacksmithBlessingAmount: 11
Chances:
- Type: Normal
Rate: 800
@@ -2083,6 +2193,9 @@ Body:
BreakingRate: 10000
- Level: 13
Bonus: 10400
BlacksmithBlessingAmount: 16
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -2096,6 +2209,9 @@ Body:
BreakingRate: 10000
- Level: 14
Bonus: 11200
BlacksmithBlessingAmount: 22
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 800
@@ -2109,6 +2225,8 @@ Body:
BreakingRate: 10000
- Level: 15
Bonus: 12000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -2122,6 +2240,8 @@ Body:
BreakingRate: 10000
- Level: 16
Bonus: 12800
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -2135,6 +2255,8 @@ Body:
BreakingRate: 10000
- Level: 17
Bonus: 13600
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -2148,6 +2270,8 @@ Body:
BreakingRate: 10000
- Level: 18
Bonus: 14400
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 700
@@ -2161,6 +2285,8 @@ Body:
BreakingRate: 10000
- Level: 19
Bonus: 15200
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500
@@ -2174,6 +2300,8 @@ Body:
BreakingRate: 10000
- Level: 20
Bonus: 16000
BroadcastSuccess: true
BroadcastFailure: true
Chances:
- Type: Normal
Rate: 500

View File

@@ -54,3 +54,8 @@ Body:
Variable: RepPointsIsgard
Minimum: -3000
Maximum: 3000
Footer:
Imports:
- Path: db/re/generator/reputation.yml
Generator: true

View File

@@ -0,0 +1,38 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Group Database
###########################################################################
#
# Reputation Group Settings
#
###########################################################################
# - Id Client side group index.
# ScriptName Unused? Used for "ID" in client
# Name Visible name in window
# ReputeList List of Reputations
###########################################################################
Header:
Type: REPUTATION_GROUP_DB
Version: 1
Footer:
Imports:
- Path: db/re/generator/reputation_group.yml
Generator: true

View File

@@ -9635,15 +9635,13 @@ Body:
Name: NPC_WEAPONBRAKER
Description: Break weapon
MaxLevel: 10
Type: Weapon
TargetType: Attack
TargetType: Self
Flags:
IsNpc: true
Range: 9
Hit: Single
HitCount: 1
Element: Weapon
Status: BrokenWeapon
Duration: 30000
Status: WeaponBreaker
- Id: 344
Name: NPC_ARMORBRAKE
Description: Break armor
@@ -10518,9 +10516,6 @@ Body:
Amount: 90
- Level: 5
Amount: 100
ItemCost:
- Item: Poison_Bottle
Amount: 1
Status: Edp
- Id: 379
Name: ASC_BREAKER
@@ -17024,7 +17019,7 @@ Body:
Range: 11
Hit: Multi_Hit
HitCount: -20
Duration1: 18000
Duration2: 18000
SplashArea: 9
Knockback: 2
CastCancel: true
@@ -17166,11 +17161,12 @@ Body:
Name: NPC_MAXPAIN_ATK
Description: Max Pain Attack
MaxLevel: 10
Type: Misc
Type: Weapon
TargetType: Attack
DamageFlags:
Splash: true
IgnoreElement: true
IgnoreDefense: true
IgnoreFlee: true
IgnoreDefCard: true
Flags:
@@ -27609,8 +27605,8 @@ Body:
DamageFlags:
Splash: true
Range: 9
Hit: Single
HitCount: -3
Hit: Multi_Hit
HitCount: 3
Element: Wind
SplashArea:
- Level: 1
@@ -44821,7 +44817,7 @@ Body:
IsGuild: true
CastCancel: true
Duration1: 300000
Cooldown: 60000
Cooldown: 900000
FixedCastTime: 1000
- Id: 10018
Name: GD_CHARGESHOUT_BEATING
@@ -44833,7 +44829,7 @@ Body:
Flags:
IsGuild: true
CastCancel: true
Cooldown: 60000
Cooldown: 900000
FixedCastTime: 1000
- Id: 10019
Name: GD_EMERGENCY_MOVE
@@ -44847,5 +44843,5 @@ Body:
IsGuild: true
SplashArea: 15
Duration1: 10000
Cooldown: 600000
Cooldown: 60000
Status: Emergency_Move

File diff suppressed because it is too large Load Diff

View File

@@ -18,6 +18,7 @@ We want to add our own custom achievement that can be given to a player via an N
#### /db/import/achievement_db.yml
```yml
- Id: 280000
Group: None
Name: Emperio
@@ -30,6 +31,7 @@ We want to add our own custom achievement that can be given to a player via an N
Reward:
TitleId: 1036
Score: 50
```
### Instances
@@ -38,27 +40,30 @@ We want to add our own customized Housing Instance.
#### /db/import/instance_db.yml
- Id: 35
Name: Home
IdleTimeOut: 900
Enter:
Map: 1@home
X: 24
Y: 6
AdditionalMaps:
- Map: 2@home
- Map: 3@home
```yml
- Id: 35
Name: Home
IdleTimeOut: 900
Enter:
Map: 1@home
X: 24
Y: 6
AdditionalMaps:
- Map: 2@home
- Map: 3@home
```
### Mob Alias
---
We want to give a custom mob a Novice player sprite.
We want to make Porings look like Baphomet.
#### /db/import/mob_avail.txt
#### /db/import/mob_avail.yml
// Structure of Database:
// MobID,SpriteID{,Equipment}
3850,0
```yml
- Mob: PORING
Sprite: BAPHOMET
```
### Custom Maps
@@ -67,45 +72,71 @@ We want to add our own custom maps. For this we need to add our map names to `im
#### /db/import/map_index.txt
```
1@home 1250
2@home
3@home
ev_has
shops
prt_pvp
```
### Item Trade Restrictions
---
We want to ensure that specific items cannot be traded, sold, dropped, placed in storage, etc.
#### /db/import/item_trade.txt
#### /db/import/item_db.yml
// Legend for 'TradeMask' field (bitmask):
// 1 - item can't be dropped
// 2 - item can't be traded (nor vended)
// 4 - wedded partner can override restriction 2
// 8 - item can't be sold to npcs
// 16 - item can't be placed in the cart
// 32 - item can't be placed in the storage
// 64 - item can't be placed in the guild storage
// 128 - item can't be attached to mail
// 256 - item can't be auctioned
// Full outright value = 511
34000,511,100 // Old Green Box
34001,511,100 // House Keys
34002,511,100 // Reputation Journal
```yml
- Id: 34000 # Old Green Box
Trade:
NoDrop: true
NoTrade: true
TradePartner: true
NoSell: true
NoCart: true
NoStorage: true
NoGuildStorage: true
NoMail: true
NoAuction: true
- Id: 34001 # House Keys
Trade:
NoDrop: true
NoTrade: true
TradePartner: true
NoSell: true
NoCart: true
NoStorage: true
NoGuildStorage: true
NoMail: true
NoAuction: true
- Id: 34002 # Reputation Journal
Trade:
NoDrop: true
NoTrade: true
TradePartner: true
NoSell: true
NoCart: true
NoStorage: true
NoGuildStorage: true
NoMail: true
NoAuction: true
```
### Custom Quests
---
We want to add our own custom quests to the quest_db.
#### /db/import/quest_db.txt
#### /db/import/quest_db.yml
// Quest ID,Time Limit,Target1,Val1,Target2,Val2,Target3,Val3,MobID1,NameID1,Rate1,MobID2,NameID2,Rate2,MobID3,NameID3,Rate3,Quest Title
89001,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Reputation Quest"
89002,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Reputation Quest"
```yml
- Id: 89001
Title: "Reputation Quest"
- Id: 89002
Title: "Reputation Quest"
```

View File

@@ -30,6 +30,8 @@
# Bonus Refinement bonus. (Default: 0)
# RandomBonus Extra refinement bonus of 0~RandomBonus stacked on Bonus. (Default: 0)
# BlacksmithBlessingAmount Amount of Blacksmith Blessing required. (Default: 0)
# BroadcastSuccess Broadcast to the whole server when a refine attempt at this level succeeds. (Default: false)
# BroadcastFailure Broadcast to the whole server when a refine attempt at this level fails. (Default: false)
# Chances: Success chance based on cost type. (Default: null)
# - Type Refinement cost type based on ore used.
# Rate Chance of success out of 0~10000. (Default: 0)
@@ -41,7 +43,7 @@
Header:
Type: REFINE_DB
Version: 1
Version: 2
Footer:
Imports:

39
db/reputation_group.yml Normal file
View File

@@ -0,0 +1,39 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Group Database
###########################################################################
#
# Reputation Group Settings
#
###########################################################################
# - Id Client side group index.
# ScriptName Unused? Used for "ID" in client
# Name Visible name in window
# ReputeList List of Reputations
###########################################################################
Header:
Type: REPUTATION_GROUP_DB
Version: 1
Footer:
Imports:
- Path: db/re/reputation_group.yml
Mode: Renewal
- Path: db/import/reputation_group.yml

View File

@@ -35,13 +35,14 @@
# MinRate Minimum rate after status change reduction (10000 = 100%). (Default: 0)
# MinDuration Minimum duration in milliseconds after status change reduction. (Default: 1)
# Fail: List of Status Changes that causes the status to fail to activate. (Optional)
# End: List of Status Changes that will end when the status activates. (Optional)
# EndOnStart: List of Status Changes that will end when the status activates. (Optional)
# EndReturn: List of Status Changes that will end when the status activates and won't give its effect. (Optional)
# EndOnEnd: List of Status Changes that will end when the status becomes inactive. (Optional)
###########################################################################
Header:
Type: STATUS_DB
Version: 2
Version: 3
Footer:
Imports:

View File

@@ -1419,6 +1419,7 @@ This will also send a packet to clients causing them to close.
@reloadstatusdb
@reloadachievementdb
@reloadattendancedb
@reloadbarterdb
Reloads a database or configuration file.
@@ -1427,10 +1428,11 @@ Databases:
-- itemdb: Item Database
-- mobdb: Monster Database
-- questdb: Quest Database
-- script: NPC Scripts
-- script: NPC Scripts and Barter Database
-- skilldb: Skill Database
-- achievementdb: Achievement Database
-- attendancedb: Attendance Database
-- barterdb: Barter Database
Configuration files:
-- atcommand: Atcommand Settings
@@ -1450,11 +1452,12 @@ Affected files:
-- msgconf: atcommands.yml
-- pcdb: statpoint.yml, job_exp.yml, skill_tree.yml, attr_fix.yml, job_stats.yml, job_basepoints.yml, level_penalty.yml
-- questdb: quest_db.yml
-- script: /npc/*.txt, /npc/*.conf
-- script: /npc/*.txt, /npc/*.conf, /npc/barters.yml
-- skilldb: skill_db.yml, skill_nocast_db.txt, skill_changematerial_db.txt, skill_damage_db.txt, abra_db.yml, create_arrow_db.yml, produce_db.txt, spellbook_db.yml, magicmushroom_db.yml
-- statusdb: attr_fix.yml, size_fix.yml, refine.yml
-- achievementdb: achievement_db.yml
-- attendancedb: attendance.yml
-- barterdb: /npc/barters.yml
Restriction:
- Used from 'atcommand' or 'useatcmd'. For @reload & @reloadscript

44
doc/captcha_db.txt Normal file
View File

@@ -0,0 +1,44 @@
//===== rAthena Documentation ================================
//= Captcha Database Structure
//===== By: ==================================================
//= rAthena Dev Team
//===== Last Updated: ========================================
//= 20220920
//===== Description: =========================================
//= Explanation of the captcha_db.yml file and structure.
//============================================================
---------------------------------------
Id: Unique ID.
---------------------------------------
Filename: Name of the BMP image file (with location).
The path of the file can be different for each captcha image, but it's best practice to keep them in the same directory.
Example:
Filename: db/import/captcha/rathena.bmp
---------------------------------------
Answer: Correct answer for the captcha (case-sensitive).
---------------------------------------
Bonus: NPC script that is ran when a captcha is successfully answered. Accepts all forms of script constants, variables, as well as the
unique player variable @captcha_retries. This variable can be used within the Bonus script to get the remaining retries a player
has. Coupled with the script command 'getbattleflag()' this could be used to assign different bonuses based on success rate.
Example:
# Give level 10 Blessing for 20 minutes with no failures, else give for 30 seconds.
Bonus: >
if (@captcha_retries == getbattleflag("macro_detection_retry")) {
# Player solved it on first try
specialeffect2 EF_BLESSING;
sc_start SC_BLESSING,1200000,10;
} else {
# Player needed more than one try
specialeffect2 EF_BLESSING;
sc_start SC_BLESSING,30000,10;
}

View File

@@ -2,8 +2,6 @@
This is a tool to generate files that are hard to manually create.
Only navigation files can be generated at this time.
## How to run
### Linux
Run `make tools`.
@@ -21,6 +19,8 @@ On Windows, prefix with `/`
option | feature
---|---
generate-navi | create navigation files
`generate-navi` | create navigation files
`generate-reputation` | create reputation bson files
`generate-itemmoveinfo` | create itemmoveinfov5.txt

View File

@@ -212,3 +212,15 @@ Allow to bypass the maximum stat parameter (at conf/player.conf) to
maximum value 32,767.
---------------------------------------
*macro_detect
Allows player to use the client command /macro_detector.
---------------------------------------
*macro_register
Allows player to use the client commands /maco_register (used to add new captcha) and /macro_preview (used to preview captcha by ID).
---------------------------------------

View File

@@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena Dev Team
//===== Last Updated: ========================================
//= 20180831
//= 20211112
//===== Description: =========================================
//= An example of how duplicate NPCs are handled:
//= NPC variables are shared between all duplicates.
@@ -18,14 +18,88 @@ prontera,150,175,4 script Duplicate Test Script 909,{
close;
OnInit:
getmapxy(.map$, .x, .y, 1);
getmapxy(.map$, .x, .y, BL_NPC);
end;
OnTouch:
getmapxy(.map$, .x, .y, 1);
getmapxy(.map$, .x, .y, BL_NPC);
emotion ET_SCISSOR;
end;
}
prontera,155,175,4 duplicate(Duplicate Test Script) Duplicate Test2 909,2,2
prontera,160,175,4 duplicate(Duplicate Test Script) Duplicate Test3 909,3,3
//duplicate command script
prontera,150,168,4 script Duplicate Command Test 909,{
mes "Would you like to create a new NPC?";
.@original_npc$ = "original_npc_unique_name";
mes "Input Map Name";
mes "recommended 'prontera'";
input .@map$;
clear;
mes "Input x";
mes "recommended '155'";
input .@x,0;
clear;
mes "Input y";
mes "recommended '168'";
input .@y,0;
clear;
switch( .@s = select( "Provide no info:With name:With name and look:With name, look and dir:cancel" ) ){
case 1:
.@new_npc$ = duplicate( .@original_npc$, .@map$, .@x, .@y );
break;
case 2:
mes "Input Duplicate NPC Name";
input .@name$;
clear;
.@new_npc$ = duplicate( .@original_npc$, .@map$, .@x, .@y, .@name$ );
break;
case 3:
mes "Input Duplicate NPC Name";
input .@name$;
clear;
mes "Input look";
mes "recommended '445'";
input .@look,0;
.@new_npc$ = duplicate( .@original_npc$, .@map$, .@x, .@y, .@name$, .@look );
break;
case 4:
mes "Input Duplicate NPC Name";
input .@name$;
clear;
mes "Input look";
mes "recommended '445'";
input .@look,0;
clear;
mes "Input dir";
mes "between " + DIR_NORTH + " and " + DIR_NORTHEAST;
input .@dir,DIR_NORTH,DIR_NORTHEAST;
.@new_npc$ = duplicate( .@original_npc$, .@map$, .@x, .@y, .@name$, .@look, .@dir );
break;
default:
mes "Ok, see you next time!";
close;
}
if( getnpcid( 0, .@new_npc$ ) == 0 ){
mes "Something went wrong!";
mes "The new NPC could not be found!";
close;
}
clear;
mes "The new NPC is now at " + .@map$ + "," + .@x + "," + .@y;
end;
}
prontera,150,165,0 script test npc::original_npc_unique_name 444,{
getmapxy(.@map$, .@x, .@y, BL_NPC);
mes "Hi.";
mes "My Unique Name is: " + strnpcinfo(3);
mes "My coords are "+ .@map$ +", "+ .@x +"/" +.@y ;
close;
}

View File

@@ -159,7 +159,8 @@ executed, it is affected by spawn rates in 'battle_athena.conf'.
Delay1 and delay2 control monster respawn delays - the first one is the fixed
base respawn time, and the second is random variance on top of the base time.
Both values are given in milliseconds (1000 = 1 second).
Note that the server also enforces a minimum respawn delay of 5 seconds.
Note that the server also enforces a minimum respawn delay of 1 second (See
/conf/battle/monster.conf::mob_respawn_time).
Event is a script event to be executed when the mob is killed. The event must
be in the form "NPCName::OnEventName" to execute, and the event name label
@@ -431,8 +432,9 @@ hexadecimal value. Notice that 0x10 is equal to 16. Also notice that if you try
to 'mes 0x10' it will print '16'.
Number values can't exceed the limits of an integer variable: Any number
greater than INT_MAX (2147483647) or smaller than INT_MIN (-2147483648) will
be capped to those values and will cause a warning to be reported.
greater than INT64_MAX (9223372036854775807) or smaller than INT64_MIN
(-9223372036854775808) will be capped to those values and will cause a warning
to be reported.
Variables
---------
@@ -1228,6 +1230,12 @@ Don't expect things to run smoothly if you don't make your scripts 'end'.
---------------------------------------
*close3;
The command is similar to 'close' but the cutin (if any) is cleared after closing.
---------------------------------------
*end;
This command will stop the execution for this particular script. The two
@@ -2723,7 +2731,7 @@ See 'getequipid' for a full list of valid equipment slots.
Given the database ID number of an item, this function will return the text
stored in the 'Name' field in item_db_*.yml for text version
or 'name_english' field for SQL version.
or 'name_english' field for SQL version. The function returns "null" if the item doesn't exist.
---------------------------------------
@@ -3582,6 +3590,32 @@ This command does not count skills which are set as flag 4 (permament granted) (
---------------------------------------
*getrandmobid(<type>{,<flag>{,<level>}})
This command returns a random monster ID from the random monster group.
With <flag> you can apply certain restrictions which monsters of the group can be returned.
Returns 0 if one of the parameters is invalid or no monster could be found with the given parameters.
Valid <type> are:
MOBG_BRANCH_OF_DEAD_TREE
MOBG_PORING_BOX
MOBG_BLOODY_DEAD_BRANCH
MOBG_RED_POUCH_OF_SURPRISE
MOBG_CLASSCHANGE
MOBG_TAEKWON_MISSION
Valid <flag> are:
RMF_NONE = 0x00 - Apply no flags
RMF_DB_RATE = 0x01 - Apply the summon success chance found in the list (otherwise get any monster from the db)
RMF_CHECK_MOB_LV = 0x02 - Apply a monster level check
RMF_MOB_NOT_BOSS = 0x04 - Selected monster should not be a Boss type (default)
- (except those from MOBG_BLOODY_DEAD_BRANCH)
RMF_MOB_NOT_SPAWN = 0x08 - Selected monster must have normal spawn
RMF_MOB_NOT_PLANT = 0x10 - Selected monster should not be a Plant type
RMF_ALL = 0xFF - Apply all flags
---------------------------------------
*getmonsterinfo(<mob ID>,<type>)
*getmonsterinfo(<mob name>,<type>)
@@ -6277,6 +6311,28 @@ it just removes non-permanent script.
---------------------------------------
*plagiarizeskill <skill_id>,<level>;
Enable the player to plagiarize specific skills that are copyable.
Return 1 on success, 0 otherwise.
Note:
- Plagiarism only able to copy skill while SC_PRESERVE is not active and skill is copyable by Plagiarism.
- Reproduce can copy skill if SC__REPRODUCE is active and the skill is copyable by Reproduce.
---------------------------------------
*plagiarizeskillreset <flag>;
Remove a plagiarized skill from the player.
Return 1 on success, 0 otherwise.
Flag constants:
1 - Use for Plagiarism Skill
2 - Use for Reproduce Skill
---------------------------------------
*skill <skill id>,<level>{,<flag>};
*skill "<skill name>",<level>{,<flag>};
*addtoskill <skill id>,<level>{,<flag>};
@@ -6524,6 +6580,28 @@ Examples:
---------------------------------------
macro_detector({<account ID>});
macro_detector({"<character name>"});
This command will display the captcha UI challenge onto the invoking character or the given <account ID>/<character name>.
Example:
// Use 'getareaunits' to gather an area of players to test.
// Build an int array of the account IDs.
.@num = getareaunits(BL_PC, "prontera", 150, 150, 160, 160, .@array[0]);
mes "The number of Players in Prontera in between 150x150 and 160x160 is " + .@num + " .";
mes "Players to challenge:";
freeloop(1); // If the list is too big
for(.@i = 0; .@i < getarraysize(.@array); .@i++) {
mes (.@i + 1) + " " + convertpcinfo(.@array[.@i], CPC_NAME);
macro_detector .@array[.@i];
}
freeloop(0);
end;
---------------------------------------
==================================
|5.- Mob / NPC -related commands.|
==================================
@@ -6840,6 +6918,29 @@ This command will fully unload a NPC object and all of it's duplicates.
---------------------------------------
*duplicate "<NPC name>","<map>",<x>,<y>{,"<Duplicate NPC name>"{,<sprite>{,<dir>{,<xs>{,<xy>}}}}};
This command will duplicate the NPC with the given <NPC name> on <map> at <x>/<y>.
If <Duplicate NPC name>, <sprite>, <dir>, <xs> or <ys> is not provided the value of the original NPC will be used.
The Unique name of the new duplicated NPC is returned on success. An empty string is returned on failure.
NOTE:
Duplicates will always have the same NPC variables as the original NPC.
Editing a NPC variable in a duplicate or the original NPC will change it for the others.
---------------------------------------
*duplicate_dynamic("<NPC name>"{,<character ID>});
This command will duplicate the NPC with the given <NPC name> near the attached player or the player with the given <character ID>.
The Unique name of the new duplicated NPC is returned on success. An empty string is returned on failure.
NOTE:
Duplicates will always have the same NPC variables as the original NPC.
Editing a NPC variable in a duplicate or the original NPC will change it for the others.
---------------------------------------
*cloakonnpc {"<NPC object name>"{,<character ID>}};
*cloakoffnpc {"<NPC object name>"{,<character ID>}};
@@ -8251,6 +8352,13 @@ Gets the reputation points for reputation group <type> for the attached player o
---------------------------------------
*add_reputation_points(<type>,<points>{,<char id>})
Adds the reputation points via <points> for reputation group <type> for the attached player or the given character ID.
<type> is the client side index as stored in the Id field of the reputation.yml database files.
---------------------------------------
*item_reform({<item id>{,<char id>}})
*item_reform({<"item name">{,<char id>}})
@@ -8527,6 +8635,7 @@ Parameters (indexes) for monsters are:
UMOB_IGNORE_CELL_STACK_LIMIT
UMOB_RES
UMOB_MRES
UMOB_DAMAGETAKEN
-----
@@ -8954,6 +9063,18 @@ Example:
---------------------------------------
*cap_value(<number>, <min>, <max>)
Returns the number but capped between <min> and <max>.
Example:
// capped between 0 ~ 100
.@value = cap_value(10, 0, 100); // .@value will be equal to 10
.@value = cap_value(1000, 0, 100); // .@value will be equal to 100
.@value = cap_value(-10, 3, 100); // .@value will be equal to 3
---------------------------------------
*round(<number>,<precision>);
*ceil(<number>,<precision>);
*floor(<number>,<precision>);
@@ -9549,9 +9670,13 @@ returns an empty string instead.
*instance_id({<instance mode>})
Returns the unique instance ID of the given mode. By default it returns the
attached script instance. If <instance mode> is provided then the instance
of the currently attached player is used. If that fails, the function will return 0.
Returns the unique instance ID of the given mode.
By default (no parameter given) the command returns the instance ID from the attached NPC.
If <instance mode> is provided the instance ID of the currently attached player is returned.
If that fails, the function will return 0.
Please note that the command always requires the parameter <instance mode> to get the instance ID of an attached player!
Instance Mode options:
IM_CHAR: Attached to character.
@@ -9559,6 +9684,13 @@ Instance Mode options:
IM_GUILD: Attached to character's guild.
IM_CLAN: Attached to character's clan.
Examples:
// Example with an attached player :
npctalk "The current instance ID (mode party) from the attached player is : " + instance_id(IM_PARTY);
// Example with an attached NPC on an instance map :
npctalk "The current instance ID from the attached NPC is : " + instance_id();
---------------------------------------
*instance_warpall "<map name>",<x>,<y>{,<instance id>};
@@ -10184,7 +10316,7 @@ server and the egg will disappear when anyone tries to hatch it.
This function will return pet information for the pet the invoking character
currently has active. Valid types are:
PETINFO_ID - Pet ID
PETINFO_ID - Pet unique ID
PETINFO_CLASS - Pet class number as per 'db/(pre-)re/pet_db.yml' - will tell you what kind of a pet it is.
PETINFO_NAME - Pet name. Will return "null" if there's no pet.
PETINFO_INTIMATE - Pet friendly level (intimacy score). 1000 is full loyalty.
@@ -10866,6 +10998,29 @@ If <char id> is specified, the specified player is used rather than the attached
---------------------------------------
*itemlink(<item_id>,<refine>,<card0>,<card1>,<card2>,<card3>,<enchantgrade>{,<RandomIDArray>,<RandomValueArray>,<RandomParamArray>});
Generates an item link string for an item that can be used for npctalk, message,
dispbottom, and broadcast commands. The result is a clickable-item name just
like SHIFT+Click from a player's inventory/cart/equipment window. This command can be
used with mes but the item name will not be clickable. You should use the normal client
tags for displaying item links in mes dialogues, if the client supports them.
Examples:
npctalk "Knife [3] : "+itemlink(1201)+"";
npctalk "+16 Knife [3] : "+itemlink(1201,16)+"";
npctalk "+13 BXB Bapho+VR+EA2+EA1 : "+itemlink(18110,13,4147,4407,4833,4832)+"";
setarray .@opt_ids[0],RDMOPT_VAR_ATKPERCENT,RDMOPT_VAR_ATKPERCENT,RDMOPT_VAR_ATTMPOWER,0,0;
setarray .@opt_values[0],3,5,20,0,0;
setarray .@opt_params[0],0,0,0,0,0;
npctalk "+13 BXB Bapho+VR+EA2+EA1 + 3 Options : "+itemlink(18110,13,4147,4407,4833,4832,0,.@opt_ids,.@opt_values,.@opt_params)+"";
RandomIDArray, RandomValueArray, and RandomParamArray only works if the
client (and server) supports the Item Random Options feature (PACKETVER >= 20150225).
========================
|14.- Channel commands.|
========================
@@ -11114,3 +11269,30 @@ See 'achievementinfo' for valid <type> values.
- Excludes ACHIEVEINFO_LEVEL and ACHIEVEINFO_SCORE.
---------------------------------------
*addfame(<amount>,{,<char id>})
Increases the fame of the attached player or the supplied <char id> by the <amount> given.
Note: Only works with classes that use the ranking system.
---------------------------------------
*getfame({<char id>})
Gets the fame points of the attached player or the supplied <char id>.
Note: Only works with classes that use the ranking system.
---------------------------------------
*getfamerank({<char id>})
Returns fame rank (start from 1 to MAX_FAME_LIST), else 0.
Note: Only works with classes that use the ranking system.
---------------------------------------
*isdead({<account id>})
Returns true if the player is dead else false.
---------------------------------------

View File

@@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena Dev Team
//===== Last Updated: ========================================
//= 20220421
//= 20221216
//===== Description: =========================================
//= Explanation of the status.yml file and structure.
//============================================================
@@ -232,6 +232,7 @@ Flags: Various status flags for specific status change events.
RemoveOnUnequip - Removed when unequipping any type of equipment.
RemoveOnUnequipWeapon - Removed when unequipping a weapon.
RemoveOnUnequipArmor - Removed when unequipping an armor.
RemoveOnHermode - Removed by CG_HERMODE.
StopAttacking - Makes the unit stop attacking.
StopCasting - Makes the unit stop casting skills.
@@ -266,7 +267,7 @@ Fail: List of status that causes the status to fail to activate.
---------------------------------------
End: List of status that will end if the status activates.
EndOnStart: List of status that will end if the status activates.
---------------------------------------
@@ -276,6 +277,10 @@ EndReturn: List of status that will end if the status activates and it won't giv
---------------------------------------
EndOnEnd: List of status that will end when the status becomes inactive.
---------------------------------------
Notes:
By default, statuses are 'Buff' (those that aren't explicitely given the 'Debuff' flag) which are removable by 'map_quit' in combination with 'battle_config.debuff_on_logout'.

View File

@@ -2827,3 +2827,8 @@ SC_PACKING_ENVELOPE9 (EFST_PACKING_ENVELOPE9)
SC_PACKING_ENVELOPE10 (EFST_PACKING_ENVELOPE10)
desc: Increases HIT
val1: + HIT
SC_WEAPONBREAKER
desc: Bonus given when using NPC_WEAPONBRAKER skill
val1: Skill level
val2: val1 * 2 weapon break chance

12
doc/yaml/db/item_cash.yml Normal file
View File

@@ -0,0 +1,12 @@
###########################################################################
# Item Cash Database
###########################################################################
#
# Item Cash Settings
#
###########################################################################
# - Tab Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
# Items: List of possible items.
# - Item Item name.
# Price Item cost in cash points (#CASHPOINTS).
###########################################################################

View File

@@ -4,7 +4,7 @@ M_SRV=map-server
W_SRV=web-server
INST_PATH=/opt
PKG=rathena
PKG_PATH=$INST_PATH/$PKG
PKG_PATH="${INST_PATH}/${PKG}"
check_files() {
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
@@ -17,11 +17,11 @@ check_files() {
}
check_inst_right(){
if [ ! -w $INST_PATH ]; then echo "You must have sudo right to use this install (write/read permission in /opt/ )" && exit; fi
if [ ! -w "${INST_PATH}" ]; then echo "You must have sudo right to use this install (write/read permission in ${INST_PATH}/ )" && exit; fi
}
inst_launch_workaround(){
if [ -d $PKG_PATH ]; then
if [ $(pwd) != $PKG_PATH ]; then cd $PKG_PATH; fi
if [ -d "${PKG_PATH}" ]; then
if [ "$(pwd)" != "${PKG_PATH}" ]; then cd "${PKG_PATH}"; fi
fi
}

View File

@@ -6,12 +6,12 @@
# NOTE: This requires GNU getopt. On Mac OS X and FreeBSD, you have to install this
# separately; see below.
TEMP=`getopt -o d: -l destdir: -- "$@"`
TEMP=$(getopt -o d: -l destdir: -- "$@")
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
# Note the quotes around `$TEMP': they are essential!
eval set -- "$TEMP"
eval set -- "${TEMP}"
eval set -- "$TEMP"
eval set -- "${TEMP}"
while [ $# -gt 0 ]
do
case "$1" in
@@ -20,26 +20,26 @@ do
shift
done
echo "destdir = $PKG_PATH "
echo "destdir = ${PKG_PATH} "
check_inst_right
check_files
mkdir -p $PKG_PATH/bin/
mkdir -p $PKG_PATH/etc/$PKG/
mkdir -p $PKG_PATH/usr/$PKG/
mkdir -p $PKG_PATH/var/$PKG/log
mkdir -p "${PKG_PATH}/bin/"
mkdir -p "${PKG_PATH}/etc/${PKG}/"
mkdir -p "${PKG_PATH}/usr/${PKG}/"
mkdir -p "${PKG_PATH}/var/${PKG}/log"
#we copy all file into opt/ dir and treat dir like normal unix arborescence
cp -r db/ $PKG_PATH/var/$PKG/db
if [ -d log ]; then cp -r log/* $PKG_PATH/var/$PKG/log/; fi
cp -r conf/ $PKG_PATH/etc/$PKG/conf
cp -r npc/ $PKG_PATH/usr/$PKG/npc
cp athena-start $PKG_PATH/
cp *-server* $PKG_PATH/bin/
cp -r db/ "${PKG_PATH}/var/${PKG}/db"
if [ -d log ]; then cp -r log/* "${PKG_PATH}/var/${PKG}/log/"; fi
cp -r conf/ "${PKG_PATH}/etc/${PKG}/conf"
cp -r npc/ "${PKG_PATH}/usr/${PKG}/npc"
cp athena-start "${PKG_PATH}/"
cp *-server* "${PKG_PATH}/bin/"
ln -fs $PKG_PATH/var/$PKG/db/ $PKG_PATH/db
ln -fs $PKG_PATH/var/$PKG/log/ $PKG_PATH/log
ln -fs $PKG_PATH/etc/$PKG/conf/ $PKG_PATH/conf
ln -fs $PKG_PATH/usr/$PKG/npc/ $PKG_PATH/npc
ln -fs $PKG_PATH/athena-start /usr/bin/$PKG
for f in $(ls $PKG_PATH/bin/) ; do ln -fs $PKG_PATH/bin/$f $PKG_PATH/$f; done
echo "Installation is done. You can now control the server with '$PKG start'"
ln -fs "${PKG_PATH}/var/${PKG}/db/" "${PKG_PATH}/db"
ln -fs "${PKG_PATH}/var/${PKG}/log/" "${PKG_PATH}/log"
ln -fs "${PKG_PATH}/etc/${PKG}/conf/" "${PKG_PATH}/conf"
ln -fs "${PKG_PATH}/usr/${PKG}/npc/" "${PKG_PATH}/npc"
ln -fs "${PKG_PATH}/athena-start" "/usr/bin/${PKG}"
for f in $(ls "${PKG_PATH}/bin/") ; do ln -fs "${PKG_PATH}/bin/${f}" "${PKG_PATH}/${f}"; done
echo "Installation is done. You can now control the server with '${PKG} start'"

View File

@@ -743,7 +743,7 @@ einbech,46,107,6 script Shena#ein::EinMonsters 846,{
}
}
einbech,48,107,4 duplicate(EinMonsters) Luda#ein 850,{
einbech,48,107,4 duplicate(EinMonsters) Luda#ein 850
einbech,148,242,5 script Jung#ein 855,{
mes "[Jung]";

View File

@@ -11,6 +11,7 @@ OnInit:
.HP_Option = true; //Allow HP option
.SP_Option = true; //Allow SP option
.MinDelay = 100; //Minimum Delay Allowed in milliseconds (Default and Recommended: 100) [lower values will increase server strain]
.MaxDelay = 1000; //Maximum Delay Allowed in milliseconds (Default and Recommended: 1000)
setarray .blackList[0],0; //Array of black listed item ID
if(!.HP_Option && !.SP_Option){
@@ -24,11 +25,11 @@ end;
L_Help:
dispbottom "Available commands:";
if(.HP_Option && .SP_Option){
dispbottom " @autopot <hp|sp> <item id> {<min hp|sp % [1..100]> {<delay [" + .MinDelay + "..1000]>}}";
dispbottom " @autopot <hp|sp> <item id> {<min hp|sp % [1..100]> {<delay [" + .MinDelay + ".."+.MaxDelay+"]>}}";
dispbottom " @autopot <hp|sp> list";
dispbottom " @autopot <hp|sp> <on|off>";
}else{
dispbottom " @autopot <" + (.HP_Option?"hp":"sp") + "> <item id> {<min " + (.HP_Option?"hp":"sp") + " % [1..100]> {<delay [" + .MinDelay + "..1000]>}}";
dispbottom " @autopot <" + (.HP_Option?"hp":"sp") + "> <item id> {<min " + (.HP_Option?"hp":"sp") + " % [1..100]> {<delay [" + .MinDelay + ".."+.MaxDelay+"]>}}";
dispbottom " @autopot <" + (.HP_Option?"hp":"sp") + "> list";
dispbottom " @autopot <" + (.HP_Option?"hp":"sp") + "> <on|off>";
}
@@ -56,10 +57,11 @@ L_Start:
.@type$ = getarg(0,0);
.@potion = getarg(1,0);
setd "@autopot_" + .@type$ + "_Min",getarg(2,0);
@autopot_delay = getarg(3,0);
@autopot_delay = getarg(3,.MinDelay);
if (getd("@autopot_" + .@type$ + "_Min") < 1 || getd("@autopot_" + .@type$ + "_Min") > 100) setd "@autopot_" + .@type$ + "_Min",90;
if (@autopot_delay < 50 || @autopot_delay > 1000) @autopot_delay = .MinDelay;
if (@autopot_delay < .MinDelay) @autopot_delay = .MinDelay;
if (@autopot_delay > .MaxDelay) @autopot_delay = .MaxDelay;
if (getiteminfo(.@potion, ITEMINFO_TYPE) != IT_HEALING) {
dispbottom getitemname(.@potion) + " is not a healing item.";
end;
@@ -74,7 +76,7 @@ L_Start:
}
setd "@autopot_" + .@type$ + "_ID",.@potion;
setd "@autopot_" + .@type$ + "_Active",true;
addtimer .@delay,strnpcinfo(3) + "::OnStart";
addtimer @autopot_delay,strnpcinfo(3) + "::OnStart";
message strcharinfo(0), "Auto-Potion " + strtoupper(.@type$) + " enabled.";
callsub L_Info;
return;

View File

@@ -127,13 +127,14 @@ function Restrict {
Towns:
// --------------------------------------------------
menu "Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5,
"Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10,
"Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Kunlun",T14, "Hugel",T15,
"Izlude",T16, "Jawaii",T17, "Lasagna",T18, "Lighthalzen",T19, "Luoyang",T20,
"Lutie",T21, "Malangdo",T22, "Malaya",T23, "Manuk",T24,
"Midgarts Expedition Camp",T25, "Mora",T26, "Morocc",T27, "Moscovia",T28,
"Nameless Island",T29, "Niflheim",T30, "Payon",T31, "Rachel",T32, "Splendide",T33,
"Thor Camp",T34, "Umbala",T35, "Veins",T36, "Juno",T37;
"Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10,
"Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Hugel",T14, "Ice Castle",T15,
"Izlude",T16, "Jawaii",T17, "Juno",T18, "Kunlun",T19, "Lasagna",T20,
"Lighthalzen",T21, "Luoyang",T22, "Lutie",T23, "Malangdo",T24, "Malaya",T25,
"Manuk",T26, "Midgarts Expedition Camp",T27, "Mora",T28, "Morocc",T29, "Moscovia",T30,
"Nameless Island (Day)",T31, "Nameless Island (Night)",T32, "Niflheim",T33, "Payon",T34, "Rachel",T35,
"Rockridge",T36, "Special Security Area, Cor",T37, "Splendide",T38, "Thor Camp",T39, "Umbala",T40,
"Varmundt's Mansion",T41, "Veins",T42, "Verus Findspot",T43, "Wolf Village",T44;
T1: Go("prontera",155,183);
T2: Go("alberta",28,234);
@@ -152,34 +153,47 @@ T11: Go("einbroch",64,200);
T12: Restrict("RE");
Go("dicastes01",198,187);
T13: Go("geffen",119,59);
T14: Go("gonryun",160,120);
T15: Go("hugel",96,145);
T14: Go("hugel",96,145);
T15: Restrict("RE");
Go("icecastle",185,212);
T16: Go("izlude",128,(checkre(3)?146:114));
T17: Go("jawaii",251,132);
T18: Restrict("RE");
T18: Go("yuno",157,51);
T19: Go("gonryun",160,120);
T20: Restrict("RE");
Go("lasagna",193,182);
T19: Go("lighthalzen",158,92);
T20: Go("louyang",217,100);
T21: Go("xmas",147,134);
T22: Restrict("RE");
T21: Go("lighthalzen",158,92);
T22: Go("louyang",217,100);
T23: Go("xmas",147,134);
T24: Restrict("RE");
Go("malangdo",140,114);
T23: Restrict("RE");
T25: Restrict("RE");
Go("malaya",231,200);
T24: Go("manuk",282,138);
T25: Go("mid_camp",210,288);
T26: Restrict("RE");
T26: Go("manuk",282,138);
T27: Go("mid_camp",210,288);
T28: Restrict("RE");
Go("mora",55,146);
T27: Go("morocc",156,93);
T28: Go("moscovia",223,184);
T29: Go("nameless_n",256,215);
T30: Go("niflheim",202,174);
T31: Go("payon",179,100);
T32: Go("rachel",130,110);
T33: Go("splendide",201,147);
T34: Go("thor_camp",246,68);
T35: Go("umbala",97,153);
T36: Go("veins",216,123);
T37: Go("yuno",157,51);
T29: Go("morocc",156,93);
T30: Go("moscovia",223,184);
T31: Go("nameless_i",256,215);
T32: Go("nameless_n",256,215);
T33: Go("niflheim",202,174);
T34: Go("payon",179,100);
T35: Go("rachel",130,110);
T36: Restrict("RE");
Go("harboro1",298,206);
T37: Restrict("RE");
Go("sp_cor",160,166);
T38: Go("splendide",201,147);
T39: Go("thor_camp",246,68);
T40: Go("umbala",97,153);
T41: Restrict("RE");
Go("ba_maison",72,146);
T42: Go("veins",216,123);
T43: Restrict("RE");
Go("verus04",123,250);
T44: Restrict("RE");
Go("wolfvill",144,144);
// --------------------------------------------------
Fields:
@@ -188,13 +202,14 @@ T37: Go("yuno",157,51);
menu "Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3,
"Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6,
"Eclage Fields",F7, "Einbroch Fields",F8, "El Dicastes Fields",F9,
"Geffen Fields",F10, "Kunlun Fields",F11, "Hugel Fields",F12,
"Lasagna Fields",F13, "Lighthalzen Fields",F14, "Luoyang Field",F15,
"Lutie Field",F16, "Malaya Fields",F17, "Manuk Fields",F18,
"Mjolnir Fields",F19, "Moscovia Fields",F20, "Niflheim Fields",F21,
"Payon Forests",F22, "Prontera Fields",F23, "Rachel Fields",F24,
"Sograt Deserts",F25, "Splendide Fields",F26, "Umbala Fields",F27,
"Veins Fields",F28, "Juno Fields",F29;
"Frozen Scale Fields",F10, "Geffen Fields",F11, "Grey Wolf Forest",F12,
"Hugel Fields",F13, "Juno Fields",F14, "Kiwawa Desert",F15,
"Kunlun Fields",F16, "Lasagna Fields",F17, "Lighthalzen Fields",F18,
"Luoyang Field",F19, "Lutie Field",F20, "Malaya Fields",F21,
"Manuk Fields",F22, "Mjolnir Fields",F23, "Moscovia Fields",F24,
"Niflheim Fields",F25, "Payon Forests",F26, "Prontera Fields",F27,
"Rachel Fields",F28, "Sograt Deserts",F29, "Splendide Fields",F30,
"Umbala Fields",F31, "Veins Fields",F32;
F1: setarray @c[2],190,197;
Disp("Amatsu Field",1,1); Pick("ama_fild");
@@ -221,43 +236,55 @@ F8: Restrict("Pre-RE",2,10);
F9: Restrict("RE");
setarray @c[2],143,132,143,217;
Disp("El Dicastes Field",1,2); Pick("dic_fild");
F10: Restrict("Pre-RE",13,15);
F10: Restrict("RE");
setarray @c[2],378,223,223,18,365,241,140,280;
Disp("Frozen Scale Hill:Frozen Scale Plains:Frozen Scale Glacier:Frozen Tail"); Pick("","jor_back1","jor_back2","jor_back3","jor_tail");
F11: Restrict("Pre-RE",13,15);
setarray @c[0],46,199,213,204,195,212,257,192,188,171,166,263,248,158,195,191,186,183,221,117,178,218,136,328,240,181,235,235,211,185;
Disp("Geffen Field",0,14); Pick("gef_fild",1);
F11: setarray @c[2],220,227;
Disp("Kunlun Field",1,1); Pick("gon_fild");
F12: Restrict("Pre-RE",3,7);
F12: Restrict("RE");
setarray @c[2],22,315,122,388;
Disp("Grey Wolf Forest",1,2); Pick("gw_fild");
F13: Restrict("Pre-RE",3,7);
setarray @c[2],268,101,222,193,232,185,252,189,196,106,216,220,227,197;
Disp("Hugel Field",1,7); Pick("hu_fild");
F13: Restrict("RE");
F14: Restrict("Pre-RE",5,10);
setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
Disp("Juno Field",1,12); Pick("yuno_fild");
F15: Restrict("RE");
setarray @c[2],38,246,31,207;
Disp("Kiwawa Desert",1,2); Pick("","rockrdg1","rockrdg2");
F16: setarray @c[2],220,227;
Disp("Kunlun Field",1,1); Pick("gon_fild");
F17: Restrict("RE");
setarray @c[2],344,371,20,98;
Disp("Lasagna Field",1,2); Pick("lasa_fild");
F14: setarray @c[2],240,179,185,235,240,226;
F18: setarray @c[2],240,179,185,235,240,226;
Disp("Lighthalzen Field",1,3); Pick("lhz_fild");
F15: setarray @c[2],229,187;
F19: setarray @c[2],229,187;
Disp("Luoyang Field",1,1); Pick("lou_fild");
F16: setarray @c[2],115,145;
F20: setarray @c[2],115,145;
Disp("Lutie Field",1,1); Pick("xmas_fild");
F17: Restrict("RE");
F21: Restrict("RE");
setarray @c[2],40,272,207,180;
Disp("Malaya Field",1,2); Pick("ma_fild");
F18: setarray @c[2],35,236,35,262,84,365;
F22: setarray @c[2],35,236,35,262,84,365;
Disp("Manuk Field",1,3); Pick("man_fild");
F19: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
F23: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
Disp("Mjolnir Field",1,12); Pick("mjolnir_");
F20: setarray @c[2],82,104,131,147;
F24: setarray @c[2],82,104,131,147;
Disp("Moscovia Field",1,2); Pick("mosk_fild");
F21: setarray @c[2],215,229,167,234;
F25: setarray @c[2],215,229,167,234;
Disp("Niflheim Field",1,2); Pick("nif_fild");
F22: Restrict("Pre-RE",5,11);
F26: Restrict("Pre-RE",5,11);
setarray @c[2],158,206,151,219,205,148,186,247,134,204,193,235,200,177,137,189,201,224,160,205,194,150;
Disp("Payon Forest",1,11); Pick("pay_fild");
F23: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
F27: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
Disp("Prontera Field",0,11); Pick("prt_fild",1);
F24: Restrict("Pre-RE",2,7,9,10,11,13);
F28: Restrict("Pre-RE",2,7,9,10,11,13);
setarray @c[2],192,162,235,166,202,206,202,208,225,202,202,214,263,196,217,201,87,121,277,181,221,185,175,200,174,197;
Disp("Rachel Field",1,13); Pick("ra_fild");
F25: if(.Satan_Morocc){
F29: if(.Satan_Morocc){
setarray @c[2],219,205,177,206,194,182,224,170,198,216,156,187,185,263,206,228,208,238,209,223,85,97,207,202,31,195,38,195;
Disp("Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22");
Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22");
@@ -265,133 +292,194 @@ F25: if(.Satan_Morocc){
setarray @c[2],219,205,177,206,194,182,146,297,204,197,275,302,224,170,139,123,101,110,341,39,198,216,156,187,185,263,223,222,170,257,206,228,208,238,209,223,85,97;
Disp("Sograt Desert",1,19); Pick("moc_fild");
}
F26: setarray @c[2],175,186,236,184,188,204;
F30: setarray @c[2],175,186,236,184,188,204;
Disp("Splendide Field",1,3); Pick("spl_fild");
F27: setarray @c[2],217,206,223,221,237,215,202,197;
F31: setarray @c[2],217,206,223,221,237,215,202,197;
Disp("Umbala Field",1,4); Pick("um_fild");
F28: Restrict("Pre-RE",5);
F32: Restrict("Pre-RE",5);
setarray @c[2],186,175,196,370,222,45,51,250,202,324,150,223,149,307;
Disp("Veins Field",1,7); Pick("ve_fild");
F29: Restrict("Pre-RE",5,10);
setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
Disp("Juno Field",1,12); Pick("yuno_fild");
// --------------------------------------------------
Dungeons:
// --------------------------------------------------
@d = true;
menu "Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3,
"Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bifrost Tower",D42,
"Bio Labs",D6, "Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9,
"Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, "Dewata Dungeon",D13,
"Einbroch Dungeon",D14, "Gefenia",D15, "Geffen Dungeon",D16,
"Glast Heim",D17, "Kunlun Dungeon",D18, "Hidden Dungeon",D19,
"Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Lasagna Dungeon",D23,
"Luoyang Dungeon",D24, "Magma Dungeon",D25, "Malangdo Dungeon",D26,
"Moscovia Dungeon",D27, "Nidhogg's Dungeon",D28, "Odin Temple",D29,
"Orc Dungeon",D30, "Payon Dungeon",D31, "Pyramids",D32, "Rachel Sanctuary",D33,
"Scaraba Hole",D34, "Sphinx",D35, "Sunken Ship",D36, "Thanatos Tower",D37,
"Thor Volcano",D38, "Toy Factory",D39, "Turtle Dungeon",D40, "Umbala Dungeon",D41;
menu "Abandoned Lab Amicitia",D1, "Abyss Lakes",D2, "Amatsu Dungeon",D3,
"Anthell",D4, "Ayothaya Dungeon",D5, "Beach Dungeon",D6,
"Bifrost Tower",D7, "Bio Labs",D8, "Brasilis Dungeon",D9,
"Byalan Dungeon",D10, "Clock Tower",D11, "Coal Mines",D12,
"Culvert",D13, "Cursed Abbey",D14, "Dewata Dungeon",D15,
"Einbroch Dungeon",D16, "Flame Basin",D17, "Gefenia",D18,
"Geffen Dungeon",D19, "Glast Heim",D20, "Hidden Dungeon",D21,
"Ice Dungeon",D22, "Illusion Dungeon",D23, "Issgard Dungeon",D24,
"Juperos",D25, "Kiel Dungeon",D26, "Kunlun Dungeon",D27,
"Lasagna Dungeon",D28, "Luoyang Dungeon",D29, "Magma Dungeon",D30,
"Malangdo Dungeon",D31, "Moscovia Dungeon",D32, "Nidhogg's Dungeon",D33,
"Niflheim Dungeon",D34, "Odin Temple",D35, "Orc Dungeon",D36,
"Oz Labyrinth Dungeon",D37, "Payon Dungeon",D38, "Prontera Underground",D39,
"Pyramids",D40, "Rachel Sanctuary",D41, "Rock Ridge Dungeon",D42,
"Rudus Dungeon",D43, "Scaraba Hole",D44, "Sphinx",D45,
"Sunken Ship",D46, "Thanatos Tower",D47, "Thor Volcano",D48,
"Toy Factory",D49, "Turtle Dungeon",D50, "Umbala Dungeon",D51,
"Varmundt's Dungeon",D52, "Verus Area",D53;
D1: setarray @c[2],261,272,275,270,116,27;
Disp("Abyss Lakes",1,3); Pick("abyss_");
D2: setarray @c[2],228,11,34,41,119,14;
D1: Restrict("RE");
setarray @c[2],253,244,145,278;
Disp("1st Floor - Comprehensive Lab:2nd Floor - Intensive Culture Room"); Pick("","amicitia1","amicitia2");
D2: Restrict("RE",4);
setarray @c[2],261,272,275,270,116,27,169,159;
Disp("Abyss Lakes",1,4); Pick("abyss_");
D3: setarray @c[2],228,11,34,41,119,14;
Disp("Amatsu Dungeon",1,3); Pick("ama_dun");
D3: setarray @c[2],35,262,168,170;
D4: setarray @c[2],35,262,168,170;
Disp("Anthell",1,2); Pick("anthell");
D4: setarray @c[2],275,19,24,26;
D5: setarray @c[2],275,19,24,26;
Disp("Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun");
D5: setarray @c[2],266,67,255,244,23,260;
D6: setarray @c[2],266,67,255,244,23,260;
Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3");
D6: Restrict("RE",4);
setarray @c[2],150,288,150,18,140,134,244,52;
Disp("Bio Lab",1,4); Pick("lhz_dun");
D7: Restrict("RE");
setarray @c[2],57,13,64,88,45,14,26,23;
Disp("Bifrost Tower",1,4); Pick("ecl_tdun");
D8: Restrict("RE",4,5);
setarray @c[2],150,288,150,18,140,134,244,52,100,202;
Disp("Bio Lab 1:Bio Lab 2:Bio Lab 3:Bio Lab 4:Tomb of the Fallen"); Pick("","lhz_dun01","lhz_dun02","lhz_dun03","lhz_dun04","lhz_dun_n");
D9: Restrict("RE");
setarray @c[2],87,47,262,262;
Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
D8: Restrict("RE",6);
setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
D9: setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74;
Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4");
Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04");
D10: setarray @c[2],52,17,381,343,302,262;
D10: Restrict("RE",6);
setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
D11: Restrict("RE",9,10,11);
setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74,266,27,60,142,79,39;
Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4:Nightmare Clock Tower, 2nd Floor:Nightmare Clock Tower, 3rd Floor:Unknown Basement");
Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04","c_tower2_","c_tower3_","clock_01");
D12: setarray @c[2],52,17,381,343,302,262;
Disp("Coal Mines",1,3); Pick("mjo_dun");
D11: setarray @c[2],131,247,19,19,180,169,100,92;
D13: setarray @c[2],131,247,19,19,180,169,100,92;
Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4");
D12: setarray @c[2],51,14,150,11,120,10;
D14: setarray @c[2],51,14,150,11,120,10;
Disp("Cursed Abbey",1,3); Pick("abbey");
D13: Restrict("RE");
D15: Restrict("RE");
setarray @c[2],285,160,299,29;
Disp("Dewata Dungeon",1,2); Pick("dew_dun");
D14: setarray @c[2],22,14,292,290;
Disp("Einbroch Dungeon",1,2); Pick("ein_dun");
D15: setarray @c[2],40,103,203,34,266,168,130,272;
D16: Restrict("RE",3);
setarray @c[2],22,14,292,290,269,279;
Disp("Einbroch Dungeon",1,3); Pick("ein_dun");
D17: Restrict("RE");
Go("moro_vol",97,107);
D18: setarray @c[2],40,103,203,34,266,168,130,272;
Disp("Gefenia",1,4); Pick("gefenia",0);
D16: setarray @c[0],104,99,115,236,106,132,203,200;
D19: setarray @c[0],104,99,115,236,106,132,203,200;
Disp("Geffen Dungeon",1,4); Pick("gef_dun",1);
D17: setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14;
Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2");
Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1");
D18: setarray @c[2],153,53,28,113,68,16;
Disp("Kunlun Dungeon",1,3); Pick("gon_dun");
D19: setarray @c[2],176,7,93,20,23,8;
D20: Restrict("RE",17,18,19);
setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14,104,31,148,144,199,29;
Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2:Castle 2 - Nightmare Mode:Churchyard - Nightmare Mode:Abyss Glastheim Castle F1");
Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1","gl_cas02_","gl_chyard_","gl_cas01_");
D21: setarray @c[2],99,31,93,20,182,88;
Disp("Hidden Dungeon",1,3); Pick("prt_maze");
D20: setarray @c[2],157,14,151,155,149,22,33,158;
D22: setarray @c[2],157,14,151,155,149,22,33,158;
Disp("Ice Dungeon",1,4); Pick("ice_dun");
D21: setarray @c[2],140,51,53,247,37,63,150,285;
Disp("Entrance:Juperos 1:Juperos 2:Core");
Pick("","jupe_cave","juperos_01","juperos_02","jupe_core");
D22: setarray @c[2],28,226,41,198;
D23: menu "Illusion of Abyss",SubD1, "Illusion of Frozen",SubD2, "Illusion of Labyrinth",SubD3,
"Illusion of Luanda",SubD4, "Illusion of Moonlight",SubD5, "Illusion of Teddy Bear",SubD6,
"Illusion of Twins",SubD7, "Illusion of Underwater",SubD8, "Illusion of Vampire",SubD9;
SubD1: Restrict("RE");
setarray @c[2],132,189,100,192;
Disp("Desolate Village:Bleak Turtle Palace"); Pick("","tur_d03_i","tur_d04_i");
SubD2: Restrict("RE");
Go("ice_d03_i",149,22);
SubD3: Restrict("RE");
Go("prt_mz03_i",100,100);
SubD4: Restrict("RE");
Go("com_d02_i",250,245);
SubD5: Restrict("RE");
Go("pay_d03_i",140,44);
SubD6: Restrict("RE");
Go("ein_d02_i",164,184);
SubD7: Restrict("RE");
Go("ant_d02_i",168,170);
SubD8: Restrict("RE");
setarray @c[2],130,230,141,188;
Disp("Deep Sea Cave",1,2); Pick("","iz_d04_i","iz_d05_i");
SubD9: Restrict("RE");
Go("gef_d01_i",114,216);
D24: Restrict("RE");
setarray @c[2],112,15,280,87,112,12,274,85;
Disp("Abandoned Pit Floor 1:Abandoned Pit Floor 2:Snake God's Warmth 1st Floor:Snake God's Warmth 2nd Floor"); Pick("","jor_ab01","jor_ab02","jor_dun01","jor_dun02");
D25: Restrict("RE",5);
setarray @c[2],140,51,53,247,37,63,150,285,146,215;
Disp("Entrance:Juperos 1:Juperos 2:Core:Eastern Ruins of Juperos");
Pick("","jupe_cave","juperos_01","juperos_02","jupe_core","ver_eju");
D26: setarray @c[2],28,226,41,198;
Disp("Kiel Dungeon",1,2); Pick("kh_dun");
D23: Restrict("RE");
D27: setarray @c[2],153,53,28,113,68,16;
Disp("Kunlun Dungeon",1,3); Pick("gon_dun");
D28: Restrict("RE");
setarray @c[2],24,143,22,171,190,18;
Disp("Lasagna Dungeon",1,3); Pick("lasa_dun");
D24: setarray @c[2],218,196,282,20,165,38;
D29: setarray @c[2],218,196,282,20,165,38;
Disp("The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun");
D25: setarray @c[2],126,68,47,30;
Disp("Magma Dungeon",1,2); Pick("mag_dun");
D26: Restrict("RE");
D30: Restrict("RE",3);
setarray @c[2],126,68,47,30,118,113;
Disp("Magma Dungeon",1,3); Pick("mag_dun");
D31: Restrict("RE");
setarray @c[2],33,230;
Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
D27: setarray @c[2],189,48,165,30,32,135;
D32: setarray @c[2],189,48,165,30,32,135;
Disp("Moscovia Dungeon",1,3); Pick("mosk_dun");
D28: setarray @c[2],61,239,60,271;
D33: setarray @c[2],61,239,60,271;
Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun");
D29: setarray @c[2],298,167,224,149,266,280;
Disp("Odin Temple",1,3); Pick("odin_tem");
D30: setarray @c[2],32,170,21,185;
D34: Restrict("RE");
setarray @c[2],145,90,150,20;
Disp("Niflheim Dungeon - 1st Floor:Niflheim Dungeon - 2nd Floor"); Pick("nif_dun");
D35: Restrict("RE",4);
setarray @c[2],298,167,224,149,266,280,276,236;
Disp("Odin Temple 1:Odin Temple 2:Odin Temple 3:Odin Past"); Pick("","odin_tem01","odin_tem02","odin_tem03","odin_past");
D36: setarray @c[2],32,170,21,185;
Disp("Orc Dungeon",1,2); Pick("orcsdun");
D31: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
D37: Restrict("RE");
setarray @c[2],21,191,141,277;
Disp("Oz Labyrinth Floor 1:Oz Labyrinth Floor 2"); Pick("oz_dun");
D38: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
Disp("Payon Dungeon",1,5); Pick("pay_dun",1);
D32: Restrict("RE",7,8);
D39: Restrict("RE");
setarray @c[2],159,289,155,353;
Disp("Prontera Underground Prison:Prontera Invasion"); Pick("","prt_prison","prt_q");
D40: Restrict("RE",7,8);
setarray @c[2],192,9,10,192,100,92,181,11,94,96,192,8,94,96,192,8;
Disp("Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2:Basement 1 - Nightmare Mode:Basement 2 - Nightmare Mode");
Pick("","moc_pryd01","moc_pryd02","moc_pryd03","moc_pryd04","moc_pryd05","moc_pryd06","moc_prydn1","moc_prydn2");
D33: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
D41: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
Disp("Rachel Sanctuary",1,5); Pick("ra_san");
D34: Restrict("RE");
setarray @c[2],364,44,101,141;
Disp("Scaraba Hole",1,2); Pick("dic_dun");
D35: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
D42: Restrict("RE");
setarray @c[2],247,19,281,104;
Disp("Rock Ridge Mine:Underground Waterway Culvert"); Pick("","rockmi1","harboro2");
D43: Restrict("RE");
setarray @c[2],200,377,185,258,366,207,378,178;
Disp("Rudus Dungeon",1,4); Pick("","sp_rudus","sp_rudus2","sp_rudus3","sp_rudus4");
D44: Restrict("RE");
setarray @c[2],364,44,101,141,101,141;
Disp("Scaraba Hole",1,3); Pick("dic_dun");
D45: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5");
D36: setarray @c[2],69,24,102,27;
D46: setarray @c[2],69,24,102,27;
Disp("Sunken Ship",1,2); Pick("treasure");
D37: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
D47: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
Disp("Thanatos Tower",1,12); Pick("tha_t");
D38: setarray @c[2],21,228,75,205,34,272;
D48: setarray @c[2],21,228,75,205,34,272;
Disp("Thor Volcano",1,3); Pick("thor_v");
D39: setarray @c[2],205,15,129,133;
D49: setarray @c[2],205,15,129,133;
Disp("Toy Factory",1,2); Pick("xmas_dun");
D40: setarray @c[2],154,49,148,261,132,189,100,192;
D50: setarray @c[2],154,49,148,261,132,189,100,192;
Disp("Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun");
D41: Restrict("Pre-RE",1,2);
D51: Restrict("Pre-RE",1,2);
setarray @c[2],42,31,48,30,204,78;
Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
Pick("","um_dun01","um_dun02","yggdrasil01");
D42: Restrict("RE");
setarray @c[2],57,13,64,88,45,14,26,23;
Disp("Bifrost Tower",1,4); Pick("ecl_tdun");
D52: Restrict("RE");
setarray @c[2],275,21,15,115,15,115,159,27,162,36,159,11,156,33,337,333,314,64,163,18,156,20,39,81;
Disp("Sewage Treatment Plant:1st Power Plant:2nd Power Plant:Large Bath Meditathio:Lost Farm Valley:Library Memory Corridor:Upper Floor of Tartaros Storage:Lower Floor of Tartaros Storage:Death Rune:Fire Rune:Grass Rune:Ice Rune"); Pick("","ba_pw02","ba_pw01","ba_pw03","ba_bath","ba_lost","ba_lib","ba_2whs01","ba_2whs02","bl_death","bl_lava","bl_grass","bl_ice");
D53: Restrict("RE");
setarray @c[2],244,61,72,20,122,22;
Disp("Lab-OPTATIO:R&D-WISH:Verus Center Square"); Pick("verus");
// --------------------------------------------------
Castles:

View File

@@ -53,7 +53,7 @@ L_SORRY:
M_FIN:
mes "[Exorcist Master Fahae]";
mes "The path of fully venquishing evil is far, help me in the way of God.";
mes "The path of fully vanquishing evil is far, help me in the way of God.";
close;
M_HERB:

View File

@@ -25,7 +25,7 @@ OnAgitInit2:
// starting time checks
if((gettime(DT_DAYOFWEEK)==TUESDAY) && (gettime(DT_HOUR)>=18 && gettime(DT_HOUR)<21) ||
(gettime(DT_DAYOFWEEK)==THURSDAY) && (gettime(DT_HOUR)>=18 && gettime(DT_HOUR)<21) ||
(gettime(DT_DAYOFWEEK)==SATURDAY) && (gettime(DT_HOUR)>=22 && gettime(DT_HOUR)<23)) {
(gettime(DT_DAYOFWEEK)==SATURDAY) && (gettime(DT_HOUR)>=21 && gettime(DT_HOUR)<23)) {
if (!agitcheck2()) {
AgitStart2;
}

View File

@@ -0,0 +1,27 @@
//===== rAthena Script =======================================
//= Mapflag: No dynamic NPC map setting.
//===== Description: =========================================
//= Blocks the use of dynamic NPCs on a map.
//===== Additional Comments: =================================
//= 1.0 Initial script. [Lemongrass]
//============================================================
// Endless Tower
1@tower mapflag nodynamicnpc
2@tower mapflag nodynamicnpc
3@tower mapflag nodynamicnpc
4@tower mapflag nodynamicnpc
5@tower mapflag nodynamicnpc
6@tower mapflag nodynamicnpc
// Sealed Catacomb
1@cata mapflag nodynamicnpc
2@cata mapflag nodynamicnpc
// Orc's Memory
1@orcs mapflag nodynamicnpc
2@orcs mapflag nodynamicnpc
// Nidhoggur's Nest
1@nyd mapflag nodynamicnpc
2@nyd mapflag nodynamicnpc

View File

@@ -1,125 +0,0 @@
//===== rAthena Script =======================================
//= Cash Hair Stylist
//===== By: ==================================================
//= Kisuka
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Exchange cash item, New_Style_Coupon, for new hair styles.
//===== Additional Comments: =================================
//= 1.0 First Version. [Kisuka]
//============================================================
itemmall,19,74,5 script Stylist#cash 91,{
mes "[Stylist]";
mes "Hey, I'm Kaniki.";
mes "I'm here to start a new";
mes "trend by introducing my";
mes "special new hairstyles!";
mes "Give me a ^FF0000New Style Coupon^000000,";
mes "and I'll change your hair~";
next;
if (Sex == SEX_MALE) {
mes "[Kaniki]";
mes "I have two special";
mes "hairstyles for men, the";
mes "Emergency Heal Perm";
mes "and the Aura Blade Cut.";
mes "and aura blade cut.";
next;
cutin "hair_m_24.bmp",4;
mes "[Kaniki]";
mes "This is the Emergency";
mes "Heal Perm. It's a brand";
mes "new style I invented recently.";
mes "What do you think? Cool, huh?";
next;
cutin "",255;
cutin "hair_m_25.bmp",4;
mes "[Kaniki]";
mes "Now this is the Aura";
mes "Blade Cut. You haven't";
mes "seen anything like it";
mes "before, haven't you?";
next;
cutin "",255;
}else{
mes "[Kaniki]";
mes "I have two new hairstyles for";
mes "women, the Assumptio Perm";
mes "and the Soul Changer Cut.";
mes "Do you want to see how";
mes "these styles look?";
next;
cutin "hair_f_24.bmp",4;
mes "[Kaniki]";
mes "This is the Assumptio";
mes "Perm. It'd really good";
mes "on you, wouldn't it?";
next;
cutin "",255;
cutin "hair_f_25.bmp",4;
mes "[Kaniki]";
mes "Next is the Soul";
mes "Changer Cut. What do";
mes "you think? Isn't it nice?";
next;
cutin "",255;
}
mes "[Kaniki]";
mes "Have you decided";
mes "if you'd like me to";
mes "change your hairstyle?";
next;
if(select("Change Hairstyle:Don't Change") == 1) {
if (countitem(7622) > 0) {
mes "[Kaniki]";
mes "Great, you brought";
mes "a New Style Coupon!";
mes "Alright, which hairstyle";
mes "did you want to have?";
next;
if (Sex == SEX_MALE) {
if(select("Emergency Heal Perm:Aura Blade Cut") == 1) {
delitem 7622,1; // New_Style_Coupon
setlook 1,24;
}else{
delitem 7622,1; // New_Style_Coupon
setlook 1,25;
}
}else{
if(select("Assumptio Perm:Soul Changer Cut") == 1) {
delitem 7622,1; // New_Style_Coupon
setlook 1,24;
}else{
delitem 7622,1; // New_Style_Coupon
setlook 1,25;
}
}
mes "[Kaniki]";
mes "There--! It's done!";
mes "How do you like your";
mes "new hair? Well, I hope";
mes "to see you again. Take care!";
close;
}else{
mes "[Kaniki]";
mes "I'm sorry, but I can";
mes "only provide my hairstyling";
mes "service if you bring a New";
mes "Style Coupon. Please come";
mes "back to me after you manage to";
mes "get one of those coupons, okay?";
close;
}
}
mes "[Kaniki]";
mes "Really? Oh, that's too bad.";
mes "Well, if you ever change your";
mes "mind about updating your";
mes "hairstyle, come back";
mes "and let me know, okay?";
close;
}

View File

@@ -171,7 +171,6 @@ lhz_in02,286,95,4 shop Beginner's Merchant#lhz 62,5112:-1,2416:-1,2113:-1,2512:-
lhz_in02,271,99,5 shop Armor Dealer#lhz 851,2101:-1,2103:-1,2403:-1,2405:-1,2503:-1,2321:-1,2314:-1,2309:-1,2335:-1,2628:-1
lhz_in02,276,99,4 shop Weapon Dealer#lhz 851,1201:-1,1207:-1,1216:-1,1107:-1,1122:-1,1116:-1,1154:-1,1407:-1,1457:-1,1354:-1,1519:-1,13003:-1
lhz_in02,273,35,4 shop Wand Dealer#lhz 854,1601:-1,1604:-1,1607:-1,1617:-1,1619:-1
lhz_in02,105,21,3 shop Jeweler#lhz 91,721:-1,723:-1,726:-1,728:-1,729:-1,730:-1,2613:-1
lhz_in02,17,220,5 shop Vegetable Gardener#lhz2 91,515:-1,516:-1,535:-1
lhz_in02,21,220,5 shop Fruit Gardener#lhz2 102,512:-1,513:-1
lhz_in02,32,219,5 shop Butcher#lhz 54,517:-1
@@ -205,8 +204,6 @@ xmas_in,174,98,2 shop Weapon Dealer#xmas 49,1201:-1,1204:-1,1207:-1,1210:-1,1213
in_moc_16,22,20,7 shop Sepulchral Merchant#moc 880,1771:-1
moc_ruins,93,53,2 shop Item Collector#moc1 85,911:-1,528:-1,919:-1,925:-1
moc_ruins,81,113,0 shop Item Collector#moc2 85,911:-1,528:-1,919:-1,925:-1
moc_ruins,110,105,2 shop Jeweler#moc1 102,721:-1,723:-1,726:-1,728:-1,729:-1
moc_ruins,52,85,6 shop Jeweler#moc2 99,730:-1,2613:-1
moc_ruins,113,126,4 shop Trader#moc1 99,747:-1
moc_ruins,131,138,0 shop Trader#moc2 93,748:-1
moc_ruins,71,139,5 shop Trader#moc3 93,2612:-1

Some files were not shown because too many files have changed in this diff Show More