Commit graph

66 commits

Author SHA1 Message Date
Image
3c0b5abeb5 Update Widget.h
Translation from Widget Type ID to Widget Type Name
2020-03-18 22:42:44 -04:00
Image
5339ebd958 DatabaseNew needed retry logic upon loss of mysql server
Fixes 
2020-03-16 20:11:34 -04:00
Image
172065b60a fixed second depth of chest lists
allows all difficulty levels to be tracked individually in the 2nd layer (zone->difficulty or difficulty->zone)
2020-03-16 19:22:06 -04:00
Image
05e065279b More nix fixes... 2020-03-16 15:02:10 -04:00
Image
de0979f2ec Linux fixes for ChestTraps 2020-03-16 14:54:54 -04:00
Image
b61ec973b0 Proper live messages for disarm chest trap
Fixed the self messages for disarm chest trap to be like live
2020-03-16 14:26:17 -04:00
Image
71335bbe99 Update ChestTrap.cpp
Forgot some locking on GetNextChestTrap..
2020-03-16 13:38:55 -04:00
Image
83a441f4e5 Update ChestTrap.cpp 2020-03-16 13:26:17 -04:00
Image
d7a00658d1 Rest of Chest Traps and Disarm Chest Traps implementation
Fixes  - chest traps and the ability to disarm is implemented.  Can restrict by zone (or applicable to all zones using -1), min and max chest difficulties.

1 = Small Chest (no trigger)
2 =  Treasure Chest (trigger)
3 = Ornate Chest (trigger)
5 = Exquisite Chest (trigger)

DB/updates/chest_traps_tableandsamples.txt included - this will allow you to source in the chest_traps and some 'example' traps (not real ones just testing ones).

Disarm command also required for right click option on chest: insert into commands set type=0,command='disarm',subcommand='',handler=510,required_status=0;
2020-03-16 13:23:38 -04:00
Image
4bc36eb7af Reduce worldserver reconnect to loginserver and fix database.ping 90s to 10s
Should help reduce , however must still investigate further into mysql has gone away and reconnecting to DB automatically.
2020-03-16 13:13:47 -04:00
Image
a3c542cbcc Fix to have spell visuals on /castspell 2020-03-16 11:19:43 -04:00
Image
927805733d Invisiblity behavior not restricted by PVP Flag check, only radius setting
Allows PVE/PVP to both support 'invisibility' behavior that makes clients actually invisible from each other at range or all together.
2020-03-13 12:41:38 -04:00
Image
4e940f6b7c PVP Invisibility Support
Fixes 

- Invisibility support for PVP
- Rule R_PVP InvisPlayerDiscoveryRange added.  Default 20.  Setting to 0 means invis players are always seen.  -1 means they are never seen (unless their opponent has see invis for example)
- Crash fix back in ProcessSpawnConditional, spawn_list is getting a null spawn somehow, we can't process it!
2020-03-13 11:42:13 -04:00
Image
7c960a9d74 PVP Basics
PVP Melee attack, spell attack is possible now.  Originally the PVPFlag did not function correctly.  Added a PVP Level Range rule.

Fixes 
2020-03-13 00:20:58 -04:00
Image
c50775412b EQStream SendPacket fix for packet construction length req
Fixes 
2020-03-12 10:37:34 -04:00
Image
dc7710f4be Mutex fix thanks to foof!
forcing writing lock when the first read comes in
2020-03-11 22:24:34 -04:00
Image
4c33e979a0 Additional deadlocks fixed in ProcessMovement
Command_Hail needs to lock MSpawnList when it triggers ProcessMovement.  When we are doing SpawnProcess however, we already have MSpawnList locked, no need to lock again.
2020-03-11 21:27:35 -04:00
Image
30761b52eb Make World Server reconnect to LS despite FatalError
never disable retry attempts to connect to LS from world
2020-03-11 21:21:30 -04:00
Image
93f8bb1b7b Merge branch 'master' of http://cutpon.com:3000/devn00b/EQ2EMu 2020-03-10 23:17:27 -04:00
Image
396c8ff409 First change to allow us to set commands on widgets 2020-03-10 23:17:15 -04:00
Gogs
00ecf4b6c2 Fixes for Linix builds 2020-03-10 18:46:40 -07:00
Image
ed7d7f73ae more sql_updates.sql table filters
removed character_ tables, variables, char_colors, guild_ and bugs
2020-03-10 11:34:10 -04:00
Image
d9c52bbf64 sql_updates.sql updated to put semi colon at end of query
Added semi colon to end of query to make it easy to source in to other DB's
2020-03-10 11:19:17 -04:00
Image
2ea621db1b sub commands /loot list [add/remove/clearall]
Fixes 

/loot list add loottable_id
/loot list remove loottable_id
/loot list clearall

auto reloads loot, purges previous loot and re-assigns loot to selected spawn.

If you have multiple of the same spawn, then /repop the zone and it will repopulate after one is updated.
2020-03-10 09:12:56 -04:00
Image
4daeeb3489 client.cpp linux fix
boolean->bool
2020-03-10 00:06:00 -04:00
Image
7802f527d3 on openheading / closeheading forgot to set includeheading true 2020-03-09 23:55:40 -04:00
Image
0d9c901e0e spawn move openheading and closeheading
Added support for /spawn move openheading and /spawn move closeheading -- this works on widgets only.  You can set the heading without worrying about the x,y,z position, will auto update and new headings will be used.

include_heading is also updated in the DB to 1.

Fixes .
2020-03-09 23:20:12 -04:00
Image
d695965fbb LUA Functions do not call with MSpawnList locked? (hopefully not)
This is a tough situation here, question is if Combat code can somehow call LUA and lua calls back to KillSpawn, so this might go both ways...

Entity::DamageSpawn

GetZone()->CallSpawnScript(victim, SPAWN_SCRIPT_HEALTHCHANGED, this);

This could if calling KillSpawn on that script action cause a deadlock
2020-03-09 18:51:58 -04:00
Image
714d7a3676 merge eq2emu r2870 r2869
merge ClaimWindow fix (unknown3 data)
2020-03-09 18:03:44 -04:00
Image
0be40a6d3e LUA Interface was incorrectly managing running scripts
Fixes  - memory leak and performance/stability fix (avoids constant loading of scripts over and over)
2020-03-09 17:39:09 -04:00
Image
08e929ddda reintroduced spawn_list.erase, had removed when testing deadlock issues 2020-03-09 10:41:50 -04:00
Image
f80a38d093 Merge branch 'master' of http://cutpon.com:3000/devn00b/EQ2EMu 2020-03-09 09:10:48 -04:00
Image
847b8c6ac8 Additional zoneserver.cpp update for new RemoveSpawn code
Fixed a memory leak
2020-03-09 09:10:44 -04:00
Gogs
7dafc584d2 fix for linux build 2020-03-09 01:00:48 -07:00
Image
285a8aa591 additional deadlock changes
Continued changes for deadlock issue.  Fixes .
2020-03-08 21:20:20 -04:00
Image
466ccebe36 turning force of soga models off
Now that issue  is resolved, we can turn soga models off since we know its unrelated
2020-03-08 20:59:57 -04:00
Image
bd2658946f Resolve Deadlock in MSpawnList against CombatProcess, barebones of disarm trap
Resolved deadlock in CombatProcess (dead_spawns).  Fixes .

Added base for issue 
2020-03-08 20:42:54 -04:00
Image
1149dc7f2a Easier tracking of bad packet structures 2020-03-08 20:40:26 -04:00
Image
57d12cf795 revert soga change, causes lockup if increased level
exe to follow
2020-03-08 01:48:00 -05:00
Image
3ef040383a disabled force of soga models on LS reply 2020-03-07 22:19:56 -05:00
Image
3195a78e82 self damage possible
Change in lua spell damage to make self damage possible (allows /castspell to function correctly)
2020-03-07 17:27:59 -05:00
Image
a3834b5570 Update Commands.cpp
unnecessary code, took a different route
2020-03-07 08:39:02 -05:00
Image
e18194d7d2 itemsearch updated
Fixed  - /itemsearch (broker search) now displays item id in paranthesis name (id)

https://cdn.discordapp.com/attachments/603677936582918189/685839069061971983/unknown.png
2020-03-07 08:20:38 -05:00
Image
409e802251 forgot a break on castspell
needs a break or else we start autoattacking! oops
2020-03-07 00:18:01 -05:00
Image
856e068cad castspell command
Fixes 

/castspell [spellid] (tier=1) - Cast Spell with specified spell id, tier is optional, default of 1.
/castspell [spellname] - Find spells wildcard match with a partial spell name

cannot damage self with current setup.

sql query required: insert into commands set type=0,command='castspell',subcommand='',handler=509,required_status=200;
2020-03-07 00:13:14 -05:00
Image
b15ec2c476 Added Open command to allow special doors to open
new command: insert into commands set type=0,command='Open',subcommand='',handler=508,required_status=0;
2020-03-06 20:32:43 -05:00
Image
050e639b76 SpellProcess/Commands target rewrite
- Added GENERIC doors to be opened after use timer expires (CastProcess)
- CastProcess now tracks a target by the int32 spawn id instead of relying on the static target.  For example trying to double click on a door that has a use action, this would lose target and the door would fail to open.  Fixes .
2020-03-06 18:33:12 -05:00
Image
04f291f5db Update database.cpp
- Fixed a filter on the sql_updates file we are using to track inserts/updates, filtered `guilds` instead of guilds
2020-03-06 18:30:25 -05:00
Image
45d58b4766 Updates
Updated /spawn details to include a radius option if no target is selected, eg. /spawn details 5 - for a radius of 5.  Gets some general spawn information (location id, spawn id, widget id, etc.)

Character Save / WritePlayerStatistic updated to check if characterid is set (in case client disconnects before character loads)

Default char_id of 0 set for Player class

Added a sql_updates.sql file for WORLD with _DEBUG define so we can more easily push updates made in game to each other
2020-03-06 16:10:08 -05:00
Image
f2727f40a3 Flymode zone in fix
Flymode wasn't enabling cross zone correctly at times, moved it to later on in the zone in process.

Made it so flymode off doesn't trigger on zone in(don't need to know if its off, only on).
2020-03-06 00:15:43 -05:00