Finished example working datapack

This commit is contained in:
Robert MacRae 2026-03-29 17:06:30 -03:00
parent f4c1e309fc
commit c684fbc5f7
15 changed files with 330 additions and 2 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
original/assets/textures/[A-Z,a-z,0-9]*

View File

@ -1,2 +1,52 @@
# GSO-Datapack
This is a template setup for your datapack to be able to be created
# Galaxy Strike Online Official Example Datapack
## - File Structure
### Manditory
- datapackId
- assets
- languages
- *.json
- textures
- *.json
- data
- dungeons
- *.json
- enemies
- hostiles
- *.json
- rooms
- *.json
- items
- *.json
- recipes
- *.json
- skills
- *.json
- manifest.json
### Optional
- datapackId
- assets
- languages
- *.json
- textures
- folderforsorting(Optional)
- *.json
- data
- dungeons
- folderforsorting(Optional)
- *.json
- enemies
- hostiles
- folderforsorting(Optional)
- *.json
- rooms
- folderforsorting(Optional)
- *.json
- items
- folderforsorting(Optional)
- *.json
- recipes
- folderforsorting(Optional)
- *.json
- skills
- folderforsorting(Optional)
- *.json

View File

@ -0,0 +1,30 @@
{
"dungeons.example.dungeon.example" : "This is a title",
"dungeons.example.dungeon.example.desc" : "This is a description",
"enemies.example.name.example_1" : "This is a hostile named 1",
"enemies.example.name.example_2" : "This is a hostile named 2",
"items.materials.example.example_armor_1" : "This is an armor peace",
"items.materials.example.example_armor_1.desc" : "This is a description of an armor peace",
"items.materials.example.example_material_1" : "This is an material 1",
"items.materials.example.example_material_1.desc" : "This is a description of an material 1",
"items.materials.example.example_material_2" : "This is a material 2",
"items.materials.example.example_material_2.desc" : "This is a description of an material 2",
"skills.category.example.example.skill_example_1" : "This is an example skill",
"skills.category.example.example.skill_example_1.desc" : "This is a description of an material 2",
"admin.category.example.item_list.example_1" : "Example 1",
"admin.category.example.item_list.example_2" : "Example 2",
"admin.category.example.hostiles_list.example_1" : "Example 1",
"admin.category.example.hostiles_list.example_2" : "Example 2",
"admin.category.example.player_list.example_1" : "Example 1",
"admin.category.example.player_list.example_2" : "Example 2",
"admin.category.example.admin_role.example_1" : "Example 1",
"admin.category.example.admin_role.example_2" : "Example 2",
"core_systems.category.example.core_systems.example_1" : "Example 1",
"core_systems.category.example.core_systems.example_2" : "Example 2",
"recipes.category.example.recipes.example_1" : "Example 1",
"recipes.category.example.recipes.example_2" : "Example 2",
"shop.category.example.shop.example_1" : "Example 1",
"shop.category.example.shop.example_2" : "Example 2",
"skills.category.example.skills.example_1" : "Example 1",
"skills.category.example.skills.example_2" : "Example 2"
}

View File

View File

@ -0,0 +1,20 @@
{
"dungeon": {
"id": "example:example/example",
"displayName": "dungeons.example.dungeons.example",
"description": "dungeons.example.dungeons.example.desc",
"energyCost": 0,
"repeatable": false,
"rooms": [
{
"id": "example:example/example_1"
},
{
"id": "example:example/example_2"
},
{
"id": "example:example/example_1"
}
]
}
}

View File

@ -0,0 +1,13 @@
{
"hostile": {
"id": "example:example/example",
"displayName": "enemies.example.name.example_1",
"meta": {
"health": 90,
"defense": 1.3,
"damage": 4.1,
"criticalChance": 0.3,
"attackRate": 2
}
}
}

View File

@ -0,0 +1,13 @@
{
"hostile": {
"id": "example:example/example",
"displayName": "enemies.example.name.example_2",
"meta": {
"health": 30,
"defense": 0.3,
"damage": 2.1,
"criticalChance": 0.3,
"attackRate": 2
}
}
}

View File

@ -0,0 +1,8 @@
{
"rooms": {
"id": "example:example/example_1",
"hostiles": ["example:example/example_2"],
"gainXp": 4,
"credits": 200
}
}

View File

@ -0,0 +1,8 @@
{
"rooms": {
"id": "example:example/example_2",
"hostiles": ["example:example/example_1", "original:example/example_2"],
"gainXp": 3,
"credits": 30
}
}

View File

@ -0,0 +1,35 @@
{
"armour": {
"id": "example:example_armor_1",
"displayName": "items.materials.example.example_armor_1",
"description": "items.materials.example.example_armor_1.desc",
"texture": "example/assets/armour/backpack/example_1.png",
"stats": {
"attack.base" : 9.2,
"attack.chance" : 0.5,
"attack.rating" : 0.5,
"defence.base" : 55.5,
"defence.chance" : 0.5,
"defence.rating" : 0.5,
"health" : 50,
"penetration.base" : 0.5,
"penetration.chance" : 0.5,
"penetration.rating" : 0.5,
"reflect.base" : 0.5,
"reflect.chance" : 0.5,
"reflect.rating" : 0.5,
"resistance.base" : 0.5,
"resistance.cold" : 0.5,
"resistance.gamma" : 0.5,
"resistance.heat" : 0.5,
"resistance.ion" : 0.5,
"resistance.physical" : 0.5,
"resistance.plasma" : 0.5
},
"meta": {
"rarity": "common",
"equipmentSlot": "original:accessory",
"storeCategory": "original:bag"
}
}
}

View File

@ -0,0 +1,11 @@
{
"materials": {
"id": "example:example_material_1",
"texture": "original/assets/textures/materials/example/example_1.png",
"displayName": "items.materials.example.example_material_1",
"description": "items.materials.example.example_material_1.desc",
"meta": {
"storeCategory": "original:materials"
}
}
}

View File

@ -0,0 +1,11 @@
{
"materials": {
"id": "example:example_material_2",
"texture": "original/assets/textures/materials/example/example_2.png",
"displayName": "items.materials.example.example_material_2",
"description": "items.materials.example.example_material_2.desc",
"meta": {
"storeCategory": "original:materials"
}
}
}

View File

@ -0,0 +1,16 @@
{
"recipe": {
"inputs": [{ "example:example_material_1": 1 }, { "example:example_material_2": 5 }],
"output": {
"example:example_armor_1": 1
},
"time_seconds": 10,
"requires": {
"example:example_1": 0
}
},
"craft": {
"type": "example:example_1",
"id": "example:example_1"
}
}

View File

@ -0,0 +1,15 @@
{
"skills": {
"id": "example:skill_example_1",
"displayName": "skills.category.original.example.skill_example_1",
"description": "skills.category.original.example.skill_example_1.desc",
"meta": {
"category": "example_1",
"topLevel": 10,
"math": {
"start": 50,
"input": 1.1
}
}
}
}

97
example/manifest.json Normal file
View File

@ -0,0 +1,97 @@
{
"name": "original",
"version": "0.0.1",
"admin_item_list": {
"categories": {
"example:example_1": {
"displayName": "admin.category.example.item_list.example_1"
},
"example:example_2": {
"displayName": "admin.category.example.item_list.example_2"
}
}
},
"admin_hostiles_list": {
"categories": {
"example:example_1": {
"displayName": "admin.category.example.hostiles_list.example_1"
},
"example:example_2": {
"displayName": "admin.category.example.hostiles_list.example_2"
}
}
},
"admin_panel": {
"categories": {
"original:admin_hostiles_list": {
"displayName": "admin.category.original.hostile_list"
},
"original:admin_item_list": {
"displayName": "admin.category.original.item_list"
},
"original:admin_player_list": {
"displayName": "admin.category.original.player_list"
}
}
},
"admin_player_list": {
"categories": {
"example:example_1": {
"displayName": "admin.category.example.player_list.example_1"
},
"example:example_2": {
"displayName": "admin.category.example.player_list.example_2"
}
}
},
"admin_role": {
"categories": {
"example:example_1": {
"displayName": "admin.category.example.admin_role.example_1"
},
"example:example_2": {
"displayName": "admin.category.example.admin_role.example_2"
}
}
},
"core_systems": {
"categories": {
"example:example_1": {
"displayName": "core_systems.category.example.core_systems.example_1"
},
"example:example_2": {
"displayName": "core_systems.category.example.core_systems.example_2"
}
}
},
"recipes": {
"categories": {
"example:example_1": {
"displayName": "recipes.category.example.recipes.example_1"
},
"example:example_2": {
"displayName": "recipes.category.example.recipes.example_2"
}
}
},
"shop": {
"categories": {
"example:example_1": {
"displayName": "shop.category.example.shop.example_1"
},
"example:example_2": {
"displayName": "shop.category.example.shop.example_2"
}
}
},
"skills": {
"categories": {
"example:example_1": {
"displayName": "skills.category.example.skills.example_1"
},
"example:example_2": {
"displayName": "skills.category.example.skills.example_2"
}
}
}
}