Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Modified exp_guild.txt processing to honor the value of MAX_GUILDLEVEL
and correctly handle overflows.
Signed-off-by: Haru <haru@dotalux.com>
|
|
We designed this one with having as little changes required elsewhere in mind, thus the way most socket-related things are called has not changed.
Plugins may now take a greater advantage of the socket features.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
http://hercules.ws/board/topic/3886-hercules-1st-2014-megapatch/
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>
|
|
Special Thanks to Vader.
http://hercules.ws/board/tracker/issue-7909-some-code-errors-and-optimisations/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Login server no longer insta-denies expired accounts, as there may be free to play (or non paying) char server modes in the list, also made sure type 3 is sent as normal mode to non-expired accounts (client has a hardcoded if type == 3 => "claim need to pay & deny message"
Special Thanks to Beret.
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Warnings detected thanks to Xcode's compiler settings (more strict by
default) and clang, warnings mostly but not only related to data sizes
on 64 bit systems, that were silenced until now by very lax compiler
settings.
- This also decreases by a great deal the amount of warnings produced by
MSVC in x64 mode (for the adventurous ones who tried that)
- Also fixed (or silenced in case of false positives) the potential
issues pointed out by the (awesome) clang static analyzer.
- Patch co-produced with Ind, I'm merging and committing in his place!
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixed a memory leak (bugreport:7885), thanks to rosfus
http://hercules.ws/board/tracker/issue-7885-memory-leaks-found-at-20131205-20h31m31s-rev-13617/
Signed-off-by: Haru <haru@dotalux.com>
|
|
guild storage would remain locked when the operation failed, now it unlocks regardless of success.
Special Thanks to GrumpyPanda
http://hercules.ws/board/tracker/issue-7879-guild-storage-bug/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Fixed an issue that caused the quest list not to be sent to the map
server.
- Special thanks to Beret.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Improved memory usage of the quest log system. (saves up to 75kB per
online character). Fixes issue #133.
- Fixed various issues with quest entries disappearing from characters
without an apparent reason, or monster kill counters getting stuck -
the issues were caused by a de-synchronization between the two
parallel questlog arrays in map_session_data.
- Added some code documentation.
- Thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
adjustment.
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
- The .favorite field of newly added inventory items wasn't correctly
initialized to zero, potentially causing data loss (fixes
bugreport:7854, thanks to Vincent, GrumpyPanda).
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Various Makefile optimizations
Signed-off-by: Haru <haru@dotalux.com>
|
|
Special Thanks to kyeme for all the debug information and help!
http://hercules.ws/board/tracker/issue-7840-char-server-crash/
Signed-off-by: shennetsind <ind@henn.et>
|
|
- 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>
|
|
Fixed glitch that'd occur in clients with login screen where even after logging out the client would still remember previously sent banned timestamps, keeping the char banned until client was reopened.
Also dropped a error message map server would show up when banning offline characters.
Special Thanks to Mvmbles for pointing it out, Haruna for testing and helping fix it.
Signed-off-by: shennetsind <ind@henn.et>
|
|
@charban/@charunban, can temporarily block any accounts as opposed to the usual account-wide block.
Special Thanks to Haruna, Yommy!
Signed-off-by: shennetsind <ind@henn.et>
|
|
the array was being erroneously modified in old client packets.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Previously attempting to log in while map server was unavailable or not yet ready would close the client, now the char select window shows up and attempting to select a character while the map server is unavailable will display a pop up "the map is not available", client will remain in char select window and won't close anymore.
Special Thanks to Haruna.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Enabling the maintenance mode will now restrict login based on group id (previously maintenance mode was merely cosmetic and would allow all accounts to access).
Renamed char-server.conf setting char_maintenance to char_server_type, added char_maintenance_min_group_id to be used in conjunction with char_server_type:1
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: shennetsind <ind@henn.et>
Conflicts:
conf/messages.conf
src/common/mmo.h
src/map/pc_groups.c
src/map/pc_groups.h
|
|
Signed-off-by: shennetsind <ind@henn.et>
Conflicts:
sql-files/main.sql
sql-files/upgrades/index.txt
src/common/mmo.h
|
|
Im pretty sure its on the clif.c
Signed-off-by: sevenzz23 <sevenzz23@yahoo.com>
|
|
Fonts are now relog-persistent.
Font items are now toggle-on/off, they no longer go away on use, they go away when their rental duration is over (and the font effect goes back to original).
Special Thanks to Yommy for all the data!
Signed-off-by: shennetsind <ind@henn.et>
|
|
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>
|
|
Item rentals now take place after status changes arrive, guaranteeing that items that expired cancel their effects properly.
Thanks to kyeme, malufett.
http://hercules.ws/board/tracker/issue-7418-setmount-boarding-hatler/
Signed-off-by: shennetsind <ind@henn.et>
|
|
|
|
http://hercules.ws/board/topic/581-implement-the-shadows-system/
Special Thanks to Yommy for all the client data, Haru for making it possible to get it out and rosfus for the details on the feature.
Shadows Feature requires packetver 20120925 or newer.
----------
Also: Updated all packets related to the shadows system, improved memory/processing of inventory/cart/storage/viewequip packets
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>
|
|
Newer clients freeze unless the char select list is resent, Haru and I confirmed official servers re-send the list upon deletion (we were not able to identify when this started though, its currently set to 2013 onwards -- if you have info on this please contact us so we can fix the range :D).
Special Thanks to LuLu, Haruna.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Thanks to LuLu for bringing it up.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Thanks to LuLu who pointed us in the right direction, http://hercules.ws/board/topic/2453-help-open-pull-request-fixing-char-deletion-time-in-2013-client/
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/2455-introducing-bank-support/
Thanks to Yommy, Haru!
Signed-off-by: shennetsind <ind@henn.et>
|
|
- By invoking 'make buildclean', you can clean up all the build
intermediate (object) files, without deleting any of the built
executables and plugins.
- To delete everything, use 'make clean', as you've always done.
Signed-off-by: Haru <haru@dotalux.com>
|
|
This is necessary for the upcoming HPM hooking system
|
|
Conflicts:
src/map/chrif.c
src/map/clif.c
src/map/homunculus.c
src/map/pet.c
src/map/script.c
src/map/skill.c
src/map/status.c
All clear.
|
|
Also removed duplicate mentions of timer within calls to shorten.
|
|
(related: b9c8f57)
Most renames are trivial (just to avoid shadowing global variables, even
if they currently did no harm), but there were some cases of partly
renamed variables that caused some NULL checks to always pass and who
knows what could have been happened when they were too subtle to make
the application crash.
Also corrected some potentially unsafe macro definitions
Signed-off-by: Haru <haru@dotalux.com>
|
|
To force a rebuild, it's still possible to use the -B flag of make, or
just run make clean beforehand.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Added an elemental_db setting to inter-server.conf (elemental table)
- Switched an instance of hardcoded `ipbanlist` to use the ipban_table
setting; thanks to Takkun, related to issue #135
- Switched two instances of hardcoded `char` to use the char_db setting
- Added a TODO notice about the usage of the login table (on a side
note, hardcoded) from the login server (related to issue #142)
Signed-off-by: Haru <haru@dotalux.com>
|
|
- If a Makefile.in is changed, ./config.status (or ./configure in case
it's not available) will be automatically run to update the Makefiles.
- Special thanks to Yommy for the idea.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Follow-up to 6cf032d. Special thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
This should resolve #138 (please reopen or comment on it if it's not the
case). Special thanks to Takkun for helping to reproduce the issue.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Thanks to Beret for reporting the issues, Ind for his great help with
research, suggestions and the necessary tools to fix this.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Custom Packet Support
- Custom Data Struct Support (currently append-able to map_session_data and socket_data)
- Char Server Support
- Login Server Support
http://hercules.ws/board/topic/1934-hercules-plugin-manager-update/
Documentation will soon be updated in http://hercules.ws/wiki/HPM
Signed-off-by: shennetsind <ind@henn.et>
|