Age | Commit message (Collapse) | Author | Files | Lines |
|
Adjusted zone merging logic to not merge items the main zone originally intended to enable (i.e. normal zone disables Velum_Jamadhar, gvg zone sets Velum_Jamadhar: false)
Special Thanks to Ancyker, Michieru
http://hercules.ws/board/tracker/issue-8395-map-zone-db-stacking-incorrectly-siege-gears-not-working/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Since there (currently and in future) is no difference between the
table structure for renewal and pre-renewal databases, it makes no
sense to have extra code that makes a distinction between their names.
A server will always use either one or the other, never both at the
same time.
- If you have a mob_db_re, mob_skill_db_re and/or item_db_re table,
please rename it to mob_db, mob_skill_db and/or item_db_re,
respectively.
- No upgrade script provided. I'd like to remind everyone that these
tables are optional (and deprecated), and they are only offered for
convenience for those who need them for web control panels and similar
software.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- login_server, char_server, map_server as well as the tools (mapcache)
now have a common command line arguments handling mechanism.
- All of them now accept `--help` (`-h`), `--version` (`-v`) and
`--load-plugin`.
- login_server now accepts `--login-config` and `--lan-config` instead
of relying on positional arguments to override those files. The old
syntax will no longer work, please update your custom startup scripts.
- char_server now accepts `--char-config`, `--inter-config`,
`--lan-config` instead of relying on positional arguments. The old
syntax will no longer work, please update your custom startup scripts.
- mapcache now accepts `--grf-list`, `--map-list`, `--map-cache`,
`--rebuild` in place of, respectively, `-grf`, `-list`, `-cache`,
`-rebuild`.
- A new macro `CMDLINEARG()` is provided, to help defining new command
line argument handlers (i.e. in plugins). the `addArg()` call is still
required, but its syntax has changed. The `help` argument is now of type
`const char *` rather than a function pointer, and it is supposed to
contain the message to show in the `--help` screen. Pass `NULL` if no
help message is desired.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Addresses instances crashing when running with the CELL_NOSTACK define enabled.
Caused by the define not being readily available to all areas that played with mapcell (now with it being included from map.h this no longer is the case)
http://hercules.ws/board/tracker/issue-8438-cell-nostack-and-instances-crash/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Rather than failing at runtime, plugins that try to access
non-interfaced, unavailable functions or variables, will now show an
error at compile-time.
Signed-off-by: Haru <haru@dotalux.com>
|
|
-http://hercules.ws/board/topic/8084-separate-the-mob-db-and-mob-db-re/
|
|
|
|
-http://hercules.ws/board/tracker/issue-8170-oborokagerou-charm/
-http://hercules.ws/board/tracker/issue-8274-ninja-charms-not-giving-proper-bonuses/
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
This includes, and is not limited to: mixed or wrong indentation, excess
whitespace (horizontal and vertical), misalignment, trailing spaces.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Split config cell_stack_limit into custom_cell_stack_limit (previous feature) and official_cell_stack_limit (see below)
- Expanded map_count_oncell by a flag parameter, currently only one flag is supported: only count standing units (needed for official cell stack feature)
- Added a new function map_closest_freecell that will return the closest free cell using the same order that official servers use
- Monsters will now actively search for a free cell when starting to walk randomly and when unlocking target
- When any unit finishes walking (regularly) and is not on a free cell, it will now actively search for a free cell
- Step actions will be delayed until a suitable cell was found, they will even be executed when the player walked slightly out of attack range
- Monsters will now stop instantly if their target is completely non-existent
* This is mainly for looters that had their loot taken
* Hide and most other situations still use the configuration setting monster_chase_refresh
Mega Thanks to Playtester
|
|
Increase sql password field size from 32 to 100 chars.
|
|
to Ind
- Service for you now work properly on all skill level.
- Fixed a problem that sometimes randomly a status change was removed on logout although it shouldn't. Special thanks to Playtester
|
|
* Official Icewall implementation and other fixes
- Reverted all the icewall-related changes done in SVN r15777 and following as testing shows they aren't official and are actually pretty exploitable (bugreport:7412)
- Instead implemented the official icewall characteristic that monsters can only leave an icewall cell to the west or south, the changes include:
* The "sight" path check no longer checks for the current cell so standing on an icewall allows you to see/attack into any direction
* The path finding will still ignore the current cell as before but the walk routine will not allow to walk east or north while standing on an icewall cell
* This leads monsters in the situation where they go through an AI loop not allowing them to escape the icewall (if their target is north or east of them)
* Monster in this situation will use idle skills and if they get attacked will use their rudeattacked skills if available, similar to traps like Spiderweb
* Added a configuration icewall_walk_block that allows to configure how long a monster should go through the AI loop before the server allows it any movement, this "safety" system is official and seems to equal about 75 AI loops; if you want to disable the whole icewall system so that monsters don't get stuck in icewall at all, just set this to 0
* Here are videos from jRO showing how this system works: http://ragdo.blog56.fc2.com/blog-entry-763.html
- Implemented the official calculation for "direction"; now you will be considered horizontal/vertical/diagonally aligned with a target cell in the exact same way as on official servers, this is for example used to determine whether an icewall or a firewall should be horizontal, vertical or diagonal; the only thing that is still unofficial is the default direction (officially always "west"); effectively now there are more situations considered diagonal than before
- Further cleanups on the idle skill use code for immobile monsters and monsters near a player but without a target (now skill using will always go via mob_unlocktarget)
* This also fixes that monsters switched to idle mode and start to use idle skills one second too late
Mega thanks to Playtester (rathena 5540d89cb0e)
|
|
32 chars is very small for password.
|
|
- When under Mind Break Matk Effect and Mdef reduction should not show on ALT Q(bug:7915)
- Plagiarism should not copy New 3rd class skills. Thanks to OmegaRed (bug:8118)
- Update Runstone Lux Anima to official formula (bug:8285)
- Add official formula for Demonic Fire
- Update damage formula for Unlimit, apply Def and Mdef to 1 during the skill and adjust the cooldown to official. (bug:8227)
- Flash Combo should not consume hp-sp and the skill not ignore the distance.
- Fix a bug with Full Throttle that not consuming sp correctly and adjust the cooldown to official.
- All WoE items are inactive outside WoE or PVP
- Add bonus3 bSPVanishRate for Vellum Items.
- Script Vellum Items.
- Add 2 new bonus bSetDefRace and bSetMDefRace for the Vellum Items. (rAthena c046668034)
- Fixed Bowling Bash, Brandish Spear, Grand Darkness and Meteor Assault reducing def during cast; the only skill that does this officially is Grand Cross (rAthena 694719048e)
- Implemented official Bowling Bash with all its special behaviors including the gutter line
* As many servers probably want to remove the gutter line problem, it is configurable; just adjust the bowling_bash_area setting in skill.conf (Bug:4209)
- Sonic Blow now has a fixed range of 1, even for monsters; a monster can't use this skill if you tank it from farther away (rAthena a15cee063d)
|
|
- Crashing issue when loading maps using map cache (issue: 8270) http://hercules.ws/board/tracker/issue-8270-enable-cell-nostack-crash/
- Counter was not being decrease correctly when leaving a cell
Merged map_addblcell and map_delblcell
|
|
- Complies with CERT DCL37-C
- Fixes issue #293 (special thanks to elfring)
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
- Includes in some files weren't sorted alphabetically. Special thanks
to KeiKun.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- This avoids plugins incorrectly using battle_config (with unreliable
results) instead of using the proper interface, battle->bc.
- Edited various #defines to use battle->bc instead of battle_config so
that they can work perperly in plugins as well.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
This reverts commit 94657284973f4037596bae468ebfbee5c217e02b.
|
|
This reverts commit b6b3f58795288701d0e162d43fa6f0a47af913b3.
Fixes issue 8184
http://hercules.ws/board/tracker/issue-8184-cart-related/
|
|
Added npc_market_data_db to inter-server.conf
Added shop message to messages.conf
Fixed small typo in clif_GM_kickack
|
|
- Changed order according to the (upcoming) code style guidelines.
- Fixes several issues caused by missing headers when their include
order is changed or in plugins.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- This can be easily used by plugins.
- See an example at
http://github.com/HerculesWS/StaffPlugins/Haru/script_mapquit
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Add official Job stats bonus and fix old class (pre-re and re got same stats bonus)
- Add official stats points for lvl 150 to 175
- Add new max_parameter for Extend Classes max stats 125
- Change max stats points for the 3rd classes to 130
- Add official Experience table for all classes
Add Star Gladiator official renewal exp table
Special thanks to Yommy and Muad_Dib for official info
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
And 19mb of memory goes down (32bit users should get a ~8.5mb memory reduction)
Special Thanks to pan!
Signed-off-by: shennetsind <ind@henn.et>
|
|
Also fixed an issue with socket flushing
Signed-off-by: shennetsind <ind@henn.et>
|
|
Changed types in clif.c:
bool clif_setip -> map:ip_set, map: char_ip_set changed as well
bool clif_setbindip
bool clif_send
bool clif_spawn
void clif_homskillinfoblock
bool clif_sub_guild_invite
Note that return values of those types have changed, so if any modification uses their return values
it should be changed.
clif_disp_onlyself replaced as a macro
clif_viewequip_fail replaced as a macro
Merged clif_skillup and clif_guild_skillup as they were using the same packet
Added packet_len() values in clif_updatestatus
|
|
- More info on the forums, at
http://hercules.ws/board/topic/4428-michierus-renewal-update/
Signed-off-by: Haru <haru@dotalux.com>
|
|
Zones are now able to merge during runtime.
Special Thanks to Haru, kyeme.
http://hercules.ws/board/tracker/issue-7333-map-zone-db/
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/
Signed-off-by: shennetsind <ind@henn.et>
|
|
As requested by the community in http://hercules.ws/board/topic/3832-hpm-custom-data-struct-for-instance-data-guild-data-and-party-data/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Aka autotrading merchants survive server restarts.
Originally sekai's (aka me).
Special Thanks to Haruna, Michieru.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Sanitized all potentially unsafe macros (related eA:15259)
- Improved some function-like macros to evaluate their argument only
once and keep it in a temporary variable. This improves performance
in the damage calculation related code.
Signed-off-by: Haru <haru@dotalux.com>
|
|
May be used as ./map-server --db2sql or by typing "server tools db2sql" within map-server console parse.
Special Thanks to Haruna.
Signed-off-by: shennetsind <ind@henn.et>
|
|
As a necessary measure for the upcoming bot that will keep .sql files in sync with their .txt counterparts.
Special Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: shennetsind <ind@henn.et>
Conflicts:
src/map/pc.c
|
|
- Added a command line argument '--script-check' to check a script's
syntax without running the server (and without requiring a SQL
connection). Usage: ./map-server --script-check /path/to/the/script.txt
- For convenience, a script-checker bash script is provided, to set the
path correctly when called from a different directory. Usage:
/path/to/Hercules/script-checker /path/to/the/script/to/check.txt
- While the script checker will supposedly work under windows as well,
no convenience scripts are currently provided for platforms other than
UNIX (feel free to open a pull request with a .bat launcher or
whatever you like)
- Integration with IDEs or text editors is possible. In fact, I already
have a fully functional plugin for vim (through vim-syntastic), and if
there's enough interest, I'll publish it. - screenshot: http://d.pr/i/NOBD
- If you want an online checker, http://haru.ws/scriptchecker/ is
running this code, without modifications and will be kept up to date
(without any warranty though.)
- Special thanks to Ind, Yommy, Streusel, who helped making this
possible, in a way or another.
|
|
Attempting to mimic the official as suggested in http://hercules.ws/board/topic/250-official-vip-system/
The variables can be read and modified thru scripting as well as sql, the patch introduces 3 new pc-arams 'ModExp','ModDrop' and 'ModDeath' for that purpose.
The OnLogin modifier display is not the real deal though -- wasn't able to get it to output properly (though that might have been my client files failt)
Up for review.
Signed-off-by: shennetsind <ind@henn.et>
|
|
whenever a character's hp was modified (e.g. damage/heal), clif_hpmeter would look for nearby characters with the PC_PERM_VIEW_HPMETER permission (foreachinarea operation), and since most of the time there isn't such a char nearby it would needlessly consume processing power, now hpmeter is only triggered when there are actual need (when a character with such capabilities is within the map). as little as this may look like, its a mega boost for damage-intensive areas e.g. woe, whereas a single AoE damaging 10 people would, without this, trigger foreachinarea 10 times one very hit.
Signed-off-by: shennetsind <ind@henn.et>
|
|
- This fixes an issue with timers that stop working after about 24-49
days when the tick overflows (note that this may happen much earlier
than that, and at hard to predict times, on some systems)
- Updated the RDTSC help message in the configure script to also warn
users about issues with SpeedStep enabled systems.
- On Windows, tick() still has a resolution of 10~15ms (or even as low
as 100ms on some systems). A TODO comment (thanks, Ai4rei) was added
for a follow-up patch, as I want this one to be as small as possible)
- Note: on Windows versions earlier than 6.x (Vista, Server 2008), the
tick overflow issue is NOT fixed, since they don't support the
function used to retrieve a 64 bit tick. This isn't a big issue, since
those platforms are already - or going soon to be - out of their
extended support period, and it's already advisable to upgrade, for
other reasons. If you're the unfortunate user of such a system, it is
recommended that you reboot your machine at least once every 49 days
for Hercules to work reliably.
- Note: To clear some doubts, since I've already been asked, this has
absolutely NOTHING to do with 32/64 bit CPUs or OSes. It's all about
a variable's size, not the size of registers of your CPU, and your
32bit CPU will be able to handle this just fine.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Quest Bubbles (Actually Works Finally)
|
|
As requested by the community in http://hercules.ws/board/topic/1477-mapflag-for-cash-shop/ and http://hercules.ws/board/topic/1476-disable-cashshop-in-pvp-woe/
'nocashshop' mapflag disables the usage of the cashshop button as well as any attempts to purchase (in case the flag is turned on after someone gets the shop open).
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Introduced questinfo cache, memory & processing speed improvement
- Fixed mini-map marker support
Special Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|