summaryrefslogtreecommitdiff
path: root/src/char_sql/char.c
AgeCommit message (Collapse)AuthorFilesLines
2009-07-26* Some updates of Quest Log systemInkfish1-1/+1
- renamed table 'questlog' to 'quest' to avoid misunderstanding - updated main.sql - fixed the server can't load more than 16 quests - removed the MAX_QUEST limit. tests show the client can handle more than 100 quests. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-25Rewrote Quest Log system.Inkfish1-4/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-30Fixed sql char deletion code using a broken pet deletion query (ran very ↵ultramage1-5/+3
slow, and had a typo in a binary shift operation) (bugreport:3304). Fixed change r13774 to the code responsible for deciding whether to move 1 extra cell when stopping walking; it had its logic inverted by mistake (bugreport:3312). Cleaned up the itemlist, cartlist and storagelist gm command code: - fixed buffer overflows in all three functions (bugreport:456). - merged all three atcommand functions into a single one; the appropriate behavior is detected from the command's name. - using the StringBuf class instead of static-size buffers and string operations for more efficient and safe processing. - using 'jname' (the one without underscores) as the primary item name in the list, and not using the aegis name for cards at all (since it's almost identical). - fixed forged item details never being displayed due to a missing strcat(). - extended item info (crafted/named items, pet eggs) will now be displayed for storage and cart list as well. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13920 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-04-01* Removed online_check config options. (always active now)FlavioJS1-46/+52
* 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13652 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-20Increased variable size for status/skill points to remove the 65k cap ↵ultramage1-4/+4
(bugreport:1579). Added sql upgrade script to adjust the appropriate char table columns. This is an enhancement to r5762. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13541 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-17followupultramage1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13374 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-16- Item Rental System.zephyrus1-34/+41
Script Usage: - rentitem <itemid>,<seconds>; - rentitem <itemname>,<seconds>; git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13370 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-06* Fixed 'Char creation denied' message not being sent properly.FlavioJS1-1/+1
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13356 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-10-15- Added the required changes to support the 2008-09-10+ clientsskotlex1-7/+10
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13293 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-10-03* Fix for "yet another online check bypass technique". (bugreport:2292)FlavioJS1-1/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13256 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-02- Fixed problem deleting characters.zephyrus1-9/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13186 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-01- Moved char server's mercenary code to a different file (int_mercenary.*)zephyrus1-24/+38
- New Sql Patch for create mercenary_owner DB. - Removed mer_id from char_db. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13166 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24- Ops!! this is mine (homunculus hungry messages).zephyrus1-1/+1
- Fixed a bug on char delete. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13123 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23- Some stuff i forgot for char_sql. Bug Report 2112.zephyrus1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13119 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23- Added column `mer_id` on char_dbzephyrus1-25/+30
- More mercenary implementations (delete, load, create) - Some fixes. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13117 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-17** Please update your server ASAP. **zephyrus1-1/+1
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13087 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04Fixed an ancient sql query typo (bugreport:1979)ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13046 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-04Added configs for quest table name adjustment (bugreport:1778)ultramage1-0/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13041 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-29Renamed struct 'skill' to 's_skill' to remove naming collisions.ultramage1-1/+1
Added defines for mercenary skill ranges. Added a mapping of mercenary skills to the skill db (700-799 atm). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13012 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26Merged the /loginmerge branch (topic:192754)ultramage1-162/+26
* 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-13Modified storage data loadingultramage1-0/+12
* 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-06-19Basic cleanup of the SQL charserver homunculus code.ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12863 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-28Cleaned up char server set online/offline/char select functions. ↵Kevin1-5/+10
(bugreport:1359) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12670 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-26Cleaned up auth system after change back to map server request.Kevin1-49/+60
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12658 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21* Changed the data field of timers from int to intptr.FlavioJS1-8/+8
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12633 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21Made some cleanup in changesextoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-17- Some mistake from someone but OMG!zephyrus1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12609 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-16Fixed an issue in r12575 where 'not setting char offline when going from ↵ultramage1-5/+3
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12606 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14* Fixed a possible crash in char_sql. (since r12575, later modified in r12590).FlavioJS1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12593 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Fixed a typo in char_sql/char.ctoms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12591 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Fixed a bug in the disconnection part char-server (not sending you offline)toms1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12590 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Removed some unused variables that appeared in the last commit (r12584).Kevin1-3/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14Some more updates to the quest log system. It has been completely moved to ↵Kevin1-33/+1
the inter server instead of the char server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14* Followup to r12579 (all other players appeared as female on sql branch).FlavioJS1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13Major updates to the quest system.Kevin1-71/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13* Quick&dirty reversal of the inter-server behaviour introduced in r3255/r3256:FlavioJS1-1/+83
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12579 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13Login will no longer set character offline when going from map to character ↵Kevin1-1/+2
select. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12575 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11At char select, the char server will set character to server -2 (server ↵Kevin1-0/+2
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12569 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11The max_account_id packetver detection mechanism will never cause any ↵ultramage1-14/+0
connection problems ever again. (bugreport:388) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12563 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11Finished most of the quest log code, still bits here and there but it's ↵Kevin1-6/+9
usable now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12558 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-11Some quest log changes and removed one of the set char offline calls that ↵Kevin1-1/+1
was added in revision 12552. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12557 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Client not marked online until map receives auth request from the client and ↵Kevin1-1/+0
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12552 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Modified the charservers to use a DBMap instead of a cyclic array for auth data.ultramage1-104/+118
Merged the auth fix from r12473 to TXT as well. Removed the no-op from r12547. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12551 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10- Fixed Max Guardians max = 8 (no need to increase this value for woe 2.0 as ↵zephyrus1-1/+1
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12549 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-10Char server now loads/saves quest information.Kevin1-3/+108
Included table definitions for quests and quest objectives. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12545 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-04Bug fixes for Auth Glitch and Map server crash through script warp when ↵Kevin1-5/+14
changing map servers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12473 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-03Renamed 'connect_until_time' to 'expiration_time'.ultramage1-10/+10
Renamed 'ban_until_time' to 'unban_time'. this also applies to login table columns (see upgrade_svn12464.sql). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12464 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-28Some more txt/sql login server synchronization:ultramage1-41/+0
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27Partial rewrite of the login server's auth system.ultramage1-9/+18
* 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12441 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27merged the charserver acc modification code cleanup to TXT (r11324)ultramage1-12/+18
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12440 54d463be-8e91-2dee-dedb-b68131a5f0ec