Commit graph

35 commits

Author SHA1 Message Date
Arthrutus
ecaf8ca98a
fix: Fixes door location at hedge maze (#841) 2021-11-13 16:18:46 -08:00
Arthrutus
85d699fcd7
fix: Fixes archery in CharacterCreation and duplicate decorations for bucs den (#833) 2021-10-20 08:38:20 -07:00
Kamron Batman
bfbe2a6512
fix: Updates professions & new player gargish equipment (#819)
* Now reads Prof.txt to get the professions
* The templated professions are based on profession `TrueName`
* Adds missing starting equipment
* Implements gargish starting equipment
* Consolidates some of the code
* Moves TC stuff to the TC file.
* Fixes some starting equipment that was wrong.

Note:
* Implementing the original T2A professions is possible on the client side, but requires moving the old clilocs to the current clilocs file. In the current file the entries are blank.
* Using the original LBR professions (they match AOS but without necromancy/chivalry) is kind of confusing because the profession indexes are ripped out of the UOTD/UOR ones and have non-sequential indexes. This will probably cause confusion and people will get no templated items when they select the wrong profession.
2021-10-16 10:48:58 -07:00
Arthrutus
aabfabbb76
fix: Remove blood moss from near minoc moongate (#826) 2021-10-09 22:54:46 -07:00
Kamron Batman
3f6a87483b
feat: Adds auto archiving (#794)
## Adds Auto Archiving
Backups are archived once an hour, day, and month. Archives older than 60 days are pruned automatically.

_Note: Automatic pruning is off by default_

### Archive compression format
The following formats are supported:
* Zstd (The fastest with best compression ratio)
* GZip
* Zip
* None (Tar)

_Note: By default archives use [zstandard](http://facebook.github.io/zstd/) format.
The archive format can be changed in modernuo.json `autoArchive.compressionFormat`_

### Restoring world from archive
Move the archive to the Saves folder (tar.zst file). On startup the server will extract the file and restore the latest save. See pictures below.

### Manually extracting an archives
#### Windows
* Use the latest version of [7-zip w/ ZStandard](https://github.com/mcmilk/7-Zip-zstd/releases/latest)
  1. Extract the `.tar.zst` file.
  2. Extract the `.tar` file. (Yes you have to do it in two steps)
* On Windows 10 you can use the command line. `zstd.exe` is in the Assemblies folder after building ModernUO.
  1. `tar --use-compress-program "Distribution\Assemblies\zstd.exe -d" -xvf "Archives\Hourly\archivefile.tar.zst" -C "path to where you want to extract it"`
#### Mac
* Install [Keka](https://www.keka.io)
  1. Drop the .tar.zst onto the keka interface.
#### Linux
  1. Install zstd from a package manager
  2. Run `tar -I zstd -xvf "Archives\Hourly\archivefile.tar.zst" -C "path to where you want to extract it"`

### Other changes
* Changes Autosave to occur at the same time no matter when the server is booted.
* Adds `[SaveFrequency <delay> [warning]`command to set save frequency and warning frequency in-game.
* Adds support for time zones that are configurable. The system timezone can also be manually configured. Check `TimeZoneHandler.cs` for details.

<img width="257" alt="Screen Shot 2021-09-22 at 11 23 18 PM" src="https://user-images.githubusercontent.com/3953314/134464929-a5bf3cd8-2ef0-4476-a9ad-71d0816a19ac.png">
<img width="241" alt="Screen Shot 2021-09-22 at 11 23 39 PM" src="https://user-images.githubusercontent.com/3953314/134464945-5f6f96dc-3d1e-434d-8256-5c6b3705e786.png">
<img width="836" alt="Screen Shot 2021-09-22 at 11 34 39 PM" src="https://user-images.githubusercontent.com/3953314/134464957-625e57f2-ef47-4ca1-a0a7-cd40c9b6539c.png">
<img width="631" alt="Screen Shot 2021-09-22 at 11 34 50 PM" src="https://user-images.githubusercontent.com/3953314/134464969-b2d65c0d-f8f5-497a-a832-5d805e8e0b22.png">
2021-09-25 17:22:05 -07:00
Michael Whelehan
2f5b26ae68
feat(expansions): Adds expansion.json and loads expansions dynamically (#798)
Moves hardcoded expansion settings to the file Data\expansion.json.
2021-09-23 20:28:43 -07:00
Kamron Batman
437ebf7038
fix: Fixes spawners (#762)
* Fixes spawner counts
* Fixes globbing
2021-09-04 18:31:17 -07:00
Kamron Batman
54e56d2fc1
fix: Fixes assembly loading. (#759)
* `AssemblyHandler.Assemblies` will now only contain assemblies listed in `assemblies.json`
* `assemblies.json` has been updated to only contain asssemblies directly loaded by the server. Namely, only `UOContent.dll`.
  * Specifically assemblies loaded by assemblies.json are subject to check for `Configure` and `Initialize` methods.
* `modernuo.json` now has a new property called `assemblyDirectories`. This will be automatically set to `Distribution/Assemblies` (absolute path on your machine).
  * You can add more directories to this list.
* All assemblies in assemblies.json _AND_ dependents of any assembly will be searched for in the directories specified by `assemblyDirectories`.
2021-09-03 23:35:44 -07:00
Kamron Batman
0d1fffd9fc
fix: Fixes spawners, adds convertpremiumspawners, exportspawners, and replaces with neruns distro (#751)
### Additions
* Adds `[exportspawners <relative json file path to distro>`
  * If no path is provided, it will be saved to the `Data\Spawns` folder with the current timestamp as the file name.
  * Supports global, facet, region, multi, and area
* Fixes client disconnect for bad spawner generation command.
* Moves spawner commands to their own folder.
* Adds GUIDs for spawners. This allows for easy replacement during import to reduce duplication.
* Allows exporting the name of the spawner.
* Fixes globbing when using [generatespawners
* Adds [convertpremiumspawners to convert Premium Spawners (from Neruns distro)

Possibly in .NET 6 serializing JSON will be more performant using JSON nodes.


### Screenshots
![Screen_Shot_2021-08-31_at_10 20 06_PM](https://user-images.githubusercontent.com/3953314/131618495-cf7e3ae5-58e5-4f86-9d3c-3cc49906d9fc.png)
![Screen_Shot_2021-08-31_at_10 21 08_PM](https://user-images.githubusercontent.com/3953314/131618502-c39cc368-2266-47a5-9b87-e5ffa108b875.png)
![Screen_Shot_2021-08-31_at_10 13 29_PM](https://user-images.githubusercontent.com/3953314/131618512-f9807f1b-76e4-4503-989d-42324798fbf5.png)
2021-09-03 21:52:44 -07:00
Kamron Batman
bf20800382
fix: Removes BodyValue and fixes modifying Body and BodyMod in props gump. (#743)
* Removes BodyValue
* Removes BodyPicker gump
* Fixes setting Body and BodyMod in props gump
* Props will now look for an `implicit cast` in order to find a way to allow you to modify values with the props gump.
* Fixed `[self set body 0x190` so it works too.
2021-08-28 22:56:00 -07:00
Kamron Batman
cc5a8dc4fa
fix(core): Fixes region base type (#635)
Fixes `Region` being loaded instead of `BaseRegion` as the default region type.
2021-06-02 23:12:52 -07:00
Kamron Batman
6866d51074
fix(admin): Fixes Tokuno Go Locations (#602)
Fixes Tokuno go locations
2021-05-15 19:07:28 -07:00
Kamron Batman
3664149422
fix(shrink): Changes shrink table to use json (#446)
- [X] Replaces shrink.cfg with shrink.json
- [X] Cleans up shrink loading code
2021-02-03 16:58:50 -08:00
Kamron Batman
5d9ebf062f
core(fix): Fixes type aliasing, categorizations, and NPE (#444)
- [X] Fixes lookup of type aliases
- [X] Fixes categorization
- [X] Removes rebuild categorizations
- [X] Fixes an NPE with DoHarmful and Combatant

Closes #441
2021-02-03 16:14:04 -08:00
Kamron Batman
07751654b7
fix(core): Moves map definitions and cleans up loading maps, regions, and tiles (#431)
- [X] Moves map definitions to a `map-definitions.json` file.
- [X] Creates a TileMatrixLoader.
- [X] Moves tile matrix and multi data configurations closer to their classes.
2021-01-25 11:05:52 -08:00
Kamron Batman
369a27b800
Replacing Networking (#271)
- [X] Removing Kestrel & Libuv
- [X] Cleaning up NetState
- [X] Removing System.IO.Pipelines
- [X] Cleaning up packet reading
- [X] Adds a maximum of 5000 sockets (configurable) to prevent OOM
- [X] Replaces the AsyncState with a thread-safe wrapped boolean called NetworkState
- [X] Removes Parallel.ForEach (no perf gain)
- [X] Removes custom houses compression on another thread
- [X] Test high load scenarios

Bumps release version
2020-10-20 20:55:19 -07:00
Kamron Batman
23b8dff68c
Fixes more line ending issues (#267) 2020-09-27 13:54:56 -07:00
Kamron Batman
93cf40ec81
Fixes JSON WorldConverter (#263)
- [X] Adds Map index support for JSON MapConverter
- [X] Files JSON WorldConverter
- [X] Removes LINQ for Map.Parse

Bumps release version
2020-09-20 14:56:46 -07:00
Kamron Batman
403584e735
Bumps native versions to fix MT (#253)
- [X] Updates zlib to 1.3.0
- [X] Updates argon2 to 1.7.0

Bumps release version
2020-09-15 18:16:48 -07:00
Kamron Batman
c29ad3729b
Removes UOAM vendors. (#241) 2020-09-12 11:56:52 -07:00
Kamron Batman
c3d2740983
Fixes bug with configurations (#236)
- [X] Changes brace style to enforced
- [X] Fixes null source with assemblies.json
- [X] Fixes bad path for missing json files

Bumps release version
2020-09-10 23:38:06 -07:00
Kamron Batman
6df1098e06
Fixes building with VS2019 (#230)
Fixes building with VS2019. Now use F6 to build, then F5 to debug.

bumps release
2020-09-06 13:58:58 -07:00
Kamron Batman
81a6143291
Fixes Add Menu Command & Reading JSON files (#222) 2020-09-04 00:19:35 -07:00
Kamron Batman
dbca97e1c2
Updates line endings. 2020-09-03 12:34:50 -07:00
Kamron Batman
3cc00ce994
Fixes assemblies (#167) 2020-06-28 03:33:08 -07:00
Kamron Batman
1246a135f7
Updates Data to JSON (#159) 2020-06-19 13:53:18 -07:00
Kamron Batman
d2f7e08de4
Fixes spelling for a new items (#162) 2020-06-12 12:50:38 -07:00
Kamron Batman
390f30e706
Convert Regions/Spawns to JSON (#138) 2020-05-26 00:34:29 -07:00
Kamron Batman
8cffd82780
Sorts teleporters 2020-05-25 01:16:48 -07:00
Kamron Batman
32ac48657a
Adds assemblies.json to Configuration folder. (#135) 2020-05-09 18:34:16 -07:00
Kamron Batman
5b01754e3e
Adds configuration system. (#125) 2020-05-02 16:44:05 -07:00
Kamron Batman
cffb32d6ef
Updates Bounds.bin 2020-04-26 00:25:03 -07:00
Kamron Batman
be0c33bc8a
Updates teleporter generator (#105) 2020-04-12 23:04:44 -07:00
Andrew Fryer
141ec11330
Updated [GenTel command to use a JSON file (#98) 2020-04-12 21:51:32 -07:00
Kamron Batman
a36796c2c1
v0.0.1-Alpha (#42) 2019-08-02 18:16:11 -07:00