114 Commits

Author SHA1 Message Date
ai4rei
88785ac802 * Added settings 'cashshop_show_points' and 'mail_show_status', both disabled by default, as the messages they control are custom (follow up to r11548 and r12264).
- Moved custom cash point update messages to 'msg_athena.conf' (IDs 504~506).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14812 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-05-14 01:25:09 +00:00
ai4rei
30d36bd8a1 * Bunch of intif_parse_LoadGuildStorage fixes.
- Fixed guild storage not being sorted, when the storage had to be requested first (follow up to r14605).
- Fixed missing check, whether or not the character has already an open storage (follow up to r4562).
- Fixed missing GM trust check, whether or not the player is allowed to use guild storage (follow up to r3481).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14606 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-18 16:24:23 +00:00
ai4rei
72e7dce800 * Fixed error message in intif_parse_mercenary_received printing wrong struct size (bugreport:4633, since r13116).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14576 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-11 12:13:20 +00:00
ai4rei
522a51bb10 * Removed some of the duplicate, storage-related packet code.
- Removed clif_guildstoragelist and adjusted clif_storagelist to be able to handle any kind of storage.
- Removed clif_guildstorageitemadded in favor of clif_storageitemadded.
- This also fixes clif_guildstorageitemadded sending old update packet for clients prior 20090603, although packet 0x1c4 (ZC_ADD_ITEM_TO_STORE2) was added before PACKETVER 5 (before 2003-11-03aSakexe, exact addition date unknown) (since r14286).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14571 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-09 23:18:03 +00:00
ai4rei
e26ea94a2f * Reverted r14563, due to multiple issues which render the source malfunctioning or uncompilable. To be redone later (bugreport:4627).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14567 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-07 19:45:24 +00:00
Paradox924X
ca53ef6f4a Changed almost all instances of sprintf() to snprintf().
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14563 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-07 18:38:03 +00:00
ai4rei
f9bdaf5426 * Added defines for guild notice sizes (MAX_GUILDMES1 and MAX_GUILDMES2).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14544 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-12-02 14:17:07 +00:00
ai4rei
53fd4cef96 * Fixed guild and guild member exp truncation issue (bugreport:4130, since r14242).
- Fixed guild member position, hair, hair color, gender, class and level could potentially become corrupted due to shorts being read as ints (partially since r2986).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14487 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-11-22 16:52:46 +00:00
Paradox924X
2f9e3dbf81 Replaced all nullpo_retr() calls which returned 0 with nullpo_ret() calls.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-10-09 01:57:04 +00:00
Paradox924X
e2bd29e7c2 Replaced all occurrences of 'leaved' with 'withdraw'.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14319 54d463be-8e91-2dee-dedb-b68131a5f0ec
2010-06-01 00:52:39 +00:00
Gepard
f9cff9c6e0 Extended broadcast implementation:
- support for font formatting, like font-size
 - `bc_woe` flag to allow client-side filtering of WoE announcements
 - new broadcast packet 0x40C  

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14120 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-11-03 15:56:54 +00:00
Inkfish
e8d9984582 * Cast time of Emergency Call is doubled if you master of High Jump.
* High Jump can't be used on PvP maps.
* Fixed a potential null pointer from last commit.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14106 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-10-27 14:46:42 +00:00
Inkfish
c50cacf28d Fixed quest will never get erased when it's the only quest you have.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14105 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-10-27 13:54:23 +00:00
Inkfish
6b89176cc9 * QuestLog Fix.
- mob id no longer stores in sql.
- counts won't increase if you have killed sufficient mobs.
* Fixed Merchant's medalion wrong aspd bonus (bugreport:3554)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14036 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-09-04 11:14:27 +00:00
Inkfish
e9379c3be0 Fixed the wrong packet length makes client choke when add_quest packets are sent.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14019 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-08-21 07:16:40 +00:00
zephyrus
6b710571ad - Optimization to instance system.
* Removed the crc feature to generate instance npc names. The instance npc name will be "dup_" + instanceid + "_" + srcnpcid.
* Removed the big array under map structure and coded in a different way. It was only used to generate map names, but i just used the instance_id + "origin map name".
* Moved all instance features to separated files.
* Moved the npc duplication for instances into npc.c as Ultramage says (removed npcname_db from npc.h).
* Added recomendations for scripts commands by Saithis.
- Testing required, i will prepare Endless Tower script soon. I hope this do almost anything in bugreport 3276.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14003 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-08-12 21:44:02 +00:00
Inkfish
b753cba749 * Some more updates to Quest Log
- Implemented a new saving mechanism. Now they can be saved every 'autosave_time' in case the char-server is not online when you get a quest.
- Improved 'changequest' code.
- Increase MAX_QUEST_DB to 1200.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13973 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-28 04:04:50 +00:00
Inkfish
4a6f0d122c * Some updates of Quest Log system
- 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://svn.code.sf.net/p/rathena/svn/trunk@13963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-26 06:01:10 +00:00
Inkfish
698e7a0fc0 Rewrote Quest Log system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-25 20:55:35 +00:00
zephyrus
33e1fbbd66 - Instancing System (Thanks to Sirius White who did most of the code, with some of my work to implement client side information, some optimizations and bugfixes). Also thanks to contributions from UEAUP team and Orcao.
- Fixed a bug on areamobuseskill and changed it to make it as Aegis.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13901 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-20 17:56:01 +00:00
Inkfish
86d162ad13 Fixed an exploit that makes guild skill get higher level than the max defined in guild_skill_tree. (bugreport:3241)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13894 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-16 12:35:03 +00:00
ultramage
a40e59d2c7 Fixed a logic typo in one empty string check (from r4823).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-03-16 09:24:30 +00:00
ultramage
578532f577 Moved the 'changed' mailbox flag from shared mmo.h to mapserver-only.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13433 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-05 15:34:09 +00:00
L0ne_W0lf
de1a2bb0ac Removed a few out of date messages from msg_athena, and updated some others.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13204 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-11 22:15:23 +00:00
zephyrus
c5cc2257d3 - Moving all content of Homunculus code to a proper file Homunculus.c/h
- Update of all project files.

NOTE: All functions on homunculus.c should be renamed i think, to remove all the merc_*.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13122 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24 15:00:26 +00:00
zephyrus
399efe15bd - Completed Mercenary Create, Delete, Save. Tests OK.
- Incremented MAX_SKILL required for a proper load of Mercenary Skills.
- Some fixes.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13118 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23 19:08:54 +00:00
zephyrus
e5e14c14fe - Added column mer_id on char_db
- More mercenary implementations (delete, load, create)
- Some fixes.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13117 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23 14:59:51 +00:00
zephyrus
1204fd49db - Mercenary Packets (Server to Client). Still need a little more info.
- Packet for Mercenary Menu.
- Some other progress as creation but need more code.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13116 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23 13:09:50 +00:00
ultramage
398d3821df Removed the party_share_conflict() check.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-15 10:49:42 +00:00
ultramage
4546c7fc0a Modified storage data loading
* 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://svn.code.sf.net/p/rathena/svn/trunk@12950 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-13 16:14:32 +00:00
ultramage
d8ce1f4aa5 storage code cleanup (no behavioral changes yet)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12948 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-13 11:21:33 +00:00
ultramage
a35279667d Renamed 'struct storage' to 'struct storage_data' (to make 'storage' available as a variable name).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12932 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-10 08:27:03 +00:00
ultramage
62cc01866b Replaced the very ineffective clif_foreachclient() with map_foreachpc() since they essentially do the same thing (bugreport:1174).
Rewrote map_foreachpc() so that its callback function signature now uses a more natural 'sd' instead of a DBKey/void* pair.
Rewrote atcommand_users() to use a single function, instead of depending on two helper functions and global objects.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12683 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-02 15:08:14 +00:00
Kevin
236c7cba43 Some more updates to the quest log system. It has been completely moved to the inter server instead of the char server.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12584 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-14 02:32:24 +00:00
Kevin
302adbf42a Major updates to the quest system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-13 22:19:02 +00:00
ultramage
94943b2b6a Adjusted eAthena code to compile cleanly in C++ mode.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26 10:37:45 +00:00
zephyrus
b493d16681 - Fixed bug report 1170.
- Now char data is saved to on a success mail send or auction register operation.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12351 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-12 21:49:42 +00:00
zephyrus
0c381f2877 - Auction System implementation completed.
- As mail system, this will need a "mapflag" or something to only allow auctions on some maps.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12325 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-08 20:11:28 +00:00
zephyrus
a6a68c756d - Added support for Auction Close and Cancel.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12323 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-08 15:52:15 +00:00
zephyrus
62c41846f0 - Fixed some bugs on auction.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12318 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-07 20:38:33 +00:00
zephyrus
076f76077d - More updates to Auctions. Now you "really" can register auctions, limit to 5 per char (according to official info).
- Also added the Buy and Sell lists.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12314 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-07 05:08:12 +00:00
zephyrus
2fda0f2d90 - Missing update for @auction.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12312 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-07 00:28:15 +00:00
zephyrus
284334b4f0 - Merged Auction Search and Register. It seen to work fine, so you can test those.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12301 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-05 17:09:47 +00:00
zephyrus
1cbcdaf3f2 - New optimizations for mail system and adjust to use it on Auctions.
- Added a Sql patch to clear all deleted mails. (There is no need to keep that data)
- Added more code for Auctions. Not implemented but just for study.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12278 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-02 19:07:14 +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
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
db3db2c2e5 Fixed mob AI code iterating over non-mob objects without checking, when monster_ai flag 0x20 is set (caused by r11943)
Cleaned up macros that wrap unit_stop_attack() (bugreport:357)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11957 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22 09:00:57 +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
ultramage
e464c81aea Removed the badly designed/unfinished guild_check_conflict() data integrity check (that wasn't actually being used up 'till now).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11894 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-12 09:41:51 +00:00
zephyrus
2b1fac216c - Added a fix to prevent missing a mail attachment is map servers disconnect from char server.
- Fixed the sprite of Wing of Victory.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11855 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-03 22:25:57 +00:00