Cross platform, game-engine independant .Net Core 3 Application for procedurally generating 2D dungeons from a configuration file
You can use either the latest version of Visual Studio, JetBrain's Rider or .NET CLI for Windows, Mac and Linux.
From the root of this repository:
-
Build the project into a directory of your liking
dotnet publish ./src/PDGToolkitCLI/PDGToolkitCLI.csproj -c Debug --output <YOUR-PATH>
-
From
<YOUR-PATH>, use the runtime to run the CLIdotnet PDGToolkitCLI.dll
Note: The CLI takes additional options, to view them, add the '--help' flag while executing the CLI
./<YOUR-PATH>/PDGToolkitCLIFrom the src/PDGCanvas directory:
-
Install node dependencies
npm install
-
Start the application
npm run start
-
View the generated dungeon
With a web browser of your choice, navigate to http://localhost:3000
To view the schema of the dungeons that the Toolkit produces, build and run the PDGToolkitUI project.
From the root of this repository:
dotnet run --project ./src/PDGToolkitSchemaUI/PDGToolkitSchemaUI.csprojYou should now be able to access the swagger page at http://localhost:1337/swagger/index.html
To run Core's unit test, use the dotnet test command.
From the root of this repository:
dotnet test ./tests/PDGToolkitCore.UnitTests/PDGToolkitCore.UnitTests.csproj{
"size": 0
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| size | integer(int32) | false | read-only | none |
{
"name": "string"
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| name | string¦null | false | read-only | none |
{
"x": 0,
"y": 0
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| x | integer(int32) | false | read-only | none |
| y | integer(int32) | false | read-only | none |
{
"type": {
"name": "string"
},
"position": {
"x": 0,
"y": 0
}
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| type | TileType | false | none | none |
| position | Position | false | none | none |
{
"height": 0,
"width": 0,
"tileConfig": {
"size": 0
},
"tiles": [
{
"type": {
"name": "string"
},
"position": {
"x": 0,
"y": 0
}
}
]
}
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| height | integer(int32) | false | read-only | none |
| width | integer(int32) | false | read-only | none |
| tileConfig | TileConfig | false | none | none |
| tiles | [Tile]¦null | false | read-only | none |