summaryrefslogtreecommitdiff
path: root/src/map/map.c
AgeCommit message (Collapse)AuthorFilesLines
2019-01-14Add support for saving/loading barter shops from sql table.Andrei Karas1-0/+2
Also allow add duplicated item id to barter shops if price is different.
2018-11-26fix map_forcountinmap using block size rather than cell sizegumi1-1/+1
closes #2330
2018-11-13use a dedicated zone remove function when reloading zonesgumi1-1/+23
2018-11-13Merge pull request #2105 from Helianthella/getunits3Haru1-0/+13
break the loop in buildin_getunits when the max is reached
2018-11-07break the loop in buildin_getunits when the max is reachedgumi1-0/+13
2018-08-01reload the zone db on npc reloadgumi1-0/+28
2018-07-24Implementation of the official Achievement System.smokexyz1-0/+4
Source: http://ro.gnjoy.com/news/update/View.asp?seq=163&curpage=1 Script Commands - ``` achievement_progress(<ach_id>,<obj_idx>,<progress>,<incremental?>{,<char_id>}); ``` Includes an achievement_db.conf generator that reads from the item_db, mob_db (server side) and achievement_list.lub files to determine valid achievement entries based on item/monster availability. Achievements containing unsupported entries are commented out. This feature, although renewal-only in official servers, is capable of being used in pre-renewal mode on Hercules. Does not include the title system yet. A big thanks to - @MishimaHaruna for constantly reviewing. @4144 for all the support. @Asheraf for a lot of official information. Co-authored-by: "Dastgir" <dastgirp@gmail.com>
2018-07-24Questinfo System overhaulAsheraf1-11/+1
2018-07-24Convert questinfo data into a vectorAsheraf1-22/+17
2018-07-19Fixing detecting item id or item name in string.Andrei Karas1-2/+2
2018-07-19Replace item id shorts to int in map server.Andrei Karas1-1/+1
2018-07-01Change functions to static where possible (Part 4 - map)Haru1-183/+280
This fixes issues with plugins defining symbols with the same names Signed-off-by: Haru <haru@dotalux.com>
2018-05-312012-2018 !Maytichai Saowa1-1/+1
2018-05-03Fix overflow in map zones.Andrei Karas1-6/+8
2018-04-11*delwall now give a friendly warning to remind non-existent wallAnnieRuru1-2/+3
2018-02-17New mapcache systemhemagx1-102/+119
* Now each map is in separated file so now it will be easier to know which map got updated or delete on updates * Now there's md5 checksum check for each map * Now the map cache is platform safe, the old format was not packed which may result in undefined behavior * The map cache tool got converted into hercules plugin Signed-off-by: hemagx <ibrahem.h.basyone@gmail.com>
2018-02-12Fix possible crash in zone change code. Fixes #1971Andrei Karas1-0/+2
In function map_zone_change2 silently exit if zone is NULL.
2018-01-25Implementation of Official Clan SystemMurilo Pereti Tavares1-0/+18
All official features work including the autokick for inactive members And the system is completely customizable.
2017-12-23Add support for new drop packet 0xadd for zero clientsAsheraf1-1/+3
2017-10-30Add monster spawn boss flag for miniboss: miniboss_monsterAndrei Karas1-1/+1
also fix boss_monster flag for works as mvp and not like mini boss. unhide boss flag if hp bar disabled.
2017-08-20Ignore hidden units in the cell stack limit checksHaru1-0/+5
- This improves the Dancer Quest experience as well as other cases of hidden NPCs blocking off certain cells - Fixes #1135 Signed-off-by: Haru <haru@dotalux.com>
2017-07-30Implementation of RoDEXKirieZ1-0/+5
2017-07-27Fix possible buffer overflows with snprintf.Andrei Karas1-2/+2
2016-10-23Removed the too small max key length limit on the npc_removed_list DBMapHaru1-1/+1
- Fixes #1483 Signed-off-by: Haru <haru@dotalux.com>
2016-10-22Implemented SU_STOOP Skill.Dastgir Pojee1-0/+1
Reduces Incoming Damange by 90% for 6 seconds. When Knock Back, the effect disappears.
2016-09-30Add different fixes for gcc 7 warnings.Andrei Karas1-3/+4
Some possible buffer overflows. Add attribute for mark fallthrough cases. Skipped libconfig warnings.
2016-09-18Removed special handling of "clear" in npc->addsrcfile()Haru1-1/+1
- Use npc->clearsrcfile() instead. Signed-off-by: Haru <haru@dotalux.com>
2016-09-18Restored handling of "all" in npc_removed_listHaru1-4/+8
- The feature was missing/incomplete since the conversion to libconfig - Fixes #1425 Signed-off-by: Haru <haru@dotalux.com>
2016-09-18Corrected some issues in the npc_removed_list and map_removed processingHaru1-4/+4
- Removed the unnecessary DB_OPT_RELEASE_KEY flag (we don't want to release the original key, but only the duplicate one, which is already managed by DB_OPT_DUP_KEY) - Added DB_OPT_NULL_DATA to the npc_removed_list DBMap (follow-up to 4aa5286, related #1430) Signed-off-by: Haru <haru@dotalux.com>
2016-09-13Fixed an error in the scripts_removed.conf processingHaru1-1/+1
- Fixes #1425, fixes #1430 Signed-off-by: Haru <haru@dotalux.com>
2016-08-22Corrected an issue that prevented the map server's database port from being ↵Haru1-1/+1
changed Signed-off-by: Haru <haru@dotalux.com>
2016-08-20Re-added HPM support for configuration settingsHaru1-1/+2
Plugin settings should be relative to the the libconfig file root. For example, a configuration setting of type HPCT_CHAR will be relative to the root of conf/char/char-server.conf. In order to add a configuration entry inside the char_configuration block, the full configuration path (slash-delimited) should be passed to addCharConf(), as in the following example: `addCharConf("char_configuration/my_setting", my_parser_function);` Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported battle.conf to libconfigHaru1-3/+4
Ported to modern Hercules and cleaned up from Panikon's commits: 44fea0b3cdba6901599265220228ba4359b1f96d, 9cba05bc0811e638bbaaa6cff887d0b2c9872560 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported socket.conf (was packet.conf) to libconfigHaru1-0/+1
Ported to modern Hercules and cleaned up from Panikon's commits: b10f2a88073882bea812c6278fdec7848102ab87, bc5007299a92898ea4630f2a977d9a1b42b6c145 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported script.conf to libconfigHaru1-3/+4
Ported to modern Hercules and cleaned up from Panikon's commits: a0e4da63ef3afcd896603398e2468876681ac54a, b5f487c2676833492a6d4044b5d1f1bb1e552b04 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported logs.conf to libconfigHaru1-3/+4
Ported to modern Hercules and cleaned up from Panikon's commits: 2a7c931b9b4e0f9c6e7766cb25701514230ec7e3, f5b1ee3df777ba7e69f1f99abaf0d00b987fc0e3, 6d1f8f50b0e7349bdab2c53bb172d0b036e47c04 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported npc config to libconfigHaru1-35/+82
Ported to modern Hercules and cleaned up from Panikon's commits: ca009582cb22340951aa3e86c044ec1dca05df36, 6d6adf9bab2ba6f4274395018b8def566b880197 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Improved map list loadingHaru1-62/+45
There's no need to parse the map list twice anymore Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported map-server.conf to libconfigHaru1-120/+329
Ported to modern Hercules and cleaned up from Panikon's commits: ee48838b12d15902fc14738cfa46d58b39080d11, 55498ebb7ac5d28444d0b01506c88ef6874f6055, 6d1f8f50b0e7349bdab2c53bb172d0b036e47c04, 25dde7e46524ace330b83cb4bf0255cc4d796792 Signed-off-by: Haru <haru@dotalux.com>
2016-08-19Ported inter-server.conf to libconfigHaru1-55/+119
Ported to modern Hercules and cleaned up from Panikon's commits: 40f9ec33868e2240cab013308897898ed252b3e0, a9d646da19e25ab6fcf44dbd1ae7d90c30f6686c, 1aa8581a0aecbfd53e877686c399ffb731dcd75e, 72c645b015ae6130ca7d4309d0fb1413340e7f23, f8c906a0496b9acdae1d8244b1544fa03592061e, 51d88a58983c9552dfd1a0f059e5a031742aed61, 443684b3c77f4c32fe7877a7f8d62debf73b1e93, cf93eafef1f322cd1583226272b7d4008f562da4 Signed-off-by: Haru <haru@dotalux.com>
2016-07-17Improve a bit performance in bl_getall_area.Andrei Karas1-27/+73
2016-07-12Various changes to the grfio interfaceHaru1-1/+2
Mostly stylistic changes. Cleaned up documentation. Signed-off-by: Haru <haru@dotalux.com>
2016-07-12Interface grfio.chemagx1-9/+9
2016-07-03Add into travis configure option --enable-buildbot.Andrei Karas1-0/+2
Also disable all known default warnings if build bot option enabled.
2016-06-25Moved translations template generator to a pluginHaru1-40/+0
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Improved the format of the exported .pot translation templateHaru1-1/+24
Signed-off-by: Haru <haru@dotalux.com>
2016-04-04Add missing checks into map.cAndrei Karas1-13/+101
2016-03-20Dropped typedef from DBIteratorHaru1-32/+33
Signed-off-by: Haru <haru@dotalux.com>
2016-03-20Dropped typedefs from union DBKey and struct DBDataHaru1-7/+9
Signed-off-by: Haru <haru@dotalux.com>
2016-03-20Removed unnecessary typedefs from sql.hHaru1-0/+1
- Sql -> struct Sql - SqlStmt -> struct SqlStmt - SqlDataType -> enum SqlDataType This is expected to improve compile time, by removing #include cycles (and forward declaring instead) Signed-off-by: Haru <haru@dotalux.com>