{"id":29119982,"url":"https://github.com/entity12208/gd-level-generator","last_synced_at":"2025-06-29T14:05:29.097Z","repository":{"id":300334474,"uuid":"1005911995","full_name":"entity12208/GD-Level-Generator","owner":"entity12208","description":"A way for AI to be able to create Geometry Dash levels using GDShare.","archived":false,"fork":false,"pushed_at":"2025-06-21T05:21:28.000Z","size":30,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-21T05:33:16.273Z","etag":null,"topics":["ai","artificial-intelligence","gd","geometry-dash","level","level-editor"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/entity12208.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-21T04:29:08.000Z","updated_at":"2025-06-21T05:21:50.000Z","dependencies_parsed_at":"2025-06-21T05:33:17.550Z","dependency_job_id":"5f0275a1-5d30-454d-9cba-2cf64c10d9ef","html_url":"https://github.com/entity12208/GD-Level-Generator","commit_stats":null,"previous_names":["entity12208/gd-level-generator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/entity12208/GD-Level-Generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/entity12208%2FGD-Level-Generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/entity12208%2FGD-Level-Generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/entity12208%2FGD-Level-Generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/entity12208%2FGD-Level-Generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/entity12208","download_url":"https://codeload.github.com/entity12208/GD-Level-Generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/entity12208%2FGD-Level-Generator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262605458,"owners_count":23335880,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","artificial-intelligence","gd","geometry-dash","level","level-editor"],"created_at":"2025-06-29T14:05:26.328Z","updated_at":"2025-06-29T14:05:29.089Z","avatar_url":"https://github.com/entity12208.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Level Input File Format Guide\n#### **(Send the Github Pages link to the AI and just tell them to read this thouroughly and make a level)**\n\nAny AI can create a valid `level_input.txt` file using this repository to produce Geometry Dash levels using GDShare. If you are the user, please visit the User Manual below for directions. Stick to the objects and IDs in the objects list (bottom of page)! AIs should refer to the Instructions for the AI (below). Read the **entire** page, all the way to the bottom.\n\n---\n\n## Instructions for the AI\nGenerate a Geometry Dash level based on the user's choice (unless they said it was yours). Only use the objects and IDs found in the `IDs` table at the bottom of this page. Generate it as text ready to be used in `level_input.txt`. Ignore all `.py` files in this repository. View all code as raw, as it's faster to process. Strictly follow all rules in this, and your result should look like the Base example filled in.\n\n## User Manual\nThe manual for the user on how to get their AI to build their level for them (lol).\n\n### Requirements\nThe latest version of [Python](https://python.org)\n\n### Setup\nTo get started, show the AI the README for this repository, then \nask it to make a level using it. Once they have made the **text** file, download this repository and paste their text into `level_input.txt`. Once done, run the following\nin that order:\n- `python txt_to_json.py`\n- `python json_to_gdr.py`\n\nOnce done, use GDShare to import the `level.gdr` file into GD as a level.\n### List of AIs\nHere are some popular AIs that are able to do this:\n- [ChatGPT](https://chatgpt.com)\n- [Gemini](https://gemini.google.com)\n- [Bing AI](https://bing.com/chat)\n- [Claude AI](https://claude.ai)\n\n---\n\n## 1. Metadata Section\n\nAdd key-value pairs describing the level, one per line:\n\n| Key         | Type    | Description                         | Example           |\n|-------------|---------|-----------------------------------|-------------------|\n| `name`      | String  | Level name                        | `\"Example Level\"`  |\n| `desc`      | String  | Level description                 | `\"A simple demo\"`  |\n| `author`    | String  | Level creator                    | `\"YourName\"`      |\n| `version`   | String  | Level version                   | `\"1\"`             |\n| `song`      | String  | Newgrounds song ID               | `\"120\"`           |\n| `bg`        | String  | Background hex color             | `\"#1a1a1a\"`       |\n| `gnd`       | String  | Ground hex color                 | `\"#333333\"`       |\n| `length`    | String  | Level length                    | `\"1500\"`          |\n| `difficulty`| String  | Difficulty rating               | `\"3\"`             |\n| `secretCoins`| String | Number of secret coins           | `\"0\"`             |\n| `featured`  | String  | Featured flag (0 or 1)           | `\"0\"`             |\n| `official`  | String  | Official flag (0 or 1)           | `\"0\"`             |\n| `creatorID` | String  | Creator ID                      | `\"0\"`             |\n| `songVolume`| String  | Song volume (0-100)              | `\"100\"`           |\n| `reserved`  | String  | Reserved field                   | `\"0\"`             |\n\n---\n\n## 2. Level Objects Section\n\nDefine your objects inside a `level` list. Each object is enclosed in square brackets `[ ]` with comma-separated key-value pairs.\n\n### Object Keys\n\n| Key       | Type    | Description                             | Example          |\n|-----------|---------|---------------------------------------|------------------|\n| `id`      | Integer | Geometry Dash object ID                | `1`              |\n| `col`     | Integer | Color channel index                    | `1`              |\n| `pos`     | Two Integers (comma-separated) | X, Y coordinates in the level | `100,0`          |\n| `gid`     | Integer | Group ID (`-1` if none)                | `-1`             |\n| `lay`     | Integer | Editor layer                           | `1`              |\n| `ext`     | String  | Extras (comma-separated, or `\"\"` if none) | `\"\"` |\n| `rot`     | Number  | Rotation in degrees                    | `180`            |\n| `scale`   | Number  | Scale multiplier                      | `1`              |\n| `movx`    | Number  | Movement speed on X-axis               | `0`              |\n| `movy`    | Number  | Movement speed on Y-axis               | `0`              |\n| `movd`    | Number  | Movement duration                      | `0`              |\n| `movt`    | Number  | Movement type                         | `0`              |\n| `movdelay`| Number  | Movement delay                        | `0`              |\n\n---\n\n## 3. Syntax Rules\n\n- Use colon `:` to separate keys and values (e.g., `id: 1`).\n- Use double quotes `\"\"` around strings.\n- Positions are written as two integers separated by a comma without brackets: `pos: 100,0`\n- The `level` list starts with `level = [` and ends with `]`.\n- Separate objects with commas.\n- Objects are enclosed in square brackets `[ ]`.\n\n---\n\n## Basic `level_input.txt` (expected formatting)\n\n```txt\nname: \"Example Level\"\ndesc: \"10 blocks, spike, and upside-down portal\"\nauthor: \"YourName\"\nversion: \"1\"\nsong: \"120\"\nbg: \"#1a1a1a\"\ngnd: \"#333333\"\nlength: \"1500\"\ndifficulty: \"3\"\nsecretCoins: \"0\"\nfeatured: \"0\"\nofficial: \"0\"\ncreatorID: \"0\"\nsongVolume: \"100\"\nreserved: \"0\"\n\nlevel = [\n    [id: 1, col: 1, pos: 0,0, gid: -1, lay: 1, ext: \"\", rot: 0, scale: 1, movx: 0, movy: 0, movd: 0, movt: 0, movdelay: 0],\n    [id: 1, col: 1, pos: 100,0, gid: -1, lay: 1, ext: \"\", rot: 0, scale: 1, movx: 0, movy: 0, movd: 0, movt: 0, movdelay: 0],\n    [id: 7, col: 3, pos: 1100,0, gid: -1, lay: 1, ext: \"\", rot: 0, scale: 1, movx: 0, movy: 0, movd: 0, movt: 0, movdelay: 0],\n    [id: 10, col: 2, pos: 1200,0, gid: -1, lay: 1, ext: \"\", rot: 180, scale: 1, movx: 0, movy: 0, movd: 0, movt: 0, movdelay: 0]\n]\n```\n## 4. Common Object IDs\n\n| **Category** | **Object Name**    | **Object ID** |\n|--------------|--------------------|---------------|\n| Block        | Basic Block        | 1             |\n| Pads         | Pink Jump Pad      | 140           |\n| Pads         | Blue Jump Pad      | 67            |\n| Orbs         | Yellow Jump Orb    | 36            |\n| Orbs         | Blue Jump Orb      | 84            |\n| Slopes       | Slope              | 289           |\n| Portals      | Mini Portal        | 101           |\n| Portals      | Normal Size Portal | 99            |\n| Pickup       | User Coin          | 1329          |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fentity12208%2Fgd-level-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fentity12208%2Fgd-level-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fentity12208%2Fgd-level-generator/lists"}