* Moved redundant structs for vending & buyingstore, move it to vending.h
* Removed redundant query to update autotrade info (autotrade state, head, body direction, & sit state) that previously executed in vending_reopen & vending_openvending, buyingstore_reopen & buyingstore_create.
* Removed lines to execute queries each iteration to insert vending/buyingstore list, now using StringBuf and just being executed once after the item listing. (in vending_openvending & buyingstore_create)
* Revert the ways initializing autotrader list by using DBMap (vending_autotrader_db & buyingstore_autotrader_db)
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Bug Fixes bug: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 anymore if the player idle on character select window (just prevents player to login when retriving 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 canceled!
* 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
NOTE: Please import upgrade-20150103_log.sql
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Separated Sql handle for query_sql to avoid mapreg overwrite the mmysql_handle.
* New handle for query_sql: qsmysql_handle
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Added item flag value: 8 to init default item with BindOnEquip. Item with this flag will be character bound item once equipped.
* Added optional config 'default_bind_on_equip' in conf/battle/items.conf to set default bind type. By default the type is character bound.
* Hercules merge 1f5161a2bd
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Follow up 5004eb6
* Fixed Sealed_Fortune_Egg (22845) script
* Changed the way to comment a line for item_combo. Need more info about the pairs for Enhanced_Force_Shadow_Weapon (24223) and Enhanced_Soul_Shadow_Weapon (24227)
* Renamed English name of 4482 to 'Sealed General Egnigem Cenia Card'
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
-- Updated up to kRO 2014-10-29 (Source: Super Star Monster 2014 R Event + Infinite Room Instance)
-- C_Will_O_Wisp (18741) item script updated. Thanks to Radian
-- SP_Increase_Potion_(Large) (12427) weight updated. Thanks to rayn
* 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.
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* re-Disabled the ADJUST_SKILL_DAMAGE by default (core.h) that enabled by accident since 794c1a8. :P
* Removed MAX_MAP_SKILL_MODIFIER variable.
* Removed fixed array for skill damage adjustment in each map.
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
Fixes various bugs with higher level players not gaining experience.
Also properly fixed Renewal EXP reward in Turbo Track script (incorrectly fixed in be95412).
Signed-off-by: Euphy <euphy.raliel@rathena.org>
* Updated View IDs for headgears & robe, some follow up of changes by @nanakiwurtz.
* Corrected script of Full_Moon (19538).
* Corrected item location of C_Monster_Card (19764) to mid-head, Fantastic_Aura (20600) to costume robe.
* Corrected item type of Ribbon_Piamat (20725), Brilliant_Golden_Wings (20727), Loyalists_Hood (20730) from 12 to 4.
* ... what else?
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
Align account_id and char_id to uint32 as this is the value they can be
in DB.
Remove src/test folder, unused
Remove useless #include to speedup compilation.
* Added safe check if `mergeitem` script command being used with no items to be merged. Thank @RadianFord
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
Upd .gitignore to ignore object everywhere
Add update.pl, a small perl script to auto git update and apply db
update in sql.
Add setup_perl.sh, to setup perl environnement for module used by perl.
Move some function into rA_common.pm
* Changed -1 for timer id to INVALID_TIMER
* Changed values for pc_bound_chk(). 2 to BOUND_GUILD and 3 to BOUND_PARTY
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>