CA5A
9bbcb4b274
fix: Removes DropReq6017 ( #1030 )
2022-05-20 12:11:31 -07:00
Kamron Batman
e172dc9661
fix: Updates dependencies & adds Fedora 35/36 support ( #1029 )
2022-05-19 10:51:24 -07:00
Kamron Batman
f2ced497ec
fix: Updates pool of acid ( #1028 )
...
- [X] Removes duplicate Created property
- [X] Removes allocation while damaging mobiles
- [X] Adds manual dirty checking since we won't be codegenning it and we won't be serializing it.
2022-05-18 17:53:53 -07:00
Kamron Batman
dfdadd3204
fix: Fixes pool of acid and other empty serializations ( #1025 )
...
Fixes an issue where 0 byte objects are improperly deserialized. They should not be deserialized at all and instead deleted.
2022-05-18 17:36:23 -07:00
Kamron Batman
6b3617b08f
fix: Fixes BitArray serialization ( #1027 )
...
Fixes bit array serialization. This may cause objects that were serialized by bit array to fail to deserialize. I am sorry, please accept my condolences. It is probably easiest to just delete those objects. If it becomes a major problem, contact me and I'll help with a hacky per-case solution.
2022-05-18 17:25:03 -07:00
Kamron Batman
a7fd1905e9
fix: Deletes wanderer ( #1023 )
2022-05-16 15:10:49 -07:00
Kamron Batman
dd95a8a1e3
fix: Codegens Food & Beverages ( #1021 )
...
- [X] Simplifies beverages
- [X] Codegens food & beverages
2022-05-15 21:56:04 -07:00
Kamron Batman
7b619f23b8
fix: Fixes static persistence of faction system ( #1020 )
2022-05-15 12:45:51 -07:00
Kamron Batman
eee8494558
fix: Removes scale speed by dex for monsters, fixes NPC movement/thinking speed ( #1019 )
...
* Removes scaled speed by dex for monsters
* Changes scaled speed by dex for pets (HS+ expansion) to be 400ms -> 100ms between 50 -> 200 dex
* Removes speed changes that were broken for various mobs
* Combines "Legacy" speed and renames the class to `NPCSpeeds`
* Creates speed "classes" (slow, medium, fast, very fast)
* Introduces a new overridable property `SpeedClass`. Register a new speed class using `NPCSpeeds.Register()` and then set the speed class to bulk/mass apply speeds.
Order of speed determination:
1. SpeedMod
2. SpeedClass property (not null)
3. SpeedClass entry in Data\npc-speeds.json for that type
4. "Fast" (200ms Active, 400ms Passive)
2022-05-15 10:01:14 -07:00
Kamron Batman
6ec84b3c01
fix: Cleans up string substring ( #1018 )
2022-05-14 16:56:03 -07:00
Kamron Batman
87b63b38a5
fix: Eliminates string allocations while writing gump packets ( #1017 )
...
* Introduces `RawInterpolatedStringHandler` which is exactly the same as `DefaultInterpolatedStringHandler` except it _unsafely exposes_ it's `ReadOnlySpan<char>` buffer. This is useful for writing the string's data without actually building the string.
* Uses this new string interpolation handler in `SpanWriter` to eliminate intermediate strings built. This is immensely useful in eliminating string allocations in writing Gump packets.
2022-05-10 18:50:23 -07:00
Kamron Batman
f7cbeacf48
fix: Fixes factions and makes it static ( #993 )
2022-05-10 11:57:37 -07:00
Kamron Batman
097c0143b0
fix: Fixes missing localization interpolation handler ( #1016 )
2022-05-10 00:42:59 -07:00
Kamron Batman
8031de4738
fix: Fixes string format of cliloc arguments ( #1015 )
2022-05-10 00:37:07 -07:00
Kamron Batman
47d427ed6e
fix: Adds cliloc replacement support ( #1014 )
2022-05-09 21:10:58 -07:00
Kamron Batman
be7da3a3dc
feat: Adds cliloc support and fixes valuestringbuilder ctor ( #1013 )
...
- [X] Adds cliloc support using the following API:
```cs
public static class Localization
{
string GetText(int number);
string GetText(int number, string lang);
string Format(int number, params object[] args);
string Format(int number, string lang, params object[] args);
string Format(int number, $"{arg1}{arg2}{arg3}");
string Format(int number, lang, $"{arg1}{arg2}{arg3}");
bool TryGetLocalization(int number, out LocalizationEntry entry);
bool TryGetLocalization(int number, string lang, out LocalizationEntry entry);
}
public class LocalizationEntry
{
string Language { get; }
string Number { get; }
string Text { get; }
string?[] TextSlices { get; } // Used for string building
string StringFormatter { get; }
string Format(params object[] args);
string Format($"{arg1}{arg2}{arg3}");
}
```
- [X] Fixes a bug with ValueStringBuilder and default initialization size
- [X] Optimizes ValueStringBuilder to use `ISpanFormattable`
- [X] Adds `Append<T>(T value);` support ValueStringBuilder
- [X] Adds `Append($"");` string interpolation support to ValueStringBuider
2022-05-08 21:24:32 -07:00
Tellundro
790cb5d733
fix: Fixes NPE in TreasureMapChest ( #1010 )
2022-05-04 19:10:55 -07:00
Kamron Batman
861ff307c0
fix: Fixes missing invalidate properties for default name ( #1012 )
2022-05-04 14:40:49 -07:00
Kamron Batman
8f1240d25e
fix: Fixes expansion flags for animations ( #1009 )
2022-05-01 18:35:42 -07:00
Kamron Batman
0f304d77c4
fix: Fixes CAGLoader NPE ( #1006 )
2022-04-19 17:25:38 -07:00
Kamron Batman
848db6fc4b
fix: Fixes mount blocking and adds permanent option for customization ( #1005 )
2022-04-19 14:23:10 -07:00
Kamron Batman
f2275cb65b
fix: Adds OnBeforeDisconnected and BeforeDisconnected eventsink ( #1004 )
2022-04-19 00:34:02 -07:00
Kamron Batman
3a0f2b0b90
fix: Fixes cutting cloth ( #1003 )
2022-04-18 15:01:13 -07:00
Kamron Batman
fc3d9b926d
fix: Adds Poison to codegen ( #1002 )
2022-04-18 00:05:44 -07:00
Kamron Batman
933c41070f
fix: Codegens farmables ( #1001 )
2022-04-17 17:10:45 -07:00
Kamron Batman
4bde9a4c86
fix: Codegens vendor contracts ( #1000 )
2022-04-17 16:51:59 -07:00
Kamron Batman
dbb75f78a0
chore: Deletes ConnectUO support ( #999 )
...
Looks like connectuo is dead so deleting the support for it.
2022-04-17 09:06:24 -07:00
Kamron Batman
54d728a322
fix: Updates serialization to use v2.0 ( #998 )
...
- [X] Deletes serialization annotations
- [X] Updates to ModernUO.Serialization.Annotations nuget
- [X] Updates serializer to v2.0
- [X] Changes all `Serializable()` to `SerializationGenerator()`
- [X] Updates to schema generator v2.0
2022-04-17 08:02:15 -07:00
Kamron Batman
910549db84
fix: Fixes loading multi when client is missing ( #996 )
...
* Changes reading multi.mul/multi.idx so it is loaded entirely during bootup.
* Fixes finding files in Linux.
* Fixes handling HS format.
* Removes verdata support.
ModernUO will still have issues if there is a multi.mul that is pre-HS loaded when it detects a client that is 7.0.9+.
2022-04-14 16:52:45 -07:00
Kamron Batman
6c22bb2b97
fix: Fixes spelling of 8th age ( #995 )
2022-04-12 21:00:30 -07:00
Kamron Batman
de0bf03f46
fix: Simplifies expansion checks ( #994 )
2022-04-12 20:52:53 -07:00
Mink80
f91ebe8183
fix: Fixes food stacking for poisoned food. ( #987 )
2022-04-08 10:37:42 -07:00
Kamron Batman
0d9259e4cd
fix: Adds Combine overloads ( #989 )
2022-04-06 15:51:03 -07:00
Kamron Batman
943b2eca36
feat: Adds Combine for arrays ( #988 )
2022-04-06 15:34:47 -07:00
jkachhad
b2b4c809f8
fix: Properly count timers for DumpInfo ( #986 )
2022-04-03 00:00:01 -07:00
Kamron Batman
4d1ee21568
chore: Removes benchmarks. ( #985 )
2022-03-31 10:37:33 -07:00
Kamron Batman
fdcd6c80a8
chore: Adds benchmarks for RunUO vs ModernUO Timers ( #984 )
2022-03-31 00:16:45 -07:00
Kamron Batman
9baa6f58e7
fix: Codegens deeds ( #983 )
2022-03-30 19:42:38 -07:00
Kamron Batman
55a6589644
fix: Fixes wrong point reference in building region ( #982 )
2022-03-30 13:14:29 -07:00
Kamron Batman
a5a5460291
fix: Fixes world save timer issue ( #981 )
...
Fixes a major bug where a race condition could cause the timer wheel to have non-deterministic behavior and potentially never finish the save.
2022-03-29 15:08:23 -07:00
Kamron Batman
b6d155687e
feat: Adds account enumerator ( #980 )
2022-03-29 13:29:35 -07:00
Kamron Batman
e148e1cabb
fix: Converts stealable artifacts to a system instead of a spawner. ( #979 )
2022-03-27 19:37:10 -07:00
Kamron Batman
b61968db86
fix: Codegens artifacts ( #978 )
2022-03-27 17:56:00 -07:00
Kamron Batman
fa0bf86a08
fix: Codegens furniture containers ( #977 )
2022-03-27 15:02:29 -07:00
Kamron Batman
8f922c94ae
fix: Codegens lockable containers and cleans up lockpickable ( #976 )
2022-03-26 21:48:18 -07:00
Kamron Batman
fc0594f87c
fix: Codegens TreasureMapChest ( #975 )
2022-03-26 21:33:46 -07:00
Kamron Batman
ba5bb13e60
fix: Codegens mark containers ( #974 )
2022-03-26 21:23:21 -07:00
Kamron Batman
2f6a0fad3a
fix: Codegens trappable containers ( #973 )
...
Splits out trappable container so the logic is easier to expand.
Changes trappable containers to be code genned.
2022-03-26 21:15:15 -07:00
Kamron Batman
81cafa0753
fix: Fixes bank checks falling to the floor. ( #972 )
2022-03-26 21:06:46 -07:00
Kamron Batman
e9f986f55b
fix: Adds Gen2 callback for each STArrayPool ( #971 )
...
Adds. Gen2Callback for STArrayPool so it can purge the internal array stacks properly. This only happens if significant timed has passed, 2 Gen 2's have been run, and memory pressure exceeds a threshold.
2022-03-26 13:57:42 -07:00