Commit Graph

1031 Commits

Author SHA1 Message Date
Sarjuuk
69de457108 Map/Spawns
* move areatrigger teleport endpoints and instance entrance points to spawns. This makes them editable like spawn points.
 * since instance entrances aren't shown on maps they are moved through the admin menu on the instances page.
 * rewrote spawns SetupScript. Individual groups can now be recalculated separately.
2024-06-28 01:04:29 +02:00
Sarjuuk
040cac41a1 Setup/Help
* created a generic help display for SetupScripts with sub commands
2024-06-28 01:04:24 +02:00
Sarjuuk
abbedf9ae4 Misc/README
* extracting Glues/Credits/ is optional. They are not used by aowow itself.
2024-06-27 14:51:16 +02:00
Sarjuuk
22b0f8c1c1 Setup/Update
* setup step names are allowed to have dashes and underscores
2024-06-26 16:52:45 +02:00
Sarjuuk
a4c734435e Map/ShowOnMap
* fix pins being combined across multiple floors
2024-06-26 16:52:45 +02:00
Sarjuuk
88c5127ab5 Map/Spawns
* fix spawns for multifloor dungeonmaps that use their worldmaparea entry for coordinates
 * fix mapper feature: move visible spawn point
 * resolve confused X/Y coordinate remapping from a time before i knew world coordinated are rotated by 90°
 * PS: Ulduar floor indizes were funky. No idea why.
 * restore old define order for g_zone_areas
2024-06-26 16:52:00 +02:00
Sarjuuk
a08a713dcc Misc/Fixup
* fixed typo in locale deDE
 * fixed markup not processing emotes with negative id
2024-06-26 16:42:04 +02:00
Sarjuuk
79764ced60 Core/ErrorHandler
* do not handle errors outside of the registered handlers
 * always handle all errors otherwise they get stored for error_get_last
 * always print errors to CLI
 * shutdown function handler should not be picky about what errors it gets to report
 * removed some mostly unused error strings
2024-06-24 18:10:44 +02:00
Sarjuuk
e614f415a9 Util/FileHandler
* try to create directory if file is to be written into nonexistent directory
2024-06-24 17:13:50 +02:00
Sarjuuk
10de320616 CLI/readline
* added checks if STDIN is available and open before accessing it.
2024-06-23 15:54:58 +02:00
Sarjuuk
9bb5afd9a7 Setup/CustomData
* removed unused option to have custom data defined in code
 * table `aowow_setup_custom_data` should be used instead
 * this kills a "creation of dynamic property" deprecation notice
2024-06-23 14:42:16 +02:00
Sarjuuk
615c203c7a Setup/img-maps
* script cleanup
 * fixed subzone generation and made color less garish
 * fixed alphamap generation and alphamapcheck not pointing to the same path
 * fixed padding UtilityScript args with unexpected var types
2024-06-21 16:57:33 +02:00
Sarjuuk
931a90f5c8 Misc/Fixup
* revision bump
 * minor log format fix
2024-06-20 20:49:11 +02:00
Sarjuuk
bf184e7555 Core/Setup
* rewritten to be able to dynamicly load it's components
   - CLISetup -> checks for UtilityScripts (config, setup, dbc reader, etc.) -> checks for SetupScripts (individual sql/file generators)
   - each step may now have a help prompt attached. If none are provided, the containing script may provide it's help.
   - all Scripts are self contained modules. No more editing of 3+ files if some component is added/removed
 * removed intermediaries FileGen & SqlGen
 * functional changes
   - allow providing CLI arguments to siteconfig and account UtilityScript and skip the interactive prompts
   - set slot for consumable enchantment items so they are filtrable
   - zones dataset is now localized and generated from GlobalStrings.lua and DungeonMap.dbc. Related data dumps removed.
   - 'aowow' and 'prQueue' executables now have shebangs

    WARNING - command line options have been renamed!
2024-06-20 18:10:12 +02:00
Sarjuuk
ab4cf67e80 Misc/Fixups
* Util::writeTable .. border length, toned down colors
 * Cfg::get .. empty strings and 0 can be valid, return null on failure
 * Game::getWorldPosForGUID .. fixed referencing soundemitters by soundId instead if index
2024-06-20 16:28:29 +02:00
Sarjuuk
7412a518a5 Setup/Classes
* fix skill aggregate
 * ya cant sum strings, ya dummy
2024-06-19 02:52:43 +02:00
Sarjuuk
3d84870db8 DBC/Fixup
* fix broken locale string extraction after e164023b8a
2024-06-19 01:34:35 +02:00
Sarjuuk
b5b62a5a62 Localization/GlobalStrings
* apply more strings from GLobalStrings.lua to localization
 * mostly ITEM_MOD_* and PVP_RANK_*
 * some fixes in the process
2024-06-18 22:59:20 +02:00
Sarjuuk
7e0be11323 Stats/CombatRatings
* define magic numbers from combat ratings
 * move forgotten rating base values from Util to Stats
 * fix localized rating strings for item and spell tooltips (expected float, got string)
 * some cleanup in item/spell types to make it more clear when an internal stat is being handled, not an itemMod or combatRating
2024-06-18 22:34:50 +02:00
Sarjuuk
e164023b8a Setup/DBC
* move dbc structures to separate files and allow loading a specific build
 * handle localized single string fields
 * add cli option for output table name
 * add cli option for wowbuild
2024-06-17 19:59:51 +02:00
Sarjuuk
12ddc6fe82 Misc/Fixup
* prevent direct access to some internal files where applicable and reword error for others
 * if CFG_DEBUG is set also enable debug in client javascript
 * non-breaking formatting changes
 * define regions and missing locales for later use
2024-06-17 19:59:51 +02:00
Sarjuuk
06ffba0239 CLI/readline
* do not reuse prompt variable for use input
2024-06-17 19:59:51 +02:00
Sarjuuk
d03448b053 CLI/FileAccess
* fix deep file/dir creation
 * also edited file permissions again and left a note so it doen't happen again .. maybe
2024-06-17 18:13:03 +02:00
Sarjuuk
0117916da9 CLI
* make tables more legible
2024-06-17 18:13:03 +02:00
Sarjuuk
c2bbfe17a6 Setup/DataStores
* do not rely on temporary converted dbc tables during runtime
 * create permanent tables instead
2024-06-17 18:12:59 +02:00
Sarjuuk
7b924a197e Mapper/Spawns
* do not try to place spawns assigned by instanced map <=> zoneId association. They have (0,0) as coordinates
2024-06-17 13:36:45 +02:00
Sarjuuk
8fe18ed41c Articles/Classes
* add class articles from 8e5bdebea0 db_structure.sql
2024-06-16 22:16:38 +02:00
Sarjuuk
d16b08bb29 Core/CharStats
* unify stat handling. If there are discrepancies left at least they are now centralized.
   - health should no longer pretend to be mana
   - stats are no longer capped to 32.7k points as items can have multiple of the same stat and handily exceed smallints
 * weight scale fixes:
   - "repair cost" is no longer a weight scale option. Why was it one in the first place? Also it wasn't even accessible before. (that was a bug)
   - "bonus armor" is now searchable and only applied to armor pieces
 * removed unused parsed stats from itemsets
2024-06-16 19:28:26 +02:00
Sarjuuk
cb3c7d4ef0 Misc/Util
* relax numeric type requirements when working with filters
 * restore smart type casting functionality of Util::checkNumeric when used with NUM_ANY
 * enable Util::arraySumByKey to work recursively
 * fix source display in listview
2024-06-16 17:22:08 +02:00
AthenaSui
a4d05dc036 Localization/zhCN
* cherry-picked translation from 820c88d412
2024-06-14 02:01:54 +02:00
Sarjuuk
ce0e57e390 Setup/Fixup
* run TDB checks agains word db as they are supposed to.
 * fixes #423
2024-06-10 21:07:57 +02:00
Sarjuuk
33ee358e0c Setup/DBconfig
* test for known world db formats and throw appropriate errors
 * test for imported aowow db and throw error if missing
 * make DB connection reloadable
2024-06-09 15:02:31 +02:00
Sarjuuk
82c04c9ed5 CLI/readline
* there are still terminals out there sending \r as line terminator...
2024-06-07 17:15:01 +02:00
Sarjuuk
fc86825b15 Pages/Item
* fixed fractional buy price for items sold in stacks in infobox (fixes #362)
 * fixed filter criteria enums being generally invalid
2024-06-07 16:40:26 +02:00
Sarjuuk
e873d8cbd0 CLI/readline
* ignore \e sequences except the single \e chars read to leave the current loop
2024-06-07 15:32:35 +02:00
Sarjuuk
69fe0b5c7d Cfg/Fixup
* also trigger first time load as soon as db is set up
2024-06-04 23:15:18 +02:00
Sarjuuk
e734b41632 Cfg/Fixup
* only throw errors if there is actually a config to work with. (like, not when you are just setting up for the first time)
 * do not use trigger_error() in CLI mode as it can cause a lockup as the error_handler tries to throw more errors.
 * assign lost validator fn flag to settings
 * also use validator onReset
2024-06-04 22:15:52 +02:00
Sarjuuk
5c1e9747c6 Misc/Cleanup
* remove some derelict code
2024-06-03 15:58:41 +02:00
Sarjuuk
f861886fdf Misc/Fixup
* Conditions: loot rows initially have no 'id'
 * fixed building talent string for hunter pets (different talents can occupy the same row/col spot)
 * added keys loot cols on creature table
 * fixed trying to show itemset type for itemsets without type
 * fixed waypoint calculation when moving entity between floors
2024-06-02 21:15:29 +02:00
Sarjuuk
efab0bad32 Misc/Fixup
* missed const from f77d676a19
 * missing start of string anchor in Util::checkNumeric
2024-06-02 02:45:29 +02:00
Sarjuuk
bc7d561da2 Core/Conditions
* rewritten and moved to its own class, should be easier to expand in the future
 * add missing sources and types from TrinityCore
 * implement conditions on Areatrigger and Loot containers
 * implement reverse lookups (e.g. a spell is a conditional for something else)
 * general beautification pass .. should be more legible in general

NOTE:
 * texts have been changed, so the existing translation for esES ist gone
 * selecting and describing condition targets is still wonky
2024-06-01 02:47:58 +02:00
Sarjuuk
84555afae3 Page/Notes
* also color code notes according to message severity
2024-06-01 02:47:58 +02:00
Sarjuuk
f77d676a19 Core/Config
* convert configuration from list of constants to object
 * fixes config changes not applying on cli whithout closing and reopening again
 * config variables are no longer embedded in localization text
2024-05-30 20:50:44 +02:00
Sarjuuk
454e09cc78 DB/Errors
* don't need to handle sql warnings in batch when the error handler doesn't use exit() any longer
 * display warnings as [WARN] and use consts instead of magic numbers
2024-05-28 22:40:46 +02:00
Sarjuuk
2d5caba814 DB/Structure
* some more corrections to field types
   - quests: rewardArenaPoints - unsigned -> signed
   - events: unify event id - tinyint -> smallint
   - objects: unify quest id - smallint -> mediumint
   - item_stats: stat cols - smallint -> mediumint (Tester Ring has 64k HP+MP)
2024-05-28 22:37:59 +02:00
Sarjuuk
f422c4ecfb Setup/Spawns
* implement SpawnedByDefault from TC
 * maybe fix a longstanding issue where multiple parent areas per instanced map lead to wrong spawn points
    map  should be                  can also be
    36   The Deadmines              The Great Sea, Unused Ironcladcove
    109  The Temple of Atal'Hakkar  Sunken Temple
    540  The Shattered Halls        Hellfire Citadel
    560  Old Hillsbrad Foothills    Hyjal Past
    631  Icecrown Citadel           The Frost Queen's Lair, Putricide's Laboratory of Alchemical Horrors and Fun, The Crimson Hall, The Frozen Throne, The Sanctum of Blood
2024-05-28 21:58:44 +02:00
Sarjuuk
a87b869896 Setup/BLP
* fix using replacement patch files as images
2024-05-28 20:17:16 +02:00
Sarjuuk
2c451b8deb Locales/Search
* do not apply minimum string length limiter to logographic languages
2024-05-27 17:54:58 +02:00
Sarjuuk
f6565ea924 DB/Structure
* fix data types and data length and add default values where necessary
 * data should no longer get truncated
 * misc fixes
2024-05-22 20:35:02 +02:00
Sarjuuk
7d5930865c DB/Setup
* fix erronous foreign key constraint revealed by MySQL 8.4
2024-05-21 17:46:23 +02:00