Skip to content

Commit ed41821

Browse files
authored
Merge branch 'main' into update-order-and-refactor
2 parents fad7b2c + c137e13 commit ed41821

115 files changed

Lines changed: 13133 additions & 6 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.prettierignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
/content/docs/**/*.mdx
2+
!/content/docs/en/official-documentation/**
23
/messages/*-*.json

.prettierrc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
{
2-
"plugins": ["prettier-plugin-tailwindcss"]
2+
"plugins": ["prettier-plugin-tailwindcss"],
3+
"embeddedLanguageFormatting": "auto"
34
}

content/docs/en/guides/plugin/item-interaction.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ authors:
77
---
88
import { File, Folder, Files } from 'fumadocs-ui/components/files';
99

10-
Creating a custom item follows the same setup than the [Creating custom blocks](./creating-block.mdx).
10+
Creating a custom item follows the same setup than the [Creating custom blocks](./creating-block).
1111

1212
## Setup
1313

content/docs/en/guides/plugin/store-persistant-data.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Here is how to store persistent data using a custom component on a Player.
1414

1515
## Build your Component Class
1616

17-
Creating a custom component class leverages the Component system made with the ECS architecture in mind. For more information on Components, check out the [ECS Guide](../ecs/hytale-ecs-theory.mdx#components).
17+
Creating a custom component class leverages the Component system made with the ECS architecture in mind. For more information on Components, check out the [ECS Guide](../ecs/hytale-ecs-theory#components).
1818

1919
Start by creating your custom component class. This will be extremely similar to how regular components are created, however we'll setup a custom Codec so the server can translate this data to BSON, or the server's internal json encoder.
2020

content/docs/en/meta.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
"index",
44
"quick-start",
55
"established-information",
6+
"---Official Documentation---",
7+
"...official-documentation",
68
"---Guides---",
79
"...guides",
810
"---Documentation---",

content/docs/en/official-documentation/npc-doc.mdx

Lines changed: 8091 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"title": "{meta.official_documentation.worldgen.title}",
3+
"icon": "Earth",
4+
"pages": ["pack-tutorial", "worldgen-tutorial", "technical-hytale-generator"]
5+
}
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
---
2+
title: Asset Packs
3+
description: Covers how to create and install Asset Packs
4+
icon: Bookmark
5+
authors:
6+
- name: "Hypixel Studios Canada Inc."
7+
url: "https://hytale.com"
8+
---
9+
10+
<OfficialDocumentationNotice />
11+
12+
# How to modify Hytale
13+
14+
## What's an Asset Pack
15+
16+
Hytales gameplay is driven by assets in the game that can be modified by creators. Asset Packs are our solution to let you override or add features to the base game with your own work. These can in the form of zip files of folders, which contain a custom set of assets. This is not the only way for a creator to change Hytale but this is the most accessible form.;
17+
18+
### How do I make an Asset Pack
19+
20+
<video controls className="my-6 aspect-video w-full rounded-lg border">
21+
<source
22+
src="https://cdn.internal.hytalemodding.dev/guides/official/how-to-asset-pack.mp4"
23+
type="video/mp4"
24+
/>
25+
</video>
26+
{/* {% include "../.gitbook/includes/requirements.md" %} */}
27+
28+
An asset pack is typically a zip or folder, with a `manifest.json` inside. This can be created either using our ingame asset editor, or in your file browser. All Asset Packs require a manifest and the assets must be located in the correct folders. For this reason we recommend using the Asset Editor.
29+
30+
```json title="manifest.json"
31+
{
32+
"Group": "My Group",
33+
"Name": "Pack Example",
34+
"Version": "1.0.0",
35+
"Description": "An Example Asset Pack",
36+
"Authors": [
37+
{
38+
"Name": "Me",
39+
"Email": "",
40+
"Url": ""
41+
}
42+
],
43+
"Website": "",
44+
"Dependencies": {},
45+
"OptionalDependencies": {},
46+
"LoadBefore": {},
47+
"DisabledByDefault": false,
48+
"IncludesAssetPack": false,
49+
"SubPlugins": []
50+
}
51+
```
52+
53+
### Where are they stored
54+
55+
Asset Packs are stored with other mods in the Mods folder.
56+
57+
```
58+
C:\Users\<user>\AppData\Roaming\Hytale\UserData\Mods
59+
```
60+
61+
Mods and Asset Packs are also stored per world, this is where Asset Packs land when created with the Asset Editor.;
62+
63+
```
64+
C:\Users\<user>\AppData\Roaming\Hytale\UserData\Saves\New World 5\mods
65+
```
66+
67+
<Callout type="warning">
68+
When creating an Asset Pack in-game with the Asset Editor, they are currently
69+
stored in that world. This means to access the pack in other worlds you need
70+
to copy the pack into your Mods folder.
71+
</Callout>
72+
73+
---
74+
75+
<video controls className="my-6 aspect-video w-full rounded-lg border">
76+
<source
77+
src="https://cdn.internal.hytalemodding.dev/guides/official/how-to-install.mp4"
78+
type="video/mp4"
79+
/>
80+
</video>
81+
82+
When you have Asset Packs or Mods installed, these will appear in the New World menu under the Options menu.;
83+
84+
### How do I change an existing asset
85+
86+
<video controls className="my-6 aspect-video w-full rounded-lg border">
87+
<source
88+
src="https://cdn.internal.hytalemodding.dev/guides/official/how-to-asset.mp4"
89+
type="video/mp4"
90+
/>
91+
</video>
92+
93+
<Callout type="warning">You must create an Asset Pack</Callout>
94+
95+
All creators are free to modify our existing assets, to do so you must create an Asset Pack. Assets that exist inside of Asset Packs override the asset from the base game. You are also able to add new assets the same way.;
96+
97+
### Notes
98+
99+
- Can be downloaded from hosting sites such as CurseForge.
100+
- Exist entirely on the server.
101+
- Only the server or world host has to download Asset Packs and Mods.;
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"title": "{meta.official_documentation.worldgen.pack_tutorial.title}",
3+
"icon": "Package"
4+
}
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
---
2+
title: Assignments
3+
description: Assigns Props to each position in a Positions field.
4+
authors:
5+
- name: "Hypixel Studios Canada Inc."
6+
url: "https://hytale.com"
7+
---
8+
9+
<OfficialDocumentationNotice />
10+
11+
### Constant
12+
13+
Assigns a Prop to all positions.
14+
15+
#### Parameters:
16+
17+
<ParameterList
18+
parameters={[
19+
{
20+
name: "Prop",
21+
description: "Prop slot",
22+
},
23+
]}
24+
/>
25+
26+
---
27+
28+
### FieldFunction
29+
30+
Allows you to select which props to assign based on a Density field and your configured delimiters. The Density's value at each position determines which delimiter's Prop to assign.;
31+
32+
#### Parameters:
33+
34+
<ParameterList
35+
parameters={[
36+
{
37+
name: "FieldFunction",
38+
description: "Density slot.",
39+
},
40+
{
41+
name: "Delimiters",
42+
description:
43+
"list of noise value delimiters attaching Props to value ranges of the Density field.",
44+
},
45+
{
46+
name: "Min",
47+
description: "decimal number. Lower inclusive bound of the delimiter.",
48+
},
49+
{
50+
name: "Max",
51+
description: "decimal number. Higher exclusive bound of the delimiter.",
52+
},
53+
{
54+
name: "Assignments",
55+
description:
56+
"Assignments asset slot. The assignment provigint he Props to use.",
57+
},
58+
]}
59+
/>
60+
61+
---
62+
63+
### Sandwich
64+
65+
Allows you to select which props to assign based on their vertical (world Y) position and your configured delimiters. Depending on each position’s height in the world the Prop of the matching delimiter will be assigned.
66+
67+
![Image showcasing sandwich tool](/assets/official-documentation/worldgen/technical-hytale-generator/assignments/sandwich.png)
68+
69+
#### Parameters:
70+
71+
<ParameterList
72+
parameters={[
73+
{
74+
name: "Delimiters",
75+
description: "list of world height delimiter assets.",
76+
},
77+
{
78+
name: "MinY",
79+
description: "decimal number. Lower inclusive bound of the delimiter.",
80+
},
81+
{
82+
name: "MaxY",
83+
description: "decimal number. Higher exclusive bound of the delimiter.",
84+
},
85+
{
86+
name: "Assignments",
87+
description: "Assignments asset slot.",
88+
},
89+
]}
90+
/>
91+
92+
---
93+
94+
### Weighted
95+
96+
Picks which Prop to assign randomly based on weights and a seed.
97+
98+
#### Parameters:
99+
100+
<ParameterList
101+
parameters={[
102+
{
103+
name: "Seed",
104+
description: "string.",
105+
},
106+
{
107+
name: "SkipChance",
108+
description:
109+
"decimal number between 0.0 and 1.0. Determines the chance to skip a position completely without assigning it a Prop.",
110+
},
111+
{
112+
name: "WeightedAssignments",
113+
description: "List of weighted Assignments slots.",
114+
},
115+
{
116+
name: "Assignments",
117+
description: "Assignments asset slot.",
118+
},
119+
]}
120+
/>
121+
122+
---
123+
124+
### Imported
125+
126+
Imports an exported Assignments.
127+
128+
#### Parameters:
129+
130+
<ParameterList
131+
parameters={[
132+
{
133+
name: "Name",
134+
description: "string. The exported Assignments.",
135+
},
136+
]}
137+
/>

0 commit comments

Comments
 (0)