summaryrefslogtreecommitdiff
path: root/src/char
AgeCommit message (Collapse)AuthorFilesLines
2006-11-13- Fixed a bug where the char-txt server was incorrectly saving memos, ↵skotlex1-1/+1
causing character data to be lost on restart. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9209 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-07- Applied FlavioJs's patch which enables colored console output for Windows ↵skotlex1-0/+2
systems. It also includes a config setting called "stdout_with_ansisequence" with which you can turn off the color codes (in case you are logging all output) - Added error reporting when the max number of ground unit cells has been reached (this may be the reason why sometimes it fails to recognize when you step out of a song/dance/encore) - Added passing the Endure effect to other devoted people. Note that the "hit count" is individual for each character, and only when it ends on the Crusader himself will that force it to end on everyone else. It also will not transfer on gvg grounds, but it does transfer in pvp. - Fixed Reflect-Shield triggering Auto-Guard instead on devoted chars. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9168 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-25final clone maps -> original maps change. also fixed novice grounds map in ↵Lupus1-1/+1
char.c. fixed socked_enchant npc git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9064 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-23- char_family now returns the char_id of the children when previously it ↵skotlex2-15/+20
would return true. - Expanded the family check to work as it should, exp-share-range is respected, and the child is not considered for it (thanks to TheUltraMage for the investigation) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9049 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-23- Removed useless variable in char-txt from-str char loading.skotlex1-13/+13
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9046 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-20- Fixed Charge Atk being able to go through chasm/pits.skotlex2-41/+13
- Moved the homunculus DB information from the player structure to the homun structure. Modified the homunculus creation packets to hold this information during creation, also, all initial values are handled by the map-server, the char server only assigns it a homun ID. - Removed target_id/attacked_id from homun_data as it wasn't really used. - Codes cleanup (removing of commented code mostly) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9031 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-11- Cleaned up unitattack, unittalk and unitdeadsitskotlex1-31/+26
- Updated status_get_name to take into account fakename, also cleaned it up. - Cleaned up the char-server code when the last point of a player is not found. First it'll check if there's any mapserver online, and then, if there is, it'll look for the major cities. If this fails, then the player will be told server is closed instead of trying to send him to a "random map". git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8967 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-06- Now you can trade while in a chatroom.skotlex1-1/+1
- Fixed homun-txt reading when the file has DOS line-type delimiters (\r\n) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8944 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-30- Rewrote the txt->sql converter. It now links directly to the char server ↵skotlex12-61/+97
files so that it should get auto-updated with any code changes in the later. - The converter will now also convert: account-wide variables, parties, guilds, guild storage and guild castles. At this point the only two things not converted are login-server-wide account variables (##, they belong to the login converter) and homunculus (the SQL save function is messy and doesn't lends itself to be integrated with the converter the way all the other functions are). - Modified the char servers so they are compatible with the converter, the define TXT_SQL_CONVERT identifies sections unique to each char-server mode (this would had been a hella lot easier if both char servers where the same code-base instead of duplicated code <.<) - Updated the Makefiles as per the new compiling requirements for the converter. - misceffect2 will no longer cause the effect on top of the source object when it is the fake npc. - Added check so that Frost Nova doesn't hides hitting animation on targets. - Added the missing brackets around the trade logs condition check, thanks to Coltaro. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8908 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-22- Fixed the "map server claims to have char online, but this other map ↵skotlex1-3/+7
server also has it tagged as online" message triggering in some cases where it shouldn't. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8846 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-14- Added deleting of saved Status changes on character delete for the ↵skotlex1-0/+3
Char-TXT server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8759 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-13- Modified the char-server TXT whisper system to use the online_db to know ↵skotlex3-43/+97
to which map server forward whispers, instead of just sending the whisper to every map server. - Added char-server functions search_character_byname() and search_character_online() required for the previous update. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8732 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-22- Modified the homun-txt file-save format to separate the name from the rest ↵skotlex1-2/+2
of fields with tabs (like character saving does), this may fix homun save/loading when using non-latin characters on the name, but be warned that it also means the previous homun-data files are lost! (unless you replace the comma before the start of a name with a tab) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8432 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21- Removed config setting "muting_players", and expanded the manner_system ↵skotlex1-2/+2
config to specify how having negative manner (mute) affects a player (see battle/misc.conf). - Expanded the pk_mode setting from no/yes to 0/1/2. 1 is normal pk_mode, if 2 is used, it makes killing players give you a loss of 5 manner points. - Fixed WS_WEAPONREFINE always failing when at less than job 50. - Fixed a compilation warning in char-txt/int_homun.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8402 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-16- Spirit of Wizard will now consume an item 7321 each time it blocks ↵skotlex1-1/+1
reflected magic. - Added script command jobname, retrieves a given's class name as per the appropiate msg_athena.txt entry (this command should had been added years ago) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8320 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-16- @produce now can make any kind of equipmentskotlex1-1/+1
- Fixed a warning on the mob_ai - Made HLIF_AVOID and HAMI_DEFENCE cause the status change on both caster and target. - AM_REST shouldn't be checking for a range now (since it's a self skill) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8318 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15- Applied multiple fixes which should take care of making homun save/load ↵skotlex2-12/+17
work on TXT now. - Added Gatling Fever's batk bonus. - Some cleaning in status_damage which should prevent trying to free already free'd pointers when unit_remove_map invokes unit_free (when status_damage was going to invoke unit_free anyway) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8308 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15- Some cleanup of int_homun.cskotlex5-1/+421
- Added homun saving/loading support to char-TXT. Note that this is completely untested, so it may be as good as broken. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8299 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15- Updated the char save structure for char-TXT servers so that the homun id ↵skotlex1-112/+136
will be saved, now also the map info (last point, save point, memo maps) are now saved using the mapindex rather than the string. BACKUP BEFORE UPDATING since this code isn't yet tested. - Cleaned up a bit the char-saving code, added overflow crash prevention in case there are more memos than the max-allowed saved. - AM_CALLHOMUN can now be used to recall vaporized homuns. - AM_RESURRECTHOMUN will now fail when the homun is vaporized. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8295 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-14- Fixed script engine allowing scripts to set a player's zeny to negative ↵skotlex2-2/+4
values. - Fixed setting hide_woe_damage making even "miss" attacks seem to connect. - Cleaned up pc_getzeny to not require doubles. - When readjusting the fame-list, the last entry's id is also reset (may fix characters appearing more than once on it?) - Some sign/unsigned comparison warning fixes. - Some 'may be used unitialized' warning fixes. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8273 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-13- Corrected the mapif_parse_PartyChangeMap function to correctly update ↵skotlex1-10/+18
level-range when someone logs on/off, fixes being unable to set even-share on once it's been broken even when the characters out of range logoff. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8254 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-10- Hopefully fixed family-party-even-share not breaking when a member logs out.skotlex1-0/+5
- Corrected Advanced Jobs HP bonus from 30% -> 25% git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8238 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-09- Fixed the char-server not invoking the party_calc_state function when the ↵skotlex1-4/+5
third party-member is added to a party, hence failing to check for families and disabling even share from them unless all three relog first (state is correctly calculated when party is first loaded). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8197 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-08- Fixed the login-sql server replying to the change-sex packet with the ↵skotlex1-0/+1
wrong gender, causing the char-server to screw-up job-change updates. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8180 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02- Fixed char-txt compilation.skotlex1-15/+15
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8065 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-01- Fixed the subnet 0 mask being reset to 0 when someone goes up on the fame ↵skotlex1-4/+3
rankings. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8021 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-28Fixed "warning: `list' might be used uninitialized in this function" in ↵toms1-1/+1
char/char.c@3032 git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7944 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Fixed packet 0x22a having the manner and opt3 packets in inverted offsets.skotlex1-1/+1
- Some other small cleanups on clif.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7919 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21- Now when the char-txt server does not finds a requested party, it will ↵skotlex3-1/+18
clear out said party id of all characters (will help prevent massive spamming/overhead when for some reason the party file needs to be deleted). - Combo skills (inf = self, inf2 = no target self) no longer check range if you use them while your attack-timer is still active. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7806 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-19- Corrected Trim chars to block 'enter', as explained by the Ultra mage.skotlex1-1/+1
- When the client passes account version 0, the login server will set it to 1 now. - Corrected the HP bar scaling when HP is above Short Max. It should display fine for any HP value now. - Added a check when the mob's adelay is shorter than the amotion, in which case the adelay will be changed to the amotion value. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7742 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Added atcommand @partyoption, lets you alter the party item-distribution ↵skotlex1-4/+3
type on the go. Usage is "@partyoption <pickup share> <item distribution>", where both arguments can be 0/1, yes/no, etc. - Updated @changeleader and @partyoption to use msg_Athena entries. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7737 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Added character 013 (enter) to the list of characters that are always ↵skotlex1-1/+1
removed from new character names. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7732 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-10- Added login-char packet 0x2737. Sets all characters offline (login-server ↵skotlex3-59/+63
side). - Cleaned up char server "set all offline" implementation to remove only characters from the map-server from which the packet was invoked. It will also now correctly kick/set-character offline from the map-server if they are connected. - Cleaned up the char-sql reconnect code. It no longer sets everyone to offline. - Removed setting "kick_on_disconnect", servers will no longer kick characters out when there's a disconnection. Instead, it'll use the most logical approach: Set characters into a "lost" state when there's a disconnection, on reconnect, resent the list of online-characters, do a sync, and let the difference be characters to be removed. Also, the map-server won't release character data until it's saved and the ack returns from the char-server to prevent data loss (all this data is resent on reconnect for saving anyway). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7600 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Okay, added a chrif_save_ack packet to the char-server so now the map ↵skotlex1-1/+7
server will know once a character was "final saved", and only then the character will be removed from memory. On char-server reconnection, all chars that are in final-save state are resent to save (if they are still in memory, it's because the ack hasn't gotten here from the char-server). This should effectively block all dupe problems due to heavy inter-server lag, however as it's untested, it currently prints some debug messages when people are saved and then removed from memory. Need testers so this can be debugged and merged to stable! git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7568 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Now, when the login-char connection is cut, the char-server won't set ↵skotlex1-2/+11
everyone offline on reconnect, instead it will send the list of online accounts to the login server. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7563 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-07- Fixed signed/unsigned comparison issues in the char txt/sql server.skotlex3-7/+7
- Fixed the cooking success chances. Thanks to Ishizu Chan. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7560 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Modified the party_data structure on the map server to remove some ↵skotlex4-167/+252
redundant data. Added a party_data structure on the char-server to hold a more complete set of information about parties. Added to the party_member structure the class of each member so that the map server can do the appropiate checks even if the character is on another mapserver/offline. Due to the format changes in the party structure, txt servers will have to wipe their party file... (sql save format has not been changed) - Added function char_family to check if there's a family state given the three character ids, instead of doing individual checks all the time. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7553 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-04- Fixed code using i instead of id in a few instances when updating char/map ↵skotlex1-1/+1
server IP. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7510 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-03- Char-server SQL won't perform the reconnect cleanup routines when ↵skotlex1-2/+2
kick_on_disconnect is disabled. - Renamed summons_inherit_effects to summons_trigger_autospells as the setting now only makes the attacks of the slaves trigger the autospells of the master (as it should be). - Corrected code capping no_spawn_on_player to 50 when the max should be 100. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7459 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-27- Cleaned up the IP sync code to...skotlex1-39/+42
- Use charif_sendallwos rather than manually altering the buffers of each server. - Use the id variable for identifying current char-server instead of scanning the connected servers for it (it's doing the same work twice) - Added config setting sync_ip_interval to specify how long to go before updating ip. Defaults to 0 (disabled) - Sending ip update packets will only be done when the ip changed now. - Removed dns_str variables, and now char_ip_str/login_ip_str/map_ip_str will hold the unresolved dns address (as these variables have no use otherwise) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7360 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-27- Fixed indentation on int_pet.c (how did it got messed up?)skotlex1-96/+96
- Added mapflag "loadevent", now load-map script events will ONLY trigger on maps with this mapflag on, rather than every map. - High Jump can now be used in all versus maps. - Added Kaite's opt3 value, taken from jA - Added state dirty == 2 to storages. Signals when a storage was sent for final saving. Said storage is removed from memory after the ack from the char-server, and they are sent to save if the map/char servers reconnect before the act arrives. In short: they are guaranteed to be saved after a char logs out. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7358 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-22Typos resolving login-DNS instead of char-DNS -.-Lance1-7/+7
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7291 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-22* [Fixed]: Lance1-2/+2
- Compilation warnings and errors. [Improved]: - Changed and moved IP sync status messages to elaborate more. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7290 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-22- Tested and fixed resolve_hostbyname.skotlex1-55/+36
- Applied said function around most of the code where needed. Removed includes for the OS/network system pretty much from every file (our socket.c file should handle this) - Added clif_getip_long, which returns the ip as a long. Prevents having to include the files to define the int_addr structure in all files that include clif.h - Made the GM mute request bypass the manner_system setting. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7285 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-21- Added function parse_hostbyname() which takes a hostname and a char[4]. ↵skotlex1-1/+0
The hostname is resolved to an ip, whose individual components are stored in char[], the return value of the function is the inet_addr result of the lookup (or returns 0 when failed). Meant to be used in the rest of the code without the need to do socket/network related includes. - Applied use of parse_hostbyname() in chrif.c to fix compilation errors. - status_percent_change will now account for when the target's max hp/sp is above INT_MAX. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7281 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-21* [Added]: Lance1-0/+35
- DNS (WAN) sync for those pesky disconnections (dynamic ip renewal). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7275 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16* [Improved]: Lance1-1/+1
- Cleaned up Custom Mob Script Callback codes. Looks much better now :B. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7202 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-16- Merged Adam's patch to let the char-server handle validation of ↵skotlex3-92/+131
pet-name-change requests through the allowed char letters config. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-14- Fixed main.sql adding a key on char_id rather than account_id for the char ↵skotlex1-2/+1
table. - Cleaned up character saving in char-sql, it no longer needs to query the database to see if the player exists on each char-save, instead it checks the received data against the online-players db. - Added an error message on the char-server when the received player data size does not matches with the expected size (should avoid the crash that happens on such a memcpy). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7160 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Made guild member exp an unsigned int.skotlex1-1/+1
- Modified npc_click to receive the bl that was clicked directly. Also cleaned it up so it isn't as easy to crash the server with invalid ids <.< - Moved npc_checknear to npc_checknear2 and added npc_checknear. The near version receives a bl, checks it's validity, and returns a TBL_NPC object, near2 does the same but doesn't checks for type NPC. The first returns a pointer, the second returns 1 on fail, 0 success. - Also uncommented various npc_checknear calls in the code, who's idea was to comment them out so you could exploit npcs from afar with custom packets? - Added overflow checks for bonus settings mdef_rate/def_rate. - Added missing update of INT after a buf. - Small cleanup of how SC_BLEEDING works. - Fixed party_foreach_samemap invoking the function on the CASTER instead of on the party members. - Added clif_parse_ActionRequest_sub to handle player commands, is used from npc_click or any other function that needs to "re-route" a player's request. - Modified clif_parse_NpcClicked to handle the different situations with different bl-objects (attack on players/mobs, click on npcs or mobs with npc attached) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7103 54d463be-8e91-2dee-dedb-b68131a5f0ec