summaryrefslogtreecommitdiff
path: root/src/map/map.c
AgeCommit message (Collapse)AuthorFilesLines
2009-10-04- Added a missing space in help.txt (bugreport:3632)brianluau1-1/+0
- Removed duplicate lines in item_trade.txt (bugreport:3630) - Fixed typos in Turbo Track waitingrooms. (bugreport:3628) - Removed a duplicate comment line from r14003 that caused a warning. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14081 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-08-12- Optimization to instance system.zephyrus1-548/+20
* 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14003 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-29- Fixed a bug cleaning instance variable on party when instance is destroy.zephyrus1-2/+4
- Fixed a bug on Yuno Castle 2 and 3, not killing guardians. - Moved battleground team leave on unit remove map to prevent a crash on multimap servers. - Fixed a bug on checking range with the wrong target. Fix a crash on Item 2002 at refine >= 9. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13979 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-29* Fixed damage_level is not calculated properly on normal attack. Inkfish1-0/+2
* Kaahi is supposed to be canceled on logout. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13978 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-07-25Rewrote Quest Log system.Inkfish1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13959 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-20- Instancing System (Thanks to Sirius White who did most of the code, with ↵zephyrus1-4/+569
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13901 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-06-04* Updates to ST_PRESERVE and a few other minor details!L0ne_W0lf1-0/+7
- Recasting Preserve no longer toggles the skill off while active. - Preserve is no longer saved on log-out or mapserver changes. * Added SC_CRITICALWOUND and SC_SLOWCAST to negative statuses not saved with battle_config.debuff_on_logout&1 * Implemented the skills NPC_HELLPOWER and NPC_WIDEHELLDIGNITY, as per my personal experiences with the skill on iRO. * Increased MAX_MOBSKILLS to 50, as Satan Morroc has over 40 active skills now. * Added skill information for NPC_HELLPOWER and NPC_WIDEHELLDIGNITY, and enabled skills in mob_skill_db. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13843 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-05-25Now we can use 'boss_monster' to summon whatever monsters that need to be ↵Inkfish1-9/+9
radared by Convex Mirror. (bugreport:2653) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13813 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-05-15- Fixed a bunch of invalid memory access bugs as reported by Valgrind.skotlex1-2/+2
- Updated unit_stop_walking to not move character an extra cell when it is already half-way there unless flag 0x4 is passed. (bugreport:3078) - Fixed the monster MD_CASTSENSOR code not correctly setting the monster's aggressive state. - Corrected a few compiler warnings - Changed a bit the code for SC_BOSSMAPINFO so it is not so hideously ugly. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13774 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-04-23Fixed several occurences of map_freeblock() being used before map_deliddb() ↵ultramage1-1/+1
(caused by r13503, r13505 and r13508) (bugreport:2959). This would cause object ids (chatrooms / ground items) to never be removed when DEBUG_MEMMGR was turned on, ultimately causing a 'no free object id' fatal error. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13689 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-04-05The dynamic mobs system will no longer de-spawn mvps (because it's annoying ↵ultramage1-0/+3
as hell). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13662 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-26- Fixed item Nemesis.zephyrus1-0/+5
- Fixed Tarot Card being used on Emperium. - First Part of BattleGround Implementation (please wait). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13550 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-23 * Consolidated is_atcommand() and is_atcommand_sub()sketchyphoenix1-1/+1
- replaced gmlvl arg with a flag arg for internal/player generated checks. (dummy sds that used this arg are given gm levels) - each command check runs through is_atcommand() and is checked for its origin (internal or player generated) - charcommands are also parsed in this function. - script atcommand/charcommand function calls to is_atcommand() have been updated - also updated some clif/map functions calls to is_atcommand() * charcommands should now log properly with the target of the command included. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13545 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-02Fixing r13503...ultramage1-3/+8
- Added missing id_db removal calls for all flooritem objects (bugreport:2729) - Added missing destruction of skillunit_db on mapserver exit git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13505 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-31objects[] array removal (bugreport:2559)ultramage1-120/+26
- Removed the 2 MB wide static array in favor of a general-purpose DBMap (id_db for now). - Inlined functions map_addobject, map_delobject and map_delobjectnofree into their callers' code. - Replaced the free id lookup algorithm from ancient jathena with something more efficient. - Moved the algorithm to map_get_new_object_id() (similar idea as r13481). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13503 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-24* Changed the variables of the mapcache structs to fixed size equivalents. ↵FlavioJS1-7/+10
(64bit portability issue) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13483 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-24* Changed all uses of struct skill_unit_group* to group_id in ↵FlavioJS1-2/+2
status_change_entry's. (last known 64bit portability issue) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13482 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-13Mobs with nonzero spawn time can now be cached as well, saving some more ↵ultramage1-5/+8
cpu/memory (bugreport:1197). Fixed dynamic mobs being unloaded without stopping their respawn timer. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13445 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-12Added regen_db to reduce hp/sp processing delays (bugreport:2256).ultramage1-0/+32
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13443 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-23 * Added a few missing atcommands.sketchyphoenix1-1/+1
* Added more commands to configurations (bugreport:2565) * Added a missing charcommand symbol config to atcommand configs. * GM command configs under the old format will have a warning printed back to the console as being deprecated. * Other fixes/cleaning partially resolving bugreport:2549 git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13409 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-12-18Removed charcommand code while allowing atcommand code to support its ↵sketchyphoenix1-5/+1
functionality. Charcommands still retain their '#' symbol but now looks for a character name as the first parameter instead of last. Atcommand configs now support charcommand level configurations by comma seperation (e.g. 60,99) As a result of this, all atcommands that don't affect multiple users already (@kickall, @doom, @mapexit) are capable of remote usage. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13403 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-11-22* Hunted down improper uses of va_list variables.FlavioJS1-38/+49
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13383 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-18- Some corrections to Basilica.zephyrus1-2/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13217 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-09-09Enabled WoE SE to be run independently of WoE. Let's see how long it is ↵L0ne_W0lf1-0/+1
before something blows up, or Ultramage pulls out his hair while cursing my existence. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13202 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-24- Moving all content of Homunculus code to a proper file Homunculus.c/hzephyrus1-1/+3
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13122 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-23- Completed Mercenary Create, Delete, Save. Tests OK.zephyrus1-1/+2
- Incremented MAX_SKILL required for a proper load of Mercenary Skills. - Some fixes. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13118 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-20- New invisible walls system (for WOE SE and Battlegrounds).zephyrus1-1/+119
- New script commands for this system "setwall" and "delwall" - Added other scripts commands "changelook" (can be used to try clothes colors, hair styles, headgears, etc without saving this on logout). - Added getmobdrops to request a list of drop and rate of an specified class. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13101 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-15Split off mapreg code from script.cultramage1-3/+4
* new mapserver files, mapreg.h, mapreg_txt.c, mapreg_sql.c * removed MAPREGSQL from project files / makefiles * mapreg storage engine is now fully dependent on the server type * added config settings mapreg_txt and mapreg_db to inter config * added get_str() function to complement add_str() * fixed txt mapreg code allowing too long variable names git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13081 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-10Some small code cleaningultramage1-108/+147
- removed unused create_storage() function - removed unused char_db mapserver config setting - adjusted formatting of mapserver config loading code git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13063 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-30Removed the IRC bot system, now a customization (see topic:194306)ultramage1-6/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13014 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-29- Fixed a bug with Status Resist Potion.zephyrus1-0/+1
- Fixed double char data save on quit with storage opened. BugReport 1794. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13013 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-27Cleaned up several poorly chosen loginlog variable names.ultramage1-8/+6
Removed the unused login and txt->sql options in inter_athena.conf. Renamed config option log_db to log_db_db in inter_athena.conf. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13005 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26Merged the /loginmerge branch (topic:192754)ultramage1-42/+2
* the login server storage, ipban and logging systems have been abstracted and now provide a common interface; the rest has been merged into a single login server core (no more login/login_sql duplicity) * storage systems are now added via compiler options (WITH_SQL / WITH_TXT) * multiple storage engines can be compiled in at the same time, and the config option account.engine defines which one will be used. * due to MySQL autoincrement limitations, accounts with id '0' will not be supported; account IDs from this point on should start from '1'. * login_log() functions now again record IP addresses in dotted format, not as 4-byte integers (undo from r6868). * removed config options that defined column names in the login table * removed `memo` and `error message` columns from login db/savefile * moved `loginlog` table to the logs database * added sql files upgrade_svn12975.sql and upgrade_svn12975_log.sql * due to changes to the login table layout, I added an !optional! sql file (upgrade_svn12975_view.sql) that will provide a certain degree of backwards compatibility with existing software; read the instructions inside carefully! * moved third-party includes/libs to a separate directory * updated project files / makefiles Changed the way GM levels are handled * removed conf/gm_account.txt * added the gm level column to the txt savefile (after 'email' column) * gm level information is now transferred along with account data For open problems see bugreport:1889. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26Replaced occurences of '-1' with the more appropriate 'INVALID_TIMER' value ↵ultramage1-3/+3
where appropriate. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12998 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26- Implemented official Convex Mirror (With help of Yomanda and Sirius White)zephyrus1-4/+49
- Fixed SC_WARN don't receiving reflecting damage (Bug Report 1854). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12997 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-06-07Fixed a few properties of NPC_CHANGEUNDEAD bugreport:79shadow1-0/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12763 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-07- Added function battle_attr_ratio to handle just getting the attribute ↵skotlex1-0/+2
table data. Fixes Sense messing up with elemental based statuses. - Added Throw tomahawk to the list of items that do not trigger the equipment breaking code. - Moved a bit around the SC_ start of dancing skills to fix Moonlight petals pushing back the casters. - Modified status_damage to handle SC_KAZIEL. The return value of *_dead functions can pass 8 to specify that kaziel should not be triggered (ie: pvp/gvg) - Infinite Endure won't be passed on to devoted characters. - Infinite Endure is no longer saved on logout. - Added check to avoid gms opening vending shops if they don't have the required level. - Moved around the Steel Body S. Novice code, simplified it so it triggers before most of the penalties (death is cancelled). - Fixed the flee penalty not applying when you walk into a gvg map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12688 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-02* Fixed missing iterator destruction in the map_foreach* functions (followup ↵FlavioJS1-2/+5
to r12684). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12686 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-02* Changes to map_foreach* functions:FlavioJS1-20/+70
- removed the unecessary use of va_copy in map_foreachpc - applied the same function pattern to map_foreachmob and map_foreachiddb - created map_foreachnpc - extended the behaviour of map_foreach* functions to stop iterating when func returns -1 (also added missing changelog entries from ultramage >.>) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12684 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-02Replaced the very ineffective clif_foreachclient() with map_foreachpc() ↵ultramage1-8/+16
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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12683 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-21* Changed the data field of timers from int to intptr.FlavioJS1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12633 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-29- Fixed a visual bug in mail when sending Zeny.zephyrus1-0/+3
- Fixed bug pet loosing loot on logout. Bug Report 1291. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12449 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-28- Fixing a bug in map_nick2sd. Also fixed on Stable.zephyrus1-12/+11
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12445 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-27- Fixed a bug in map_nick2sd (sometimes we can have 3 chars with similar ↵zephyrus1-10/+8
names, and the "perfect match" in the 3º slot... or more). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12437 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26Adjusted eAthena code to compile cleanly in C++ mode.ultramage1-9/+9
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-22Mobs with no respawn information which don't have a master will not get ↵ultramage1-0/+3
unloaded by the dynamic mobs system. This prevents script-spawned mobs (bio MVPs, Emperium/Guardians, ...) and dead-branched mobs from disappearing (bugreport:1246). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12424 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-21Added VS9 project files. Removed redundant map_getallusers() functionLupus1-40/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-13Replaced some foreach-based functions by their inlined iterator equivalents.ultramage1-19/+18
Changed the dynamic mobs system, so that the flag that indicates whether a particular mob can be unloaded is stored in the mob's respawn data structure. Cleaned up related parts of the source code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12358 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-13Fixed one forgotten mob spawning function call causing mobs to duplicate ↵ultramage1-1/+1
when respawning (followup to r12350) (bugreport:1173) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12353 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-12Removed one mob data variable related to dynamic mobs that I found to be ↵ultramage1-6/+6
redundant. Changed MAX_MOBSKILL (max. amount of different skill entries per mob) from 50 to 40 to reduce memory consumption a bit more. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12350 54d463be-8e91-2dee-dedb-b68131a5f0ec