aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWill Castro <39478251+VITALISED@users.noreply.github.com>2021-12-27 20:21:25 +1100
committerWill Castro <39478251+VITALISED@users.noreply.github.com>2021-12-27 20:21:25 +1100
commit1b92db0c33608ce953d99dd29ccbd25946c46a26 (patch)
tree04441e418c0ef1d300ecd5dabf2d89e6c2ae8568
parentfbf7a6f980d551d4158d65fe293d93ab3eaeec58 (diff)
downloadNorthstarWiki-1b92db0c33608ce953d99dd29ccbd25946c46a26.tar.gz
NorthstarWiki-1b92db0c33608ce953d99dd29ccbd25946c46a26.zip
Scaffold modding section, add modding getting-started and note installing-northstar basic-setup flaw
-rw-r--r--README.md6
-rw-r--r--SUMMARY.md7
-rw-r--r--installing-northstar/basic-setup.md1
-rw-r--r--modding/api/.gitkeep0
-rw-r--r--modding/cheatsheet.md0
-rw-r--r--modding/convars.md0
-rw-r--r--modding/getting-started.md63
-rw-r--r--modding/keyvalues.md0
-rw-r--r--modding/localisation_files.md0
-rw-r--r--modding/squirrel/what-is-squirrel.md0
-rw-r--r--modding/tutorials/1-first-mod/.gitkeep0
-rw-r--r--modding/tutorials/2-creating-vscripts/.gitkeep0
-rw-r--r--modding/tutorials/3-particles-and-vmts/.gitkeep0
-rw-r--r--modding/tutorials/modding-tutorials.md0
14 files changed, 77 insertions, 0 deletions
diff --git a/README.md b/README.md
index a2abc27..006bcbf 100644
--- a/README.md
+++ b/README.md
@@ -16,6 +16,12 @@ Install instructions can be found here:
[basic-setup.md](installing-northstar/basic-setup.md)
{% endcontent-ref %}
+For modding guides, documentation on Northstar API features and documentation on Respawn Squirrel look at:
+
+{% content-ref url="modding/getting-started-with-modding"}
+[basic-setup.md](modding/getting-started-with-modding)
+{% endcontent-ref %}
+
**Please remember:** You should expect to encounter bugs and crashes with Northstar.\
Northstar is mostly being developed by a single person as a mod to Titanfall|2.\
If you do encounter issues that this guide doesn't have a fix for, you can get support in the Discord linked below.
diff --git a/SUMMARY.md b/SUMMARY.md
index 18b130f..102507f 100644
--- a/SUMMARY.md
+++ b/SUMMARY.md
@@ -21,6 +21,13 @@
* [Hosting a Basic Listen Server](hosting-a-server-with-northstar/basic-listen-server.md)
* [Hosting a Dedicated Server](hosting-a-server-with-northstar/dedicated-server.md)
+## Modding
+
+* [Getting Started](modding/getting-started.md)
+* [Tutorials](modding/tutorials/modding-tutorials.md)
+* [Cheatsheet](modding/cheatsheet.md)
+* [Squirrel](modding/squirrel/what-is-squirrel.md)
+
## FAQ
* [FAQ](faq.md)
diff --git a/installing-northstar/basic-setup.md b/installing-northstar/basic-setup.md
index 2c55785..84f1ef9 100644
--- a/installing-northstar/basic-setup.md
+++ b/installing-northstar/basic-setup.md
@@ -9,6 +9,7 @@ Firstly note that Northstar client is only available on PC and requires you to *
1. Download the latest version of Northstar from the [releases](https://github.com/R2Northstar/Northstar/releases) page
2. Copy all the files in the newly downloaded zip folder to your Titanfall folder
+> TODO: Method to get to Origin's local files here is incorrect/doesn't exist
* **For Steam** - Right click _Titanfall 2_ > Open _Properties_ > Click _Local Files_ > Click _Browse_
* **For Origin** - Click Titanfall 2 in the Library > Click the gear icon > Click _Game Properties_
diff --git a/modding/api/.gitkeep b/modding/api/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/api/.gitkeep
diff --git a/modding/cheatsheet.md b/modding/cheatsheet.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/cheatsheet.md
diff --git a/modding/convars.md b/modding/convars.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/convars.md
diff --git a/modding/getting-started.md b/modding/getting-started.md
new file mode 100644
index 0000000..b9ee1f5
--- /dev/null
+++ b/modding/getting-started.md
@@ -0,0 +1,63 @@
+# Getting Started with Modding
+
+## Basics
+This guide assumes you have basic understanding with programming and know how to use developer environments.
+Listed below are tools useful for exporting file formats
+
+If you'd like a more lengthy set of tutorials covering many topics. Look at:
+{% content-ref url="modding/getting-started-with-modding"}
+[modding-tutorials](tutorials/modding-tutorials.md)
+{% endcontent-ref %}
+
+
+> TODO: Actually link tools
+### Tools
+* RSPNVPK
+* Cra0 VPK Tool (Titanfall VPK Tool)
+* Legion by DZXTPorter
+
+## Quick start
+In order to get started with making your mod, create a folder in `R2Northstar/mods`. While it isn't required, it is best practise by mod authors to follow the naming scheme "Author.ModName", such as "Northstar.Client".
+
+After making this folder, inside it add a folder named `mod` and a file named `mod.json`.
+
+Provided is a template `mod.json`, for a detailed list of values read [Cheatsheet](./cheatsheet.md)
+
+```json
+{
+ "Name": "My.Mod",
+ "Description": "Woo yeah wooo!",
+
+ "LoadPriority": 0,
+ "ConVars": [],
+ "Scripts": [],
+ "Localisation": []
+}
+```
+
+Inside the `mod` folder, existing files found in the engine's virtual file system will be overwritten and new files can be added. If you need to define new Squirrel files (.nut/.gnut) they *must* be declared in the `"Scripts"` array in `mod.json`. An example for this might be:
+
+```json
+ "Scripts": [
+ {
+ "Path": "path/to/my.nut",
+ "RunOn": "( CLIENT || SERVER ) && MP"
+ },
+ {
+ "Path": "path/to/my_second.nut",
+ "RunOn": "( CLIENT || SERVER ) && MP",
+ "ClientCallback": {
+ "Before": "ClientPreMapspawnThing",
+ "After": "AfterMapspawnClientThing"
+ },
+ "ServerCallback": {
+ "Before": "ServerPreMapspawncrap",
+ "After": "ServerAfterMapspawnWoo"
+ }
+ }
+ ]
+```
+
+>TODO: Create and link Squirrel VM documentation
+
+`"Path"` indicates where the script is, `"RunOn"` is the Squirrel VM context (see [Squirrel VM](#)) as an expression, and `"ClientCallback"` and `"ServerCallback"` specify a function call that can be `"Before"` and/or `"After"` map-spawn. \ No newline at end of file
diff --git a/modding/keyvalues.md b/modding/keyvalues.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/keyvalues.md
diff --git a/modding/localisation_files.md b/modding/localisation_files.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/localisation_files.md
diff --git a/modding/squirrel/what-is-squirrel.md b/modding/squirrel/what-is-squirrel.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/squirrel/what-is-squirrel.md
diff --git a/modding/tutorials/1-first-mod/.gitkeep b/modding/tutorials/1-first-mod/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/tutorials/1-first-mod/.gitkeep
diff --git a/modding/tutorials/2-creating-vscripts/.gitkeep b/modding/tutorials/2-creating-vscripts/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/tutorials/2-creating-vscripts/.gitkeep
diff --git a/modding/tutorials/3-particles-and-vmts/.gitkeep b/modding/tutorials/3-particles-and-vmts/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/tutorials/3-particles-and-vmts/.gitkeep
diff --git a/modding/tutorials/modding-tutorials.md b/modding/tutorials/modding-tutorials.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modding/tutorials/modding-tutorials.md