diff --git a/.github/workflows/version-and-changelog-update.yml b/.github/workflows/version-and-changelog-update.yml index 9226a110f..5d8e4eacb 100644 --- a/.github/workflows/version-and-changelog-update.yml +++ b/.github/workflows/version-and-changelog-update.yml @@ -199,7 +199,7 @@ jobs: with: token: ${{ secrets.GITHUB_TOKEN }} dateFormat: "%d.%m.%Y" - output: "CHANGELOG.md" + output: "docs/CHANGELOG.md" issueLineLabels: "ALL" breakingLabels: "backwards-incompatible,breaking,rework,refactor" futureRelease: ${{ env.FUTURE_RELEASE }} @@ -250,7 +250,7 @@ jobs: git pull origin ${{ github.base_ref }} git config --local user.email "action@github.com" git config --local user.name "github-actions" - git add CHANGELOG.md + git add docs/CHANGELOG.md git commit -m "Updated CHANGELOG.md in https://github.com/${{github.repository}}/pull/${{github.event.number}}" git push origin ${{ github.base_ref }} else diff --git a/README.md b/README.md index 3518ddce6..e79feb988 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,10 @@ [![latest release](https://img.shields.io/github/v/release/ismoh/noitamp?include_prereleases&label=latest%20release&style=for-the-badge)](https://github.com/Ismoh/NoitaMP/releases) -### Table of Contents +## Table of Contents - [TL:DR](#tldr) - [Documentation](#documentation) -- [Our awesome and valuable Contributors](#our-awesome-and-valuable-contributors) -- [Credits, Supporter and special thanks](#credits-supporter-and-special-thanks) -- [Used libraries, frameworks and other stuff](#used-libraries-frameworks-and-other-stuff) - [Roadmap](#roadmap) ## TL;DR @@ -61,73 +58,6 @@ Let's see, if I can do so?! I am new to Lua and modding, but someone said to me: Installation, configuration and support can be found on the [docs](https://ismoh.github.io/NoitaMP/). -## Our awesome and valuable Contributors - - - - - -## Credits, Supporter and special thanks - -I wouldn't be able to create this mod without the help by - -- [@EvaisaGiac](https://github.com/EvaisaGiac/) -- [@TheHorscht](https://github.com/TheHorscht/) -- [@Pyry](https://github.com/probable-basilisk) -- [@DevonX](https://github.com/DevonX) -- [@shebpamm](https://github.com/shebpamm) -- @Coxas/Thighs -- [@dextercd](https://github.com/dextercd) -- [@BlueAmulet](https://github.com/BlueAmulet) -- [@Shaw](https://github.com/ShawSumma) -- [@Ramiels](https://github.com/Ramiels) -- [@bruham](https://steamcommunity.com/id/bruham/myworkshopfiles/?appid=881100) -- [@ofoxsmith](https://github.com/ofoxsmith) -- [@Myzumi](https://github.com/Myzumi) - -I also want to say thank you to the sponsors of this project on - -- [GitHub](https://github.com/sponsors/Ismoh) -- [Patreon](https://www.patreon.com/ismoh) -- [Discord](https://donatebot.io/checkout/747169041457872917) - -| Name | Amount | Type | Start | -|:-------------------------------------------:|:--------:|:----------:|:--------------:| -| [stefnotch](https://github.com/stefnotch) | 20$ | one-time | Nov 18, 2022 | -| [den3606](https://github.com/den3606) | 1$ | monthly | Feb 8, 2023 | -| [clragon](https://github.com/clragon) | 25$ | one-time | Feb 17, 2023 | -| [stefnotch](https://github.com/stefnotch) | 20$ | one-time | Jul 13, 2023 | -| [conga lyne](https://github.com/Conga0) | 25$ | monthly | Jul 13, 2023 | -| [clragon](https://github.com/clragon) | 20$ | one-time | Jul 13, 2023 | - -If you spot anything I should mention, feel free to create an issue or get in touch with [me](https://github.com/Ismoh)! - -### Used libraries, frameworks and other stuff - -Also, special thanks to the people, who share their libraries, frameworks and other stuff. See below! - -- custom lua51.dll provided by Noita -- [luaJIT-2.0.4](https://github.com/LuaJIT/LuaJIT/releases/tag/v2.0.4) used by Noita -- [eNet](http://enet.bespin.org/) for network communication -- [lua-enet](https://github.com/leafo/lua-enet) for being able to use eNet in Lua -- [sock.lua](https://github.com/camchenry/sock.lua) for 'easy' to use lua-enet and eNet in Lua -- ~~[bitser.lua](https://github.com/gvx/bitser) for old serializing and deserializing data~~ -- [pprint.lua](https://github.com/jagt/pprint.lua) for debugging with pretty prints -- ~~[json.lua](https://github.com/rxi/json.lua) for serializing and deserializing data in json format~~ -- [nxml.lua](https://github.com/zatherz/luanxml) for editing xml files used by Noita -- ~~[EZGUI.lua](https://github.com/TheHorscht/EZGUI) for the GUI, but unfortunately it isn't maintained anymore~~ -- [lua-watcher.lua](https://github.com/EvandroLG/lua-watcher) for getting the correct save path for Noita -- [lfs-ffi.lua](https://github.com/sonoro1234/luafilesystem) for lua file system -- [deepcopy.lua](https://gist.github.com/Deco/3985043) for being able to copy tables -- [libzstd.dll](https://github.com/facebook/zstd) for being able to compress and decompress data -- [zstd.lua](https://github.com/sjnam/luajit-zstd) for easy to use libzstd.dll in Lua -- [lua-MessagePack](https://framagit.org/fperrad/lua-MessagePack/-/tree/0.5.2) for serializing and deserializing data -- [plotly.lua](https://github.com/kenloen/plotly.lua) for plotting profiled data -- [dkjson.lua](https://github.com/LuaDist/dkjson) needed by plotly.lua - -I had to build the network library by my own, because Noita provides its own lua51.dll. I struggled to build it, if you are interested in, -I've added all the necessary build files inside of .building/dll_building.7z and here you can see the [stackoverflow question](https://stackoverflow.com/questions/70048918/lua-5-1-package-loadlib-and-require-gcc-building-windows-dll) I've created. - ## Roadmap ```mermaid diff --git a/SUPPORT.md b/SUPPORT.md deleted file mode 100644 index 4e1fac3e1..000000000 --- a/SUPPORT.md +++ /dev/null @@ -1 +0,0 @@ -https://mozillascience.github.io/working-open-workshop/contributing/ \ No newline at end of file diff --git a/CHANGELOG.md b/docs/CHANGELOG.md similarity index 100% rename from CHANGELOG.md rename to docs/CHANGELOG.md diff --git a/docs/_config.yml b/docs/_config.yml deleted file mode 100644 index 53015d590..000000000 --- a/docs/_config.yml +++ /dev/null @@ -1,3 +0,0 @@ -# Theme -# theme: "just-the-docs" -remote_theme: pmarsceill/just-the-docs diff --git a/LICENSE b/docs/about/LICENSE.md similarity index 100% rename from LICENSE rename to docs/about/LICENSE.md diff --git a/docs/about/credits.md b/docs/about/credits.md new file mode 100644 index 000000000..3177305c5 --- /dev/null +++ b/docs/about/credits.md @@ -0,0 +1,66 @@ +# Credits + +## Our awesome and valuable Contributors + +[![Contributors](https://contrib.rocks/image?repo=Ismoh/NoitaMP)](https://github.com/Ismoh/NoitaMP/graphs/contributors) + +## Credits, Supporter and special thanks + +I wouldn't be able to create this mod without the help by + +- [@EvaisaGiac](https://github.com/EvaisaGiac/) +- [@TheHorscht](https://github.com/TheHorscht/) +- [@Pyry](https://github.com/probable-basilisk) +- [@DevonX](https://github.com/DevonX) +- [@shebpamm](https://github.com/shebpamm) +- @Coxas/Thighs +- [@dextercd](https://github.com/dextercd) +- [@BlueAmulet](https://github.com/BlueAmulet) +- [@Shaw](https://github.com/ShawSumma) +- [@Ramiels](https://github.com/Ramiels) +- [@bruham](https://steamcommunity.com/id/bruham/myworkshopfiles/?appid=881100) +- [@ofoxsmith](https://github.com/ofoxsmith) +- [@Myzumi](https://github.com/Myzumi) + +I also want to say thank you to the sponsors of this project on + +- [GitHub](https://github.com/sponsors/Ismoh) +- [Patreon](https://www.patreon.com/ismoh) +- [Discord](https://donatebot.io/checkout/747169041457872917) + +| Name | Amount | Type | Start | +|:-------------------------------------------:|:--------:|:----------:|:--------------:| +| [stefnotch](https://github.com/stefnotch) | 20$ | one-time | Nov 18, 2022 | +| [den3606](https://github.com/den3606) | 1$ | monthly | Feb 8, 2023 | +| [clragon](https://github.com/clragon) | 25$ | one-time | Feb 17, 2023 | +| [stefnotch](https://github.com/stefnotch) | 20$ | one-time | Jul 13, 2023 | +| [conga lyne](https://github.com/Conga0) | 25$ | monthly | Jul 13, 2023 | +| [clragon](https://github.com/clragon) | 20$ | one-time | Jul 13, 2023 | + +If you spot anything I should mention, feel free to create an issue or get in touch with [me](https://github.com/Ismoh)! + +### Used libraries, frameworks and other stuff + +Also, special thanks to the people, who share their libraries, frameworks and other stuff. See below! + +- custom lua51.dll provided by Noita +- [luaJIT-2.0.4](https://github.com/LuaJIT/LuaJIT/releases/tag/v2.0.4) used by Noita +- [eNet](http://enet.bespin.org/) for network communication +- [lua-enet](https://github.com/leafo/lua-enet) for being able to use eNet in Lua +- [sock.lua](https://github.com/camchenry/sock.lua) for 'easy' to use lua-enet and eNet in Lua +- ~~[bitser.lua](https://github.com/gvx/bitser) for old serializing and deserializing data~~ +- [pprint.lua](https://github.com/jagt/pprint.lua) for debugging with pretty prints +- ~~[json.lua](https://github.com/rxi/json.lua) for serializing and deserializing data in json format~~ +- [nxml.lua](https://github.com/zatherz/luanxml) for editing xml files used by Noita +- ~~[EZGUI.lua](https://github.com/TheHorscht/EZGUI) for the GUI, but unfortunately it isn't maintained anymore~~ +- [lua-watcher.lua](https://github.com/EvandroLG/lua-watcher) for getting the correct save path for Noita +- [lfs-ffi.lua](https://github.com/sonoro1234/luafilesystem) for lua file system +- [deepcopy.lua](https://gist.github.com/Deco/3985043) for being able to copy tables +- [libzstd.dll](https://github.com/facebook/zstd) for being able to compress and decompress data +- [zstd.lua](https://github.com/sjnam/luajit-zstd) for easy to use libzstd.dll in Lua +- [lua-MessagePack](https://framagit.org/fperrad/lua-MessagePack/-/tree/0.5.2) for serializing and deserializing data +- [plotly.lua](https://github.com/kenloen/plotly.lua) for plotting profiled data +- [dkjson.lua](https://github.com/LuaDist/dkjson) needed by plotly.lua + +I had to build the network library by my own, because Noita provides its own lua51.dll. I struggled to build it, if you are interested in, +I've added all the necessary build files inside of .building/dll_building.7z and here you can see the [stackoverflow question](https://stackoverflow.com/questions/70048918/lua-5-1-package-loadlib-and-require-gcc-building-windows-dll) I've created. diff --git a/CODE_OF_CONDUCT.md b/docs/contributing/CODE_OF_CONDUCT.md similarity index 100% rename from CODE_OF_CONDUCT.md rename to docs/contributing/CODE_OF_CONDUCT.md diff --git a/CONTRIBUTING.md b/docs/contributing/CONTRIBUTING.md similarity index 89% rename from CONTRIBUTING.md rename to docs/contributing/CONTRIBUTING.md index 4473eb739..b68dfee34 100644 --- a/CONTRIBUTING.md +++ b/docs/contributing/CONTRIBUTING.md @@ -1,7 +1,7 @@ # Contributing to NoitaMP -I am happy to accept contributions to NoitaMP.\ -Please follow these guidelines when contributing,\ +I am happy to accept contributions to NoitaMP. +Please follow these guidelines when contributing, but first off, thanks for taking the time to contribute! ## Table of Contents @@ -21,7 +21,7 @@ but first off, thanks for taking the time to contribute! - [ ] I have experience in Lua. - [ ] I have experience in Noita modding. -To be honest, I am sure that you have experience in Lua and Noita modding and if you read this, you will probably be able to contribute to NoitaMP.\ +To be honest, I am sure that you have experience in Lua and Noita modding and if you read this, you will probably be able to contribute to NoitaMP. Everything will be explained here and if there are still questions, you can ask them in the [Discord server](https://discord.gg/DhMurdcw4k). ## Contributing @@ -33,7 +33,7 @@ This is to avoid duplicate work. ## How does NoitaMP work? -NoitaMP is a mod that uses the [Noita API](https://noita.wiki.gg/wiki/Modding), but there is something that you need to know about the API.\ +NoitaMP is a mod that uses the [Noita API](https://noita.wiki.gg/wiki/Modding), but there is something that you need to know about the API. The API is a Lua library that is used to interact with the game.\ The API is not a mod, it is a library that is used to create mods. @@ -45,19 +45,19 @@ There are different Lua contexts in Noita, but the most important one is the `in Let me try to explain it with an example: ![NoitaMP](miscs/contributing-md/lua-contexts.png) -In the diagram above you can see the default Noita modding structure.\ +In the diagram above you can see the default Noita modding structure. There are different Lua contexts: - One for `init.lua` - This is the 'main' context that is used to interact with NoitaMP, because unrestricted Lua code (unrestricted mod mode) is only available in the `init.lua` context. - and contexts for `LuaComponents` - - How contexts for LuaComponents are defined, depends on the value of `vm_type`.\ - SHARED_BY_MANY_COMPONENTS means that for that script path, it uses a single Lua context.\ - ONE_PER_COMPONENT_INSTANCE means that even with the same script path, every LuaComponent has its own Lua context. - The path of the entity XML file is irrelevant as far as I can tell.\ - SHARED_BY_MANY_COMPONENTS is the default, see [wiki](https://noita.wiki.gg/wiki/Documentation:_LuaComponent) + - How contexts for LuaComponents are defined, depends on the value of `vm_type`. + `SHARED_BY_MANY_COMPONENTS` means that for that script path, it uses a single Lua context. + `ONE_PER_COMPONENT_INSTANCE` means that even with the same script path, every LuaComponent has its own Lua context. + The path of the entity XML file is irrelevant as far as I can tell. + `SHARED_BY_MANY_COMPONENTS` is the default, see [wiki](https://noita.wiki.gg/wiki/Documentation:_LuaComponent) - _Credits to dextercd_ + _Credits to dextercd_ **You are able to use Noita API functions in each context, but you are not able to use functions from other contexts.** There is no way to access the `init.lua` context from a LuaComponent context and vice versa, **but there are workarounds**! @@ -70,13 +70,13 @@ There are different ways to communicate between contexts: - VariableStorageComponents - Using `init.lua` context only -Assume we need a value in NoitaMP, which can only be fetched in LuaComponents. So in different Lua contexts!\ +Assume we need a value in NoitaMP, which can only be fetched in LuaComponents. So in different Lua contexts! We can solve this problem by the examples below: #### GlobalsSetValue and GlobalsGetValue Then we would set a global "foo" variable in the `LuaComponent` context _(see 1 and 2 in the diagram below)_ -and afterwards we would use the `init.lua` context to fetch the value of the global "foo" variable _(see 3 and 4 in the diagram below)_.\ +and afterwards we would use the `init.lua` context to fetch the value of the global "foo" variable _(see 3 and 4 in the diagram below)_. In addition, please note that `GlobalsSetValue` and `GlobalsGetValue` has nothing to do with Lua globals `_G`. See diagram below for a better understanding: ![NoitaMP](miscs/contributing-md/lua-contexts-workaround.png) @@ -113,7 +113,7 @@ end #### Using init.lua context only -If you are able to use the `init.lua` context only, then you can use the NoitaMP functions directly.\ +If you are able to use the `init.lua` context only, then you can use the NoitaMP functions directly. For example, if you want to get local player/Minä, then you can use the NoitaMP function `MinaUtils.getLocalMinaInformation()`: ```lua @@ -132,7 +132,7 @@ end ## 'Classes' in NoitaMP -Most of NoitaMPs functions are in 'class' tables, available in Luas globals `_G`.\ +Most of NoitaMPs functions are in 'class' tables, available in Luas globals `_G`. I tried to create topics for each class table, so you can find the global classes per topic: - Mostly everything regarding Entities: `EntityUtils.lua` @@ -142,16 +142,16 @@ I tried to create topics for each class table, so you can find the global classe - Just some utilise functions: `util.lua` - and so on... -I try to use KISS (Keep It Simple Stupid) and DRY (Don't Repeat Yourself) as much as possible.\ -So before you want to add a new function, please try to use existing functions and classes, if possible.\ +I try to use KISS (Keep It Simple Stupid) and DRY (Don't Repeat Yourself) as much as possible. +So before you want to add a new function, please try to use existing functions and classes, if possible. If there are no existing functions or classes you could use, then take in mind: - to create a new class with functions - or to add functions to existing classes - and add the `CustomProfiler` per new function. -`CustomProfiler` is a class that is used to measure the execution time of a function, because we had terrible performance issues and memory leaks in the past.\ -Therefore it is important to measure the time of each function, so we can find the functions that are causing performance issues.\ +`CustomProfiler` is a class that is used to measure the execution time of a function, because we had terrible performance issues and memory leaks in the past. +Therefore it is important to measure the time of each function, so we can find the functions that are causing performance issues. To add the CustomProfiler to a function, you can use the following example: ```lua @@ -177,11 +177,11 @@ end ## TTD - Test Driven Development -Please! Please! Please, make sure to write tests for your functions!\ -I know it is not easy to write tests, but it is very important to do so.\ -If you are not able to write tests, then please ask for help in the Discord server.\ -I will help you to write tests for your functions.\ -I will not accept any pull requests without tests, sorry.\ +Please! Please! Please, make sure to write tests for your functions! +I know it is not easy to write tests, but it is very important to do so. +If you are not able to write tests, then please ask for help in the Discord server. +I will help you to write tests for your functions. +I will not accept any pull requests without tests, sorry. ### Location of tests diff --git a/docs/index.md b/docs/index.md index 343003d12..2baed6841 100644 --- a/docs/index.md +++ b/docs/index.md @@ -2,60 +2,8 @@ NoitaMP is a mod for [Noita](https://noitagame.com/) to be able to share your feelings while playing Noita with your friends. It's a multiplayer mod :rage1: View it on [GitHub](https://github.com/Ismoh/NoitaMP). -## Installation +## TL;DR -1. Download the [latest version](https://github.com/Ismoh/NoitaMP/releases) of NoitaMP -2. Unzip it -3. Paste '**noita-mp\\**' folder into '**...\\Noita\\mods\\**' directory of your Noita destination path. +**Currently work in progress and not working unless there is a GitHub release available!** -## Configuration - -You are able to define, which entities should be synced by changing '**\\mods\\noita-mp\\config.lua**' -Here is an example of the default include and exclude list: - -```lua -if not EntityUtils then - _G.EntityUtils = {} -end - -EntityUtils.include = { - byComponentsName = { "VelocityComponent", "PhysicsBodyComponent", "PhysicsBody2Component", "ItemComponent", "PotionComponent" }, - byFilename = {} -} -EntityUtils.exclude = { - byComponentsName = {}, - byFilename = { "particle", "tree_entity.xml", "vegetation" } -} -``` - -Make sure that _G.EntityUtils will be defined and not nil. - -You can include entities by their component or file names. In addition you are also able to exclude entities for better performance reasons. - -In addition to this there are some settings/configurations inside Noitas Mod Settings: -![Mod Settings](/docs/resources/mod-settings.png?raw=true&sanitize=true) - -| Setting | Description | -|--------------------------------------|--------------------------------------------------------------------------------------------------------| -| Username | Name displayed when playing | -| GUID | Globally Unique Identifier | -| Server | | -| Server IP | IP on which the server be started | -| Server Port | Port | -| Server Password | TBC, not possible atm | -| Server start behaviour | On = Starts the server immediatly when starting the run Off = Server has to be started manually | -| Radius to detect entities | Higher value = small freezes, but better sync! Value to low = DEsync! | -| Client | | -| Connect Server IP | IP where you want to connect as a client | -| Connect Server Port | Port | -| Connect Server Password | The servers password. TBC, not possible atm | -| Radius to remove entities on clients | Higher value = better sync! Value to low = strange behaviour! | -| Key Bindings | | -| Toggle multiplayer menu | Not possible atm | -| Debug settings | | -| Toggle debug (in game) | Enable nuid debugger in a run. Nothing you can do with :) | -| Log level | Will be interesting when something isnt working, but for higher fps and performance, keep it on Error! | - -## Support - -If you need help or anything looks like to be broken, search the [issues](https://github.com/Ismoh/NoitaMP/issues?q=is%3Aissue) to find a similar problem or [create](https://github.com/Ismoh/NoitaMP/issues/new/choose) a new issue, when there really is something broken! Please do me a favour and first check the old issues. I appreciate it! +If you want to get notifications, [join](https://discord.gg/DhMurdcw4k) my discord server. There is a MEE6 role assigment for NoitaMP in #noita-modding! diff --git a/docs/resources/mod-settings.png b/docs/resources/img/mod-settings.png similarity index 100% rename from docs/resources/mod-settings.png rename to docs/resources/img/mod-settings.png diff --git a/docs/resources/img/noita-logo.png b/docs/resources/img/noita-logo.png new file mode 100644 index 000000000..7c959377d Binary files /dev/null and b/docs/resources/img/noita-logo.png differ diff --git a/docs/support.md b/docs/support.md new file mode 100644 index 000000000..e31bcbf49 --- /dev/null +++ b/docs/support.md @@ -0,0 +1,3 @@ +# Support + +If you need help or anything looks like to be broken, search the [issues](https://github.com/Ismoh/NoitaMP/issues?q=is%3Aissue) to find a similar problem or [create](https://github.com/Ismoh/NoitaMP/issues/new/choose) a new issue, when there really is something broken! Please do me a favour and first check the old issues. I appreciate it! diff --git a/docs/user-guide/configuration.md b/docs/user-guide/configuration.md new file mode 100644 index 000000000..08dddd77a --- /dev/null +++ b/docs/user-guide/configuration.md @@ -0,0 +1,51 @@ +# Configuration + +You are able to define, which entities should be synced by changing the corresponding file: + +'**...\\Noita\\mods\\noita-mp\\config.lua**' + +Here is an example of the default include and exclude list: + +```lua +if not EntityUtils then + _G.EntityUtils = {} +end + +EntityUtils.include = { + byComponentsName = { "VelocityComponent", "PhysicsBodyComponent", "PhysicsBody2Component", "ItemComponent", "PotionComponent" }, + byFilename = {} +} +EntityUtils.exclude = { + byComponentsName = {}, + byFilename = { "particle", "tree_entity.xml", "vegetation" } +} +``` + +Make sure that `_G.EntityUtils` will be defined and not nil. + +You can include entities by their component or file names. In addition you are also able to exclude entities for better performance reasons. + +In addition to this there are some settings/configurations inside Noitas Mod Settings: + +![Mod Settings](/resources/img/mod-settings.png) + +| Setting | Description | +|--------------------------------------|--------------------------------------------------------------------------------------------------------| +| Username | Name displayed when playing | +| GUID | Globally Unique Identifier | +| Server | | +| Server IP | IP on which the server be started | +| Server Port | Port | +| Server Password | TBC, not possible atm | +| Server start behaviour | On = Starts the server immediatly when starting the run Off = Server has to be started manually | +| Radius to detect entities | Higher value = small freezes, but better sync! Value to low = DEsync! | +| Client | | +| Connect Server IP | IP where you want to connect as a client | +| Connect Server Port | Port | +| Connect Server Password | The servers password. TBC, not possible atm | +| Radius to remove entities on clients | Higher value = better sync! Value to low = strange behaviour! | +| Key Bindings | | +| Toggle multiplayer menu | Not possible atm | +| Debug settings | | +| Toggle debug (in game) | Enable nuid debugger in a run. Nothing you can do with :) | +| Log level | Will be interesting when something isnt working, but for higher fps and performance, keep it on Error! | diff --git a/docs/user-guide/installation.md b/docs/user-guide/installation.md new file mode 100644 index 000000000..4ff3d3a01 --- /dev/null +++ b/docs/user-guide/installation.md @@ -0,0 +1,5 @@ +# Installation + +1. Download the [latest version](https://github.com/Ismoh/NoitaMP/releases) of NoitaMP. +2. Unzip it. +3. Paste '**noita-mp\\**' folder into '**...\\Noita\\mods\\**'. diff --git a/mkdocs.yml b/mkdocs.yml index b2d06842c..57570c10e 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,3 +1,24 @@ site_name: NoitaMP Documentation + theme: - name: material \ No newline at end of file + name: material + logo: 'resources/img/noita-logo.png' + favicon: 'resources/img/noita-logo.png' + +markdown_extensions: + - toc: + permalink: "#" + +nav: + - Home: 'index.md' + - User Guides: + - Installation: 'user-guide/installation.md' + - Configuration: 'user-guide/configuration.md' + - Contributing: + - Contributing guide: 'contributing/CONTRIBUTING.md' + - Code of conduct: 'contributing/CODE_OF_CONDUCT.md' + - About: + - Credits : 'about/credits.md' + - License: 'about/LICENSE.md' + - Changelog: 'CHANGELOG.md' + - Support: 'support.md' \ No newline at end of file