315 Commits

Author SHA1 Message Date
ai4rei
c56477a9fc * Fixed a crash when shutting down char-server (TXT only), after it failed to load storage save data (since r1275).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14483 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-11-22 10:48:57 +00:00
ai4rei
c038d41ecc * Fixed WFIFOL being used instead of WFIFOW for a short field of packet 0x2710 (bugreport:2819).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14468 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-11-19 22:57:01 +00:00
Paradox924X
625a3870ac Applied fix by Ai4rei to reintroduce mapName within charinfo packet when PACKETVER >= 20100803. Follow-up to r14432. (bugreport:4413)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14440 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-11-02 04:46:03 +00:00
Gepard
99d0eef42f Fixed wrong char info packet size for clients after 2010-07-27 (follow-up to r14368).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14432 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-10-17 19:02:45 +00:00
Skotlex
9c244595de - Merged a few minor bugfixes
- Merged in a bunch of the eA renewal support patch.



git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14368 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-08-03 14:36:00 +00:00
Paradox924X
e2bd29e7c2 Replaced all occurrences of 'leaved' with 'withdraw'.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14319 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-06-01 00:52:39 +00:00
skotlex
2b3c602ea7 Merged a few updates for supporting renewal clients (thanks to Diablo): [Skotlex]
- Updated packet_db entries
- Added slot info on packet 0x6b (PACKETVER > 20100413)
- Trade add-item use packet 0x80f (PACKETVER > 20100223)
- Guild storage add-item use packet 0x1c4 (PACKETVER > 20090603)
- Vending list use packet 0x800 (PACKETVER > 20100105)
- Allow client to change item-share party settings (PACKETVER > 20090603)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14286 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-04-23 13:19:25 +00:00
Paradox924X
dde953ee4a Expanded range for cached and stored-in-db guild member exp (devotion) from uint32 to uint64. (bugreport:3983)
Capped value when sending to client to INT_MAX to prevent confusion.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14242 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-02-09 20:26:42 +00:00
Paradox924X
92ed65fd9a Prevented online user count from going negative. (bugreport:3913)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14186 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-12-03 07:51:55 +00:00
ultramage
e3300232a5 Cleaned up leftover PACKETVER define on the charserver (followup to r14155).
Expanded the error message in guild_castledataloadack() to actually provide some useful info.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-11-24 23:40:42 +00:00
skotlex
c92ff591f1 - Applied the renewal client support patch from Diablo (eA forum topic 222623)
- Added support for strcharinfo(3) to retrieve the player's map
- Added script command "searchitem" for name item searches.
- Moved PACKETVER to src/common/mmo.h as it's needed by the char-server now
- Changed the status valX from int to long so that it won't break for pointer-storage in other architectures.
- Moved the change party leader code to party.c
- A few bugfixes or packet field completions based on my past experience messing around with my server.



git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14155 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-11-19 18:19:09 +00:00
Gepard
f9cff9c6e0 Extended broadcast implementation:
- 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
2009-11-03 15:56:54 +00:00
ultramage
b0bf56cf2e Removed the char_rename setting in favor of a PACKETVER define.
Inverted the way renames are counted: '0' now means 'no renames left' (the default).
Please make sure your database matches this new behavior before starting the server.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14093 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-10-18 11:29:30 +00:00
ultramage
6c8293ed15 Ported over several TXT online code fixes from charmerge (autotrading chars couldn't be kicked due to a missing update).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14091 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-10-15 13:19:32 +00:00
ultramage
84cc5b7513 Disabled ip checking during auth, since it lead to a lot of confusion.
This essentially reverts the default behavior to before r10021.
Re-enabling should only be reconsidered after the subnet mechanism is made fully automatic.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14069 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-09-20 22:09:59 +00:00
ultramage
0ed37a79b7 Some insignificant code tweaks.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13945 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-11 07:05:05 +00:00
Inkfish
86d162ad13 Fixed an exploit that makes guild skill get higher level than the max defined in guild_skill_tree. (bugreport:3241)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13894 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-16 12:35:03 +00:00
FlavioJS
e7607efb6c * Removed online_check config options. (always active now)
* Clarified char_maintenance config option.
* Changed packet 0x2712. (added request_id)
* Changed packet 0x2713. (added sex, request_id, version, clienttype; removed email, expiration time, gmlevel)
* Delayed user count check and mmo_char_send006b to when the account data arrives.
* Created auxiliary function MD5_Salt.

(split from a future commit that was getting to big for my taste)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13652 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-04-01 22:39:19 +00:00
ultramage
c2cc0763d9 Increased variable size for status/skill points to remove the 65k cap (bugreport:1579).
Added sql upgrade script to adjust the appropriate char table columns.
This is an enhancement to r5762.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13541 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-20 19:47:17 +00:00
FlavioJS
d474fff85a * Fixed 'Char creation denied' message not being sent properly.
- Number 2 didn't exist in old clients so it used the default message, now it exists so the wrong message is displayed.
- Changed 2 to 0xFF to get the default message.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13356 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-06 20:23:33 +00:00
skotlex
0167134620 - Added the required changes to support the 2008-09-10+ clients
- Cleaned around the char set offline function to properly avoid setting offline a character that had relogged faster than the map server's packet arrival to the char-server (I presume this was the bugfix that Kevin attempted a long time ago, but the current code for that causes a dangling pointer problem).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13293 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-10-15 12:31:16 +00:00
ultramage
7bd0715d13 Quick fix to txt charserver initialization order - chardb needs to be ready for parties to load correctly.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13275 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-10-11 03:41:10 +00:00
FlavioJS
2f1d2b2199 * Fix for "yet another online check bypass technique". (bugreport:2292)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13256 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-10-03 16:30:41 +00:00
ultramage
e3d39453fd * Fixed a storage saving issue with txt charserver (bugreport:2084)
- caused by incorrect idb_ensure -> idb_get change (see r12950)
- removed redundant account_id variable from storage data
- cleaned up the very messy txt storage handling code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13093 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-19 16:00:30 +00:00
ultramage
4c2a6255cd Merged a critical fix to charserver online tracking code (see r13087).
Corrected wrong variable use in txt charserver online tracking code (mistake in r4726).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13089 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-18 04:30:57 +00:00
ultramage
fb0a123f7a Some small code cleaning
- removed unused create_storage() function
- removed unused char_db mapserver config setting
- adjusted formatting of mapserver config loading code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13063 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-10 08:08:59 +00:00
ultramage
5f8af7d869 Fixed an auth bug in txt charserver (caused by r12579, followup to r12609)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13042 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04 03:31:22 +00:00
ultramage
5033b0f675 Reverted r12230. cUSTOM_CFLAGS is redundant since you can achieve the same result by setting CFLAGS.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13022 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-31 06:08:07 +00:00
ultramage
9fd3dfd23b Fixed TXT storage code handling storage incorrectly (bugreport:1928)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13016 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-30 04:37:21 +00:00
ultramage
106b44c1e7 Merged the /loginmerge branch (topic:192754)
* 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
2008-07-26 20:45:57 +00:00
ultramage
398d3821df Removed the party_share_conflict() check.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-15 10:49:42 +00:00
ultramage
1d9c99dc72 Corrected wrong data loading order in txt storage code causing crashes at startup (followup to r12950).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12957 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-15 01:50:06 +00:00
ultramage
4546c7fc0a Modified storage data loading
* storage is now loaded/saved along with character status
 * as a consequence, a lot of storage handling code was removed
 * there is no more locking done within storage data
 * mapservers no longer cache the data (solves muiltimapserver exploit)
 * loading storage on char select may decrease charserver performance

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-13 16:14:32 +00:00
ultramage
d8ce1f4aa5 storage code cleanup (no behavioral changes yet)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12948 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-13 11:21:33 +00:00
ultramage
bfd5397913 Renamed 'storage_' to 'items' in the storage_data structure.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12933 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-10 08:42:41 +00:00
ultramage
a35279667d Renamed 'struct storage' to 'struct storage_data' (to make 'storage' available as a variable name).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12932 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-10 08:27:03 +00:00
ultramage
d9e5150a44 Added changes missing from the previous update (followup to r12710).
Corrected party invite failure not informing the inviting player.
Cleaned up some foreach() code int_party.c.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12711 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-16 07:28:46 +00:00
FlavioJS
c880052f0f * Changed the data field of timers from int to intptr.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12633 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21 21:34:31 +00:00
toms
ccb23efe49 Made some cleanup in changesex
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21 16:19:25 +00:00
ultramage
70e34f81cd Fixed an issue in r12575 where 'not setting char offline when going from mapserver to charserver' also caused a permanent account lockout if the player pressed 'cancel' in the char select screen.
Merged some recent changes from SQL to TXT, as someone didn't bother to do it.
Ifdefed the quest data request code as SQL-only (this was causing server disconnects whenver someone logged in).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12606 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-16 07:48:53 +00:00
FlavioJS
dcf71ce50b * Followup to r12579 (all other players appeared as female on sql branch).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 01:11:21 +00:00
FlavioJS
49aac80ed6 * Quick&dirty reversal of the inter-server behaviour introduced in r3255/r3256:
- the behaviour enabled a desynch between the char-server and the map-server
- now the map-server asks the char-server to authenticate the auth info (the char-server doesn't send the auth info immediatelly)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12579 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13 18:31:49 +00:00
ultramage
67d29ff3b7 ... but not with a buggy tool (missing svn:props)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12574 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-12 09:19:31 +00:00
Kevin
2c1144e804 TXT code has been re uploaded. Please note this does not change the fact that TXT support has been dropped. There is no guarantee the code base will be managed and it will in the near future be REMOVED. If there is in ANY way TXT support in the future, it will be abstracted through a sql interface so only the sql code has to be maintained.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-12 08:43:29 +00:00
Kevin
ace648245b I live in a giant bucket.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12570 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-12 07:59:42 +00:00
ultramage
00a5bccbd3 The max_account_id packetver detection mechanism will never cause any connection problems ever again. (bugreport:388)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12563 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11 09:31:32 +00:00
ultramage
fd5f918452 Modified the charservers to use a DBMap instead of a cyclic array for auth data.
Merged the auth fix from r12473 to TXT as well.
Removed the no-op from r12547.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12551 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10 19:07:00 +00:00
ultramage
77826dfdf8 Renamed 'connect_until_time' to 'expiration_time'.
Renamed 'ban_until_time' to 'unban_time'.
this also applies to login table columns (see upgrade_svn12464.sql).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12464 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-03 12:46:55 +00:00
ultramage
76eb9581b9 Some more txt/sql login server synchronization:
- removed the option to specify multiple IPs/subnets for 'ladminallowip'
- removed the @gm command and all associated management code
- removed the 'save unknown packets' code
- removed the lengthy TXT ipban code (which was essentially a copy of what's already handled by the socket layer/packet_athena.conf)
- implemented 'start_limited_time' in SQL (expiration for new accounts)
- applied some missing TXT changes from the last update

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-28 18:53:51 +00:00
ultramage
b1b356fb11 Partial rewrite of the login server's auth system.
* replaced the cyclic, size-limited auth_fifo data structure with the more appropriate DBMap-based alternative (stops some erratic behavior)
 * added code to simulate the pseudo-status "online on login server"
 * auth data will now expire after 30 seconds instead of persisting
 * better-than-aegis handling of login cancellation (the server will wipe all previous auth data instead of making you wait for it to expire)
 * proper status message - no more generic "rejected from server", now you'll get "the server still recognizes your last connection"
 * fixed a typo in r10110 which caused disconnect timer removal to fail
 * split off some parsing code to login_auth_ok() and login_auth_failed()
 * extended the auth confirmation packet so that the login_id1/2 values are sent along with the associated account id (stops charserver from making wrong choices if two incoming sessions have the same account id)
 * fixed a bug in the disconnect part of the main charserver parsing loop, where a non-authed client would erase the online db entry for a client that's already online, thus bypassing any dual-login checks
 * added code to stop the waiting_disconnect timer when the associated online entry is removed right away, instead of doing checks later
 * removed code that would periodically wipe the online status of clients that are in the auth process (producing yet more erratic behavior)
 * commented out some TXT-only reconnect prevention code (bugreport:1281)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12441 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27 12:06:12 +00:00