Disabled by default - as on official servers.
Gives a better warning if it is turned on and client side password encryption is enabled and the account cannot be created because of this.
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
1) global_acc_reg_num_table and global_acc_reg_str_table are used in the login server only and their configuration and access is not shared with any other component.
2) The character server does not check for global_acc_reg_str_table and global_acc_reg_str_table, but for acc_reg_str_table and acc_reg_str_table.
Adds config for Land Protector Behavior
* This battle config option adds the ability to change Land Protector to the old behavior.
* Related to #1404 and #4412.
* Thanks to @Cydh for the initial release. Thanks to @Tydus1 for the pull request!
* Fixes#4656.
* Adds an atcommand option for reloading the attendance database.
* Adds missing headers for attendance database.
* Adds missing reload options in the atcommand configuration.
Thanks to @lelouch22's suggestion!
* Fixes#1310.
* Added a battle config which allows toggling of the Battleground Queue client feature and also toggles between the modes of scripts.
* Added script commands bg_reserve, bg_unbook, and bg_desert.
* Removed old custom Battleground scripts.
Thanks to @Lemongrass3110, @Locien, @secretdataz, @InusualZ, @Normynator, @Atemo, @iubantot, @admkakaroto, and @noobzter003!
Fixes#1927
If aplayer is under devotion and gets attacked he will remain sitting server side, while standing up client side. This will result in the player not being able to move anymore, until he sat down/stood up again.
Since this is the real behavior on AEGIS we added a configuration for the fix, which will be enabled by default, since we think this is broken behavior. You can always turn it off in case you want to mimic official behavior.
Additionally fixed the devoting player as well:
The devoting player should also stand up when the devoted player is hit.
If the player is missed or he lucky dodges and no damage is dealt, no damage packet should be sent to the devoter.
Additionally fixed that the devoter did not use the waving damage animation, because the amotion and dmotion values were not sent.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Added support for signed 64 bit integer value computation into the script engine.
This is required because newer official features require support for bigger numbers inside the scripts.
This also cleans up a lot of messy code and fixes a few issues like script stack corruptions.
Thanks to @aleos89 and everyone who supported me with this.
* Adjusted documentation to match standard.
* Removed double quote from Table as there are no special characters used for these.
* Added license to import file.
* Added conf options to enable/disable monsters using idle skills and move when there's no players nearby.
Thanks to @aleos89
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Merges atcommand_athena.conf and help.txt into a single file.
Removed some leftover settings that were removed before.
Removed CLI support for modifying the atcommand configuration file.
Moved atcommand and charcommand symbol definition into conf/battle/gm.conf
Removed some messages that are not needed anymore
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
* Fixes#4283.
* Corrected pet bonuses not applying on intimacy changes.
* Removed pet_equip_min_friendly battle config as bonuses are determined on intimacy in the bonus script.
Thanks to @teededung!
* Fixed CZ_STANDING_RESURRECTION check
* Player can force to resurrect as long as they have valid Token of Siegfried even in auto respawn maps
* Added command `@resurrect` to resurrect using first matched Token of Siegfried item in inventory clients that don't show Resurrect button
* Set `respawn_tid` to int
* Added setpcblock and getpcblock script commands.
'setpcblock' command prevents/allows the player from doing the given type of action.
'getpcblock' command return the bit-mask value of the currently enabled block flags.
The available type are:
PCBLOCK_MOVE
PCBLOCK_ATTACK
PCBLOCK_SKILL
PCBLOCK_USEITEM
PCBLOCK_CHAT
PCBLOCK_IMMUNE
PCBLOCK_SITSTAND
PCBLOCK_COMMANDS
PCBLOCK_NPCCLICK
PCBLOCK_EMOTION
PCBLOCK_ALL
Thanks to @sigtus, @secretdataz, @Lemongrass3110 and @aleos89 for the help and reviews !
Credit to https://github.com/HerculesWS/Hercules/pull/842 for the idea.
* Implemented official pet evolution system
* Added evolved pets to pet database
* Corrected various pet system mechanics
* Migrated pet database to YAML format and the converter from CSV format
Thanks to @Lemongrass3110 @aleos89 and @Atemo for their suggestions and additional fixes
* Added getpcblock and setpcblock script commands.
* Added the docs
* Added the message 'This action is currently blocked.' when the player attempts to perform the following blocked actions
* PCBLOCK_USEITEM
* PCBLOCK_SITSTAND
* PCBLOCK_NPCCLICK
* The actions blocked are saved in state.block_action
* Click to the npc returns the WORK_IN_PROGRESS message when PCBLOCK_NPCCLICK is enabled
* Blocked action and reload script.
The player will return to his/her original state after reload script.
Thanks to @aleos89, @Lemongrass3110, @secretdataz
Synchronized the process of loading and parsing YAML databases.
Provides more robust parse warnings/errors.
Added Header checks to validate database versions.
Adjusted root keys to a standard name of Body.
Adjusted inter-server storages, achievements, and attendance to follow the new format.
Fixes#3483
Thanks to @Lemongrass3110!
Additionally added a script command to update the player's camera.
Added a new atcommand camerainfo for this, which is limited to admins.
Credits to @4144 for finding /setcamera
Added safestrncpy to char's inter configurations
Added safestrncpy to map's inter configurations
Added safestrncpy to message configurations
Adjusted some char configurations
Cleaned up logging configurations
Fixes#3624
Thanks to @mrjnumber1
* Fixes#3666.
* When purchasing items from a NPC shop, the minimum purchase price is always 1 Zeny.
* When selling items to a NPC shop, the minimum sell price is always 0 Zeny.
Thanks to @Balferian and @dastgirp!
* Added skill_duration mapflag.
* This mapflag sets a skill unit time limit to n% of original duration.
* Implemented mapflags for Hunter's Traps in GVG, BG, and Novice Guild maps.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Renewal Monster's ATK & MATK Calculation Updates
* Renewal Monster database updates
* ATK1 is *base* ATK, the range 80%~120% is calculated in src
* ATK2 is *base* MATK, the range 70%~130% is calculated in src
* Adjusted ATK range min~max in mobinfo atcommand
* Nothing was changed in pre-renewal system!
* Thanks to @aleos89, @slyx88 and Divine-Pride.net
We support all required features or have them ready in some pull requests.
The packet version after this will require a huge overhaul since item id sizes have been changed in all packets.
* Added config values for `allow_bound_sell`
* 0x4 allows bound item to be sold at NPC Shops
* 0x8 restrict only guild leader who can sell guild bound item at NPC Shops or Itemshops
* Added config to allow rental items can be sold at NPC `rental_transaction` (planned for more config values based on #3490). Default to `yes` allowed to be sold, still can be restricted by item_trade, item id based.
* Fixed itemshop which ignores another item stack in inventory even for same item currency
* Fixed exploit potential by using Itemshop & Pointshop
* Now equipped item cannot be sold at NPC
* Typo and grammar fixes. Thanks to @aleos89 and @secretdataz
This setting only affects renewal mode:
- Switch to a different weapon or unequip a weapon now cancel EDP
- EDP can't be used with fist (right hand check only)
Thanks to @aleos89 and @cydh !
* Fixes#1155.
* Added specific checks for weapons when equipping ammo.
* Ammo is removed if the required weapon is removed.
* Added battle configs to disable behavior.
Thanks to @Atemo, @exneval, and @benching!