Commit graph

4441 commits

Author SHA1 Message Date
Lucas Nicodemus
8525663c35
Update readme, changelog 2020-05-18 01:07:24 -07:00
Lucas Nicodemus
41c813a2dd
Version tick: 4.4.0 2020-05-18 01:04:51 -07:00
Lucas Nicodemus
013c58e923
Update TShock version codename 2020-05-18 01:00:23 -07:00
Lucas Nicodemus
3471646dc7
Temporarily disable some projectile cheat checks 2020-05-18 00:52:44 -07:00
Lucas Nicodemus
edca454f8d
Use xcopy to copy actions artifacts 2020-05-18 00:35:28 -07:00
Lucas Nicodemus
39730a7b14
Use powershell in github actions copy 2020-05-18 00:29:17 -07:00
Lucas Nicodemus
a341ca16fb
Update copy prebuilts workflow run again 2020-05-18 00:23:26 -07:00
Lucas Nicodemus
bee4d3b44b
Remove telegram link from readme 2020-05-18 00:20:39 -07:00
Lucas Nicodemus
cc814ff3cc
Add copy prebuilts to github actions script 2020-05-18 00:18:56 -07:00
Lucas Nicodemus
92f8095277
Read extra data for kill portal 2020-05-18 00:00:55 -07:00
Lucas Nicodemus
0a95457a7e
Merge branch 'general-devel' of github.com:Pryaxis/TShock into general-devel 2020-05-17 23:48:55 -07:00
Lucas Nicodemus
12d40e98ad
Disable always return on HandleLoadNetModule
As of 1.4.x.x, these are used for more than just chat text and we need
to start handling them separately. The original check here would just
return true (handling the event) for any module that's not text. Now, we
need to actually do processing and check for exploits on these.
2020-05-17 23:47:29 -07:00
Chris
ea53fdf04a Merge branch 'general-devel' of https://github.com/Pryaxis/TShock into general-devel 2020-05-18 15:47:40 +09:30
Chris
c2e3f65a2a Add modeling to new projectile handling 2020-05-18 15:47:31 +09:30
Lucas Nicodemus
926f97b49f
Update OnTeleport hook with new changes 2020-05-17 23:17:03 -07:00
Lucas Nicodemus
16df9bb16c
Update "spawn boss invasion" get data handler
This is really "spawn arbitrary stuff" and it can create invasions,
pets, and bosses now.
2020-05-17 22:44:10 -07:00
Chris
ea6425a2e2 Update Bouncer/Item Bans refs for new models 2020-05-18 14:45:36 +09:30
Chris
a1243a580c Merge branch 'general-devel' of https://github.com/Pryaxis/TShock into general-devel 2020-05-18 14:42:43 +09:30
Chris
db84a9fc8f Adds models for the random bitsbyte data received in packet 13 - player update 2020-05-18 14:42:29 +09:30
Lucas Nicodemus
5287f9a2e8
Update submodule for updated packet types 2020-05-17 21:47:17 -07:00
Lucas Nicodemus
0fc72d76d4
Update submodule so that macOS, Linux work 2020-05-17 20:38:54 -07:00
Lucas Nicodemus
51fadf406f
@Patrikkk Packet 55 checkpoint
As of this commit, the 1.4.0.2 prep work has been completed. This means
that GetDataHandlers & Bouncer have been updated to support changes to
the protocol made up to packet 55. No exploits have been checked for in
TileSend according to him, but this means that subsequent work can start
on packet 56 and work forward.
2020-05-17 18:04:16 -07:00
Lucas Nicodemus
2e1c629fd9
Merge pull request #1758 from Pryaxis/1.4-updates
Updating HandleProjectileNew
2020-05-17 18:03:48 -07:00
Patrikkk
f48a18aa7a Fixing my random if logic.
Really.. time for bed.
The Any wasn't terrible, but itwould have allow cross sending projectiles within that dictionary. (send gold stab with copper in hand, or vice versa etc)
2020-05-18 02:44:39 +02:00
Patrikkk
91e3ebf4f0 Fix false cheat catch on stab items.
Stab items (swords) now send projectiles to imitate directional stabbing. Bouncer catched since there was no handling of these new projectiles.
2020-05-18 02:37:39 +02:00
Patrikkk
a02f959f58 Update Buff related packets
Buff IDs no longer fit in a byte. Vanilla reads/writes ushorts but they get converted to int.
- Added helptip for Zone4 in playerzones eventargs.
2020-05-18 02:02:02 +02:00
Patrikkk
3b3fa9fc72 Update Modify Tile packet.
Only updating. Did not patch any possible exploits. Requesting someone to tend to this when possible.
2020-05-18 00:41:12 +02:00
Patrikkk
2d5166cfa4 Updating SpawnPlayer and PlayerUpdate packet
Fixing the HasHackedItemStacks method by adding missing Void Vault check.
2020-05-18 00:04:49 +02:00
Patrikkk
9a05678933 Updating HandleProjectileNew
Packet structure order is different in 1.4
2020-05-17 21:41:31 +02:00
Lucas Nicodemus
b349da69b6
Update submodule to support 1.4.0.2 2020-05-17 12:09:59 -07:00
Lucas Nicodemus
1078b579c4
Incorporate @Patrikkk's changes over Axeel's
The TSAPI that Patrikkk has does not contain public fields for the
referenced GameMode types.
2020-05-17 11:58:21 -07:00
Lucas Nicodemus
96468871a0
Merge branch 'general-devel' into 1.4 2020-05-17 11:14:42 -07:00
鱼鱼
01cf85c9ad use GameModeID instead of other consts 2020-05-17 21:46:03 +08:00
鱼鱼
1ed95c737e pass compile; add void vault code 2020-05-17 21:38:47 +08:00
鱼鱼
43f586cde5 Merge branch 'general-devel' of https://github.com/Pryaxis/TShock
 Conflicts:
	CHANGELOG.md
	TShockAPI/GetDataHandlers.cs
	TShockAPI/TShock.cs
2020-05-17 21:38:07 +08:00
Lucas Nicodemus
1993900159
Move OnTileEdit ban checks: Bouncer -> Itembans
This change moves the ban checks used to determine, during TileEdit
events, if an item is banned, out of Bouncer and into the newly isolated
ItemBan subsystem. Rather than creating a large pull request for all of
these, I'm just going to create a series of commits and send them in one
at a time. This should result in about one PR per hook that uses item
bans that needs to move.
2020-05-16 21:50:28 -07:00
Lucas Nicodemus
b5f95d5918
Fragments: Separate out item bans (#1595)
* Remove commented out warning disable

* Add initial ItemBans segregation infrastructure

* Add shell for initial OnSecondUpdate stuff

* Add comments yo

* Remove duplicated logic

* Split out more item ban code

This part of the fragments work is primarily aimed at reducing the
complexity of OnSecondUpdate in TShock and moving that check out into
the ItemBans subsytem.

Of major note in this is the removal of "check", which was a string
variable that tracked state and replacement of many of the item ban
activities with sane private methods that are at least somewhat
sensible. Obviously there's a lot to be desired in this system and I'm
really going for a run here by trying to continue a branch from so long
ago that I barely even remember the whole point of existence.

Still to do: GetDataHandlers related item ban code needs to be moved
into its own hook in the ItemBan system. Finally, there is a downside to
some of this: we're basically iterating over players again and again if
we keep this pattern up, which is kinda lame for complexity purposes.

* alt j: comment changes

* Move item ban check out of main playerupdate check

Separates out item ban logic from the rest of GetDataHandlers so that
item bans is more isolated in terms of what fragments is asking for.

* alt-j: convert indentation to tabs

* alt-j: fix botching source code

* Move item ban related chest checks out of gdh

* Remove chest item change detection from item bans

It doesn't do anything. If a user removes an item from a chest, it
bypasses this check. If a user adds an item to a chest, the server seems
to persist the change anyway, even if the event is handled. That's a bug
for sure, but fundamentally, it's not the item ban system's fault.

* Revert "Remove chest item change detection from item bans"

This reverts commit 758541ac5c4d4096df2db05ba2a398968113e1e4.

* Fix logic issues related to item ban handling

Re-implements chest item handling and correctly handles events and
returns after setting handled event state.

* Remove TSPlayer.HasProjectilePermission

In infinite wisdom, it turns out this is not a good method for TSPlayer
to have. It just checks the states of things as per what the item ban
system says is banned and then creates implicit relationships to the
projectile ban system.

Doing this effectively knocks down another external reference to the
item ban system outside of the context of the implementation for the
system itself and its related hooks.

This commit also adds context around what the heck is going on with some
of our more interesting checks as per discussions in Telegram with @Ijwu
and @QuiCM.

* Update changelog

* Remove useless ref to Projectile.SetDefaults

* Change item ban to ban based on ID not strings

I think I was so confused as to why we were passing strings everywhere
that I just felt inclined to continue the trend in previous commits.
2020-05-16 16:27:34 -07:00
Lucas Nicodemus
ab99c48212
Update readme version verbiage 2020-05-16 09:55:36 -07:00
Lucas Nicodemus
d67cfbe11c
Normalize chat links on readme 2020-05-16 09:41:11 -07:00
Lucas Nicodemus
12a8f576a0
Update readme with 1.4.0.0 update announcement 2020-05-16 09:40:16 -07:00
Zetten Wang
33c5e01654
Merge pull request #1743 from Pryaxis/h/fix-addperms
Provide warning message on invalid group command
2020-05-14 13:56:13 -07:00
Lucas Nicodemus
76150e2500
Provide warning message on invalid group command
This fixes #1742 where users could run group commands that didn't exist
and the server would silently fail rather than giving an error.
2020-05-13 21:10:01 -07:00
Lucas Nicodemus
86ec030488
Merge pull request #1725 from Pryaxis/update-issue-template
Update issue template
2020-05-04 03:44:13 -07:00
Axeel
90e9bb248b
Update issue template
make qq link more descriptive
2020-05-04 18:40:59 +08:00
Lucas Nicodemus
438c75a21d
Add issue template config file 2020-04-30 22:37:47 -07:00
Lucas Nicodemus
219255b418 Add new issue template system 2020-04-30 22:31:21 -07:00
Lucas Nicodemus
7c5ed2d7bd
Merge pull request #1712 from Pryaxis/all-contributors/add-AxeelAnder
docs: add AxeelAnder as a contributor
2020-04-26 20:10:02 -07:00
allcontributors[bot]
e187cc979e
docs: update .all-contributorsrc [skip ci] 2020-04-27 03:09:18 +00:00
allcontributors[bot]
30b3b11db4
docs: update README_cn.md [skip ci] 2020-04-27 03:09:17 +00:00
allcontributors[bot]
d7e3497604
docs: update README.md [skip ci] 2020-04-27 03:09:16 +00:00