131 Commits

Author SHA1 Message Date
regneq
c2b3e85272 Added new pathgrid type 7 (GridCenterPoint). This grid causes a NPC to alternate between the first waypoint in their grid (Number 1 in the editor) and a random waypoint. (1 - 7 - 1 - 4 - 1 - 11 - 1 - 5 - 1, etc)
Changed the wandertype IDs to an enum so we know what we're looking at.
Added new pathgrid type 8 (GridRandomCenterPoint).  (SQL required) This new type causes a NPC to alternate between a random waypoint in grid_entries and a random waypoint marked with the new centerpoint column set to true. If no waypoints are marked as a centerpoint, this wandertype will not work. There is no numbering requirement or limit for centerpoints. You can have as many as you need.
New spawngroup field: wp_spawns (SQL required). Added a new spawngroup field, which is a boolean that if true changes the behavior of spawngroups this way: If the spawnpoint in the spawngroup has a grid, the NPC will spawn at a random waypoint location taken from its grid instead of the spawnpoint location.
New randompath behavior: The randompath grid type will now use the closest waypoint as its current waypoint on spawning.  This allows multiple spawn locations to use the same grid without having the undesirable behavior of walking to the first waypoint through walls and ignoring waypoint nodes. NPC::GetClosestWaypoint() was renamed to NPC::GetClosestWaypoints() as it was filling a list of multiple waypoints. a new method NPC::GetClosestWaypoint() returns a single waypoint in the form of an integer.
2020-01-24 15:11:08 -08:00
Akkadius
b9e87abb3c Implement Character Soft Deletes 2020-01-10 02:54:29 -06:00
Akkadius
6e4d9a915d Fix database update condition loop [skip ci] 2020-01-01 14:56:15 -06:00
Uleat
72f4f10dbb Rename table Banned_IPs to banned_ips [skip ci] 2019-12-24 02:36:00 -05:00
Uleat
6b201fcbef One-time update to log_category_descriptions to fix naming discrepancies. Additions added after the auto-inject code (including future additions) are not affected 2019-11-09 19:28:21 -05:00
Akkadius
4e129ca7b5 Update database manifest 2019-09-16 22:41:03 -05:00
Noudess
2e98de3923 Changes to allow individual spawn2 locations to vary in npc selection (cond) 2019-09-02 10:34:09 -04:00
Chris Miles
9c9615e8bb
Fix the manifest [skip ci] 2019-07-23 19:06:11 -05:00
Akkadius
35eb5b24dd Implement flymode 2019-07-10 03:39:07 -05:00
Akkadius
c8d6895526 See changelog 2019-07-03 00:59:49 -05:00
Noudess
f75c5b6fc8 Fix db version. 2019-03-25 19:32:46 -04:00
Noudess
63045fadd9 Manifest and sql to add model to npc_types to override race if presentwq 2019-03-25 19:29:57 -04:00
Paul Coene
6dbd579f4f
Merge branch 'master' into master 2019-02-28 15:05:18 -05:00
Noudess
aa9611d494 Code added to auto fix quests. Updated manifest and version to current. 2019-02-28 15:01:39 -05:00
Uleat
b810e3aa71 Fix for profanity command script file name in manifest [ci skip] 2019-02-04 21:39:16 -05:00
Uleat
93a0ad2ceb Added command 'profanity' 2019-02-04 07:02:27 -05:00
Noudess
46ead8e29e Move out faction changes to later db version as it is still pending. 2019-01-23 14:54:16 -05:00
Akkadius
b0c4d626f2 Update db_update_manifest.txt [skip ci] 2019-01-22 03:16:02 -06:00
Kinglykrab
d8c88aac96 Added multi-version capabilities to NPCs.
Setting a spawn2 row's 'version' column to -1 will make that spawn appear in all versions of the zone.

This is similar to how doors/objects/groundspawns use version -1.
2019-01-10 19:55:59 -05:00
Noudess
5474661e11 Updated manifest to remove extra space, removed comments from sql dumpw 2019-01-05 13:00:33 -05:00
Noudess
ca6bcdb1f9 Updates to match up with db versions that have chwqanges since PR created. 2019-01-05 12:46:52 -05:00
Akkadius
b9abc09294 Update base scaling data [skip ci] 2019-01-04 18:14:11 -06:00
Paul Coene
e71eefab50
Merge branch 'master' into master 2018-12-18 11:33:52 -05:00
Noudess
469224cfe7 Update manifest versions 2018-12-18 11:24:10 -05:00
Noudess
688e37f108 Changes to accomodate the new raw faction data. 2018-12-18 10:58:01 -05:00
Akkadius
0681e6dbb2 Merge branch 'master' into movement_manager 2018-12-17 01:39:37 -06:00
Akkadius
6b18c71c11 Changelog 2018-12-17 00:35:08 -06:00
Kinglykrab
8ae9c99f3d Added new data bucket and quest functionality.
Added multiple new instance related quest functions.
	1. quest::GetInstanceIDByCharID(const char *zone, int16 version, uint32 char_id)
		- Allows you to pull the instance ID of a client by character ID.
	2. quest::AssignToInstanceByCharID(uint16 instance_id, uint32 char_id)
		- Allows you to assign an instance to a client by character ID.
	3. quest::RemoveFromInstanceByCharID(uint16 instance_id, uint32 char_id)
		- Allows you to remove a client from an instance by character ID.

Added spell buckets, similar to spell globals.
	- Uses a new spell_buckets table and the Spells:EnableSpellBuckets rule.

Added max level by data bucket.
	- Uses data bucket char_id-CharMaxLevel and Character:PerCharacterBucketMaxLevel rule.
2018-12-13 19:42:31 -05:00
Noudess
cfbd8e727a Fix typo in manifest. 2018-12-12 09:15:54 -05:00
KimLS
0662e3c780 Merge fix with sql 2018-11-25 15:35:52 -08:00
JJ
be17d21149 Add primary key to name_filter table. [skip ci] 2018-11-25 16:46:42 -05:00
KimLS
e8dffa1087 Stuck behavior sql 2018-11-11 01:11:07 -08:00
Uleat
84643ce9a1 Inventory update work-around [ci skip] 2018-10-22 22:27:05 -04:00
Uleat
7c5b1e8fd2 Merge branch 'master' of https://github.com/EQEmu/Server into inv_possessions_rework 2018-09-23 01:02:54 -04:00
Michael Cook (mackal)
7836d020ce Add NPC Max Aggro Distance to zone table 2018-09-08 00:22:16 -04:00
Michael Cook (mackal)
00e44285a7 Fix column cases to make people happy
If you already sourced, too fucking bad.
2018-09-08 00:09:14 -04:00
Michael Cook (mackal)
2d84029b37 Add FastRegen* to zone table 2018-09-07 23:54:40 -04:00
Uleat
feb4cc37c6 Rework of 'invsnapshot' command and implementation of automatic inventory snapshots 2018-09-03 20:57:20 -04:00
Uleat
509a2b30a5 Inventory possessions beta testing 2018-08-13 22:32:36 -04:00
Michael Cook (mackal)
dfa7e2bffb Add completion emote for tasks 2018-07-20 14:06:07 -04:00
Michael Cook (mackal)
c08993b60b Bit of Task Revamp (shared still unimplemented)
Lots of change, packets should be better defined.
Task type tasks are now supported
2018-07-09 16:36:18 -04:00
Akkadius
41ab512349 Implemented qglobals replacement and/or alternative called "Data Buckets" see changelog for more details 2018-07-07 23:59:23 -05:00
Uleat
2da70c69da Added command '#ucs' to force re-connect after ucs server unavailability (must manually re-join channels for now) 2018-03-07 22:45:05 -05:00
Uleat
a493242c3c Fix and overhaul to bug reporting system 2018-02-18 14:03:13 -05:00
Michael Cook (mackal)
a32dedeb48 Fix issue with heading being incorrectly handled
So we've been doing heading wrong all these years. You will need to run
a script to fix your quests and required SQL to fix DB.

This fixes a ton of random issues with headings and as gives us a better
resolution on headings :P
2018-02-15 18:20:16 -05:00
Michael Cook (mackal)
c5e4bb08f4 Implement global loot system Fixes #619
This should allow us to emulate lives global tables

The options available to filter tables are min_level, max_level, race,
rare, raid, race, class, bodytype, and zone.

race, class, bodytype, and zone are a pipe | separated list of IDs
2018-02-10 22:15:21 -05:00
Michael Cook (mackal)
f720e51585 Implement NPC Charm Stats
These combat stats an NPC will change to while charmed
2018-02-04 16:30:16 -05:00
Michael Cook (mackal)
3c794cfc07 Add Support to define a valid HP range for NPC casting
These will allow us to define a valid HP range (HP of the caster) that
an NPC will cast a spell. For example NPC casting a defensive spell at
2018-02-01 18:34:07 -05:00
JJ
8011c48641 Make Ground Spawn sql required in 97873ff42d 2017-12-17 12:58:42 -05:00
regneq
15f7440af2 Update version and manifest for traps.sql 2017-10-28 10:48:22 -07:00