Age | Commit message (Collapse) | Author | Files | Lines |
|
- Corrected some NPC ID range checks
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixed an issue caused by unescaped characters being written and read out of the .pot unproperly.
This commit also causes map server to print the file it wrote to when terminating
Signed-off-by: shennetsind <ind@henn.et>
|
|
Servers can now run on any number of languages, without editing npc files.
Designed by Haruna and Ind
http://hercules.ws/board/topic/8687-hercules-ultimate-localization-design/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Variable scopes reduced
- Parenthesized ambiguous expressions
- Removed or added NULL checks where (un)necessary
- Corrected format strings
- Fixed typos potentially leading to bugs
Signed-off-by: Haru <haru@dotalux.com>
|
|
Addressing out of bounds read/write, pointless null checks on already deferenced variables, dead code.
Special Thanks to 4144 and Haruna!
Signed-off-by: shennetsind <ind@henn.et>
|
|
Addressing out of bounds read/write, pointless null checks on already deferenced variables.
Special Thanks to 4144 and Haruna!
Signed-off-by: shennetsind <ind@henn.et>
|
|
Addressing out of bounds read/write.
Special Thanks to 4144 and Haruna!
Signed-off-by: shennetsind <ind@henn.et>
|
|
|
|
Different fixes after automatic checks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
far npc.
Note for Haruna: possible it may add side effects. Need check.
|
|
|
|
|
|
|
|
|
|
|
|
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>
|
|
- Control flow statements (break, case, continue, default, do, for, if,
switch, whilei, else) and sub-function declarations (function) will no
longer show a custom error message when they are incorrectly
capitalized.
- Note: This does not mean that they are no longer case-sensitive. This
only means that no special message will be shown in case such an error
is detected. The script engine will throw a normal error, as it would
with any other kind of typo, rather than treating this as a special
case. Enough time was given to update third party scripts, and it is
now time to clean up our parsing code and get rid of these special
warnings.
- Variables, labels and commands will still show a warning for the time
being, since the side-effects of silently ignoring it could be quite
dangerous. An alternative approach to the case-check will be presented
in future. For now, those who want to disable it (and save a bit on
execution time and memory use), can simply comment out the #define
ENABLE_CASE_CHECK line in script.h, as usual.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Top level commands (function, warp, shop, cashshop, script, trader,
duplicate, monster, boss_monster, mapflag) will no longer show a
custom error message when they are incorrectly capitalized.
- Note: This does not mean that the commands are no longer
case-sensitive. This only means that no special message will be shown
in case such an error is detected. The script engine will throw a
normal error, as it would with any other kind of typo, rather than
treating this as a special case. Enough time was given to update third
party scripts, and it is now time to clean up our parsing code and get
rid of these special warnings.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- The issue was caused by memcmp failing because of garbage in structs
padding.
- Fixes bugreport:8410, special thanks (and credits for the fix) to Garr
http://hercules.ws/board/tracker/issue-8410-autotradeat-issue/
- Also reduced scope of some variables, where appropriate.
- Thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Parameters passed to bindatcmd-invoked labels are now properly
space-delimited.
- This is in order to support strings containing multiple spaces or
containing a trailing space. Previously it was impossible to create a
bindatcmd command that could accept a player name such as
'This name has two spaces' or 'Sir Trailingspace '.
- Added documentation and usage examples, especially wrt space handling.
See doc/script_commands.txt for details.
- NOTE: Your custom atcommand labels may need edits, as we're no longer
trimming multiple sequantial spaces or trailing spaces, in order to
gain more flexibility. It is your care to do that.
- Special thanks to Dastgir, jaBote.
Signed-off-by: Haru <haru@dotalux.com>
|
|
is about.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixed issue where 'pvp off' mapflag would assign the map the pk zone (this would not affect the pvp status of the map, only the disabled_ settings).
Special Thanks to kyeme
http://hercules.ws/board/tracker/issue-8272-map-zone-db-mapflags/
Signed-off-by: shennetsind <ind@henn.et>
|
|
reloadscript now clears npc-spawned (by warpportal script command) warps properly.
Special Thanks to Emistry, Cydh
http://hercules.ws/board/tracker/issue-8301-warpportal-reloadscript-map-server-error/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Checks after using --enable-sanitize.
|
|
- Functions that expect a printf-style format string are now marked as
such, so that gcc/clang will emit a warning warn you if you mismatch
format string and arguments.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Complies with CERT DCL37-C
- Fixes issue #293 (special thanks to elfring)
Signed-off-by: Haru <haru@dotalux.com>
|
|
unlimited item amount is supported in SHOP/CASHSHOP NPC objects and when value is a negative value other than -1 a warning is shown
|
|
to strcmp
Fixed issue that different header syntax would lead to a deprecation warning instead of the proper error
|
|
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Now the map-server returns nonzero even on nomral runs (or
--run-once) if any script failed loading.
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
|
|
Compartmentalized npc file processing
Corrected event initalisation order in npc_reload
Changed loading order, now item db constants are loaded before npc processing in order to avoid
labels overwriting constants values, like Aegis Names
Added information regarding reloading scripts in /doc/script_commands.txt
|
|
Added enumered returns to npc_cashshop_buy and to npc_cashshop_buylist
|
|
- 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 affects normal execution as well as ./script-checker runs.
Signed-off-by: Haru <haru@dotalux.com>
|
|
#Fixed issue where a corrupted map cache would lead to a crash
*Moved Big-endian compatibility functions to common/utils.h
#Fixed issue 8162
*http://hercules.ws/board/tracker/issue-8162-loadnpc-doesnt-trigger-oninit-of-duplicate-npcs/
*Added options to npc_parse_duplicate
#Fixed issue 8169
*http://hercules.ws/board/tracker/issue-8169-script-command-guildskill-skill-idlevel-not-working-as-intended/
*Changed *guildskill behavior, now it behaves exactly as depicted in the documentation
*Updated *guildskill documentation
#Added missing GBI types to mapif_parse_GuildBasicInfoChange now it's possible to change guild exp, lv, skill point and skill information
#GeoIP revamp
*GeoIP module was partially rewritten
*Added several data checks to prevent corruption and crashes
*Updated GeoIP database
*See https://github.com/maxmind/geoip-api-c/blob/master/libGeoIP/GeoIP.c for more information
#Added packetver checks regarding NST_MARKET
*Now *tradertype warns if user is trying to use this feature with older clients
|
|
- Sanitized some macros (they weren't going to cause problems, but
better being safe than sorry)
- Parenthesized an incorrect expression in 6f6a6b3.
- Inverted an if(foo); else bar; statement in 6f6a6b3 to get rid of the
empty expression (for legibility).
- Commented out some unnecessary lines as suggested by clang's static
analyzer.
Signed-off-by: Haru <haru@dotalux.com>
|
|
http://hercules.ws/board/tracker/issue-7694-guild-notice/
Follow up to 7a5f7db
Follow up to 4147d9f
|
|
http://hercules.ws/board/tracker/issue-8140-toucan-npc-error-message/
That error usually happens when the player clicked on a NPC that has the view id
of a mob, to activate this kind of npc it's needed to be in a 2,2 range
from it. If the OnTouch area of a npc, coincides with the 2,2 range of
another it's expected that the OnTouch event be put first in stack, because
unit_walktoxy_timer is executed before any other function in this case.
So it's best practice to put an 'end;' before OnTouch events in npcs that
have view ids of mobs to avoid this kind of error.
Also updated script_commands.txt to add this recomendation.
|