236 Commits

Author SHA1 Message Date
Aleos
6bc0dff20d
Converts Job databases to YAML (#4759)
* Converts the job_db, job_db2, job_basehpsp_db, job_exp, and job_param_db to YAML.
* Optimizes several places utilizing C++ features.
* Removes 3rd class job data from pre-renewal.
* Adds minimal support for 4th jobs.
* Job level bonus stats now supports multiple bonuses per level as well as an integer for the specific stat instead of only being limited to 1.
* Includes CSV2YAML converter.
Thanks to @Lemongrass3110, @Atemo, @Balferian, @attackjom, @dimasshotta!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-11-17 16:13:07 -05:00
Lemongrass3110
22c7f3988d
Yet another autospell fix (#6341)
Fixes #6337

Hopefully this was all now.

Thanks to @renniw
2021-11-02 23:41:19 +01:00
Atemo
5933ab8304
Temple of the demon god instance (#5611)
* Implemented Temple of the Demong God instance
Implemented the skills NPC_WIDEWEB, NPC_WIDESUCK and NPC_FIRESTORM from https://github.com/idathena/trunk
Credit to @exneval

Thanks to @Badarosk0 @idk-whoami @Everade @aleos89
2021-10-26 18:21:12 +00:00
Atemo
3abc86e02d
Wave mode instances - walkthrough conversions (#3884)
* Wave mode instances - walkthrough conversions

* NPC_EMOTION and NPC_EMOTION_ON disrupted the walking system and have been restricted on the maps.
* Implemented AI_SPECIALs. AI and normal monsters can naturally fight each others. However monsters with AI_SPECIAL can't be hit by normal monsters.

* Implemented mob_setidleevent command.
`mob_setidleevent <GID>,<event>;`
This command will attach an event label to the monster with the given <GID> which will execute when the <GID> is idle.

* Added parameters to unitskilluseid and unitskillusepos
-- `<cancel>`: define if the skill can be interrupted when hit (by default the cancel value was 'castcancel' from skill_db.txt)
-- `<Line_ID>` : the monster will say the message from 'Line_ID' in mob_chat_db.yml when casting the skill

* Added `UMOB_IGNORE_CELL_STACK_LIMIT` for setunitdata/getunitdata script command.
When true, the monster will ignore the stack limit (max number of characters that can stack within a single cell) defined by 'official_cell_stack_limit' in misc.conf

* The script is disabled by default like on KRO

Thanks to @Lemongrass3110 @aleos89 @Badarosk0 @sigtus @Questune09 !
2021-10-26 14:56:47 +02:00
Lemongrass3110
d54076d2f6
Added some additional SP heal bonuses (#6292)
Fixes #6076

Thanks to @idk-whoami and @Atemo
2021-10-10 11:17:41 +02:00
Lemongrass3110
f9d4eeb4a1
Added a mapflag to block RODEX (#6291)
Fixes #6286

Thanks to @gabrieldosprazeres
2021-10-06 10:00:40 +02:00
Aleos
aa18fb0c2d
Adds MF_NOCASHSHOP (#6279)
* Fixes #5903.
* Adds a new mapflag to disable the Cash Shop on specified maps.
Thanks to @cahya1992's suggestion!
2021-10-02 16:36:07 -04:00
Lemongrass3110
cdce54ac0a
Synced mobs and effects from divine pride (#6244) 2021-09-08 17:25:10 +02:00
Atemo
fe7cb5a33f
Converted const.txt to YAML (#6187)
* Converts the Constant Tables file into YAML.
* Includes CSV2YAML converter.

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-08-27 23:54:31 +02:00
NotKappa
19ef916f6e
Update Hateffect (#6200)
Added latest kRO and jRO hateffects

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-08-18 11:34:02 +00:00
Aleos
7e2a85a578
Updates the behavior of Stasis (#6196)
* Fixes #6071.
* Updates the behavior of Stasis to block Songs, Ensembles, Choruses, and magic type skills.
* Removes the INF2_IGNORESTASIS flag as it doesn't effectively fit it's purpose anymore.
Thanks to @Felleonel!
2021-08-17 15:44:32 -04:00
Aleos
a93daa0c6f
Properly implements Soul Attack (#6126)
* Fixes #6095.
* Proper implementation of Soul Attack for Doram.
* Adds the missing client EFST when learning the skill.
* Fixes the behavior so that skills that block or reduce ranged attacks are properly taken into account.
Thanks to @Everade!
2021-08-10 10:44:49 -04:00
Atemo
f185b57f21
Implemented the item group IG_XMAS_PACKAGE_14, IG_EASTER_EGG and IG_PITAPAT_BOX (#6121)
* Implemented
IG_XMAS_PACKAGE_14
IG_EASTER_EGG
IG_PITAPAT_BOX
from Aegis data
2021-07-31 14:31:04 +02:00
idk-whoami
993f929516
Updated enchant costumes box (#6026)
* Fixed price buy
2021-06-21 15:19:53 +02:00
Atemo
9322f67002
Converted mob_boss to yaml (#6011)
* Converts the Monster summon group Database into YAML. (mob_boss.txt, mob_branch.txt, mob_classchange.txt, mob_poring.txt, mob_mission.txt, mob_pouch.txt, mob_random_db.txt)
* Includes CSV2YAML converter.

Thanks to @Lemongrass3110 !
2021-06-12 21:52:45 +02:00
Lemongrass3110
755f912c55 Exporting AG_NONE to script engine
Fixes assignment of group None in the achievement database

Thanks to @Everade
2021-05-25 23:50:33 +02:00
Atemo
7a2c936913
Implemented status change for Packing_Envelope item (#5959)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>

Thanks to @limitro !
2021-05-23 18:34:27 +02:00
Aleos
3d4021bfc6
Job Improvement Bundle patch (#5517)
* Updates various skills following kRO's job improvement patch.
* Change log: https://ro.gnjoy.com/news/notice/View.asp?BBSMode=10001&seq=7275&curpage=2
* Does not include changes to homunculus HP/SP level up bonuses as more information is required.
Thanks to @ecdarreola, @attackjom, @Haydrich, @rye305, @eppc0330, @Badarosk0, and @Lemongrass3110!
2021-05-07 08:23:42 -04:00
Atemo
a38501fef6
Updated enchant costumes box (#5874)
* Moved costumes box in item_package.txt
* Added box ENCHANT_STONE_BOX 16 to 21
2021-04-19 16:13:57 +02:00
Lemongrass3110
1a8cfbffc0
Initial release of the refine UI (#2494)
Overhaul of the refine database
Added blacksmith blessing to existing NPCs.

Thanks to @Atemo, @aleos89, @cydh and everyone who tested it.

Co-authored-by: Atemo <capucrath@gmail.com>
2021-04-11 00:05:15 +02:00
Atemo
e4c0660190
Suggestion getiteminfo script command update (#5819)
* Extend the functionality of getiteminfo script command to retrieve the item ID/Aegis item name
* Added constants
* Updated setiteminfo
2021-04-04 23:55:55 +02:00
Atemo
95c671a95d
Initial release of Sky Fortress Invasion Instance (Official Conversion) (#3586)
* Implemented skills
NPC_HALLUCINATIONWALK
NPC_POISON_BUSTER
NPC_CLOUD_KILL
NPC_IGNITIONBREAK
NPC_PHANTOMTHRUST
NPC_FIREWALK
NPC_ELECTRICWALK

Thanks to @aleos89 @Lemongrass3110 @Angelic234 @Latiosu @Akaineko-astasi !
2021-03-08 15:12:40 +01:00
Aleos
5aa9f75343
Cleaned up remaining TODO for Achievements (#4446)
* Converts labels to camelCase.
* Converts labels to plural where needed.
* Converts Target MobID to use the Sprite name.
* Converts Rewards ItemID to use the Aegis name.
* Dependents now checks for duplicate IDs.
* Dependents now properly supports import methods.
* Added YAMLUpgrade tool to convert previous YAML databases to new format.
* Removes the unique index value for Dependent Achievement ID.
* Adds support for the AG_CHATTING achievement types triggered by script (achievementupdate script command).
* AG_CHATTING map type achievements are still disabled as behavior is unknown.
* AG_HEAR and AG_SEE are now dropped and those achievements have been converted to AG_CHATTING.
* Converts the group constants to how Aegis names them.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-02-17 18:01:11 -05:00
Aleos
7992e0891b
Converts the mob database to YAML (#5435)
* Combines mob_race2 and mob_drop databases into one.
* General cleanups and optimizations.
* Includes CSV2YAML conversion tool.
Thanks to @vstumpf, @lukasrmattos, and @Lemongrass3110!
2021-02-16 17:09:06 -05:00
Aleos
f10de84ea3
Fixes Gate of Hell behavior (#5267)
* Fixes #3259.
* Fixes SP damage bonus for levels 1-4 being too low caused by a rounding issue.
* Gate of Hell is no longer reduced by long range modifiers.
* Fixes the HP/SP damage for statusAtk and masteryAtk to properly apply the NK_IGNOREELEMENT flag when checking target players. This subsequently applies to all skills.
* Adds a new NK flag to remove any hard coded skills that can ignore long range attack modifiers from the caster's side.
Thanks to @Tokeiburu and @exneval!
2021-02-05 12:37:07 -05:00
Aleos
c36f6b820f
Adds support for new Madogear appearance (#5081)
* Fixes #4524.
* Adds support for the new slimmer Madogear suit.
* Adjusts script command setmadogear to support changing to this type.
* Adjusts atcommand mount to support changing to this type.
* Removes a 3rd class check from setoption for Rangers and Mechanics.
* Removes status_calc_pc call from pc_setoption so that it can be handled via normal status change calculations.
* Adds Mado_Box02 item for Mado Suit.
Thanks to @admkakaroto, @Atemo and @Lemongrass3110!
2021-02-01 16:09:24 -05:00
Lemongrass3110
47d68286b5 Added some new constants and placeholders 2021-01-28 01:09:23 +01:00
Eric Liu
e4a9a2e4bc
Add missing Overseas Care Package items (#5687) 2021-01-24 15:52:11 +01:00
Aleos
d4d8130bcf
Adds item bonus bReduceDamageReturn (#5601)
* Fixes #5488.
* Adds item bonus bReduceDamageReturn which reduces melee, ranged, and magic reflected damage.
Thanks to @Atemo!
2020-12-07 08:50:26 -05:00
Aleos
2d97ece2a2
Implements new guild skills (#5192)
* Fixes #4183.
* Adds 3 new guild skills: GD_CHARGESHOUT_FLAG, GD_CHARGESHOUT_BEATING, and GD_EMERGENCY_MOVE
* Changes 5 minute guild global cooldown to be 3 minute individual cooldowns for GD_RESTORE, GD_REGENERATION, GD_BATTLEORDER, GD_EMERGENCYCALL, and GD_ITEMEMERGENCYCALL.
* Reduces GD_RESTORE fixed cast time from 10 seconds to 1.
2020-11-28 17:16:22 -05:00
Balfear
071990ebc0
Update droplight effects (#5563)
Fixes #5547

Co-authored-by: Daegaladh <Daegaladh@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-11-22 00:16:40 +01:00
Lemongrass3110
81e7d8ef89
Converted penalty db to YAML (#5562)
Fixes #5463

Added penalty for MVP exp and MVP drops
Removed penalty support for monster classes

Thanks to @attackjom and @aleos89
2020-11-21 01:05:07 +01:00
Atemo
3cddbd0487
Added ALL_THIRD, All_Upper, All_Baby, Both_Accessory, Both_Hand field (item_db.yml) (#5535)
* Updated the DB

Thanks to @Lemongrass3110 !
2020-11-19 16:03:27 +01:00
Aleos
be9babee32
Converts the random option databases to YAML (#5494)
* Fixes #3084.
* Creating random option groups now further reflects official behavior.
* Group bonuses can now be created without having to create multiple permutations of the same group.
* Specific slot options can now be defined which guarantee a bonus.
* Non-guaranteed options can now be defined along with a maximum amount.
* Random option value can now be defined as a range instead of a static value.
* Adds conversion of official random option groups.
* Includes CSV2YAML conversion tool.
Thanks to @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-11-08 12:21:52 -05:00
Aleos
04cfe17b2b
Converted item database to YAML (#4335)
* Combines item_avail, item_buyingstore, item_delay, item_flag, item_nouse, item_stack, and item_trade databases into one.
* General cleanups and optimizations.
* Includes CSV2YAML conversion tool.
* Includes YAML2SQL conversion tool.
* Adjusts dummy_item from being created by malloc and now creates it by make_shared.
* Item combos are now stored as a STL.
Thanks to @Lemongrass3110, @Atemo, and @cydh!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-10-21 19:02:11 -04:00
Lemongrass3110
f4f2f886d1
Hat Effect Update (#5442) 2020-10-11 17:21:40 +02:00
Lemongrass3110
0d2154b0fb
Effect State Update (#5440) 2020-10-10 10:02:30 +02:00
Lemongrass3110
d4c018cd90
Mob and NPC Identity Update (#5441) 2020-10-09 14:44:59 +02:00
Atemo
07cac123a9
Terra Gloria (episode 16.2) - walkthrough conversion (#3990)
* Updated monsters DB (data from aegis and DP)
* Updated item_db (data from aegis and DP)
* Updated quest_db, thanks to @zackdreaver for the quests names !
* Implemented SC_EP16_2_BUFF_SS, SC_EP16_2_BUFF_SC, SC_EP16_2_BUFF_AC buff, thanks to @aleos89 !
** Not removed on change map
** Not removed on log out
** Not removed by dispell/clearance/Vanishing Buster
** Removed on death
* SQL synchronisation

Thanks to @Badarosk0, @attackjom, @admkakaroto, @JohnnyPlayy, @Angelic234, @teededung for the reviews/contributions !
2020-08-29 00:33:28 +02:00
Aleos
53e7f59f48
Adjusts NPC_EARTHQUAKE behavior (#5017)
* Fixes #1679 and fixes #3176.
* Converts the skill to a unit-based skill.
* Damage is now properly calculated based on the caster's ATK.
* Damage is considered magic with the element forced to Neutral.
* Now ignores target's DEF and Land Protector.
* Kaupe and Tumbling now can avoid the first attack only.
* Removed old bits of the skill.
Thanks to @poporing, @mrjnumber1, @Daegaladh, @malufett, and @exneval!
2020-08-06 15:21:20 -04:00
Cydh Ramdh
b898c9bc29
Added "bonus2 bMagicSubDefEle,e,x;" (#4375)
* "+x% magic damage reduction from enemy with defense element e"
* Corrected random option script: RDMOPT_MDAMAGE_PROPERTY_element_USER
* Fixes #1706: Fire Golem Card (27029)
* Corrected Books of Apocalypse (1557) script
* Applied bMagicSubDefEle bonus to some items
2020-08-04 11:04:30 -04:00
rAthenaAPI
faadc80042 Effect State Update 2020-07-22 10:05:28 +02:00
Aleos
b13e4f0fbc
Adds support for object groups and titles (#5171)
* Fixes #4529.
* Adds support for applying groups and titles to non-player objects.
* Expands script command setunitdata and getunitdata to support group ID.
* Adds script commands setunittitle and getunittitle.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-07-03 13:25:17 -04:00
Jittapan Pluemsumran
2e04ca98b0
Random options update (#3993)
* Implemented additional random options from official server
Fixed #3988

Thanks to @Stolao @cydh @aleos89
2020-06-30 23:39:40 +02:00
Atemo
96bf3904db
Added the race RC_PLAYER_DORAM (#5132)
* Added RC_PLAYER_DORAM to differentiate summoner race from monster race RC_BRUTE (similiarly to RC_Player_Human and RC_DemiHuman)
* Replaced PC_Player by RC_Player_Human and added a deprecation notice
2020-06-25 20:06:04 +02:00
Aleos
e4e593fbbe
Fixes Ensemble skills behavior (#5014)
* Fixes #4987.
* Ensemble skills apply SC_ENSEMBLEFATIGUE which should disable skill casting and reduces movement speed/ASPD by 30%.
* Applies SC_ENSEMBLEFATIGUE to both the caster and partner.
Thanks to @LordWhiplash!
2020-06-12 10:11:57 -04:00
rAthenaAPI
152b4bd6a3 Mob and NPC Identity Update 2020-06-09 06:00:30 +02:00
Atemo
ee111cdef2
Costume exchange NPC in malangdo (#4839)
* Initial implementation of the costume exchange NPC in malangdo
* Initial implementation of the costume enchant npc 'Aver De Dosh'
* Initial implementation of the costume enchant npc 'Lace La Zard'
* Added the groups box IG_Enchant_Stone_Box (number 5 to 15)
* Updated the aegis item name of the costumes
* Corrected the equipment location of some costumes

Thanks to @RagnaWay, @peney7 and @teededung for the review !
2020-06-08 22:03:48 +02:00
Lemongrass3110
d87ac21986
Added support for skill scale display (#5041)
Fixes #4530

Thanks to @Balferian
2020-06-04 19:53:19 +02:00
rAthenaAPI
e6bffc11fe Effect State Update 2020-05-24 14:05:26 +02:00