summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstuebinm2021-11-14 21:20:13 +0100
committerstuebinm2021-11-14 21:20:13 +0100
commitbb5277dc5b492e0e27777f7eb42c54b45c66835a (patch)
treeb7212fdb31b5670cba9719d25dd6f12c0ce1e223
parent1b286eb08c39bffbb7a14b5311b50834ac0ff982 (diff)
add documentation on what lints are supported
-rw-r--r--Lints.md53
1 files changed, 53 insertions, 0 deletions
diff --git a/Lints.md b/Lints.md
new file mode 100644
index 0000000..27ce6b3
--- /dev/null
+++ b/Lints.md
@@ -0,0 +1,53 @@
+# Currently Supported Lints
+
+Note: Most lints (even those not related to properties) are currently defined in
+`lib/Properties.hs`.
+
+
+## General Tiledmap Requirements
+ - maps must have layers "start" and "floorLayer", and at least one layer wich
+ has as Property "exitUrl"
+ - maps must be orthogonal, tile size must be 32 × 32
+ - maps must not define their own scripts (unless allowed to do so in
+ the configuration file)
+
+## Tilesets
+ - tiles must have size 32 × 32 pixels
+ - tilesets must have a property "copyright" (though there is currently
+ no restriction on what licenses are allowed)
+ - entire tilesets should not be larger than 4096 × 4096 pixels
+
+## Layer
+In general, all properties are type checked, and unknown properties are
+rejected. Properties "url" and "allowApi" are rejected.
+
+### Jitsi
+ - "jitsiRoom" must be set if any of the other jitsi-related properties
+ are also set
+ - "jitsiRoomAdminTag" may not be set, but will be adjusted to the
+ assembly name tag
+ - jitsi layers may not be empty
+ - if not set, setting "jitsiTrigger" will be suggested
+ - "jitsiUrl", "jitsiConfig", "jitsiClientConfig" may not be used
+
+### Audio
+ - audio layers may not be empty
+ - "playAudio" must be set of any other audio-related properties are also
+ set
+
+## Silent Areas
+ - "silent" may not be set on an empty layer
+
+### Websites
+ - layers with "openWebsite" may not be empty
+ - setting "openWebsiteTrigger" will be suggested
+ - local links will be recognised as assets and dependency-checked
+ - other website-related properties require "openWebsite" to also be set
+
+### Exits
+ - may not be set on empty layers
+ - exists to maps also in the repository will be dependency-checked
+
+### Entries
+ - "startLayer" may not be set on empty layers
+ - if set, "startLayer" must be set to `true`