The 1st ChatGPT4PCG Competition

Character-like Level Generation for Science Birds

Sample Prompt

Use `ab_drop()` function to generate a stable structure that looks like the <OBJECT>—the goal. Dropping position and order are crucial.

1. Definitions
Slots: The map's width is equally partitioned into W slots where W = 20, with slots 0 and 19 being the most left and right, respectively.
Layers: The map's height is equally partitioned into H layers where H = 16, with layers 0 and 15 being the bottom and top layers, respectively.
Base: The bottom of the map, i.e., layer 0.

2. Environment
There are three block types as follows:
b11, a square block whose width is 1 unit and height is 1 unit
b31, a horizontal block whose width is 3 units and height is 1 unit
b13, a vertical block whose width is 1 unit and height is 3 units

3. Tool
Use the `ab_drop()` function to vertically drop a block from layer H such that its center is at slot y and drop earlier blocks representing more bottom parts of the structure.

Tools

ChatGPT

  1. Open your preferred web browser (such as Chrome, Firefox, or Safari).
  2. Navigate to the OpenAI website at https://chat.openai.com/chat
  3. Start interact with the model.

Science Birds Evaluator

Science Birds screenshot

This is a modified version of Science Birds that supports blocks used in the competition. It provides a feature that evaluates the stability of a particular level and generates an image used for the similarity checking script.

You can download this version of Science Birds from https://github.com/chatgpt4pcg/modified-science-birds.

Installation Instruction

  1. Download Unity Hub
  2. Open a project in Unity Hub
  3. Download the required version of Unity (if needed)
  4. Open the project in Unity

For further installation steps, please refer to the Science Birds repository.


Online Converter

Online Converter screenshot

The converter is a tool that creates an XML file and an image from a series of ab_drop() function string. The resulting XML file provides a structured representation of the functions while an image shows the visual representation of the functions. It is recommended to use the converter on a desktop device to ensure optimal usage and accurate generation of output files.

  1. Visit our online converter at https://chatgpt4pcg.github.io/tools/converter
  2. Paste the text into the first input box, ensuring that it is in the correct format
  3. Click the "Convert" button.
  4. You can either copy or download the XML result and test it in Science Birds. To download the image, click the "Download image" button

Note that the XML file must be placed in the Assets/StreamingAssets/Levels folder.

Please note that the image generated by this online tool is intended for illustrative purposes only and will not be used for evaluation. For the actual evaluation tool, we recommend checking out the modified version of Science Birds.

Online Word Counter

Online Word Counter screenshot

The word counter web app is a quick and efficient tool that uses the words-count package - the same package used for our evaluation process - to accurately count the number of words in your prompt.

Visit our online word counter at https://chatgpt4pcg.github.io/tools/word-counter.


Online Code Extractor

Online Code Extractor screenshot

The online code extractor extracts a code block from ChatGPT API responses, demonstrating the same algorithm used in the code extraction script.

Visit our online code extractor at https://chatgpt4pcg.github.io/tools/code.


Online Letter Classifier

Online Letter Classifier screenshot

Please note that the Online Letter Classifier embed in the tool page is also available at Hugging Face Spaces and only shows the top five predicted classes with associated percentage. For the full version of the model, please use the similarity checking script. This model was a fine-tuned version of Vision Transformer (ViT) trained on this dataset. More information on the dataset is also available on the same page.

Visit our online Letter Classifier at https://chatgpt4pcg.github.io/tools/classifier.


Offline Scripts and Packages

Qualification checking script - https://github.com/chatgpt4pcg/qualification-checking-script

Response gathering script - https://github.com/chatgpt4pcg/response-gathering-script

Code extraction script - https://github.com/chatgpt4pcg/code-extraction-script

Text-to-XML conversion script - https://github.com/chatgpt4pcg/text-to-xml-converter-script

Similarity checking script - https://github.com/chatgpt4pcg/similarity-checking-script

Scoring and ranking script - https://github.com/chatgpt4pcg/scoring-and-ranking-script

chatgpt4pcg npm package - https://github.com/chatgpt4pcg/chatgpt4pcg