diff --git a/.github/scripts/thunderstore_bundle.js b/.github/scripts/thunderstore_bundle.js index a09e341b3..83d5b6ae6 100644 --- a/.github/scripts/thunderstore_bundle.js +++ b/.github/scripts/thunderstore_bundle.js @@ -123,9 +123,11 @@ function generateManifest() { BEPINEX_DEPENDENCY, `nebula-${apiPluginInfo.name}-${apiPluginInfo.version}`, "PhantomGamers-IlLine-1.0.0", - "starfi5h-BulletTime-1.5.8", + "starfi5h-BulletTime-1.5.11", + "starfi5h-ErrorAnalyzer-1.3.3", + "starfi5h-NebulaCompatibilityAssist-0.4.27" ], - website_url: "https://github.com/hubastard/nebula" + website_url: "https://github.com/NebulaModTeam/nebula" }; writeFileSync( join(DIST_NEBULA_FOLDER, "manifest.json"), @@ -141,7 +143,7 @@ function generateApiManifest() { dependencies: [ BEPINEX_DEPENDENCY ], - website_url: "https://github.com/hubastard/nebula" + website_url: "https://github.com/NebulaModTeam/nebula" }; writeFileSync( join(DIST_NEBULA_API_FOLDER, "manifest.json"), diff --git a/CHANGELOG.md b/CHANGELOG.md index cab6dd0b2..88e63917a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ ## Changelog +0.9.18: +- Compatible with game version 0.10.33.27026 +- **The dedicated server CLI option has changed from `-server` to `-nebula-server`** +- Add new CLI argument `-newgame-default` to start a new game using default settings +- Add new config option `EnableUnkillableMode` as a workaround for the host player taking damage intended for other players or entities +- Sync research queue reorder event +- Catch exceptions in DiscordManager +- Note: The wireless power towers don't sync when charging mecha. + 0.9.17: - Compatible with game version 0.10.32.25779 diff --git a/Nebula.sln b/Nebula.sln index 39917e32d..acc0f7266 100644 --- a/Nebula.sln +++ b/Nebula.sln @@ -16,6 +16,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Shims\Shims.cs = Shims\Shims.cs version.json = version.json Directory.Build.rsp = Directory.Build.rsp + CHANGELOG.md = CHANGELOG.md + .github\scripts\thunderstore_bundle.js = .github\scripts\thunderstore_bundle.js EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NebulaWorld", "NebulaWorld\NebulaWorld.csproj", "{28AEA139-FB22-4672-AF51-28B728CF2978}" diff --git a/NebulaAPI/version.json b/NebulaAPI/version.json index c7419dc1e..f49b3ea1b 100644 --- a/NebulaAPI/version.json +++ b/NebulaAPI/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "2.0.0", + "version": "2.1.0", "assemblyVersion": { "precision": "build" }, diff --git a/NebulaModel/CommandLineOptions.cs b/NebulaModel/CommandLineOptions.cs index 3bbf7338a..a6987e920 100644 --- a/NebulaModel/CommandLineOptions.cs +++ b/NebulaModel/CommandLineOptions.cs @@ -27,7 +27,7 @@ public void ParseArgs(string[] args) { switch (args[i]) { - case "-dsp_server": + case "-nebula-server": IsDedicatedServer = true; Log.Info(">> Initializing dedicated server"); break; diff --git a/README.md b/README.md index 8decf9c52..501772e7b 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ An open-source, multiplayer mod for the game [Dyson Sphere Program](https://stor ## Download Prerelease [![Build - Win x64](https://github.com/NebulaModTeam/nebula/actions/workflows/build-winx64.yml/badge.svg?branch=master)](https://nightly.link/NebulaModTeam/nebula/workflows/build-winx64/master/build-artifacts-Release.zip) -Note: This is the bleeding edge build, for the more stable build see below. You can use this one if you want to try out the latest development builds, which may contain bugs and unfinished work. +Note: This is the bleeding edge build, for the more stable build see below. You can use this one if you want to try out the latest development builds, which may contain bugs and unfinished features. You will also need some extra steps to get this installed, see 2nd point in ["How can I play this mod?"](#how-can-i-play-this-mod). @@ -13,33 +13,37 @@ You will also need some extra steps to get this installed, see 2nd point in ["Ho ### Where can I get mod support? -Please join our [Discord Server](https://discord.gg/UHeB2QvgDa) and ask your question in the `support` channel. We have a really nice community that will be able to answer your questions. +Please join our [Discord Server](https://discord.gg/UHeB2QvgDa) and ask your question in the `support` channel. +The mod often becomes incompatible after game updates. A temporary version rollback may be needed. +Some mods are not compatible with multiplayer. Check the [NebulaCompatibilityAssist](https://thunderstore.io/c/dyson-sphere-program/p/starfi5h/NebulaCompatibilityAssist/) mod page to learn more. ### How can I play this mod? -Please do keep in mind that this mod is still in heavy development, it may still contains bugs. +Please do keep in mind that this mod is still in development to keep up with game changes, it may still contain bugs. - Stable version of the mod can be downloaded from [Thunderstore](https://dsp.thunderstore.io/package/nebula/NebulaMultiplayerMod/) (Recommended). - If you want to install the latest version of the mod, you can install pre-release versions be following the [installation guide](https://github.com/NebulaModTeam/nebula/wiki/Installation#manual-installation). -- To connect, check [hosting and joining guide](https://github.com/NebulaModTeam/nebula/wiki/Hosting-and-Joining). +- To connect, check [hosting and joining guide](https://github.com/NebulaModTeam/nebula/wiki/Hosting-and-Joining). The mod uses TCP for direct connections, with the default port set to 8469. -### API Documentation - -This mod has an API, that makes it easier for other mod developers to make their mods compatible with Nebula. If you are a mod developer and you want your mods to be compatible, follow the instructions [here](https://github.com/NebulaModTeam/nebula/wiki/Nebula-mod-API). Also you can always join our [Discord Server](https://discord.gg/UHeB2QvgDa) for help with using the API. ### Chat -The chat window can opened/closed using `Alt + Backtick` (configurable in Settings - Multiplayer - Chat). Type `/help` to view all commands. Also in settings is an option to disable the chat window from automatically opening when a message is received. +The chat window can opened/closed using `Alt + Backtick` (configurable in Settings - Multiplayer - Chat). Also in settings is an option to disable the chat window from automatically opening when a message is received. +Type `/help` to view all commands, or view [Chat Commands](https://github.com/NebulaModTeam/nebula/wiki/Chat-Commands) wiki page for more info. + +### Dedicated Server + +The mod supports running the server in non-GPU environment. Check [the wiki page](https://github.com/NebulaModTeam/nebula/wiki/Setup-Headless-Server) to learn how to setup and the command-line arguments. ### What is the current status? Major refactors will happen while the project grows or game updates. Join the [Discord Server](https://discord.gg/UHeB2QvgDa) if you want to see to latest state of our development. Check [Wiki](https://github.com/NebulaModTeam/nebula/wiki/About-Nebula) for overview of features. -The multiplayer mod now supports Dark Fog combat mode in the latest game version (0.10.32.x). -Most of the battle aspects are sync, only few features are still WIP. +The multiplayer mod now supports Dark Fog combat mode in the latest game version (0.10.33.x). +Most of the battle aspects are sync, only few features are still work in progress.
-List of peace mode syncing features +List of peace mode syncing features (click to expand) - [x] Server / Client communication - [x] Custom Multiplayer menu in-game @@ -68,18 +72,19 @@ Most of the battle aspects are sync, only few features are still WIP. - [x] Drones events syncing - [x] Foundation syncing (terrain deformation) - [x] Server state persistence -- [x] Power network syncing (charger and request power from dyson sphere) +- [x] Power network syncing (request power from dyson sphere) - [x] Warning alarm syncing - [x] Broadcast notification syncing (events with guide icon) - [x] Logistics Control Panel (I) syncing (entry list and detail panel) - [ ] Goal system (currently not available in client) - [ ] Custom dashboard (clients will lost their custom stats when they leave the star system) +- [ ] Wireless charge tower (power will not sync when mecha is charging)
-List of combat mode syncing features +List of combat mode syncing features (click to expand) - [x] Sync settings of new building (BAB, turrets) - [x] Sync combat settings @@ -120,6 +125,10 @@ Most of the battle aspects are sync, only few features are still WIP.
+### API Documentation + +This mod has an API, that makes it easier for other mod developers to make their mods compatible with Nebula. If you are a mod developer and you want your mods to be compatible, follow the instructions [here](https://github.com/NebulaModTeam/nebula/wiki/Nebula-mod-API). Also you can always join our [Discord Server](https://discord.gg/UHeB2QvgDa) for help with using the API. + ### How can I contribute? Please join our [Discord Server](https://discord.gg/UHeB2QvgDa) to ask if someone is already working on the task that you want to do. Once, you are done with your modification, simply submit a pull request. Contribution documentation can be found here: [Wiki](https://github.com/NebulaModTeam/nebula/wiki/Setting-up-a-development-environment). diff --git a/version.json b/version.json index 77a778365..730043ef6 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "0.9.17", + "version": "0.9.18", "assemblyVersion": { "precision": "build" },