313 Commits

Author SHA1 Message Date
zephyrus
83f55ea8bf ** Please update your server ASAP. **
- Fixed a wrong auth process, setting account offline in Login server when accessing Char server. (OMG!)
- Fixed a bug on TK_JUMPKICK. It should only do damage if can reach target.
- Fixed bug on Arug_cas01 script.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13087 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-17 00:21:13 +00:00
ultramage
581c0a893f Fixed an ancient sql query typo (bugreport:1979)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13046 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04 13:05:52 +00:00
ultramage
5ce6f6c51a Added configs for quest table name adjustment (bugreport:1778)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13041 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04 03:19:00 +00:00
ultramage
582c36c11e Renamed struct 'skill' to 's_skill' to remove naming collisions.
Added defines for mercenary skill ranges.
Added a mapping of mercenary skills to the skill db (700-799 atm).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13012 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-29 08:19:07 +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
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
801084a7c0 Basic cleanup of the SQL charserver homunculus code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12863 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-06-19 20:26:02 +00:00
Kevin
21802ff355 Cleaned up char server set online/offline/char select functions. (bugreport:1359)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12670 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-28 15:03:33 +00:00
Kevin
679e600fcc Cleaned up auth system after change back to map server request.
- Created function set_char_charselect to get rid of some of the "special case" variables.
- Removed code that involved the char server sending auth data at char select.
- Changed char select code to update the instance of the char data in the DB to fix map/sex info not being propagated to auth request.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12658 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-26 22:13:02 +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
zephyrus
bb98e43f3c - Some mistake from someone but OMG!
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12609 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-17 00:51:15 +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
f2fd4cde62 * Fixed a possible crash in char_sql. (since r12575, later modified in r12590).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12593 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 20:22:48 +00:00
toms
92f9bf6a8c Fixed a typo in char_sql/char.c
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12591 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 14:22:54 +00:00
toms
e61bf34e4f Fixed a bug in the disconnection part char-server (not sending you offline)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12590 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 13:48:25 +00:00
Kevin
a653b4e2d6 Removed some unused variables that appeared in the last commit (r12584).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 02:45:11 +00:00
Kevin
236c7cba43 Some more updates to the quest log system. It has been completely moved to the inter server instead of the char server.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 02:32:24 +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
Kevin
302adbf42a Major updates to the quest system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13 22:19:02 +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
Kevin
69114a1c7d Login will no longer set character offline when going from map to character select.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12575 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13 05:14:01 +00:00
Kevin
fc2bec97d7 At char select, the char server will set character to server -2 (server unknown) rather then -1 (at char select) and will be changed to the map server id once the character loads in.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12569 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11 23:10:14 +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
Kevin
ffa3b60fc0 Finished most of the quest log code, still bits here and there but it's usable now.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12558 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11 07:12:45 +00:00
Kevin
12aff369d9 Some quest log changes and removed one of the set char offline calls that was added in revision 12552.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12557 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11 02:42:30 +00:00
Kevin
3c7a81a079 Client not marked online until map receives auth request from the client and is approved. Also added some online/offline sets to the auth system that were being looked over and not properly updating the char server as to what's going on.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12552 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10 21:28:27 +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
zephyrus
d6c303341b - Fixed Max Guardians max = 8 (no need to increase this value for woe 2.0 as non indexed guardians are set outside of the array).
- Hunter traps have 3500 HP, they are not removed by just one hit. (This also fix the bug you can't move traps with arrow shower).
- Some cleanups.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12549 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10 15:40:48 +00:00
Kevin
f5fd71f4be Char server now loads/saves quest information.
Included table definitions for quests and quest objectives.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12545 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10 05:35:04 +00:00
Kevin
e45a10cf13 Bug fixes for Auth Glitch and Map server crash through script warp when changing map servers.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12473 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-04 07:19:47 +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
ultramage
c6402e89c2 merged the charserver acc modification code cleanup to TXT (r11324)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12440 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27 11:34:16 +00:00
ultramage
94943b2b6a Adjusted eAthena code to compile cleanly in C++ mode.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26 10:37:45 +00:00
ultramage
9c07918456 Added proper checks to adoption processing (followup to r12428).
Cleaned up some code / fixed some typos.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12432 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-25 09:56:18 +00:00
zephyrus
e87cef990d - Added support for offline divorce.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12379 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16 20:33:01 +00:00
zephyrus
2934ff8468 - Added De-adopt support when deleting a baby.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12377 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16 17:27:19 +00:00
zephyrus
ee964f6623 - Optimized a little bit char deletion process with partner info.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12375 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-16 07:21:05 +00:00
zephyrus
fee18c4efb - Merged mail system to Stable. Need a second check... please wait.
- No packet added until everything is done.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12287 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-03 22:03:38 +00:00
skotlex
dc789293be - Updated Eye of Hellion to use the new format of the input command.
- corrected login_fd/char_fd being uninitialized in the char servers.
- Changed a bit around how status_base_atk works to avoid overflows.
- Added a check to prevent using consume-delay items when you cannot use skills, since that opens an exploit if the item also has non-skill-casting components to its script.



git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12214 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-17 22:36:02 +00:00
ultramage
7d22579be3 Fixed SQL charserver not logging char deletion correctly (see bugreport:944)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12197 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-12 21:32:23 +00:00
ultramage
fb85ff7006 Fixed sql charserver crashing when mapserver is disconnected and someone does a double login (bugreport:870)
- it was a typo in r11410

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12159 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-01 07:22:17 +00:00
ultramage
fafb4b8476 Another round of login server cleaning
* fixed passwordencrypt on SQL not behaving correctly (since r10753)
 * corrected some column lengths in the login db (username, password,...)
 * fixed some places which used wfifo without first reallocating it
 * removed interserver packet 0x7532 (Request to end connection), as there was no code that actually sent this packet
 * moved RFIFOSKIP actions to execute as soon as possible

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12043 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-10 15:35:23 +00:00
ultramage
b3696e2e03 Added missing session auth checks to charserver.
Packets from non-authed clients will now be discarded.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12034 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-08 14:30:28 +00:00
ultramage
65834585a8 Modified showmsg code to not attach a timestamp to MSG_NONE-type messages, generated by ShowMessage(). It now works exactly like printf().
Removed/replaced all printf calls in the code.
Added a new flag to setting 'console_silent', for filtering debug messages.
Silenced the "Broken pipe found" and "Server running in debug mode" messages.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12020 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-06 14:19:26 +00:00
FlavioJS
bbf60788db * Fixed a memory leak in memitemdata_to_sql.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11989 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-28 18:53:56 +00:00
ultramage
acad1ac4dd minor code tweaking
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11936 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18 09:13:01 +00:00
ultramage
5790585d16 * Added flag.server to indicate interserver sockets
- replaces the previous way (setting 'client_addr' to 0)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11930 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-17 13:23:34 +00:00