* Added flag &16 to add manually special item that will be broadcasted if: Dropped by monster -> player pick it up. Added items with this flag:
* Gold_Key77 (7782)
* Silver_Key77 (7783)
* Be used also to broadcast item in package/group with flag 'isAnnounced', replaced intif_broadcast().
* The message is using msgstringtable.txt on client side, make sure your translation is not messy.
* Credits:
* fcba8a2161
* 2761bb0af9
* Misc updates: Fixed job and class for items:
* Sealed_Gloom_Under_Night_Gachapon (14696)
* Sealed_General_Egnigem_Cenia_Scroll (14739)
* Sealed_Vesper_Scroll (14740)
* Midgard_Celebration_Lucky_Egg (14741)
* Hero_Midgard_Egg (14753)
* Safe_To_Smelting_Scroll (14758)
* Limited_Edition_JOB_Battle_Manual (14765)
* Rise_Midgard_Lucky_Egg (17494)
* Lucky_Silvervine_Fruit_Box_III10 (17495)
* Lucky_Silvervine_Fruit_Box_III110 (17496)
* Epic_Heroes_Scroll (17519)
* Majestic_Lucky_Egg (17526)
Signed-off-by: Cydh Ramdh <cydh@pservero.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.
* Now inter-server always asking to login-server for account info instead using direct query to `login` table. Merged from HerculesWS/Hercules@da233d5
* Inter-server packet usage: HA 0x2720 & AH 0x2721
* Additional changes from inter-server to map-server to parse the account info result with type 1 by using packet 0x3808 for clif_account_name(). Just some changes from @lighta at his old diff
* Moved some messages to char_msg.conf
* Updated inter-server packet documentation
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
- System is now enabled by default.
- All non-stackable items that previously existed will get unique IDs if items::item_check is enabled.
- Added 'getequipuniqueid' script command to get the unique ID of an equipment on a player.
- Don't forget to apply the SQL update!
* Renamed SQL update file that applied to logs.
Fix many typo and optimisation found by :
http://rathena.org/cppreport/index.html
Fix multiple unsafe scanf of string
Fix multiple battle wrong check (elemental bonus)
Fix camouflage defense reduction and cap expiato def reduction
Fix geoip leak
Upd few documentation in doxygen style
Fix path working directory issue to start servers
(now you won't need to be in maindir to launch server)
Bug Fixes
* Adjusted script commands that use script_isstring and script_isint to use script_getdata to dereference if variable is given. (bugreport:8198)
* Removed the hardcoded password so that users can pass blank passwords through the config for MySQL. (bugreport:7787)
* Increased the hostname array to account for longer hostnames. (bugreport:8003)
* Fixed the CashShop not listing items correctly. (bugreport:7585)
* Fixed Offertorium not consuming the correct amount of SP. (bugreport:8266)
* Cart Boost effect stays even if the cart is removed. Revert of change in r16339. (bugreport:5808)
-Add skill lists for :
--spell blocked by statis
--spell blocked by kagehumi
--spell range affected by
AC_VULTURE|GS_SNAKEEYE|NJ_SHADOWJUMP|WL_RADIUSRA_RESEARCHTRAP
--spell that can't be copied
--spell that can be using while riding warg|mado
-Add a boolean return value for delequip (script cmd)
-Fix monster (script cmd) hardcoded cap for ai. (was preventing to put
ai_faw)
- Temporarily changes share level until character server is restarted
- Updated atcommands documentation
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17358 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Thanks for Xantara for providing initial diff as well as Lighta for guild bound help
- Adds script commands 'getitembound', 'getitembound2', and 'countbound'
- Adds at commands @itembound and @itembound2
- Adds permission pc_can_traded_bounded
- Documentation updated
Don't forget to run the SQL upgrade file!
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17351 54d463be-8e91-2dee-dedb-b68131a5f0ec
Updated Basilica to finally act more official - Related to bugreport:171
Small restructure of disabling skill checks - Fixes bugreport:7411 and bugreport:7577
Updated 3rd class weight limit bonuses to official (thanks Baalberith) - Fixes bugreport:7019
Some skill tree cleanup as ALL_INCCARRY and ALL_BUYING_STORE aren't necessary anymore
Fixed Hanbok and Reins of Mount issue in newer clients (aleos) - Fixes bugreport:12622
Some small fixes to the MVP Arena script (aleos) - Fixes bugreport:7592
Fixed standard channels being removed (lighta) - Fixes bugreport:7590
Fixed some compiler warnings (lighta) - Fixes bugreport:7589
Attempt to fix disappearing carts on reboot (lighta) - Concerning bugreport:7591
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17292 54d463be-8e91-2dee-dedb-b68131a5f0ec
* Adds @join and @channel commands to manipulate chat channels. (see doc/atcommands.txt)
* Speak in a #channel by sending a whisper to #channel or binding your global chat to the channel (@channel bindto <#channel_name>).
* Automatically join local map channels (#map) and guild ally channels (#ally), with mapflag 'nomapchannelautojoin' to disable the channel for a map (optional).
* Allow users to create private channels if 'allow_user_channel_creation' is true.
* Set default channels, text colors, and other settings in conf/channels.conf.
> Other changes:
* Improved overall guild processing/lookup by creating a cached guild state.
* Fixed a bug where equipping a garment would override costume garment.
* Removed clif_message and merged it with clif_disp_overhead, since both use the same packet.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17228 54d463be-8e91-2dee-dedb-b68131a5f0ec
* 9b5ec24:
@accinfo update -- added pincode support and changed group_id to group_level as to respect the level hierarchy on whether to display passwords or not.
Updated GeoIP Database to March 2013.
* 9aded8a:
Introducing Costume Garment Slot 8192.
Also updated getlook script command to support Robe/Garment (val 12 Look_Robe).
* 691b3e6:
Fixed Tetra Vortex client crash. (bugreport:7302)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17218 54d463be-8e91-2dee-dedb-b68131a5f0ec
Thanks to Yommy for his help with the basic packet information and LightFighter for the PIN decrypt function.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17183 54d463be-8e91-2dee-dedb-b68131a5f0ec
-Add a msg_table for login server to be able to have his own configured message, (not in source)
-Split msg_athena.conf file into msg_conf/login_msg.conf, msg_conf/map_msg.conf and msg_conf/char_msg.conf, thus allowing more flexibility wich all table and not have to wory about range and offset for shared index... => that was too annoying and same ram requirement..
--nb you still can do import to override those files
-Add msg-config argv options for char and login serv
--Fix bugreport:5440 as exemple of new possibility (for char)
--Changed auth_fail_login hardcoded logged message to configured with msg_txt, as exemple2 (for login)
-Rever athena-start unwanted commit change on r17152
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17153 54d463be-8e91-2dee-dedb-b68131a5f0ec
-Fix old fread, fgets warnings, displaying a msg errors when failed now
-Cleaning checkweight debug showinfo
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16952 54d463be-8e91-2dee-dedb-b68131a5f0ec
Improved the debugging of scripts when an amount greater than supported of arguments is used.
Follow up r16935 -- commit missed the script.c part of it.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16936 54d463be-8e91-2dee-dedb-b68131a5f0ec
-Change some remaining -1 for status ending timer.
-Move some hardcoded msg in msg_athena
-Small optimisation on battle_attr_fix
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16835 54d463be-8e91-2dee-dedb-b68131a5f0ec
All the queries are handled by char-server.
You might notice there is a odd way to retrieve job names in char server, this is only temporary until we're done arguing what'd be the best way to do it in char and map server.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16025 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
- 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
- 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
- add leader argument to party_fill_member
- add party_getmemberid
- add requester char_id to packets 0x3021 and 0x3821 (party info)
- diff members when replacing party info
- remove fixup all-player-iteration when receiving a party for the first time
- send 'party info' before 'party created'
- send 'party info' before 'party member added'
- update empty party_id when checking the player of a party
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14968 54d463be-8e91-2dee-dedb-b68131a5f0ec
- support for font formatting, like font-size
- `bc_woe` flag to allow client-side filtering of WoE announcements
- new broadcast packet 0x40C
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14120 54d463be-8e91-2dee-dedb-b68131a5f0ec
* the login server storage, ipban and logging systems have been abstracted and now provide a common interface; the rest has been merged into a single login server core (no more login/login_sql duplicity)
* storage systems are now added via compiler options (WITH_SQL / WITH_TXT)
* multiple storage engines can be compiled in at the same time, and the config option account.engine defines which one will be used.
* due to MySQL autoincrement limitations, accounts with id '0' will not be supported; account IDs from this point on should start from '1'.
* login_log() functions now again record IP addresses in dotted format, not as 4-byte integers (undo from r6868).
* removed config options that defined column names in the login table
* removed `memo` and `error message` columns from login db/savefile
* moved `loginlog` table to the logs database
* added sql files upgrade_svn12975.sql and upgrade_svn12975_log.sql
* due to changes to the login table layout, I added an !optional! sql file (upgrade_svn12975_view.sql) that will provide a certain degree of backwards compatibility with existing software; read the instructions inside carefully!
* moved third-party includes/libs to a separate directory
* updated project files / makefiles
Changed the way GM levels are handled
* removed conf/gm_account.txt
* added the gm level column to the txt savefile (after 'email' column)
* gm level information is now transferred along with account data
For open problems see bugreport:1889.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec