Commit graph

140 commits

Author SHA1 Message Date
Antz
bbf0020c1a [Sync] Some project sync 2020-02-17 09:22:33 +00:00
Antz
c01c2b4455 [m] Updated website URL 2020-02-17 09:22:07 +00:00
sanctum32
7f4338f0d6 [12712] Updated .account set addon command description
Fixed my revisions missmatch... i was working in another git clone and just latelly merged all to one... (look fix in git comment who applied 12774)
2020-02-17 09:20:51 +00:00
sanctum32
01594c4f21 [12712] Fixed last sql error (caused on cmangos merge) 2020-02-17 09:20:50 +00:00
Schmoozerd
ae7348f6b0 [12774] Merged cmangos last changes, special thanks for xfurry, Dramacydal, cala, Schmoozerd,
I'm not taking any credits of this commit.

Implement spell effects 62042, 62278 and 64767
Also limit the targets for 62577 and 62603
----------
Update git_id to reflect recent sql formatting changes
----------
Update to a safer code version and also add GO caster scenarios
----------
Allow aura 62038 to stack at every 3 seconds
----------
Improve handling of TargetMMGen
This will have impact on Chase and Follow Movement.
----------
* Refactor code to check if a new position is required for the MMGen into the new function RequiresNewPosition
* Refactor code to get the current targeted distance into function GetDynamicTargetDistance
* Change ChaseMMGen (angle = 0.0f case) chase to best contact point, not zero angle.

Thanks to Cala and X-Savior for testing. Special thanks to cala for also suggesting improved values for the magic numbers
----------
Improve ObjectPosSelector
Now a spot already occupied by the searcher will be prefered
----------
Get rid of bounding radius in GetNearPoint[2D] and ObjectPosSelector
----------
This changes how ObjectPosSelector is used.
It changes the way how the functions Object::GetNearPoint and Object::GetNearPoint2d behave.
----------
So you need to check all places where these functions are used if they are still used correctly.
----------
Especially check your scripts!
----------
Remove not required duplicate indexes
----------
Implement TARGET_92 as TARGET_SUMMONER
This target is used only as TargetA and the related spells are used only by temporary summoned creatures
----------
Implement some spell effects used by Hodir in Ulduar
Dummy spells 62797, 63499, 63545 and 64543
Periodic dummy auras: 61968, 62038, 62039 and 65272
Limit targets for spells: 62797, 63545, 64543, 62476 and 62477
----------
Implement some spells used at Algalon encounter
Spell aura entries 64345, 62018 and 64412
Positive target exception for spell 64996
Aura stacking exception for spells 62169, 62168, 65250 and 64417
----------
Implement effect for spell 63633
----------
EventAI - Ingame output of script state
----------
With this the command .npc aiinfo will give more output about the current state.
Remark that this output is only given if the LogFilter for EventAIDev mode is disabled
----------
FindGit.cmake already ships with CMake
No reason for us to ship it too. Also, we had an outdated version which
had not been used anyway, because we set the include path in such a way,
that the CMake delivered version is always found first.
----------
FindOpenSSL.cmake already ships with CMake
No reason for us to ship it too. Also, we had an outdated version which
had not been used anyway, because we set the include path in such a way,
that the CMake delivered version is always found first.
----------
EventAI - Add more developing error output
----------
Fix some target-type handling for EventAI
Also increase log-output for bad target-types
----------
Fix crash due to bad compiler (author Xfurry)
----------
Add special condition id for Ulduar
Will be used to check the availability of the siege vehicles for players
----------
Update spells 62374 and 62907
* limit spell targets of spell 62374
* implement spell effect for spell 62907
----------
Remove effect for spell 64503
Will be handled in script library. For details please check 8502cdfa64
----------
Implement spells 64489 and 64673
Both are used by Auriaya (Ulduar)
----------
Implement some spells for Ignis the Furnace Master
Spell entries: 62717, 62381, 62488, 62707, 64475 and 64503
----------
Implement spells 61187 and 61190
----------
CMake: generic way to build a script library
Added new parameter INCLUDE_BINDINGS_DIR which can be set to the name of a
folder inside src/bindings/.

Includes the script library in src/bindings/ with the defined name.
The name must correspond to the name of the folder and the folder must contain
a valid CMakeLists.txt

Note: if you currently use a script library, you will probably get a merge
problem on src/bindings/CMakeLists.txt as you will have modified this file
manually. Please use the new version of this file and rerun CMake once with the
parameter -DINCLUDE_BINDINGS_DIR=ScriptDev2 (if you are not using SD2 but
another script library, replace ScriptDev2 with the name of the folder in
src/bindings/).

If you do not use a script library you should not have any merge problems
and you don't need to do anything.
----------
Add CMake source groups to target 'game'
This is the exact same grouping as it is currently in the VC 2012 files.
These groupings will have to be refactored at some point as they are not
very logical.
----------
Add CMake source groups to target 'framework'
This is the exact same grouping as it is currently in the VC 2012 files.
This is part of cmangos/issues#67
----------
Add CMake source groups to target 'shared'
This is the exact same grouping as it is currently in the VC 2012 files.
----------
Add new parameter 'expansion' to command 'account create'
----------
Update some Sunwell Plateau spells

Limit targets and allow positive effect for spell 46650
Implement effect for spells 46289 and 46637
Remove effect for spell 44845 - will be handled in script library
----------
Implement some custom use for Effect Activate Object spells
This will fix the summoning events for the Wind Stones, Ice Stones, Skettis bosses and quest 11865
----------
Sync mangos.sql with other versions
----------
Redump sql databases to unify formatting
The main reason for this was because classic/cata has updated the sql formatting and manually syncing would be a pain so redumping from master->tbc->classic->cata is easier.

Only the formatting was changed. The values were not changed at all.

mysqldump was used however manual modifications had to be done.

Dump the database:
C:/mysql/bin/mysqldump.exe mangos > sql/mangos.sql

Split insert values into multiple rows:
Replace "),(" with "),\n("
Replace "VALUES (" with "VALUES\n("

Remove the character sets by replacing them with an empty string

Custom formatting of mangos.sql:
Move db_version to the very top
Create all dbscripts_on_* tables based on dbscripts_on_creature_movement
Preserve our custom insert formatting of spell_affect (tbc/classic), spell_bonus_data, spell_chain, spell_elixir, spell_proc_event, spell_proc_item_enchant, spell_template, spell_threat
Remove autoincrement values from insert values of pet_name_generation and remove AUTO_INCREMENT=261 value from its table structure

Custom formatting of characters.sql:
Move character_db_version to the very top

Custom formatting of realmd.sql:
Move realmd_db_version to the very top
----------
Immediately remove corpses when ForcedDespawn is used
Thanks to Neotmiren for pointing, special thanks to cala for testing!
----------
Fix use of config values related to quest-status and level
This fixes use of negative value in config values Quests.LowLevelHideDiff and Quests.HighLevelHideDiff
Also add some documentation around the related code
Thanks to Neotmiren for pointing and to cala for testing.
----------
Loot-System: Fix reference loading check
This fixes a false error output for loot references that are only used with spell loot.
Thanks to X-Savior for properly reporting both error messages and use case
----------
Add missing spell 61437 to playercreate spells for bloodelves
Thanks to NeatElves for porting from TC and pointing to this
----------
Fix load bar step for alendarMgr::LoadCalendarsFromDB
----------
Cody Style Improvements
Also remove an unused variable (thanks to Den for this!)
----------
Implement the spells used in the Chess Event encounter
Combat spell entries: 37775, 37824, 39338, 39342, 39341, 39344, 45260
Melee spells: 37142, 37143, 37147, 37149, 37150, 37220, 37227, 37228, 37337, 37339, 37345, 37348
Chess movement spells: 30012, 32312, 37388, 30284, 37144, 37146, 37148, 37151, 37152, 37153
Aura stacking exception: 32261 and 39400
----------
And more hotfixes with these format strings
----------
Hotfix to recent text loading functions
----------
Use possible changed model names with vmap extraction
----------
Fix some warnings
----------
Store how many texts are loaded for validity checks. Use this with EventAI
----------
EventAI: Use generic DoDisplayText and loading of additional text data
----------
Add generic DoDisplayText function and use additional data of dbscripts table
----------
Add const-correctness to Text related functions
----------
Add database changes to support more data for DB Script texts
----------
Add stacking exception for spells 39993 and 40041
----------
Allow spell effect 86 - Activate Object to use the misc value
----------
Allow player pets to swim
----------
Enable resummoning of warlock pets
----------
Do not remove FLY auras on Evade
Also consider npcs which have SPELL_AURA_FLY as being able to fly
----------
EventAI: Improve code
* Drop rather pointless bool to check if the number of assigned events is empty
* Before the phase was resetted on death if and only if the npc has Events defined
* DoMeleeAttackIfReady could have been called even though combat state could have changed while processing events
----------
EventAI: Implement ACTION_T_SET_THROW_MASK (46)
This Action can be used to set which AIEvents should be thrown automatically, if you need more flexibility, you can always use the manual ACTION_TH_THROW_AI_EVENT version.
* Also clean some error-log output a bit.
----------
Forward original caster GUID to script library
----------
Fixup commit 12511 Thanks to Zakamurite for pointing
Also thanks to him for giving a helping hand in correcting the commit
----------
Implement some spells for Felmyst encounter
Spell entries: 45714, 45717 and 45918. Limit targets of spell 45391
Also add stacking exception for auras 45068 and 45582
----------
Fix invisible spirit healers & such on death near them
This fixes an issue that occurs if you die close to a spirit healer/guide.
----------
Fix take ammo for most ranged spells
Fix spells like Arcane Shot not taking ammo while they should
----------
Check cast spell 51690
----------
Fix SpellDamage modifier of SPELL_AURA_MOD_DAMAGE_DONE_CREATURE
This aura modifies a flat value, not a percent value.
----------
Implement proc effect of spells 67712, 67758
related to items 47316, 47477.
----------
Improve proc of spell 50421
----------
Add and implement server-side spell 23770
----------
EventAI: Improve TargetSelection related ErrorLog output
----------
DBScripts Engine: Change behaviour to search for a different npc when using buddy-search
With this an npc buddy will be interpreted as "another npc with entry"
Also toggle command 31 - TERMINATE_SCRIPT to also look only for other npcs of entry
----------
DBScripts Engine: Allow pets as buddy
Add new flag SCRIPT_FLAG_BUDDY_IS_PET (0x20) that will search not for a normal npc with buddy-search, but also for pets
----------
DBScripts Engine: Support buddy search by guid
* Add new `data_flags` flag SCRIPT_FLAG_BUDDY_BY_GUID (0x10)
If this flag is set, the content of `search_distance` is interpreted as db-guid of the requested buddy
* Also switch most error log output to DB-error log output (though this will include false positives)
----------
2020-02-17 09:20:48 +00:00
sanctum32
7ae2fd2a6e [12697] Improve alcohol handling
Fixes client crash when using Barbershop Chair while drunk

Also allow .mod drunk to modify the drunk state of the targeted player (original author @Shauren)
2020-02-17 09:20:38 +00:00
sanctum32
5ea21772c6 [12677] Update characters.sql structure 2020-02-17 09:20:26 +00:00
sanctum32
a0797532e8 updated characters.sql structure 2020-02-17 09:13:20 +00:00
Yaki Khadafi
55ebf1b64f [12161] Update talents:
Fix talent learn
Fix talent reset
Fix talent inspecting

original author: @Shauren

Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com>
2020-02-16 20:41:38 +00:00
Yaki Khadafi
8e5d609e1e [12150] Drop arena point distribution, implement currency week count reset.
- Fix missing currency load.
- Some cleanup.

Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com>
2020-02-16 20:41:28 +00:00
Yaki Khadafi
b4d7780f46 [12140] Basic curency support. Based on @Supabad, @Shocker, @Shauren work.
TODO: reward/take currencies from quests, take currencies with extended cost, reset currencies week count.

Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com>
2020-02-16 20:41:19 +00:00
Yaki Khadafi
d1afa9743e [12138] Remove unused currencytoken and keyring player slots, remove support for no longer existant player currency and honor fields
Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com>
2020-02-16 20:41:16 +00:00
Salja
b60bc4a34b [12112] MaNGOS switch Support to Patch 4.3.4 Build 15595
NOTE:
 *Still under Developement
 *Need new Config Files
 *Reextract "dbcs, maps, vmaps, mmaps"

Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 20:39:20 +00:00
Salja
8749c2af3f [0104] Fix characters.sql
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 16:18:22 +00:00
Salja
c57a4983c7 [0099.99999] Typoooooo Grrrr
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 16:16:54 +00:00
Salja
1117cdaec9 [0099] Fix character_phase_data.
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 16:06:13 +00:00
Salja
61f44a08b1 [0029] Fix some typos from last commits.
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 07:37:29 +00:00
Fabian
3b8fb556a7 [0028] Implented new phase/map/terrain swap system for cata. 2020-02-16 07:37:26 +00:00
Salja
cb2d7ceea5 [0003] Typo
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 02:54:03 +00:00
Salja
8276c75bef [0001] Start on MaNGOS 4.3.4
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 02:54:01 +00:00
Yaki Khadafi
ec939a5bce Login world, fix sql
TODO: SMSG_UPDATE_OBJECT to see world

Signed-off-by: Yaki Khadafi <elsoldollo@gmail.com>
2020-02-16 02:25:32 +00:00
Salja
22bfaa12b0 Mage 400 INTO master/434
Signed-off-by: Salja <salja2012@hotmail.de>
2020-02-16 01:59:51 +00:00
Shauren
8e4c46ff2a [11785] Implement dungeon encounters (DBC part), thanks to rsa for porting it to mangos
Signed-off-by: Laise <fenrisse@gmail.com>
2011-09-04 13:15:22 +03:00
VladimirMangos
b5e136c289 [11716] Always use _unsigned_ BIGINT fields in DB for time store
Also some other BIGINT fields fixed.
2011-07-07 04:22:07 +04:00
VladimirMangos
0f0fa22607 [11704] Resolve possible crash in auction code for paiment pending state.
Source of crash in sharing item object for sent mail to new owner
and in same time use it in still existed auction for show pending paiment.
Crash possible if new onwer get mail in less hour delay and will drop item
at receive.

Solution: Added fields in memory auction object and table `auction` for
store item stack size and random property id. This let not use auction item
except points where item send to owner at expire and new owner at
buyout/timeout auction with bid.
2011-07-02 04:23:24 +04:00
Lynx3d
1ffde196ce [11620] Make equipment manager handle "ignore this slot" option properly.
Also fix SQL fields to use unsigned values as expected in code, otherwise large values will get lost.
2011-06-10 18:51:33 +02:00
BThallid
7237fe7f62 [11436] Really save/load item 5/6 objectives counters in quest status.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-05-08 01:55:32 +04:00
TOM_RUS
e1f345c49f SQL fix. 2011-04-24 22:22:37 +04:00
TOM_RUS
e39a8b55a0 [11391] Auction: multi sell, sale pending list and other fixes. 2011-04-24 21:57:49 +04:00
DasBlub
7b2308e483 [11372] Convert tabs to 4 spaces
Thanks to Darkknight900 for pointing out!

Used this script on sql/ and src/: find . -iname *.h -o -iname *.cpp -o -iname *.inc -o -iname *.sql | xargs sed -i 's/\t/    /g'
2011-04-17 01:34:51 +02:00
zergtmn
4687fa8cb4 [11299] Handle aura durations in SpellAuraHolder
- Unit::CalculateSpellDuration split into two functions
    - CalculateSpellDuration taking into account combo points and caster-side spell mods
    - Unit::CalculateAuraDuration taking into account target-side spell mods
- Diminishing is now applied before duration reduction mods
- Implement saving per-effect periodic timers to DB (required for auras affected by haste)
2011-03-30 23:29:01 +06:00
VladimirMangos
f73868a703 [11117] Allow for non-instancable maps have InstanceData and instance scripts.
* New table added for non-instanced maps (except BG/arena):
    - `mangos`.`world_template` (script mapping to non instanced data)
    - `characters`.`world` (saved script data string storage)

* InstancedData created for any map types including BGs/arenas, that allow have scripts
  state for any maps, but BG/arena instance data not saved.

Note: Possible structures will renamed later for clarify apply to any type maps,
but avoid for now for simplify changes and hard affect to script library sources.
2011-02-08 04:15:13 +03:00
Skirnir
75b4f75f4d [11066] Remove tail whitespaces.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-01-25 00:22:29 +03:00
VladimirMangos
6b9de2c958 [10973] Implement game event mail sends at event start/stop.
Also implement save game event state to DB mostly for avoid
send mails at resume game event after server downtime.

Thanks to X-Savior for inspiring and original research.
2011-01-06 12:40:15 +03:00
Quriq14
c7205a6837 [10862] Fixed not show and lost mail items in returned expire mails.
Also
* Use typename for mail item info vector.
* Include tools/characters_mail_items_cleanup.sql for cleanup lost mail items.
  It also included as sql update part. Sql update also fix receiver for stored
  in DB expired mail items.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-12-12 09:10:08 +03:00
VladimirMangos
525836734c [10783] Fixed comment in characters.sql 2010-11-25 17:00:10 +03:00
Deleterios
549b44d8ec [10664] Rename arena_team_stats fields for better fit to stored values.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-01 02:37:10 +03:00
VladimirMangos
f48e768a70 [10662] Implement partly item looting
* Not deleted normal item loot at first loot window close.
* Save current item loot content to DB for later continue looting.
* Cleanup spell effect SPELL_EFFECT_OPEN_LOCK check code
* Cleanup Player::AutoStoreLoot calls
2010-11-01 02:04:08 +03:00
NoFantasy
a38f97f71c [10655] Add support for monthly quests
Quest that can repeated each month are set by quest_template.SpecialFlags |0x04 flag
Quest are reset at midnight the first day of each month.
Note: for the time being, quest must also be set repeatable (SpecialFlags |0x01)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-10-29 20:39:01 +02:00
DasBlub
f3903d2261 [10568] Drop unused column 'realmid' from the table 'character_tutorial' 2010-09-30 22:51:39 +02:00
zergtmn
20f4a16f01 [10503] Move *_respawn tables to characters DB.
This allow have in `mangos` DB only world static state data.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-09-19 00:45:21 +04:00
VladimirMangos
ef9793dcd4 [10428] Fix line ends :/ 2010-08-31 07:00:06 +04:00
VladimirMangos
2c6fd1685e [10427] Drop redundant data from spell_proc_event after recent spell chain changes. 2010-08-31 06:47:40 +04:00
VladimirMangos
779e40d5ff [10332] Save cast item guid for auras also.
This must fix another way duplicate aura adding to DB error.
It also prevent wrong stacking work for weapon equip bufs
in cases when its allowed for both wepoan indepndently apply.
2010-08-09 06:17:23 +04:00
zergtmn
131fb72006 [10312] Allow store in DB same spell auras from different casters.
This fix errors at auras save to DB for like cases.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-08-03 04:06:07 +04:00
Salja
84dbc4c698 [10262] Fixed table auction name in characters.sql
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-07-24 18:27:54 +04:00
VladimirMangos
e3befa2072 [10254] Remove dependence auction data from auctioneer guid.
* Field `auctioneerguid` replaced by `houseid` and table reanmed to `auction`
  (it list auctions and `id` is auction id).
* Update related code.

* SQL update fill `houseid` field by old `auctioneerguid`
  BUT: SQL update expect that you world DB named `mangos`.
  If this not true for your case you need modify SQL update BEFORE APPLY
  in 2 placed in part "mangos.creature AS c, mangos.creature_template AS ct"

* Another small possitive result: now possible easy select auctions related
  to some auction store (1-3 is one team actions, 4-6 another team auction,
  and 7 is neutral auction store for both teams
2010-07-24 01:45:59 +04:00
Laise
f5565c725a [10160] Fix sql for character_aura and pet_aura 2010-07-08 17:52:36 +03:00
Laise
a32b3063a2 [10156] Add shared object for auras of same spell and move spell proc code to its own file, also spread procs by auras and effect indexes. 2010-07-07 19:08:26 +03:00
VladimirMangos
f520c9b1e0 [10051] Fixed talent 58426 broken after 3.3.3 switch.
Also cleanup character auras from wrong duration auras.
2010-06-12 04:32:33 +04:00