8070 Commits

Author SHA1 Message Date
Aleos
0e533fa7ab Revert "Skill DB clean ups" 2015-02-10 09:33:00 -05:00
Playtester
35f8971cee Devotion, Defender, Magnificat and Sitting fixes
- A devoted player will now get the full 5%+15%*level damage reduction of Defender (fixed #234)
- Magnificat will no longer increase HP regen (fixed #275)
- Sitting will now always double the regeneration speed instead of just adding 100% to the regen bonus (i.e. Magnificat + Sitting = quadruple SP regen instead of triple)
2015-02-08 16:28:25 +01:00
Aleos
da081129d5 Merge pull request #264 from rathena/cleanup/skill_db
Skill array clean up
- Changed skill_db array to better memory allocation.
- Reduced MAX_SKILL_LEVEL from 100 to 10 (part of Hercules HerculesWS/Hercules@0f4a50d), also has changes on skill_get checks for skill levels greater than 10.
- Reduced MAX_SKILL from 5020 to 1200 (only 1109 skills are used).
- Added macros for checking Homunculus, Guild, Mercenary, and Elemental skill ranges.
- Added skill check and index validation when player logs in and on use of @reloadskilldb.
- Corrected enum e_skill_flag order for SKILL_FLAG_REPLACED_LV_0's sake.
- Merged 'addtoskill' script command just as alias of 'skill' script command.
Summary:
- Decreased memory usage by map-server up to 50 MB.
- Decreased memory for each player because of mmo_charstatus::skill[] array size from 5020 to 1200.
- Please use skill_get_index() for accessing sd->status.skill[] or skill_db[], don't recklessly use skill_id as array index.
NOTE:
- Please import upgrade_20150131_skillset.sql
2015-02-07 01:12:21 -05:00
Aleos
a427dbf513 Merge pull request #247 from aleos89/hotfix/issue138
Fixed #138 - Updated trap visibility to official settings.
2015-02-07 01:03:47 -05:00
Cydh Ramdh
7357f9c384 Another follow up
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-05 12:11:13 +07:00
Cydh Ramdh
5e58ab6fc9 Follow up 72617ac98b4c40407627fe86e7123a25bfd8a025
* Fixed an error

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-03 12:17:15 +07:00
Cydh Ramdh
148353eed9 Follow up 95705d41bee8d15d50d34c484617790e4aae9b21
* Changed bonus script list to link list
* Merged 'pc_bonus_script_clear_all' to 'pc_bonus_script_clear'
* Now bonus script will be saved on auto-save timer or other save request, prevent losing the bonus when "something" happen. But, saving when player is quiting, will removes the bonus that won't be saved on logout.

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-02-03 11:56:09 +07:00
Cydh Ramdh
72617ac98b Skill DB clean ups
* Changed skill_db array to better memory allocation.
* Reduced MAX_SKILL_LEVEL from 100 to 10 (part of Hercules 0f4a50d135), also has changes on skill_get checks for skill level that more than 10.
* Reduced MAX_SKILL from 5020 to 1200 (actually only 1109 skills are used).
* Added macros for checking Homunculus, Guild, Mercenary, & Elemental skill ranges.
* Added skill check & index validation when player logged in and when @reloadskilldb.
* Corrected `enum e_skill_flag` order for SKILL_FLAG_REPLACED_LV_0's sake.
* Merged 'addtoskill' script command just as alias of 'skill' script command.

Summary:
* Decreased memory usage by map-server reduced up to 50 MB.
* Decreased memory for each player because of mmo_charstatus::skill[] only has 1200 array, before is 5020.
* Please use skill_get_index() for accessing sd->status.skill[] or skill_db[], don't reckless use skill_id as array index.

NOTE:
* Please import upgrade_20150131_skillset.sql

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-31 19:45:52 +07:00
Cydh Ramdh
95705d41be Bonus Script clean up
* Removed fixed array size (MAX_PC_BONUS_SCRIPT) of bonus_script on players.
* Changed fixed script string on player's bonus_script to StringBuf, reduce memory usage for each connected player.
* Added new flags to expand duplicated script and flag to allow duplicate script.
* Reduced buf lenght from 1024 to 512 on bonus_script_data (used for saving/loading bonus_script from char-server). Still, MAX_PC_BONUS_SCRIPT is used to gives limit data can be loaded.

NOTE:
Please import 'upgrade_20150131.sql' for `bonus_script` table changes

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-31 15:07:13 +07:00
Cydh Ramdh
1d275262b6 Quest DB update (core)
* Change quest_db_data[] with fixed array to DBMap *questdb

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-24 11:13:04 +07:00
aleos89
73243e8e9d Fixed #138 - Updated trap visibility to official settings. 2015-01-23 14:39:13 -05:00
aleos89
707403d0b6 Follow up to 7fcacb6. Fixed a compile warning. 2015-01-23 13:44:31 -05:00
aleos89
995af4c667 Merge branch 'master' of https://github.com/rathena/rathena 2015-01-23 13:16:47 -05:00
Cydh Ramdh
38217d023f Merge pull request #209 from rathena/hotfix/issue180
Fixed #180
2015-01-23 23:34:45 +07:00
aleos89
d7d65838b9 Merge branch 'master' of https://github.com/rathena/rathena 2015-01-23 10:18:54 -05:00
RagnarokNova
198d230f2b Update skill.c
Follow-up according to Cydh's comment.
2015-01-23 02:30:53 -08:00
RagnarokNova
e2ae91db0e Made Light of Regene work.
Straight up copied the code from Pyroclastic, as the original skill code for Light of Regen was not applying the status effect to the player. Seems to work just fine, not sure if that second sc_start2 can just be deleted.
2015-01-23 00:33:15 -08:00
RagnarokNova
1cf2dd59c5 Light of Regene
Due to the way the source handles hom intimacy, 251 actually sets intimacy to 2 (Hate with a passion). The two extra 0s make it the appropriate value.
2015-01-23 00:20:36 -08:00
Cydh Ramdh
cdad6e4571 Follow up 1d27de7a35e58d3a71f28057d494366a597a440f
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-23 10:59:38 +07:00
aleos89
48020c4d5c Merge branch 'master' of https://github.com/rathena/rathena 2015-01-21 12:20:00 -05:00
Cydh Ramdh
c32b8e0c09 Merge pull request #229 from rathena/cleanup/itemmaxlv_n_equipitemack
Cleanup item maxlv and clif_equipitemack
2015-01-21 10:29:27 +07:00
Cydh Ramdh
44d599875a Merge pull request #206 from rathena/feature/import-maps
Import support for map data
2015-01-21 10:28:03 +07:00
Cydh Ramdh
3b40780434 Update status.h
Just some source documentation style~
2015-01-20 01:14:00 +07:00
Cydh Ramdh
b47dc0f054 Item DB updates
* Implemented ALL_REVERSEORCISH as follow up 01ae1ae6126dc8aa91f967eea7d145e10dfb29e3.
* Clean up `rand()` script usage in Fools_Day_Box (12396) and Fools_Day_Box2 (12397).

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-18 20:57:42 +07:00
Cydh Ramdh
009e0e3846 Missing md.damage assignment after battle_attr_fix for RENEWAL CR_ACIDDEMONSTRATION in battle_calc_misc_attack since f926d8750aef664abd91404de53c5a5e60d9e16f
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-17 17:59:30 +07:00
Cydh Ramdh
b9f5bca9b1 Follow up fa75733cc109f926b1df4156ccdf1292c78f8f79 typos
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-16 23:38:00 +07:00
aleos89
ee6e47b7c2 Merge branch 'master' of https://github.com/rathena/rathena 2015-01-16 11:22:44 -05:00
Cydh Ramdh
73bd593055 Fixed #219
* Manhole effect (SC__MANHOLE & UNT_MANHOLE) is ignore player's knockback immunity at GVG/BG maps (only if target is BL_PC).

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-16 20:38:26 +07:00
Cydh Ramdh
90f08a4f08 Follow up 5feff01ddd621fd49985e0374bf3fe169ded02f3
* Typo of error message in mob_readdb_itemratio()

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-15 16:53:28 +07:00
Cydh Ramdh
4d97e9adf2 Typo on a683e005d73f37b57e625046168e9f3282131a81
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-15 10:29:08 +07:00
aleos89
907bc6e4b5 Merge branch 'master' of https://github.com/rathena/rathena 2015-01-14 14:37:28 -05:00
Cydh Ramdh
817d6bf800 Multi-client support for clif_equipitemack with packet identifier ZC_WEAR_EQUIP_ACK
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-15 02:07:06 +07:00
Cydh Ramdh
fa75733cc1 Item Max Level clif_equipitemack messages
* Max level to equip item now works for Pre-Renewal too, since the field is optional. 0 means no max level limit.
* Fixed fail message on clif_equipitemack when item cannot be equipped because level limitation

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-15 01:17:54 +07:00
Cydh Ramdh
3037a1b57e Merge pull request #222 from rathena/hotfix/issue204
Fixed #204
2015-01-14 23:25:45 +07:00
Cydh Ramdh
2b90b60142 Fixed #227
* SC_EQC & SC_CBC shouldn't be saved on logout
* Moved additional effect SC_EQC to the proper place

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-14 15:55:42 +07:00
aleos89
6ae8404e4e Merge branch 'cleanup/autotrade_persistance' of https://github.com/rathena/rathena 2015-01-13 13:11:52 -05:00
aleos89
a683e005d7 Merge pull request #197 from rathena/hotfix/bug9338
* Changed Guild/Party Bound Item Retrieval Methods:
- Fixes bugreport:9338
- Now resend the list to map-server from char/inter-server to avoid "weird" item allocation on guild storage. Example, previously you will meet stacked item like GUID does, but it shouldn't!
- Also will check the maximum amount that can be store in guild store. If guild storage is full (the slots or item stack limit is reach) the rest value/item will be dropped.
- Account of kicked guild member won't be kicked from server any more if the player idle on character select window (just prevents player to login when retrieving items are in progress)
- Delete guild bound items from guild master when guild is disbanded! Previously, the bound type just changed to NONE. Also for party bound item.
- If kicked guild/party member is trading bound item when be kicked, the trade will be cancelled!
- If the guild member is being kicked when open guild storage, storage will be closed first waiting for next item retrieval.
- Now when guild storage is opened, storage_status (changed the var to 'opened') will be used to hold char_id who opens it.
* Misc:
- Cleanup guild storage prefix functions, changed them to "gstorage_*"
- Added picklog type 'B' for logging deleted bound item because of kicked from guild/party.
- Updated documentation for new used packet 0x3857
2015-01-13 12:59:19 -05:00
aleos89
4860a7c7c4 Merge pull request #191 from rathena/cleanup/petdb
* Separated pet_db for Renewal & Pre-Renewal to avoid non-existant monster in different mode.
* Cleaned script command in pet_db.txt file, just point it to doc/script_commands.txt. Read them there!
* Separated damage value for petskillattack2 to its own var 'damage', that previously use 'lv' var to store the value.
* Added config 'pet_ignore_infinite_def' in conf/battle/pet.conf,
- If disabled (val:"no"), fixed damage from pet script 'petskillattack2' will be adjusted to 1. Example, just like player attacks Shining Plant.
- Enabled by default. Previously, fixed damage ignore the infinite defense, that's why it's enabled by default.
- TODO: Correcting the logic and maybe also confirm the correct behavior!
* Added validation for pet script commands,
- Skill for petskillattack, petskillattack2, & petskillsupport
- SC range for petrecovery.
* Cleaned up some source documentation.
2015-01-13 12:43:07 -05:00
Cydh Ramdh
e76d92f538 Fixed #220
* SC_FIGHTINGSPIRIT gives no effect for RK_FIGHTINGSPIRIT level < 10
* Fixed RK_FIGHTINGSPIRIT gives no effect if level < 5
* Little optimization on RK_FIGHTINGSPIRIT codes

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-13 12:35:44 +07:00
Lemongrass3110
c222a1ccea Added skill_id to error messages in skill_unit_move_sub 2015-01-12 22:00:22 +01:00
Cydh Ramdh
5196eadb2b Fixed #204
* Separated how monster's skills to be assigned to each monster to `mob_skill_db_set()` function
* Added temporary `DBMap *mob_skill_db` to store monster skills by using `struct s_mob_skill`

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-12 16:34:49 +07:00
Cydh Ramdh
cba366e143 Merge pull request #195 from rathena/hotfix/issue146
Hotfix for issue #146
2015-01-11 00:09:28 +07:00
Lemongrass3110
df16b6e905 follow up
Mapindex now also uses the common variable db_path and the DBIMPORT define
Also removed the global mapindex configuration variable from the header file
2015-01-09 18:12:04 +01:00
Cydh Ramdh
4f1fa38915 Merge pull request #192 from rathena/feature/bindonequip
Official Item BindOnEquip Support
2015-01-09 23:02:08 +07:00
Aleos
d02edae233 Merge pull request #190 from rathena/cleanup/skill_damage_db
Cleanup for Skill Damage Adjustment.
2015-01-08 14:50:52 -05:00
Cydh Ramdh
7864250955 Follow up 7fcacb64c44f4305352d55dc12390aaaa8882997
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-08 16:12:39 +07:00
Cydh Ramdh
5feff01ddd Follow up 54031eda9dcea4a0c5958276a7786cbcdcdc55c5
* Missing `item_ratio->nameid = nameid;` assignment when item_ratio isn't exist in db yet
* Modified @whodrops result for monster list to: "- <monster name> (<mob_id>): <rate>%"

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-08 12:51:52 +07:00
Cydh Ramdh
9021cb6349 Fixed #177
* Wrong number, out of array bounds

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-07 17:13:17 +07:00
Cydh Ramdh
8e71ae6688 Follow up 022d72891e1c38ac6953a5118eea87efd7deddc3
* Fixed warnings in mapif_parse_itembound_retrieve

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-07 15:33:47 +07:00
Cydh Ramdh
f5ddcc55f8 Follow up 72cb55470b160b4a8aae8d64462ac29ab1e44d04
* Added/correcting some #ifdef ADJUST_SKILL_DAMAGE checks

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-07 15:23:21 +07:00