e.g. bonus2 bUseSPrateSkill,"AL_BLESSING",50; -> increases AL_BLESSING sp usage by 50% (e.g. if its 50 it goes to 75)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16273 54d463be-8e91-2dee-dedb-b68131a5f0ec
Fixed bugreport:5953 GC_CROSSRIPPERSLASHER range is now (8 + 1 * skill level) cells.
Fixed bugreport:5943 SC_GROOMY is now really remove selected mounts.
Updated Guillotine cross skills formula base on re-balancing formulas...
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16243 54d463be-8e91-2dee-dedb-b68131a5f0ec
Fixed bugreport:5223 GN_BLOOD_SUCKER should now work like official behavior.
Fixed part of bugreport:5674 Spiral Pierce is now in RE.
Fixed setmadogear now it accepts optional parameter(0=unmount 1=mount).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16155 54d463be-8e91-2dee-dedb-b68131a5f0ec
-Checks the Players Party if it meets the above set requirements. see script_commands.txt for more info. Thanks Masao
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16134 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added NPC to refine Oridecons / Eluniums to Cardium / Bradium.
- Added downrefitem script command and updated script_commands.txt with it.
- Updated refine_db.txt with probably custom values for +11 to +20 values. Source : http://ratemyserver.net/index.php?page=misc_table_refine
- Some little script improvements to Suhnbi. (Enriched Elunium / Oridecon Upgrader.)
* Further improvements for the refinement system and refinement NPC's will come within the next few days.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16126 54d463be-8e91-2dee-dedb-b68131a5f0ec
Fixed bugreport:5748 Masquerade-Groomy now removes Dragon and Warg.
Fixed bugreport:5751 Implemented script command in checking/mounting Dragon, Warg and MADO Gear, also made a clean up regarding MADO Gear and Warg conditions.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16114 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Combined both string and integer instance variables into a single DBMap* structure
- Fixed a missing new-line at the end of src/common/conf.h causing warnings
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15998 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Updated the user-defined function invocation to reduce strdb_get() calls to find a matching function
- Updated the direct variable assignment system to remove an unnecessary for loop while processing variable names
- Updated the direct variable assignment system to support assigning an array to a variable directly (without the use of copyarray)
- Note: copyarray; is still required to be defined in the source
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15994 54d463be-8e91-2dee-dedb-b68131a5f0ec
Modified get_revision to return the revision number rather than it's string, when revision is not known by the server it now returns -1.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15969 54d463be-8e91-2dee-dedb-b68131a5f0ec
Notice this revision onwards requires you to update your char sql table and add the elemental sql table (check sql-files/upgrade_svn15885_log.sql)
If you step by any bugs, let us know at http://rathena.org/board/tracker/ Thank you very much.
ARRIBA ARRIBA.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15885 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Changed 'checkvending' to return 2 if player is using @autotrade.
- Follow up to r15871: used spaces so everything lines up (people might use different Tab Size in their text editors).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15872 54d463be-8e91-2dee-dedb-b68131a5f0ec
* DB courtesy of Kenpachi
* added support for different stats per refine level for renewal
* cleaned up the corresponding code a little
* REMODE now displays the atk values on the client correctly
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15730 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added enum for data: `int`, `unsigned int` and `void*`
- Replaced generic `void*` data with `DBData` struct to hold `int`, `unsigned int` or `void*` (member of `DBNode`)
- Added `db_i2data`, `db_ui2data` and `db_ptr2data` functions to cast from `int`/`uint`/`void*` to `DBData` (used in `DBMap::put()`)
- Added `db_data2i`, `db_data2ui` and `db_data2ptr` functions to get `int`/`uint`/`void*` from `DBData`
- Enabled statistics for new functions in `db_stats` struct
- `DBCreateData` functions (used in `DBMap::ensure()`) now return `DBData` instead of `void*`
- `DBApply` functions (used in `DBMap::foreach()` and `DBMap::destroy()`) now take `DBData*` as a parameter instead of `void*`
- `DBMatcher` functions (used in `DBMap::getall()`) now take `DBData` as a parameter instead of `void*`
- `DBReleaser` functions now take `DBData` as parameter instead of `void*`
- Default releasers release data if it is `void*` (`DB_DATA_PTR`) type
- `DBIterator` functions: `first()`, `last()`, `next()` and `prev()` now return `DBData*` instead of `void*`
- `DBIterator::remove()` now returns `int` (1 if node was found and removed, 0 otherwise) instead of `void*` and takes an extra `DBData*` parameter for the data of removed entry
- `DBMap::get()` and `DBMap::ensure()` now return `DBData*` instead of `void*`
- `DBMap::remove()` and `DBMap::put()` now return `int` (1 if node already existed, 0 otherwise) instead of `void*` and take an extra `DBData*` parameter for the data of removed entry
- `DBMap::put()` now takes `DBData` as parameter instead of `void*`
- `DBMap::getall()` now puts data into `DBData**` buffer instead of `void**` buffer
- Updated macros:
- (`i`/`ui`/`str`)`db_get` and (`i`/`ui`/`str`)`db_ensure` were wrapped with `db_data2ptr` to extract data from `DBData*` that is now returned by `DBMap::get()`
- added (`i`/`ui`/`str`)`db_iget` and (`i`/`ui`/`str`)`db_uiget` that get `DBData` from `DBMap` and extract `int`/`unsigned int` from it (with `db_data2i`/`db_data2ui`)
- `db_put`, `idb_put`, `uidb_put` and `strdb_put` data params were wrapped with `db_ptr2data` to match new signature of `DBMap::put()` (`DBData` instead of `void*`)
- added (`i`/`ui`/`str`)`db_iput` and (`i`/`ui`/`str`)`db_uiput` that put `int`/`unsigned int` into `DBMap` (first wrapping it with `DBData`)
- added `NULL` in place of extra parameter for removed data in `db_remove` macros
- `dbi_first`, `dbi_last`, `dbi_next` and `dbi_prev` were wrapped with `db_data2ptr` to extract data from `DBData*` that is now returned by these `DBIterator` functions
- Updated `DBMap` documentation, and fixed a dozen of typos in it.
- Updated rest of rA code to reflect `DBMap` changes (mostly required signature changes of `DBCreateData` and `DBApply` functions).
- Fixed a bug where `DBMap::put()` would return data of a deleted entry.
- Removed some unnecessary pointer casts.
- Increased `showmsg.c` static buffer size to fit entire DBMap stats report.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15682 54d463be-8e91-2dee-dedb-b68131a5f0ec
- all changes to guild castle data are now handled first by map-server and only sent to char-server for saving
- ensured that changes made to guild castle during char-server disconnection time will be resent on reconnect
- actually removed definition of `MAX_GUILDCASTLE` (r15657)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15658 54d463be-8e91-2dee-dedb-b68131a5f0ec
- removed `MAX_GUILDCASTLE` limit
- char-server now caches guild castles in `DBMap`
- improved guild castle SQL queries to support non-default values of `MAX_GUARDIANS`
- disallowed declaring guild castles on maps that are on other map-servers
- map-server now requests data for all guild castles from char-server on initial connect (bugreport:287)
- removed ''guildcastleinfo events'' as they were esentially duplicated ''OnAgitInit''
- optimized castle data load packets (bugreport:287)
- updated WoE scripts to reflect source changes (scripts no longer need or should request castle or guild data)
- updated related docs
- Added `db_size` macro.
- Replaced manual counting of castles occupied by a guild with `guild_checkcastles()` calls.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15657 54d463be-8e91-2dee-dedb-b68131a5f0ec