Commit Graph

34 Commits

Author SHA1 Message Date
David Markowitz
b24775f472
feat: Security improvements for spoofed packets (#1201)
* Add cheat detection for spoofed packets

* Add config option for ip loggin

* remove packet saving
2023-09-28 12:16:11 -05:00
David Markowitz
44f466ac72
fix: deleting last character still shows the character (#1123)
* Fix deleting last character

Fix an issue where deleting your last character caused the character to still show up on the character selection screen.

Tested that deleting my final character results in an empty character selection scene.

* Update UserManager.cpp
2023-09-24 02:55:54 -05:00
Aaron Kimbrell
08020cd86d
chore: cleanup LU(W)string writing (#1188)
* chore: cleanup LU(W)string writing
and add methods for reading
remove redunent "packet" from packet reading helpers
move write header to bitstreamutils since it's not packet related
add tests for reading/writing LU(W)Strings

* remove un-needed function defintions in header

* make reading and writing more efficient

* p

p

* quotes

* remove unneeded default

---------

Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
2023-09-20 20:06:28 -05:00
David Markowitz
455f9470a5
Move EntityManager to Game namespace (#1140)
* Move EntityManager to Game namespace

* move initialization to later

Need to wait for dZoneManager to be initialized.

* Fix bugs

- Cannot delete from a RandomAccessIterator while in a range based for loop.

Touchup zone manager initialize

replace magic numbers with better named constants
replace magic zonecontrol id with a more readable hex alternative
condense stack variables
move initializers closer to their use
initialize entity manager with zone control

change initialize timings

If zone is not zero we expect to initialize the entity manager during zone manager initialization

Add constexpr for zone control LOT

* Add proper error handling

* revert vanity changes

* Update WorldServer.cpp

* Update dZoneManager.cpp
2023-07-15 13:56:33 -07:00
Aaron Kimbrell
e297aacc68
Breakout message identifiers (#1065)
and make them scope enums
2023-05-03 16:38:32 -05:00
Aaron Kimbrell
6aa90ad5b2
Breakout rest of the enums from dCommonVars and clean it up (#1061)
* Breakout rest of the enums from dcommonvars
so we don't have to deal with merge conflicts
ePlayerFlags is not a scoped enum, yet, due to it's complexity

* address feedback

* make player flag types consistent

* fix typo
2023-05-02 17:39:21 -05:00
Aaron Kimbrell
4976701f37
breakout object bits into scoped enum (#997)
* breakout object bits into enum class
tested that things still work as expected
use the inplace set bits where appropiate

* add inline
2023-04-25 13:17:40 -05:00
Aaron Kimbrell
72ca0f13ff
breakout gmlevel into a scoped enum (#996)
* breakout gmlevel enum and make it a class
tested that things still work
slash command,
chat restrictions,
packets and serializations

* fix GM level for some slash commands

* fix new use of this enum
2023-03-24 18:16:45 -05:00
David Markowitz
fc75d6048f
dGame Precompiled header improvements (#876)
* moving branch

* Add deleteinven slash command

* Change name of BRICKS_IN_BBB

* Use string_view instead of strcmp

* Clean up include tree

* Remove unneeded headers from PCH files

Removes unneeded headers from pre-compiled headers.  This increases compile time, however reduces development time for most files.

* Update Entity.h

* Update EntityManager.h

* Update GameMessages.cpp

* There it compiles now

Co-authored-by: Aaron Kimbrell <aronwk.aaron@gmail.com>
2023-01-06 23:17:05 -06:00
David Markowitz
84c5d74450
Add Delete Inventory Slash Command (#865)
* moving branch

* Add deleteinven slash command

* Change name of BRICKS_IN_BBB

* Use string_view instead of strcmp

* Remove GameConfig

* Revert "Remove GameConfig"

This reverts commit cef5cdeea2.
2022-12-18 09:46:04 -06:00
David Markowitz
09dfb6df3a
Address news feed showing up on every world transfer (#855)
Addresses the news feed showing up on every world transfer
2022-11-27 22:19:15 -08:00
Jonathan Romano
af28d170fb
Fix chat whitelist path in UserManager error log (#853) 2022-11-27 01:06:17 -08:00
Jonathan Romano
4569f62100
Fix three-part names coming across as INVALID with custom client path 2022-11-26 02:29:53 -08:00
aronwk-aaron
19e77a38d8 format codebase 2022-07-28 08:39:57 -05:00
Aaron Kimbrell
e97ae92624
Make logger automatically put a newline (#675)
at the end of the line
remove all the newlines in log calls
2022-07-24 21:26:51 -05:00
David Markowitz
24dbd3944d
Friends List Overhaul (#630) v103
* Add friends list migration

* Change friends to use charID

Update friends table to use charID and not LWOOBJID variant.

* Fix remove friend

Fix remove friend and make the query more readable at a glance.

* Add and remove friends in the container

Properly add and remove friends in the player container

* add enums

* Add best friends and basic GM support V1

* Add more features

* not online / doesnt exist implementation

Implements the not online and invalid character response codes

* Address players not being removed

Fix an issue where players would not be marked as offline in the friends list due to the message not being sent in all circumstances.

Tested changes on 3 clients, switching characters, logging out from character select, switching characters, world transfer and my friends list looked as it was supposed to.

* Implement proper friends system

Remove debug logs

Track count of best friends

Add best friends list cap of 5

Add config option and best friend update

Add a config option and implement the last missing best friend serialization

Added comments and fixed remove best friend bug

Added some comments and addressed an issue where removing best friends would not remove them from your internal count of friends.

properties and logs fixes

whoops, had an issue

send reply if already BFFs

Send the correct objectID

I really need to rename these

Fix white space

goon

* Replace queries with unique ptrs

* remove user from player container on deletion

Remove the user from the player container when they delete their character.
2022-07-12 20:36:06 -07:00
EmosewaMC
a32c5a2f3c Vault corrections 2022-04-13 01:50:06 -07:00
Gie "Max" Vanommeslaeghe
a0a9936e47
Merge pull request #415 from Marcono1234/UserManager-name-logging
Fix UserManager not logging chosen name properly
2022-04-03 11:33:59 +02:00
EmosewaMC
db3cd33bca fixed incorrect variable name 2022-03-24 17:51:21 -07:00
EmosewaMC
819c58df7c semantics 2022-03-24 00:33:05 -07:00
EmosewaMC
4e2c352ab9 Changed pants query and removed extra comments 2022-03-24 00:30:52 -07:00
EmosewaMC
b2c88bb6a7 working query 2022-03-24 00:09:18 -07:00
Marcono1234
0d0949f5f0 Adjust chosen character name logging 2022-02-03 23:43:47 +01:00
Marcono1234
477b629faf Fix UserManager not logging chosen name properly 2022-01-25 00:14:21 +01:00
Gie "Max" Vanommeslaeghe
d9d27a88fc
Merge pull request #293 from Racater/main
Fix issue #268 : wrong shirt colors in the character selection
2022-01-11 23:48:58 +01:00
Jett
c1903ca12d Remove IP Logging 2022-01-06 21:54:48 +00:00
Marcono1234
df369612be Add XML attribute spaces consistently 2022-01-01 18:23:14 +01:00
Raphaël Dunant
f02165b912
Update UserManager.cpp
fix function call
2022-01-01 14:31:13 +01:00
Marcono1234
7c1f392fdf Fix initial character XML being malformed
XML was missing a space between attributes `lzrw` and `stt`.
2021-12-30 19:42:59 +01:00
Raphaël Dunant
2ac2dbd650
Update UserManager.cpp
Style fix (CamelCase and space)
2021-12-28 19:56:49 +01:00
Racater
b6fc49f057 simplify shirt code in character creation 2021-12-26 14:45:21 +01:00
Raphaël Dunant
ac01edd440
Fix wrong shirt colors in the character selection 2021-12-22 16:02:19 +01:00
yuwui
3845dc77f9 strip carriage return from txt files 2021-12-06 07:07:17 +01:00
Unknown
0545adfac3 Public release of the DLU server code!
Have fun!
2021-12-05 18:54:36 +01:00