summaryrefslogtreecommitdiff
path: root/src/char/char.c
AgeCommit message (Collapse)AuthorFilesLines
2013-10-27Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-14/+8
2013-10-27Shadows System Baseshennetsind1-4/+4
http://hercules.ws/board/topic/581-implement-the-shadows-system/ Special Thanks to Yommy for all the client data, Haru for making it possible to get it out and rosfus for the details on the feature. Shadows Feature requires packetver 20120925 or newer. ---------- Also: Updated all packets related to the shadows system, improved memory/processing of inventory/cart/storage/viewequip packets Signed-off-by: shennetsind <ind@henn.et>
2013-10-26Changed 'tick' variables to 64 bitHaru1-14/+8
- This fixes an issue with timers that stop working after about 24-49 days when the tick overflows (note that this may happen much earlier than that, and at hard to predict times, on some systems) - Updated the RDTSC help message in the configure script to also warn users about issues with SpeedStep enabled systems. - On Windows, tick() still has a resolution of 10~15ms (or even as low as 100ms on some systems). A TODO comment (thanks, Ai4rei) was added for a follow-up patch, as I want this one to be as small as possible) - Note: on Windows versions earlier than 6.x (Vista, Server 2008), the tick overflow issue is NOT fixed, since they don't support the function used to retrieve a 64 bit tick. This isn't a big issue, since those platforms are already - or going soon to be - out of their extended support period, and it's already advisable to upgrade, for other reasons. If you're the unfortunate user of such a system, it is recommended that you reboot your machine at least once every 49 days for Hercules to work reliably. - Note: To clear some doubts, since I've already been asked, this has absolutely NOTHING to do with 32/64 bit CPUs or OSes. It's all about a variable's size, not the size of registers of your CPU, and your 32bit CPU will be able to handle this just fine. Signed-off-by: Haru <haru@dotalux.com>
2013-10-23Fixed char deletion on latest clients freezingshennetsind1-0/+8
Newer clients freeze unless the char select list is resent, Haru and I confirmed official servers re-send the list upon deletion (we were not able to identify when this started though, its currently set to 2013 onwards -- if you have info on this please contact us so we can fix the range :D). Special Thanks to LuLu, Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-10-11Fixed char.c msvc compiler warningsshennetsind1-3/+3
Thanks to LuLu for bringing it up. Signed-off-by: shennetsind <ind@henn.et>
2013-10-11Fixed Char Deletion Bug on 2013++ Clientsshennetsind1-2/+7
Thanks to LuLu who pointed us in the right direction, http://hercules.ws/board/topic/2453-help-open-pull-request-fixing-char-deletion-time-in-2013-client/ Signed-off-by: shennetsind <ind@henn.et>
2013-10-10Introducing Bank Supportshennetsind1-0/+25
http://hercules.ws/board/topic/2455-introducing-bank-support/ Thanks to Yommy, Haru! Signed-off-by: shennetsind <ind@henn.et>
2013-09-25Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-24/+22
Conflicts: src/map/chrif.c src/map/clif.c src/map/homunculus.c src/map/pet.c src/map/script.c src/map/skill.c src/map/status.c All clear.
2013-09-25Renamed iTimer interface to timer.shennetsind1-16/+16
Also removed duplicate mentions of timer within calls to shorten.
2013-09-22Corrected various hardcoded database table namesHaru1-1/+5
- Added an elemental_db setting to inter-server.conf (elemental table) - Switched an instance of hardcoded `ipbanlist` to use the ipban_table setting; thanks to Takkun, related to issue #135 - Switched two instances of hardcoded `char` to use the char_db setting - Added a TODO notice about the usage of the login table (on a side note, hardcoded) from the login server (related to issue #142) Signed-off-by: Haru <haru@dotalux.com>
2013-09-19Cleaned up and de-duplicated ranklist-related codeHaru1-23/+17
Follow-up to 6cf032d. Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-09-03Fixed several packet errors with pre-renewal clients from 2006-2008Haru1-2/+8
Thanks to Beret for reporting the issues, Ind for his great help with research, suggestions and the necessary tools to fix this. Signed-off-by: Haru <haru@dotalux.com>
2013-08-08HPM Updateshennetsind1-0/+34
- Custom Packet Support - Custom Data Struct Support (currently append-able to map_session_data and socket_data) - Char Server Support - Login Server Support http://hercules.ws/board/topic/1934-hercules-plugin-manager-update/ Documentation will soon be updated in http://hercules.ws/wiki/HPM Signed-off-by: shennetsind <ind@henn.et>
2013-07-08Fixed compiling errors when CONSOLE_PARSE was disabledshennetsind1-1/+2
Special Thanks to quesoph for bringing this to our attention. Signed-off-by: shennetsind <ind@henn.et>
2013-07-08Cygwin Fix for the Hercules SQL Update Checkshennetsind1-0/+2
Also modified the output (i think its sightly improved), also added a console command to skip updates so no need to go add the query yourself 'sql update skip <file name>' Signed-off-by: shennetsind <ind@henn.et>
2013-07-04Split use_sql_db into the three available: item_db, mob_db, mob_skill_db.Matheus Macabu1-1/+3
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-07-04Fixed Bug#7459malufett1-1/+1
-where 'working in progress' state is not cancel in change map/teleport. Fixed Bug#7265 -where casting AL_INCAGI into chars force them to stand where it now suppose to be. Fixed Bug#7337 -fixed some skills that deals 'work in progress' state. Fixed Bug#7467 -fixed compiling warning message. Renewal Updates -Temporary fix for skills final damage reduction. -Updated NJ_KUNAI to its renewal formula. -Updated/Fixed some interface messages. -Implemented additional new 3rd job skills(GN_ILLUSIONDOPING,RK_LUXANIMA,SO_ELEMENTAL_SHIELD,SC_ESCAPE) Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-07-03Fixed Char Creation Bugshennetsind1-5/+2
Would take place when trying to make use of a empty slot recently empty'd. Signed-off-by: shennetsind <ind@henn.et>
2013-06-13Hercules Renewal Phase : Renewalmalufett1-0/+2
Rename SC names to eagis standard. Implement SC Configuration.(see db/sc_config.txt) Skill updates and fixes. Some code optimization. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-06-10Added SqlStmt functions to the SQL interfaceSusu1-195/+195
2013-06-09Fixed Bug #7319shennetsind1-0/+5
Special Thanks to KeiKun~! http://hercules.ws/board/tracker/issue-7319-db-name/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-08Follow up d73783f22b2bb881aab74524d153d89a5932a199shennetsind1-6/+6
Adjusting db.c interface name to adhere with the rest (pretty much we try to make it as short as we can, and being there were no conflicts we saw no reason to maintain the 'i') Signed-off-by: shennetsind <ind@henn.et>
2013-06-07Hercules Renewal Phase One : pc, party, map, timerSusu1-22/+22
Added iPc, iParty, iMap, iTimer to HPM exported interfaces
2013-05-30Memory Slasher - May 30 Patchshennetsind1-2/+2
http://hercules.ws/board/topic/928-memory-slasher-may-30-patch/ Signed-off-by: shennetsind <ind@henn.et>
2013-05-30Memory Slasher - May 30 Patchshennetsind1-15/+31
http://hercules.ws/board/topic/928-memory-slasher-may-30-patch/ Signed-off-by: shennetsind <ind@henn.et>
2013-05-18Some type conversion warnings fixed. If this breaks anything create a bug ↵Matheus Macabu1-2/+2
report ASAP and I will revert it gladly. Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-05-17- Made DB and malloc lib HPM-friendlySusu1-6/+6
- Also fixed a bug preventing the plugins to be loeaded because HPMI and HPMI_s weren't HPExport
2013-05-16Fixed Bug #7250shennetsind1-1/+1
Screwed up. http://hercules.ws/board/tracker/issue-7250-cant-create-party-and-guild/ Follow up 0aee4fd57f2f4135361f4182a08a98cf52ed9d10 Signed-off-by: shennetsind <ind@henn.et>
2013-05-15HPM Updateshennetsind1-237/+237
Made SQL and strlib functions HPM-friendly, special thanks to Yommy for bringing the issue up. Added partial map.c support, for the all-handy map[] array, beware that soon the whole map.c renewal design will be commit and when that happens your usage of map.c functions in plugins might require some updates. Signed-off-by: shennetsind <ind@henn.et>
2013-05-09Fixed character slot change in 2013 clientsshennetsind1-4/+9
Made Possible Thanks to Yommy <3~! Signed-off-by: shennetsind <ind@henn.et>
2013-05-09Fixed Bug #7225shennetsind1-1/+1
http://hercules.ws/board/tracker/issue-7225-about-perfect-hide-status/ Signed-off-by: shennetsind <ind@henn.et>
2013-05-04mapindex updateshennetsind1-3/+13
Fixed a mapindex_name2id problem that'd persistently not fix a broken mapindex data (e.g. char save/last map data being incorrect). It'll now align it to MAP_DEFAULT when such error occurs. Also speeded up mapindex_name2id queries, replaced the loop by the red-black-tree db lookup. Special Thanks to yommy~! Signed-off-by: shennetsind <ind@henn.et>
2013-05-04Upgrading Stat Server from 2.5 to 3.0shennetsind1-275/+275
also: modified encode_zip in grfio for a upcoming modification and some minor stuff in some other places. Signed-off-by: shennetsind <ind@henn.et>
2013-05-02Introducing Hercules Plugin Manangershennetsind1-23/+2
http://hercules.ws/board/topic/549-introducing-hercules-plugin-manager/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-27Skill ID Processing Overhaulshennetsind1-17/+25
http://hercules.ws/board/topic/512-skill-id-processing-overhaul/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-23Delete some athena words from files char_athena.conf to char-server.confChristian1-1/+1
2013-04-22Also fixed a behavior of npcwalkto, which was capped by walkpath limit.Matheus Macabu1-1/+1
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-04-22Little fix to start_items. Thanks to lighta!Matheus Macabu1-2/+2
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-04-22Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-18/+25
2013-04-22Hercules April 22 MEGA-ULTRA-LONG Patch~!shennetsind1-26/+2
http://hercules.ws/board/topic/470-hercules-april-22-patch/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-20* Added support for up to 32 items in starting items (the items you receive ↵Matheus Macabu1-18/+25
when creating a new character). Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-04-15Fixed Bug #7127shennetsind1-7/+23
Also Implemented allow party invitations state. Implemented saving of client options (atm show_equip and allow party invitation) http://hercules.ws/board/tracker/issue-7127-view-equipment/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-13Follow up f69814b33ba65898ee44f69ffc3551f829fe3befshennetsind1-1/+0
wooo. its like a inner necessity, can't commit something important without leaving some debug leftover behind =_= Signed-off-by: shennetsind <ind@henn.et>
2013-04-122013 Client char-select packet updateshennetsind1-9/+60
Special Thanks to Shakto, malufett! http://hercules.ws/board/blog/1/entry-26-2013-char-select-packet-update/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-02Follow up a4e273d9bed24286002bed8f2909f0ff1b5c4f91shennetsind1-7/+7
Fixed a issue that was making it unable to create new characters Signed-off-by: shennetsind <ind@henn.et>
2013-04-01Introducing socket_datasyncshennetsind1-624/+632
a user-friendly way to notify users when their servers are out of sync, e.g. http://hercules.ws/board/topic/328-intif-guild-data-size-error/ http://hercules.ws/board/topic/315-error-chrif-authok-data-size-mismatch-52224-52228/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-01Dropped char_per_account char-server configshennetsind1-25/+4
It became pointless, since 0241d0195558b7e57d2181f2f097cf774a1ef463 introduced a more accurate way to control the amount of characters in an account. This update also reduced the amount of mysql queries used on char creation by 2. Signed-off-by: shennetsind <ind@henn.et>
2013-03-31Fixed a login bug with clients from before 20110309shennetsind1-4/+4
servers with pincode enabled would always reject char selection Signed-off-by: shennetsind <ind@henn.et>
2013-03-30Hercules Renewal: clif.c completeshennetsind1-1/+1
Added the last missing functions into the interface, all functions in clif.c are now wired to the interface. http://hercules.ws/board/topic/237-hercules-renewal/ Also shortened clif->displaymessage to clif->message, removed the old clif->message and merged its functionality with clif->disp_overhead (both use the same packet and do the same thing :P) - and a gazillion other stuff: http://hercules.ws/board/topic/316-introducing-hercules-channel-system/ Signed-off-by: shennetsind <ind@henn.et>
2013-03-27Introducing Slot Change featureshennetsind1-529/+598
Special Thanks to Yommy for providing the packet structure/data. Signed-off-by: shennetsind <ind@henn.et>