Commit graph

5947 commits

Author SHA1 Message Date
James Puleo
3776baaf12
Update docs/changelog.md 2022-12-20 22:40:43 -05:00
James Puleo
8b57f32125
Detect invalid TShock installations
There are two common mistakes made by those installing/updating TShock:
- Extracting TShock into the Terraria client directory
- Extracting TShock 5 or newer into a legacy (TShock 4 or older) install

By checking for the existence of a file named `TerrariaServer.exe`, we
can potentially detect these invalid installations, and prompt the user
with a more useful diagnostic, rather than (likely) crashing moments
later.
2022-12-20 22:35:22 -05:00
Lucas Nicodemus
6e589ffaee
Merge remote-tracking branch 'atfgk/Fixed-startup-error' into general-devel 2022-12-12 23:47:57 -08:00
ATFGK
1435066745
Update Program.cs 2022-12-13 12:05:44 +08:00
Stargazing Koishi
104598394b
Merge branch 'general-devel' into tileconv 2022-12-10 21:37:52 +00:00
SGKoishi
656a6a49be
Exclude unused fields, allow tileMoss, SandSpray and SnowSpray 2022-12-10 13:36:13 -08:00
Cardinal System
c6b60e22d7
New translations template.pot (Chinese Simplified) (#2867)
[skip actions]
2022-12-06 09:56:48 -08:00
James Puleo
24bb002e64
Update docs/changelog.md 2022-12-05 23:24:58 -08:00
James Puleo
205c29bc88
Add tests for parsing achievement tags in chat
These tests ensure that `ChatManager.ParseMessage` will not throw on the
server with TShock when given an achievement tag.
2022-12-05 23:24:58 -08:00
James Puleo
d0554abd46
Allow multiple test cases in the TShock test suite
Previously, we were initializing TShock before each test. This isn't
actually what we want to do, because NUnit will (by default) execute all
tests within one instance. Initializing TShock multiple times would
cause issues, so let's just do it once at the very beginning, before any
tests execute.
2022-12-05 23:24:58 -08:00
James Puleo
794bff5ef7
Initialize achievements and the AchievementManager on the server
The `AchievementTagHandler` expects `Main.Achievements` to be non-null,
which is not normally the case on dedicated servers. When trying to
parse an achievement chat tag, it will instead throw.

The tag is parsed when calling `ChatManager.ParseMessage`, which is used
in TShock when writing chat messages to the console. Our `OnChat`
handler uses `Utils.Broadcast`, which will send the message to all
connected clients, write the message to the console and the log. Due to
the order of execution, the message ends up being sent to all connected
clients, but throws whilst trying to write to the console, and never
gets written to the log.

To solve the issue, we make achievements available on the server,
allowing the tag handler to work as expected, and even allowing the
localization of achievements names to appear in the console.
2022-12-05 23:24:58 -08:00
Cardinal System
84c59b98eb
New Crowdin updates (#2865)
* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (French)
[skip actions]

* New translations template.pot (German)
[skip actions]

* New translations template.pot (Italian)
[skip actions]

* New translations template.pot (Japanese)
[skip actions]

* New translations template.pot (Polish)
[skip actions]

* New translations template.pot (Portuguese)
[skip actions]

* New translations template.pot (Russian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Indonesian)
[skip actions]

* New translations template.pot (Pirate English)
[skip actions]

* New translations template.pot (French, Quebec)
[skip actions]

* New translations template.pot (Russian, Ukraine)
[skip actions]

* New translations template.pot (toki pona)
[skip actions]
2022-12-05 22:27:54 -08:00
ATFGK
e46bbe99c0
Pvp with no team (#2851)
* Update TShockConfig.cs

* Update TShock.cs

* Update GetDataHandlers.cs

* Update changelog.md

* Update GetDataHandlers.cs

* Update changelog.md

* Update changelog.md

* Update changelog.md
2022-12-05 22:27:42 -08:00
ATFGK
95d157fd5d
Fix Terra Blade triggered MaxProjDamage, other net changes (#2852)
* update

* update

* update

* Update changelog.md

* Update changelog.md

Fixed syntax errors.

* Update SpawnMsg.cs

Use insteadUpperCamelCase

* Update changelog.md

* Update TSPlayer.cs

* Update TSPlayer.cs

Missing letters due to input method problems.

* Update `docs/changelog.md`

Co-authored-by: James Puleo <james@jame.xyz>
2022-12-05 21:45:37 -08:00
Cardinal System
825ff2ad9e
Update translation template 2022-12-06 05:43:50 +00:00
Cardinal System
e3a48d3069
New Crowdin updates (#2853)
* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (French)
[skip actions]

* New translations template.pot (German)
[skip actions]

* New translations template.pot (Italian)
[skip actions]

* New translations template.pot (Japanese)
[skip actions]

* New translations template.pot (Polish)
[skip actions]

* New translations template.pot (Portuguese)
[skip actions]

* New translations template.pot (Russian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Indonesian)
[skip actions]

* New translations template.pot (Pirate English)
[skip actions]

* New translations template.pot (French, Quebec)
[skip actions]

* New translations template.pot (Russian, Ukraine)
[skip actions]

* New translations template.pot (toki pona)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]
2022-12-05 21:42:48 -08:00
Lucas Nicodemus
da657ab483
Reformat changelog 2022-12-05 21:42:21 -08:00
Lucas Nicodemus
2606805073
Merge remote-tracking branch 'drunderscore/fix/whitelist-more-buffs' into general-devel 2022-12-05 21:40:10 -08:00
Lucas Nicodemus
69f39d3e5e
Merge remote-tracking branch 'sgk/pr2833' into general-devel 2022-12-05 21:39:12 -08:00
James Puleo
0a3b3a1236
Update docs/changelog.md 2022-12-02 13:24:06 -05:00
James Puleo
88c639c115
Whitelist the Mighty Wind (WindPushed) buff
This is applied by sandstorm events.
2022-12-02 13:24:04 -05:00
James Puleo
ae3c9654ad
Increase whitelisted duration of the Hellfire (OnFire3) buff
From 5 seconds to 6 seconds, as the Brand of the Inferno will apply this
buff for a maximum of 6 seconds.
2022-12-02 13:23:34 -05:00
Janet Blackquill
be8e51959f Introduce integrated package manager
This commit introduces an integrated package manager into TShock
for the purpose of fetching and installing plugins and their dependencies
from NuGet repositories.

This makes getting new plugins easier for users, as well as simplifiying
more advanced deployment scenarios.
2022-11-28 08:16:11 -05:00
SGKoishi
536c4d2545
Update changelog 2022-11-28 00:58:41 -08:00
SGKoishi
fa08859952
Group checks by item type instead of liquid type 2022-11-28 00:57:53 -08:00
SGKoishi
49921cb7ed
Move permission check together 2022-11-28 00:56:02 -08:00
SGKoishi
ac7ee7e706
Extract common condition 2022-11-28 00:50:45 -08:00
SGKoishi
62e6aaa826
Use single reject to reduce code 2022-11-28 00:49:46 -08:00
SGKoishi
35d47fdf6a
Remove bucket magic number 2022-11-28 00:44:45 -08:00
SGKoishi
baeb5a2f20
Fixed Super Sponge unable to absorb shimmer 2022-11-28 00:41:45 -08:00
Cardinal System
4e59087e7c
New Crowdin updates (#2824)
* New translations template.pot (French)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (German)
[skip actions]

* New translations template.pot (Japanese)
[skip actions]

* New translations template.pot (Russian)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (French, Quebec)
[skip actions]

* New translations template.pot (Russian, Ukraine)
[skip actions]

* New translations template.pot (toki pona)
[skip actions]

* New translations template.pot (Pirate English)
[skip actions]

* New translations template.pot (Indonesian)
[skip actions]

* New translations template.pot (Italian)
[skip actions]

* New translations template.pot (Portuguese)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Polish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Indonesian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Portuguese, Brazilian)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Turkish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Chinese Simplified)
[skip actions]

* New translations template.pot (Spanish)
[skip actions]
2022-11-27 23:54:28 -08:00
Cardinal System
3c51fab195
Update translation template 2022-11-28 07:52:14 +00:00
Lucas Nicodemus
0bebe3820a
Reorder changelog 2022-11-27 23:50:55 -08:00
Lucas Nicodemus
10268bb196
Merge remote-tracking branch 'sgk/bombfix' into general-devel 2022-11-27 23:49:16 -08:00
Lucas Nicodemus
faed064b50
Merge remote-tracking branch 'deathcradle/tshock-installer' into general-devel 2022-11-27 23:46:27 -08:00
Lucas Nicodemus
d0262656df
Merge remote-tracking branch 'origin/config/WorldTileProvider' into general-devel 2022-11-27 23:46:18 -08:00
Lucas Nicodemus
bf06a17c19
Merge remote-tracking branch 'drunderscore/fix/more-add-player-buff-whitelists' into general-devel 2022-11-27 23:44:31 -08:00
SGKoishi
b57d02094f
Fix Utils.GetByName add duplicate candidate for same target i18n 2022-11-27 22:30:40 -08:00
SGKoishi
d2037a62e5
Allow more tile and wall conversion 2022-11-27 21:14:13 -08:00
Luke
b24fd4fe43 Merge remote-tracking branch 'upstream/general-devel' into config/WorldTileProvider 2022-11-27 15:16:32 +10:00
Luke
c600966a75
Merge branch 'Pryaxis:general-devel' into tshock-installer 2022-11-27 15:08:07 +10:00
James Puleo
5cc1275496
Update docs/changelog.md 2022-11-26 21:14:49 -05:00
James Puleo
51de32387a
Improve rejection message and code duplication in OnPlayerBuff
There is now a local function `Reject` that will handle logging,
rejecting, and (optionally) re-syncing upon a rejected packet.

Alongside this, the debug message has been improved to include the
sender index, buff type, receiver index, and the time in ticks (and the
existing reason for rejection.)
2022-11-26 21:14:30 -05:00
James Puleo
71a480af6b
Whitelist Shadow Candle and BoC for PlayerAddBuff 2022-11-26 21:14:28 -05:00
Lucas Nicodemus
106f735559
Merge pull request #2791 from sgkoishi/patch-buffnpc-i18nconsistency
Use same logic for all GetByNameOrId
2022-11-26 20:41:16 -05:00
Lucas Nicodemus
e498d6685b
Merge branch 'general-devel' into patch-buffnpc-i18nconsistency 2022-11-26 20:38:09 -05:00
Lucas Nicodemus
6421c7623a
Version tick: 5.1.3 2022-11-24 23:58:45 -07:00
Luke
e561158699 Remove installers sdk archive when archive fails
This will allow the next run to redownload the file.
2022-11-24 16:19:39 +10:00
Luke
403677fad2 Embed symbols in the installer to remove .pdb 2022-11-22 16:44:24 +10:00
Luke
fbd82bbce8 Prevent installer from closing via ctrl+c while server remains open
This allows tshock to handle CancelKeyPress as per normal, instead of closing the parent process, leaving the second trigger to never be reached.
see https://github.com/Pryaxis/TShock/blob/general-devel/TShockAPI/TShock.cs#L710
2022-11-22 16:40:39 +10:00