206 Commits

Author SHA1 Message Date
Singe Horizontal
53f1c5bb80
Default multi-processor compilation on VS (#8029) 2023-12-11 21:30:48 +01:00
Atemo
b4e066a37f
Extended item_group_db.yml (#6173)
* Added Index field
  The structure now allows to define the same item with different data
* Updated the tool yamlupgrade for version upgrade
2023-10-10 17:21:09 +02:00
Vincent Stumpf
d6ba042e1e
Upgrade yaml-cpp to remove warning (#7825) 2023-06-18 22:39:49 -07:00
Vincent Stumpf
711705df10
Upgrade to C++17 (#7811)
* Upgrade to C++17
2023-06-16 20:07:23 -07:00
munkrej
22aca36d35
Adds enchantgrade chance per refine (#7608)
Fixes #7607

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2023-04-14 23:43:33 +02:00
Atemo
74b2834502
Updates map_drops.yml (#7676)
* adjusted the rate in map_drops.yml to 1/100000 instead of 1/10000

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2023-04-08 16:48:01 +02:00
Vincent Stumpf
8f4a1d2932
Remove relative includes for 3rdparty imports (#7609)
This also changes the imports for config, custom to use the src include path
2023-03-07 16:21:28 -08:00
Aleos
240f71cbce
Converts Homunculus Database to YAML (#4659)
* Converts the Homunculus Database and Homunculus Skill Tree Database into one YAML flat file.
* General cleanups and optimizations.
* Includes CSV2YAML converter.
Thanks to @Lemongrass3110 and @Atemo!
Co-authored-by: Atemo <capucrath@gmail.com>
2023-02-15 14:42:51 -05:00
Vincent Stumpf
a35063dfd6
Upgrade to c++14 (#7593) 2023-02-13 10:58:31 -08:00
Vincent Stumpf
e235c9cab4
Change common and config includes to use <> (#7596) 2023-02-12 12:46:06 -08:00
Dominik Nussbaumer
e2ee5cbefb
hide functions for yaml2sql (#7390)
yaml2sql uses some headers for constants from map-server.
In order to avoid linker errros, no functions from those headers
must be used.
However, some static functions are the status.hpp which cause
linker errors when creating a debug build.
The define `ONLY_CONSTANTS` hides those funcitons for yaml2sql.

refs #7389

Co-authored-by: Vincent Stumpf <vincents.995@gmail.com>
2023-02-02 23:51:46 -08:00
Lemongrass3110
9dda166c0e
Converted cash shop database to YAML (#6299)
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2023-01-05 18:30:07 +01:00
Lemongrass3110
1361e9c1df
Enabled conformance mode in MSVS (#7513) 2023-01-03 18:50:16 +01:00
Lemongrass3110
2c4ee64b59
Start refactoring the core to C++ (#7303) 2022-12-20 23:37:31 +01:00
Aleos
8073d4e084
Adds EndOnEnd node to status database (#7313)
* Any status defined under EndOnEnd will be removed when the status becomes inactive.
* Renames End to EndOnStart.
* Removes some hard coded statuses.
* Includes YamlUpgrade Tool update to rename End -> EndOnStart.
Thanks to @Lemongrass3110!
2022-10-20 10:04:00 -04:00
Atemo
7c3bb6124a
Added missing increase of the versioning (#7220)
Follow up 17751aa4d7
2022-08-29 16:28:54 +02:00
Atemo
17751aa4d7
Added 'Gradable' in item DB (#7218)
* Added 'Gradable' in item DB
** The field defines if the item can be graded (renewal). (Default: false)

Thanks to @attackjom, @Lemongrass3110 !
2022-08-29 13:28:09 +02:00
Atemo
f6bc10bfb1
Mob quest target (#7071)
* Added functionality to select monsters that increase the quest counter
* Removed the extra conditions on Id
* Added an example in quest_db.yml for MapMobTargets
* Clean-up the docs
* Added the possibility to define "All" to Location

Thanks to @aleos89 !
2022-07-14 19:00:48 +02:00
Aleos
7d356806e1
Adds support for Spirit Handler in SQL items (#7041) 2022-06-17 12:06:49 -04:00
Aleos
2ff76e5060
Adds the CONVERT_ALL macro for YAML tools (#6986)
* Fixes #6813.
* Adds the CONVERT_ALL macro define to the header file.
* Adds a readme.md for the tools directory.
Thanks to @cbrgm and @Lemongrass3110!
2022-06-07 13:19:27 -04:00
Playtester
64f10ed10b
Fixes HPFactor being way too high (#6909)
- Fixes #6908
- HpFactor default changed from 20000 to 0
- Renamed HPMultiplicator to HpIncrease and SPFactor to SpIncrease so the naming is more consistent
- Fixed an issue with case-sensitivity (HP/SP -> Hp/Sp)
- YAML version of JOB_STATS is now 2
- "csv2yaml" and "yamlupgrade" converters updated accordingly
- Improved documentation

Special thanks to @Lemongrass3110
2022-05-02 13:50:09 +02:00
Lemongrass3110
01261dbf3d
Cleanup after RYML merge (#6785)
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
2022-04-03 04:02:13 +02:00
Jittapan Pluemsumran
d1b7061f5a
YAML loading optimization (#5997)
* 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>
2022-03-30 16:38:52 -04:00
Lemongrass3110
08192a35bc
Revamped Laphine UIs (#6625)
Fixes #3302
Closes #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>
2022-02-22 21:52:27 +01:00
Everade
2c48725761
Changes the default value of itemDB's "Override" to 100 (#6577)
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
2022-02-02 01:05:29 +01:00
Lemongrass3110
eb75e6fd6f
Added a check for MAX_SKILL being to small (#6504)
Fixes #6494

Thanks to @voyfmyuh and @CairoLee

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-01-12 11:56:45 +01:00
Atemo
c8d1d1ea1e
Converted item_combo_db txt to yml (#6162)
* 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>
2022-01-11 20:33:27 +00:00
Lemongrass3110
7556453dfc
Merge of Rytech's 4CrAM (#6414)
Merged Rytech2/4CrAM-Open@978d4fc406

Original author is @Rytech2 and all credits belong to him.
Cleanups by @Lemongrass3110, @aleos89 and @Atemo.

Co-authored-by: Rytech2 <rytech16@gmail.com>
Co-authored-by: aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <capucrath@gmail.com>
2021-12-30 20:25:19 +01:00
Lemongrass3110
745731b8e8
Fixed some small mistakes with skill tree (#6409) 2021-12-15 22:19:59 +01:00
Atemo
b644bcfe69
Converts the Skill Tree Tables file into YAML (#6070)
* Converts the Skill Tree Tables file into YAML.
* Includes CSV2YAML converter.
* Corrected the tree according to the client (SkillInfoList)
* Removed 3rd jobs tree from pre-renewal, some required stats not being loaded by default

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-12-14 00:00:33 +01:00
Lemongrass3110
02f247b798
Fixed an issue with skill db conversion (#6398)
With 6bc0dff the csv2yaml tool does not use deprecated constants anymore.
In our conversion logic we still used them though and therefore conversion might crash.

Thanks to @Rytech2
2021-12-09 09:25:22 +01:00
Atemo
4a778815a3
Converted mercenary_db to YAML format (#6101)
* Converts the Mercenary Tables file into YAML.
* Includes CSV2YAML converter.
* Fixed mercenary name not properly displayed after moving

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-12-07 00:49:44 +01:00
Vincent Stumpf
a7b4e5fd03
Fix compiler error on linux (#6376) 2021-12-05 21:45:52 +01:00
Atemo
a205287307
Converted elemental_db to YAML (#6102)
* Converts the Elemental Summons Tables file into YAML.
* Includes CSV2YAML converter.

Thanks to @Lemongrass3110, @aleos89, @secretdataz !
2021-11-26 00:53:35 +01:00
Aleos
fe0d445500
Fixes HP/SP table issues (#6361)
* Fixes #6360.
* Adds missing HP/SP values for Rebellion, Baby Rebellion, Expanded Super Novice, Expanded Super Baby, Baby Summoner, Star Emperor, Baby Star Emperor, Soul Reaper, and Baby Soul Reaper.
* Adds official HP/SP values for Summoner, Baby Summoner, Star Emperor, Baby Star Emperor, Soul Reaper, and Baby Soul Reaper. These are missing levels 176-200 though.
* Fixes the BonusStats parser to properly check for the max job level.
* Adds several logical checks for blocking level 0 during parse.
* Adds several logical checks for skipping content over a job's max level for HP/SP and BEXP/JEXP.
* Fixes the SP values being filled against the max job level instead of base level if the HP/SP Table wasn't being used.
* The parser will now properly fill the HP/SP array with 0's so that the loadingFinished() function can properly calculate a value to insert if something is missing.
* Adds a better solution to CSV2YAML when checking for the max base level when converting HP/SP.
* Fixes the CSV2YAML generating bad job bonus stat conversions.
Thanks to @kaninhot004 and @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-11-22 15:49:28 -05:00
Atemo
acac89eeca
Updated Classes field in item_db.yml (#6362)
* Updated Classes field in item_db.yml to include ITEMJ_FOURTH
2021-11-18 18:30:13 +01:00
Aleos
6bc0dff20d
Converts Job databases to YAML (#4759)
* Converts the job_db, job_db2, job_basehpsp_db, job_exp, and job_param_db to YAML.
* Optimizes several places utilizing C++ features.
* Removes 3rd class job data from pre-renewal.
* Adds minimal support for 4th jobs.
* Job level bonus stats now supports multiple bonuses per level as well as an integer for the specific stat instead of only being limited to 1.
* Includes CSV2YAML converter.
Thanks to @Lemongrass3110, @Atemo, @Balferian, @attackjom, @dimasshotta!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-11-17 16:13:07 -05:00
Lemongrass3110
c4df5caa00
Added support for level 2 armors (#6251)
Thanks to @Atemo and @aleos89 for their help.

Co-authored-by: Atemo <capucrath@gmail.com>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2021-10-06 16:57:25 +02:00
Lemongrass3110
029d8dff9b
Fixed a few problems with SQL databases (#6242)
Fixes #6202
Follow up to 6b84115

Thanks to @bgamez23
2021-09-27 15:02:13 +02:00
Aleos
893bfabe91
Adds support for Level field in ItemCost (#5268)
* Fixes #5266.
* Adds the ability to supply the ItemCost level to easily override a specific level or only define some levels that have item requirements.
* When the Level label is provided for ItemCost it becomes dependent to that level only.
* Removes some remaining hardcoded skills that have skill level dependent checks.
* Added support to CSV2YAML to properly convert those level dependent skills.
* Adds documentation to header and upped version.
Thanks to @Pringle012 and @Lemongrass3110!
2021-09-10 14:24:23 -04:00
Atemo
fe7cb5a33f
Converted const.txt to YAML (#6187)
* Converts the Constant Tables file into YAML.
* Includes CSV2YAML converter.

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-08-27 23:54:31 +02:00
Aleos
7e2a85a578
Updates the behavior of Stasis (#6196)
* Fixes #6071.
* Updates the behavior of Stasis to block Songs, Ensembles, Choruses, and magic type skills.
* Removes the INF2_IGNORESTASIS flag as it doesn't effectively fit it's purpose anymore.
Thanks to @Felleonel!
2021-08-17 15:44:32 -04:00
Atemo
4d2c5b02d3
Converted Elemental Attribute Damage Adjustment Tables to YAML (#6053)
* Converted Elemental Attribute Damage Adjustment Tables to YAML
* Includes CSV2YAML converter

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-08-11 18:39:18 +02:00
Atemo
99eed0c9b1
Converted mob_item_ratio to YAML (#6021)
* Converted mob_item_ratio to YAML
* Includes CSV2YAML converter.
* Added the possibility to remove an item from monster drop using this feature

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>

Thanks to @idk-whoami !
2021-08-11 16:28:46 +02:00
Lemongrass3110
6b84115790
Speeded up item name lookup (#6161)
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>
2021-08-08 16:46:44 +02:00
Kagetsu
efd66000f6
Fixes a crash in the csv2yaml tool (#6141) 2021-07-27 10:34:59 -07:00
Atemo
789e8f7199
Converted item group database to YAML (#6032)
* Converts the item_bluebox, item_cardalbum, item_giftbox, item_group_db, item_misc,  item_package and item_violetbox txt into YAML.
* Includes CSV2YAML converter.

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-07-22 00:12:10 +02:00
Atemo
7ade6d8c86
Converted txt guild experience database to yaml (#5995)
* Converts the Skill Tree Tables file into YAML.
* Includes CSV2YAML converter.

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-07-19 14:30:13 +02:00
Atemo
01a3caf9f9
Converted castle_db.txt to YAML (#6077)
* Converts the Guild Castles Database into YAML.
* Includes CSV2YAML converter.

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-07-12 23:54:14 +02:00
Atemo
f230b13ded
Converted statpoint.txt to YAML (#6010)
* Converts the Statpoint Database into YAML.
* Includes CSV2YAML converter.
* Added start_status_points to inter_athena.conf

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2021-07-05 19:06:49 +02:00