1
0

222 Commits

Author SHA1 Message Date
Emagi
89fe9bf71b make sure peers have latest peering data for client connections 2024-12-02 21:37:05 -05:00
Emagi
a582ff2f28 avoid constantly creating ssl context 2024-12-02 20:56:01 -05:00
Emagi
a54cb78427 reduce time to pull down to 1 second 2024-12-02 20:15:34 -05:00
Emagi
405e43f672 Fixed polling issues when a server is erroring out and also peering the right id 2024-12-02 20:01:21 -05:00
Emagi
140d58d0da induce delay on polling thread 2024-12-02 19:43:22 -05:00
Emagi
8a163875fb exception handling with debug logs 2024-12-02 19:40:15 -05:00
Emagi
031bb0c518 Update HTTPSClientPool.cpp 2024-12-02 19:37:43 -05:00
Emagi
2bf5d29c76 Update HTTPSClientPool.cpp 2024-12-02 19:28:21 -05:00
Emagi
1a7061a6c0 debug log for polling 2024-12-02 19:27:22 -05:00
Emagi
3883fc2ffa Update World.cpp 2024-12-02 19:18:49 -05:00
Emagi
cfe562c177 fix primary id 2024-12-02 19:14:17 -05:00
Emagi
c54067fcf6 only take primary if world is loaded 2024-12-02 19:03:25 -05:00
Emagi
82bea97ff2 address peer listing having multiple of the same addresses (So we can just list all in the same server_config instead of many dirs with their own server_config) 2024-12-02 19:03:13 -05:00
Emagi
beaa63504c fix map waypoint support with /waypoint x, y, z 2024-12-02 17:42:07 -05:00
Emagi
d332eb3122 Fix peering message for AddCharAuth not showing name correctly 2024-12-02 09:45:58 -05:00
Emagi
adc9ee0846 Relocate where we set the state into the iterator 2024-12-02 09:40:38 -05:00
Emagi
a736e1865f DoT/DD stacking with timers were causing lua state overruns, lua state was being removed from spell too early" 2024-12-02 09:19:28 -05:00
Emagi
d7d82c71fb address timestamp to int64 2024-12-01 18:59:01 -05:00
Emagi
716caffb14 Have zone pointer tracked in the luaspell so we can assure we delete the spell properly when zone shuts down or spawn is gone 2024-12-01 18:24:56 -05:00
Emagi
9e986f3ace rely on remaining targets to delete the spell, caster ptr is not reliable in this case 2024-12-01 17:55:42 -05:00
Emagi
5770adffee Added a quests override flag (512) for when we want sign descriptions to be hidden unless the quest / quest step / history is achieved by the client 2024-12-01 13:37:35 -05:00
Emagi
a775e90eb3 reject char create when world locked 2024-12-01 11:28:32 -05:00
Emagi
1ec930639f fix name pet and rename to function 2024-12-01 11:14:13 -05:00
Emagi
9353cdbb39 can only repair at a repair vendor 2024-12-01 10:55:36 -05:00
Emagi
ebcb1631a4 fix older clients requiring quests to see certain objects/select them 2024-12-01 07:42:16 -05:00
Emagi
14bb60caf8 avoid crash on remove caster when in a spell attack 2024-12-01 06:29:13 -05:00
Emagi
9be94fe396 avoid a crash when client has no player 2024-11-29 21:55:06 -05:00
Emagi
52ed0cf1d3 make sure spell caster does not persist if they are removed from the spawn list 2024-11-29 09:49:57 -05:00
Emagi
4f3f5a5920 address movement warping on stationary NPC's, lifts. 2024-11-29 07:52:07 -05:00
Emagi
e1192925a4 Fix bots not properly camping out if the owner has camped out or "gone away" before 2024-11-28 07:46:19 -05:00
Emagi
b61bb53a1b fix auto lock out of a group 2024-11-28 07:25:10 -05:00
Emagi
d03c86efef CheckEncounterState behavior added 2024-11-27 17:17:26 -05:00
Emagi
0ac5658535 allow guild create command to be used by players and not allow specifying player name / target name 2024-11-27 15:29:28 -05:00
Emagi
ed72692a1d fix guild invite to show guild name via packet structure 2024-11-27 09:36:25 -05:00
Emagi
9762cd5793 Update WorldStructs.xml 2024-11-27 09:30:15 -05:00
Emagi
d1cee32a3e guild support for DoF and KoS clients 2024-11-27 09:26:39 -05:00
Emagi
9b9777257f avoid adding potentially null/dead item pointers to quest rewards, guild sending for KoS and earlier clients moved to op_sysclient 2024-11-26 12:43:08 -05:00
Emagi
72481617ec Fix spells persisting when you zone 2024-11-24 08:21:06 -05:00
Emagi
68d1777cf4 avoid stacking spells when you have a conflicted spell removed, should address multiple tick/control effects stacking 2024-11-24 07:46:09 -05:00
Emagi
428b73391c Omit bank/shared-bank from selling at a merchant, additionally prevent weight calculation for banked items on players weight 2024-11-23 09:24:41 -05:00
Emagi
061f0c157a fix breath under water for old clients 2024-11-23 08:25:18 -05:00
Emagi
31fc7aea63 disable zone persistence for now issue with doors/widgets disappearing 2024-11-23 07:53:22 -05:00
Emagi
6b73d3617a avoid a lockup condition due to already locked mutexes 2024-11-22 17:35:53 -05:00
Emagi
b848f78f41 graceful cleanup of spell and allowing player to recast 2024-11-22 15:20:16 -05:00
Emagi
79c3ec1fb2 Fix spells ticking after cancellation/expiring 2024-11-22 14:38:00 -05:00
Emagi
1f9010dc62 current power and hp cannot be set negative via lua 2024-11-22 07:34:53 -05:00
Emagi
45da917e8a fix crash on missing caster for RemoveWard 2024-11-19 15:53:41 -05:00
Emagi
51107a23f1 Update zoneserver.cpp 2024-11-18 19:47:29 -05:00
Emagi
5cbd2df6be missing atomic include? 2024-11-18 13:20:52 -05:00
Emagi
315ab1d0e7 Project Nebulark Part 1, So much to list, this is a rough summary
- Raid support and cross peer support for Isle of Refuge, DoF, KoS and AoM clients.
- Zone Persistence added to non-instanced zones.
- Commands: /whogroup, /whoraid, /raidinvite, /raid_looter, /kickfromgroup, /kickfromraid, /leaveraid, /split, /raidsay (rsay) added.
- Cross peer zone and instance support
- Cross tell support (along with ignore)
- Cross ooc support
- Cross group support (can chat, leave group, disband cross peers, update group options)
- Cross who all support
- houses/instances fixed no more cross objects/spawns/etc from other houses
- houses now display characters name with the house zone description
- 1000's of house items now properly work with wall/ceiling
- debug messages removed from housing placement
- Encounters locked to raid instead of group
- group options restricted to raid leader
- reload rules for following are peer wide:
COMMAND_RELOADSTRUCTS
COMMAND_RELOAD_QUESTS
COMMAND_RELOAD_SPELLS
COMMAND_RELOAD_ZONESCRIPTS
COMMAND_RELOAD_FACTIONS
COMMAND_RELOAD_MAIL
COMMAND_RELOAD_GUILDS
COMMAND_RELOAD_RULES
COMMAND_RELOAD_STARTABILITIES
COMMAND_RELOAD_VOICEOVERS
COMMAND_RELOADSPAWNSCRIPTS
COMMAND_RELOADREGIONSCRIPTS
COMMAND_RELOADLUASYSTEM
- special/static zones (always_loaded) are now defined by a peer_priority unsigned short (smallint(5)) in zones table.  peer_priority = server_config world.peerpriority will spawn on that exe instance, if it is not available it is distributed to all peers.  Using the value of 0 (assuming no peer has priority of 0) or 65535 will result in peer distribution of zones.
server_config.json "WorldServer" block updated with the following (web peer port information), priority must be unique for EACH peer:
        "peeraddress": "10.1.1.2",
        "peerport": "9102",
        "peerpriority": "1",

New Command Line Run Arguments for World Exe to override server_config.json values
Allowed options:
  --worldaddress arg         World address
  --internalworldaddress arg Internal world address
  --worldport arg (=0)       Web world port
  --webworldaddress arg      Web world address
  --webworldport arg (=0)    Web world port
  --peerpriority arg (=0)    Peer priority

- fixed Isle of Refuge client group struct (raids added also)
- new log category Peering
- new LUA Functions AddRespawn(Zone, LocationID, RespawnTime) and CreatePersistedRespawn(LocationID, SpawnType, RespawnTime, ZoneID)
2024-11-18 11:13:04 -05:00