* Fixes#7081.
* Small refactor of the atcommands: iteminfo, mobinfo, whodrops, and idsearch.
* Item information gathering is now sped up.
* Refactored itemdb_searchname_array to store results in a std::map so that the data is sorted by ID automatically.
* Cleanups across the board to remove extra calls for itemdb_exists().
Thanks to @voyfmyuh, @CairoLee, and @Lemongrass3110!
* Fixes#7055.
* Fixes several atcommands used for mob and item information were not properly accounting for order.
* Resolves an issue where YAML databases were not properly utilizing the cache feature.
* Increased MAX_SEARCH to 10 by default as in renewal there are many more items with duplicated names.
Thanks to @Playtester!
Co-authored-by: Playtester <Kenji.Ito@gmx.de>
Speeded things up even more by making use of C++'s reference feature.
Fixed#6770 warning while at it.
Added back support for case insensitive booleans.
Fixed a very rare issue with cached databases.
Removed .children() calls
Added back type safety reports
Added ryml to login-server makefile
Thanks to @aleos89, @Atemo and @idk-whoami
* Fixes#6768.
* Send 0 as the parse line in SQL mode for item scripts as the ryml parser isn't fully populated in SQL mode.
* Also cleans up some documentation references for EquipScript and UnEquipScript.
Thanks to @dralucon87 and @Lemongrass3110!
* Use rapidyaml library to parse YAML databases instead of yaml-cpp.
* Drastically reduces the parse time for yaml databases.
* Removes yaml-cpp content from main servers, except for tool emitter.
Co-authored-by: Vincent Stumpf <vincents.995@gmail.com>
Co-authored-by: Atemo <capucrath@gmail.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Fixes#3302Closes#4348
Thanks for the initial release by @Cydh in #4348 and everyone that contributed to it.
All existing data was migrated and cleaned up where necessary.
Thanks to @Everade for his help here.
Laphine UIs are now fully yamlified and not dependent on the script engine.
They make use of new item group features and of the already existing random option group feature.
This way they will be far easier to be maintained, even though they are a little less customize able.
Thanks to @limitro, @CairoLee, @dimasshotta and everyone else who contributed!
Co-authored-by: Cydh <cydh.ramdh@gmail.com>
Co-authored-by: Everade <Everade@users.noreply.github.com>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Changes the Default of both "Override" settings ("NoUse" and "Trade" restrictions) from 0 to 100 and removes all "Override" settings currently set.
Minor formatting and doc fixes.
Fixes CD_In_MouthK (420003) headgear Location.
Thanks to @aleos89
* Converts item_combo_db.txt into YAML.
* Includes CSV2YAML converter.
Thanks to @llchrisll and @Everade
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
* Implemented new card subtype to differentiate normal cards from enchanted ones
* Available Subtypes:
** Normal (default)
** Enchant
* Updated the item database with the new subtype
* Updated the npc folders using getiteminfo ITEMINFO_SUBTYPE
Thanks to @Lemongrass3110 and @aleos89 !
* Resolves an issue of trying to create an item or mob whose name was over the cap limit.
* Display a warning now when the length is over the cap.
* Resized the item and monster database values that were over the cap.
Thanks to @Lemongrass3110, @secretdataz, and @Atemo
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
* Fixes#6163.
* An item's sell value will now always be calculated whether the item exists or not. This resolves adjustment of an item's buy value during the import process.
* Moves a couple checks to the loadingFinished function.
Thanks to @Daegaladh!
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
* Corrected an issue with UniqueId
* On Aegis some stackable items have the same GUID, the commit adds a setting to give the stackable items stacked (or not) to the player
* Removed IG_MAX in the parsing to allow new entries from const.txt
* Added more information about the 'Group' in a warning
* Removed exp_guild.txt (mistake from previous PR)
Partial takeover from #5997
Did some further cleanup and took it out of the pull request until secret has time to finish it.
All credits to @secretdataz
Co-authored-by: secretdataz <secretdataz@users.noreply.github.com>
Overhaul of the refine database
Added blacksmith blessing to existing NPCs.
Thanks to @Atemo, @aleos89, @cydh and everyone who tested it.
Co-authored-by: Atemo <capucrath@gmail.com>
Removed the ignore_items_gender config.
Fixed some existing items.
Moved some restrictions that were removed on official servers into the import folder.
Fixes#5458
Thanks to @HenryAlvarez12, @aleos89, @Atemo and @Daegaladh
* Fixes#3084.
* Creating random option groups now further reflects official behavior.
* Group bonuses can now be created without having to create multiple permutations of the same group.
* Specific slot options can now be defined which guarantee a bonus.
* Non-guaranteed options can now be defined along with a maximum amount.
* Random option value can now be defined as a range instead of a static value.
* Adds conversion of official random option groups.
* Includes CSV2YAML conversion tool.
Thanks to @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Since Doram's are 16 and MAPID_ALL was defined with only the first 16 bits were covered by 0xFFFF, the job restriction failed if Summoner was not explicitly allowed.
Fixes#5516
Thanks to @kaninhot004
Fixes#5510.
Resolves an issue with nodeExists not checking for null nodes resulting in parsing false-positives.
Further cleanup to the item DB SQL node parsing to allow some extra options to be toggle-able.
Default stacking options to false if not defined.
Thanks to @mplaten and @Lemongrass3110!
Fixes a couple issues with the column checking.
Adds verification to table columns to make sure table format is correct.
Cleans up the node processing.
Adds a loading progress status.
Adjusts the SQL import files to not destroy previously imported data.
Updated README.md to reflect the changes for SQL importing.
Fixes#5485Fixes#5477
Thanks to @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>