Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MAP FORMAT #2

Open
circuitbone opened this issue Apr 26, 2020 · 7 comments
Open

MAP FORMAT #2

circuitbone opened this issue Apr 26, 2020 · 7 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@circuitbone
Copy link

circuitbone commented Apr 26, 2020

The structure of all maps and the inherited data with each map.

Template Starter Map

Minimum Map Requirements

  • Smøl closed 3d map course shape
  • External background 3d around course
  • Course Sign in background tiles
  • Start Player Location
  • End goal Location

Standard Assets with every course

  • Blocks - Building Blocks
  • 3D Flag
  • Visual 3d Indicators
  • Visual 3d Player

Theme

  • Classic Assets Theme
  • Theme is network based so everyone has the same assets.
  • Assets are pulled from a central server location so all clients share the same objects

File Folder Structure

  • Project structure
  • Basic Folder Structure
  • Project File Name / Extension
  • Basic Blocks
  • Basic Course Obstacles
@circuitbone circuitbone created this issue from a note in MASTER CONTROL (To do) Apr 26, 2020
@circuitbone circuitbone added the documentation Improvements or additions to documentation label Apr 26, 2020
@notchris
Copy link
Owner

Map Structure (JSON) - Current

{
    "id": "",
    "title": "Untitled Map",
    "spawn": "0 0 0",
    "size": 100,
    "world": {
        "sky": {
            "color": "#FFFFFF",
            "scatter": "#FFFFFF",
            "sun": "#FFFFFF"
        },
        "lights": {
            "ambient": {
                "color": "#FFFFFF",
                "intensity": 1.0
            },
            "directional": {
                "color": "#FFFFFF",
                "intensity": 1.0
            }
        },
        "physics": {
            "gravity": -0.9
        }
    },
    "objects": [{
        "id": "",
        "label": "cube",
        "active": false,
        "category": "block",
        "type": "cube",
        "position": "1 1 1",
        "rotation": "0 0 0",
        "color": "#EEEEEE",
        "texture": "",
        "physics": {}
    },{
        "id": "",
        "label": "point",
        "active": false,
        "category": "entity",
        "type": "point",
        "position": "1 1 1",
        "rotation": "0 0 0"
    },{
        "id": "",
        "label": "modelName",
        "active": false,
        "category": "model",
        "type": "modelName",
        "position": "1 1 1",
        "rotation": "0 0 0",
        "material": "materialName"
    }]
}

@notchris
Copy link
Owner

@circuitbone I have the ability to enable automatic updates when the application starts. We can supply models from the server so the players have them locally. For playing maps made by other players, we will need to figure out how much customization they are allowed including adding custom models etc. In any case, the models are loaded via datauri and sent as json to the editor / game state...so it’s probably good that most of these models are small in filesize anyway.

@circuitbone
Copy link
Author

Think of customer contribution assets down the track, moderation problem and validation is labour intensive for now.

@circuitbone circuitbone moved this from To do to In progress in MASTER CONTROL Apr 29, 2020
@circuitbone
Copy link
Author

  • automatic startup app network asset update sounds good mate.
  • save maps to server from any client and show this list to all clients for now until we need to restrict it
  • load maps from server from any client and show this list to all clients for now until we need to restrict it

@circuitbone
Copy link
Author

My goto JSON editor

https://jsoneditoronline.org/

@circuitbone
Copy link
Author

Map parameter ideas

  • course_name

  • hole_number

  • sign_string

  • Physics Global Friction Rubber

  • Physics Global Friction Ice

  • Physics Global Friction AntiRubber

  • Weather_event_Clouds

  • Weather_event_Rain

  • Weather_event_WindLeaf_Particles

@circuitbone circuitbone reopened this May 3, 2020
@circuitbone circuitbone moved this from In progress to Done in MASTER CONTROL May 3, 2020
@carefish
Copy link
Collaborator

carefish commented May 4, 2020

Suggestion for map format: Use TMX format, to make it interchangable with other engines and frameworks. As well at mini-golf itself, ofcourse ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
Development

No branches or pull requests

3 participants