332 Commits

Author SHA1 Message Date
skotlex
a0bfff19a1 - Removed delete_session from socket.h since it shouldn't be used by them.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9955 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-04 22:51:22 +00:00
ultramage
5625383530 More tweaks to socket.c to simplify the code
- many generic cleanups - reformatting, useless code removal, etc
- made the mode_neg setting a compile-time decision, not a run-time one
- removed the silly frame_size setting (there since r1)
- added some TODOs to http://www.eathena.ws/board/index.php?showtopic=127988

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9954 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-04 21:06:28 +00:00
skotlex
4dd0c95c58 - Modified set_reg so that it returns whether it succeeded or not in setting the requested variable.
- Externalized battle skill range and blewcount bonus into their own static functions (battle_range_type & battle_blewcount_bonus).
- Sped up the skill range flag setting code.
- Added automatic support of damagesplit. This means that if a skill's nk value includes damage split among targets, it will do a divide by the number of targets (whereas before the list of skills where this worked was hardcoded)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-02 16:39:33 +00:00
skotlex
c6d349bcee - Made it possible to modify the server packet version from the Makefile.
- Merged packet 2b22 (from my server) to handle quick fame updates whenever someone's fame in the ranking changes, but no position swaps take place (prevents having to resend the whole fame list in such events, you lazy Draco <.<)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9936 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-28 16:42:34 +00:00
skotlex
3fe667ca28 - Added a check to prevent trades from being commited if either character is in final-save state.
- Checked and cleaned up the online_check code in the char-server. Further connections to the char-server are rejected when the account already has a connection (previously this would happen only if there was already another character IN game, not just waiting on the char-select screen).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9934 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-28 15:21:24 +00:00
skotlex
6c66c2095f - Simplified a bit mmo_char_tobuf (at least it looks cleaner to me now)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9932 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-28 06:07:41 +00:00
skotlex
d403e06178 - Updated Box of thunder to use "agi up" effect for 30 secs instead of NPC Agi Up for 20.
- Guild expulsion now will fail when the character to be kicked is in a guild castle (rather than checking for the character doing the expulsion)
- pk damage reduction settings now will take effect only on Player VS player damage.
- Fixed produce_db2.txt entries overwriting produce_db.txt ones.
- Fixed item-granted/plagiarized skills unlocking skill trees when only your real learned level should.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9899 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-23 03:26:49 +00:00
ultramage
49096125fb Applied a consistent look to all header files (copyright, ifdefs)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9891 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-21 15:09:20 +00:00
FlavioJS
e74a5e2456 - Reviewed the client and the shorts at 104 and 106 are part of the char structure. And a correction on what i said: 0x6d is the packet that sends the new char data, 0x67 is the request to create the new char.
(updated code accordingly)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9874 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-17 07:25:22 +00:00
FlavioJS
fcda68caa4 - Fixed the structure of packet 0x67 (new char info). It's the same as the one used for packet 0x6b (chars info).
Info based on the 1218 client and on experiments with 'orchish' skin.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9873 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-17 01:03:12 +00:00
skotlex
971ea7e332 - Fixed char server SQL not sending the guild info update to other map servers when a new member is added.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9835 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-09 19:20:00 +00:00
ultramage
64fcacf6b3 - Added code for SQL that will automatically detect the ping interval at startup, and copy-pasted it around the code
- Removed the conf setting as it is not needed anymore

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9830 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-08 23:26:00 +00:00
skotlex
f96bd44c5a - Removed function inter_party_logged, which after some testing and thinking, has been concluded is no longer necessary.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9818 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 20:23:24 +00:00
ultramage
148f3fca88 Cleaning up of the socket code
- Shuffled includes around for files that were leeching off of socket.h
- Added code that enforces standard shutdown behavior for sockets

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9817 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 19:34:54 +00:00
skotlex
6597b8c74b - Updated the range of BioExplosion and Self Destruction so they count as ranged skills.
- Removed old script bonuses bMatk, bMatk1, bMatk2
- Fixed char-server not sending online notification when a party member logs in.
- When skill range by distance is set, the distance checked for is now 5 cells rather than 3.
- Fixed bMatkRate bonuses not applying to status earned modifications to int/matk.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9816 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 17:46:50 +00:00
FlavioJS
c46f3cf135 - Removed deprecated console code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9815 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-07 06:25:00 +00:00
skotlex
7946ebfc48 - Fixed char-server not sending party status update when a member logs on/off
- Fixed crash when parsing guild member information change from the char-server when the specified character is not found in the guild.
- Fixed MvP mobs giving exp when killed even if they shouldn't


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9802 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-06 17:17:26 +00:00
ultramage
5f0de40e38 Removed the silly and misleading 'firewall detected' message
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9786 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-05 13:33:02 +00:00
skotlex
8ec0ed0d47 - Corrected homunculus's aspd being halved after using some aspd adjusting skill.
- Cleaned up the resetskill function (even though the functionality is the same as before)
- Corrected item 1459 (unused Partizan with no slots) being wlv3 instead of 2 (as the other two partizans)
- Changed the name of the four second versions of homunculi to not have a 2. (so you get a 'lif' and not a 'lif2'
- Removed flag graffiti from abracadabra
- Updated the stun times of Bash, Npc-StunAttack and meteor Assault to 5 secs as reported by Ultra Mage (still pending more data to see if all others need updating as well)
- Removed the log info message 'created homunc...', and the 'loaded homunc' message will only show if the save_log is enabled.
- Some cleanups


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9760 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01 18:34:05 +00:00
skotlex
8a9e1eaa07 - When when a party-member levels up, the level change is sent to the char-server to update the even-share range values.
- When joining a gvg_dungeon, the pvp packet will be sent to signal versus.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9759 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01 18:16:09 +00:00
ultramage
7390d2d950 Removed graph, httpd and webserver
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9757 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01 01:33:37 +00:00
skotlex
50a03b0751 - Corrected char deletion not working (column is called homun_id, not hom_id...)
- Collapsed config settings produce_item_name_input, produce_potion_name_input, making_arrow_name_input, holywater_name_input, cdp_name_input into a single config produce_item_name_input which uses bitmasks to determine what it affects.
- Updated arrow_decrement to have 3 possible values: Disabled, Enabled, and Enabled as well as giving arrow requirements to skills that do not have them when used with ranged weapons (auto-guess for plagiarized/item-granted skills)
- Minor cleanings


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9746 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-30 17:38:39 +00:00
skotlex
59faa0164c - Fixed compiltation error ~.~ I was sure I compiled before the previous commit...
- Corrected a null pointer error when a non-player uses amplify magic power.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9743 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-29 22:08:09 +00:00
skotlex
c52340cb3a - Corrected the homunculus deletion functions so that the homunculus is deleted together with the character.
- Added npc_check_areanpc so that Wand of Hermod will correctly check for nearby warps.
- Emergency avoid now stacks with other speed boost statuses
- Item skills and skills that bring up a menu now are cleared on death.
- Minor cleanings


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9742 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-29 22:00:51 +00:00
ultramage
37ecb00ca5 Fixed a C language restriction preventing compilation
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9729 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27 16:29:58 +00:00
skotlex
b55b492943 - Moved the pet rename code from int_pet.c to inter.c and normalized it so it can be used for any object.
- Made homunculus renaming go through the char-server so it can be validated against the allowed characters setting.
- Added battle config hom_rename so you can enable renaming multiple times your homunc.
- Updated the hardcoded defaults for gvg-damage to what they should be.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9720 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27 00:31:29 +00:00
skotlex
d65e051707 - Added a wrapper to delete_timer so it prints out from where the invocation was done.
- Fixed some unsigned warnings.
- Fixed Splash attacks consuming 2 ammo on each attack.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9718 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-26 18:49:46 +00:00
ultramage
c356b3a461 Fixed a client crash during SQL char selection if you for some reason had more than 9 characters in your account
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9674 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-19 17:04:12 +00:00
skotlex
0c68bf4e54 - Fixed the next invoked skill after AbraCadabra not having requirements even when it is a different skill than the one chosen by AbraCadabra.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9661 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-16 19:49:33 +00:00
FlavioJS
0129172c63 - Added a precompiler error when the shutdown defines are not found.
- Added parse_console to the plugin API.
- Added plugin for parsing the console. (working with cygwin)
- Added the console plugin to plugin_athena.conf commented out.
- Copied the parse_console code form login txt to login sql and char.
- Added propper plugin version compatibility tests.
- Better output when a plugin fails to load.

-----

The console plugin (at it's 3rd version) uses two pipes and another thread.
- the other thread reads data from stdin and sends it through one of the pipes
- the other pipe serves as semaphore (and terminator) to that thread
- the normal thread checks if the pipe has data once every timer cycle, if data is found it invokes parse_console with that data

Worth noting: the first version didn't use another thread and just checked if data was available on the input stream, but apparently that can't be done to standard input in windows

It's only been tested on cygwin (and should work on most *nix systems), can't test native windows right now because I'm having trouble exporting the required plugin variables in VS8
src/plugins/Makefile hasn't been updated because it's not working properly for me

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9631 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-08 08:35:32 +00:00
ultramage
fbe23f27a2 Undid the memset->malloc_set replacement
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9626 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07 16:49:03 +00:00
ultramage
9f164c312b - re-added the duplicit nj/gs name messages in msg_athena
- renamed atcommand_sub to is_atcommand_sub (charcommand too)
- reformatted conf-tmpl's comments a bit
- and a fix to the stable changelog to make my last commit more descriptive

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-07 07:48:04 +00:00
FlavioJS
db02576357 - Now winsock 2 is required.
- Cleaned up do_close and socket_init a bit.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9621 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-06 12:11:50 +00:00
ultramage
74d8bc1cab - eol-styled some remaining files
- deleted some outdated files

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9614 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-03 22:12:33 +00:00
FlavioJS
4fa4e26d99 - Reverted the packet structure changes to mmo_char_send006b in r9588 and corrected the bug that I was originally fixing.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9598 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-30 20:28:37 +00:00
FlavioJS
f863581174 - Part 3 of TheUltraMage's socket cleanup.
- Fixed the packet structure in mmo_char_send006b for PACKETVER 8.
- Removed search_str from add_str (add_str already searches for the string).
- Native script words like do,while,for,... are case insensitive now.
- Changed SCRIPT_HASH_SIZE to 1021 (prime hash sizes give better distributions).
- Added alternative hash implementations to the script engine (to try out later).

removed int_homun.c from header section of the VS8 map project files

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9588 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-28 19:11:40 +00:00
skotlex
58bb9be68a - Cleaned up some more the code so it works for -DTURBO
- Cleaned the pvpoff @ and script commands.
- mob_get_random_id now has two additional flags to specify that the monster to acquire should not be a boss type (4) or that it should give exp (8).
- TK_MISSION will now pick any mob from the DB as long as it is not a boss type and it gives base exp.
- Fixed the double-stone issue when hitting a petrified character.
- Minor cleanups


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9573 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-26 15:07:18 +00:00
FlavioJS
dd92bd13fd - a couple of warnings fixed
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-25 08:21:49 +00:00
KarLaeda
2f7bd25279 Small fir for changeset 9539
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9568 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-24 18:59:58 +00:00
FlavioJS
52245f90b9 - Moved "#include <limits.h>" to cbasetypes.h to ensure it's included before checking if UINT_MAX has been defined.
- Minor changes in pc_readdb related to max_level being unsigned.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9561 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-23 03:24:32 +00:00
skotlex
2208728178 - Added support for the new "make new char" packet that has the rename button data. Thanks to Sara-chan for the format change update.
- Fixed itemdb.c sql compilation
- Now when you specify a max level beyond what the exp table has, the last entry of the exp table will be duplicated to fill in the remaining levels.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9558 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-22 14:19:39 +00:00
skotlex
afd7345d86 - Some cleaning to the character deletion code.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9552 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-21 17:49:27 +00:00
FlavioJS
15258dfdb0 - Moved md5calc to common
- Answered Skotlex's question and fixed "warning: comparison is always false due to limited range of data type" by restricting script words to ASCII characters only.
- Applied "svn:eol-style native" to makefiles and project files

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9544 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-21 01:16:30 +00:00
KarLaeda
6676ebcadb Fixed #endif instead of #else
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9542 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 20:20:12 +00:00
skotlex
a578128619 - Changed some %lu (long unsigned int) to %u (unsigned int)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9541 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 18:56:31 +00:00
skotlex
4265154cf1 - Fixed the #if -> #ifdef mess up -.-
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9540 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 18:24:49 +00:00
skotlex
e29a1031d5 - Moved PACKETVER to mmo.h, and added support for the expanded character info window on the char-server when PACKETVER is above 7.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9539 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-20 17:21:56 +00:00
skotlex
a0bad51812 - Added various guild packet related missing checks
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9467 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-11 20:43:34 +00:00
FlavioJS
637ae9a4dc - Massive EOL normalization & 'svn:eol-style native' flag setting for all txt/conf/h/c files.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05 13:23:07 +00:00
skotlex
1424d93e12 - Repairing items via scripts no longer displays "item has been repaired"
- Status Recovery again makes mobs unlock their current target.
- Moved requesting party/guilds from the char-server from pc_authok to pc_reg_received, since map_nick2sd and map_getallsd won't work until the characters are authentified. Also removed the guild master setting from clif_parse_LoadEndAck to pc_reg_received since guild master setting will work there.
- Fixed homun hunger timer being started on login even when hom is vaporized/dead.
- Fixed mvp exp attacker bonus applying incorrectly.
- Removed duplicate msg_athena.conf entries 619 and 620 for Ninja/Gunslinger.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9401 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-04 15:37:09 +00:00