1248 Commits

Author SHA1 Message Date
zephyrus
021af17a50 - By test, this seen to be a valid operation for mail. When a char receives the "New Mail" notification, it request the inbox again.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12286 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-03 19:57:02 +00:00
zephyrus
84ffdd36bf - The last, i hope, fix to the mail system.
* kRO have a possible way to read mail by just sending the open mail window packet to the client.
This protection adds a mapflag town, to set the only maps that allow mail operations.
because there is no way to know when client closes the mail inbox window. *

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12279 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-02 23:03:22 +00:00
ultramage
d84310bc4e Fixed wrong mvp format string for @mobinfo (would not show big mvp exp rewards correctly).
Added data length check to chrif_authok(), to detect a mismatch between charserver's and mapserver's mmo_charstatus structure size.
Corrected some typos in the cash shop code.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12277 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-02 17:36:59 +00:00
zephyrus
48ba5004a6 - Starting preparatives for Auctions System.
- Added the @auction command to open the auctions. Just to start working on it and if someone wants to help.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12270 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-29 23:10:29 +00:00
zephyrus
e6bf7c5458 - Added cash shop support. (i need to add documentation, working on it).
- An charcommand is still required to add/remove points.
- Scripts command only requires to work on #CASHPOINTS and #KAFRAPOINTS.
- I called it "Kafra Points" just because it's how comes in the translation. I allready know this changes between Oficial servers.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12264 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-28 22:25:58 +00:00
ultramage
a9bafe200d Added support for the "view player equip" feature (see topic:174461)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12245 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-27 09:12:18 +00:00
ultramage
f4347446d4 * Removed code in socket.c that tries to avoid send buffer overloading, as there is a scenario (many players and charserver disconnect) where mass char saving produces huge ammounts of data to send (see r11503)
* Cleaned up player respawning code (bugreport:1022)
* Increased the max amount of different autocast skills from 5 to 10
* Added a missing function declaration, for real this time (followup to r12229)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12232 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-22 18:19:11 +00:00
ultramage
4c32b53443 Fixed 2 problems in r12223 - incorrect variable used (bugreport:1031) and a missing global function declaration
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12229 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-22 15:00:18 +00:00
skotlex
9c638fa6b2 - Added status_calc_life to properly calculate hp/max_hp as a ratio taking into accounts overflows (and for now also avoids divisions by 0). Applied this function around clif.c, mob.c and pet.c
- Implemented the correct walk-speed bonus from the Bard/Dancer spirit.
- Added a few error messages in case something goes wrong in the new auth db system.
- Fixed logarithmic drops turning 0% drop rates into 100%.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12225 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-21 10:36:26 +00:00
skotlex
1e0a82fab3 - Fixed new guilds displaying online-connect member count at 0 rather than 1, and the guild master not knowing it is one (eg: it cannot edit the guild notice of a newly created guild until relogging).
- Fixed acc_reg2 parsing screwing up the char_id and subtracting 2 from it rather than passing it as it is.
- Extended the auth_node/auth_db system in chrif.c to handle log in/out and mapserver-change procedures. This way players are not in the main dbs when they are not "active", which blocks potential invalid accesses to them.
- Replaced states auth, waiting_disconnect and finalsave with active.  
- Cleaned some the party/guild login and creation procedures, removed the party_sent/guild_sent states.
- Removed a redundant guild_check_member call which is beyond not-needed and into the realm of wasting resources.
- clif_parse will no longer process packets from !sd->state.active players, this also makes checking for finalsave uneccessary (since players re already removed from the maps and dbs by this point, so you can't access them in any other way)
- Separated the roles of unit_free and map_quit, the former will handle cleaning structures from the player so it can be free'd safely, while the latter performs additional routines which are unique to characters logging out normally (map-server changes will invoke unit_free and bypass map_quit).
- Removed pc_isplaying, quit_db, map_knowsaccount, MAPIT_PCISPLAYING among other functions/defines which are no longer needed due to the new login scheme.
- Cleand up a bit some code in the clif_send(_sub) functions.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12223 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-21 00:13:56 +00:00
L0ne_W0lf
b03a01ee95 Fixed a typo in /map/clif.c (acount_id -> account_id)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12219 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-19 21:11:27 +00:00
FlavioJS
e8c226e1f3 * Forgotten update to the definition of script command 'input'.
* Enabled DEBUG_MEMMGR only in DEBUG mode. 
* Made autotrading characters be kicked instead of reporting double login.
* Made create_session initialize session_data to NULL.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12218 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-19 16:55:13 +00:00
ultramage
bcac761953 Removed some useless svn:ignore properties.
Fixed a compilation problem.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12211 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-16 20:10:25 +00:00
zephyrus
8b151df5c7 - Some fixes to mail system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12199 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-13 17:55:32 +00:00
zephyrus
c4fb4f4361 - Some code cleanups.
- Added new Cell types (NoChat and NoDamage)
- Added JobChangeLevel and FreeSKPoints to #stats
- Added a Crash protection in clif_send with invalid fd values.
- Merged a missing update in TK Mission.
- Added script command 'getmapflag'
- Merged some new Status Change to Stable.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12175 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-04 18:23:57 +00:00
ultramage
2ef6778696 Fixes to Devotion (see topic:153345)
- removed totally fake Devotion packet from Marionette Control code (see r3934)
- fixed one devoted chars array management code bug which caused chars to be included in the array multiple times, producing various problems (also see r3934)
- the link will now re-display when coming into view range
- the link will no longer break if the devotee walks away, but instead, if he receives damage while being out of range of Devotion

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12171 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-03 23:26:00 +00:00
ultramage
b6520cbfd6 Added an out-of-bounds crashfix for map_delobject and map_delobjectnofree.
Added missing EOL to the 'hack on namerequest' console message.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12142 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-26 15:18:32 +00:00
ultramage
c53f4f1955 Some random cleaning
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12141 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-26 09:44:10 +00:00
ultramage
8591686b27 Fixed/cleaned r12114 and 12117.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12119 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-21 11:02:21 +00:00
zephyrus
4fcaa2f78f - Optimized some code about @size changes in chars.
- Fixed #jailtime (Bug Report 853) crash.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12117 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-21 07:41:52 +00:00
ultramage
f855102c48 * Manner system fixing
- better-than-aegis 'red bubble' packet updates; now it shows correctly
- added support for /rc, which is basically mute for 60 minutes
- fixed typo in r12076 making gm-mute start on the gm instead of target
- fixed @mute not ending the status properly when using negative values
- adde missing clif_manner_message(), sends info about manner updates

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12079 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-15 15:05:11 +00:00
ultramage
fc719995cb * Client packet corrections
- 0x01df is not 'gmreqnochatcount', but for requesting a player's account name via right-click menu (which currently can't be done)
- added /remove and /recall, aliases to /shift and /summon
- added /changemaptype, which alters a single cell's gat type
- gm kick will no longer exit the client (now it goes to the login screen)
- removed the quicksort invocation in /ignore code

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12076 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-14 19:13:16 +00:00
ultramage
1859b5e45a Applied a temp patch to make some npc-executed atcommands work again (bugreport:790).
Added support for right-click-gm-menu kicking NPC objects.
Removed redundant function npc_checknear2().

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12073 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-14 11:34:59 +00:00
ultramage
d5455fabfc Simplified the BL_CAST macro (see topic:166795)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12072 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-14 08:54:54 +00:00
skotlex
ced9aada8c - Fixed getmonsterinfo to return "null" when returning the name of a non-existing mob instead of -1.
- Extended the status_percent_damage define to include a bolean to specify whether or not the target can be killed from it.
- Corrected CR_CULTIVATION to fail when the target cell has some BL_CHAR on it already.
- Changed the meaning of 'flag' in status_percent_change, to enable differentiation between damage that can kill the object and damage that cannot.
- Script command percentheal will no longer kill the player if the specified amount is negative (and not -100).


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12051 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-10 22:02:33 +00:00
skotlex
5c4212300a - corrected duration of sphere mines to be 30 secs regardless of skill level
- Corrected duel_count/duel_list (you DON'T place variables in a .h file! That is what 'extern' is for)
- Script command warpportal now places a warp in its initial state (as if a real warp portal was casted)
- Updated dispell to also not remove the following effects: Hindsight, Inc Hit/Atk Rate (NPC_POWERUP), Nen, TK stances and tumble, warm and speedup1 (the other speed potion)
- Chase-walking characters can now loot.
- Hiding characters can't drop items now. 


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12036 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-09 16:08:57 +00:00
ultramage
d3ff689c2b Added missing code to log main chat messages sent by whispering to main_chat_nick (bugreport:424)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12030 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-08 00:24:35 +00:00
ultramage
67cb0da56c Corrected a TXT compilation problem caused by r12023 (mail system code is not present in TXT builds).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12026 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-06 23:01:58 +00:00
zephyrus
825d214242 - Fixed a visual itemdupple bug on mail system.
- Fixed Overthrusth status cannot being recalled at same skill lvl.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12023 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-06 16:43:02 +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
ultramage
51e05f0fcf Fixed a typo in r12008 causing server crashes when sending the fake npc packet.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12012 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-04 17:11:01 +00:00
skotlex
416f151368 - Fixed clif_sendfakenpc not being updated for PACKETVER 9
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12008 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-04 09:47:39 +00:00
ultramage
8f1eaa3d67 Moved extra junk from map_addblock/map_delblock to where it logically belongs (loadendack/unit_remove_map), removed flags and _sub macros
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12002 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-01-03 20:56:20 +00:00
FlavioJS
1c3b249328 * Added code to reject double logins in clif_parse_WantToConnection and added debug messages to detect possible double logins that escaped.
* Isolated accounts that are waiting for the quit ack. The rest of the game logic no longer has access to them though the id2sd/charid2sd dbs.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11998 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-31 19:23:34 +00:00
FlavioJS
548e1bfd28 * Reverted a bad modification in clif_produceeffect from r11290.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11988 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-28 14:43:15 +00:00
FlavioJS
4dcf5bb0b9 * Tweeked the declaration and initialization defines for vectors.
* Made do_sockets leave the for loop as soon as the readable number of sockets returned by select is found.
* Made all posix compliant systems that support it and FreeBSD >= 5.1 (implements it but doesn't have the posix defines) use the precise and consistent tick() implementation.
* Minor tweek to HEAP_SEARCH (same variable can be used in from and to).
* Fixed the map server not exiting when make_listen_bind fails and returns -1.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11983 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-27 03:35:57 +00:00
skotlex
81e5c08f4f - Fixed warning about unused variable
- Made the kaahi heal timer function uncrashable.
- Fixed pc move item to cart function checking against the wrong max index.
- Fixed initialization of sd issue in map_addblock
- Removed redundant reinitialization when parsing item pickup.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11968 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-23 11:06:58 +00:00
ultramage
e0611bf8b5 Fixed server not always sending the correct level values to the client.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22 17:30:49 +00:00
skotlex
ace81763bc - removed redundant clif_hominfo line in merc_hom_dead (it was sent already from hom_damage)
- Item usage is now blocked while hidden.
- Moved the bladestop/berserk check from clif_parse_EquipItem to pc_equipitem


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11942 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-18 15:01:18 +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
ultramage
950e40ed47 Some more guild code reformatting (moved do_init_guild() to the end of guild.c, cleaned up and documented the castle/guild/member lookup functions, fixed a compilation warning...)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11917 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-16 13:50:50 +00:00
ultramage
8be1c4d48c * Some preparations for the guild script update
- cleaned up npc event execution code
- cleaned up guild data loading/saving code; to be improved later
- removed dummy 'account name' expulsion list management code
- removed columns 'rsv1' and 'rsv2' from guild member data
- removed columns 'rsv1' 'rsv2' 'rsv3' and 'acc' from guild expulsion data
- added upgrade_svn11895.sql for SQL

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11895 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-12 09:55:13 +00:00
skotlex
2dd7aff70b - Cleaned up clif_setdisguise and fixed it for PACKETVER>=9. I was kinda right in my last assumption afterall :V
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11884 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 13:53:29 +00:00
skotlex
20fb727ce1 - Reverted last change, I was wrong in my assumption o_O;
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11883 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 10:22:52 +00:00
skotlex
c010e4e982 - Fixed the disguise packet sent in clif_move
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11882 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-10 10:16:30 +00:00
ultramage
fc037d1e8a small fix to the server's packet parsing code to display server IPs correctly.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11876 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-09 17:19:43 +00:00
skotlex
e816cafde6 - Fixed a 'variable may be used uninitialized' error.
- Removed 'type' being passed to skill_trap_splash since it was not used at all.
- Fixed Land Mine doing nothing.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11872 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-08 23:32:30 +00:00
skotlex
e5554e3fae - Insignificant cleanups.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11866 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-07 07:35:31 +00:00
skotlex
d321e89aed - Cleaned up the messy code used to generate the idle/walk packets (or at least, in my opinion, it looks cleaner now)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11865 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-06 23:18:02 +00:00
skotlex
e231f6cb18 - Likely fixed clif_set_disguise for PACKET_VER 9
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11864 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-06 21:04:29 +00:00