theRAPTLab / gsgo

GEM-STEP Foundation repo migrated from GitLab June 2023
1 stars 1 forks source link

Script Wizard GUI - [merged] #637

Closed benloh closed 1 year ago

benloh commented 2 years ago

In GitLab by @daveseah on Apr 12, 2022, 07:30

Merges dev-next-gui -> dev-next

Branch: dev-next-gui

At long last! The much anticipated Script Wizard UI is here!

This is still a little rough around the edges, so we expect it'll take a few rounds to iron things out.

screenshot_1054

TLDR;

Reporting Issues

A poorly reported issue can sometimes take us an hour to reproduce and figure out what's going on. Given that we are already running on fumes, please please please take care in reporting any issues. The more time we spend trying to figure out what a problem is, the less time we have to work on the system.

Ideally you would:

  1. Create a video that shows how you generated the error
  2. Create a new issue in GitLab
  3. Write down the exact steps we can take to replicate the error, paying special attention to:

Significant Changes

Even though on the surface things look pretty much the same, there have been VERY significant changes to all aspects of the system, so a very thorough QA test is needed.

If you read nothing else, make sure you read this list!

Existing Project Errors

While most older projects should run, you may encounter issues with them as you open them in the wizard and re-save them.

This is why in the testing, we recommend first that you confirm that the project will run without errors before trying to edit them with the wizard. This will help us track down the problem to see if it's a project conversion issue or an actual wizard editing issue.

There is a known issue with nested blocks that will cause errors if you try to open in them in the wizard. There are a couple of projects that we know will have problems with this:

See "Nested Blocks" in Known Issues below for a workround.


TIPS

Monitor the Web Dev Console

Given that we are in the early part of a significant QA cycle, we strongly recommend that you always have the web developer console open and watch for red javascript errors. Sometimes, in spite of errors, the app will continue to run, but do so with strange behaviors. Generally if you see a javscript error, write it down and try to reproduce it, then report it. If you need to continue working, reload first to clear the error. Continuing to work and ignoring the error can have unexpected unintended effects and you may end up wasting both your time and our time on a non-issue.


Known Issues


Key Features


To Test

  1. git fetch && git checkout dev-next-gui
  2. npm run bootstrap
  3. npm run gem
  4. Go to the Login page to select a project: http://localhost/app/login
  5. Select any existing project.
  6. Select Main

Run the Project

  1. Open the developer web console (CMD SHIFT I)
  2. Click "Prep Round"
  3. Click "Start Round"
  4. Make sure the simulation runs and there are no javascript errors in the console.
  5. If the simulation does not run, or there are javascript errors, please try to fix them before using the wizard. If you can't fix it, please report it as an issue. Include the project file you are trying to open in the issue.

Edit a Script

  1. In the lower left "CHARACTER TYPE SCRIPTS" section, click on a character name, e.g. "Algae"
  2. This should open up the Algae script in a new tab, defaulting to the wizard view.
  3. Click on any line to select it for editing
  4. The line should open in the editor on the right panel
  5. Click on any script "word" to change it.
  6. Options to replace the word should appear in the right panel
  7. Click on a keyword to select it
  8. When a new keyword is selected, the syntax for the line should update (e.g. the number of words required will change based on the keyword, properties, and methods you select).
  9. A hint for what each word should be is displayed above the word in light blue.
  10. Edit all the words in a line -- The best line to test is probably something like featCall Costume setCostume 'algae.json' so that any changes are immediately obvious. e.g. change the algae.json to fish.json
  11. Click "Save" to save the line.
  12. Click "Save to Server" to save the script to the main server.
  13. Review the main server to make sure the script was updated and no errors occurred.
  14. If you changed the costume, you should see the existing instances change costumes.

Use the Code Editor

  1. Click on the "CODE" tab in the Script Editor
  2. You should see the gemscript code. The line numbers in the code should match the line numbers in the wizard.
  3. Edit the code
  4. Switch back to the "WIZARD" view -- make sure your changes are reflected

Add a Line at the End of the script

  1. Make sure you're in "WIZARD" view
  2. Click on "Add Line" at the bottom of the script view -- you may need to scroll down if your script is long
  3. A new blank line should be inserted at the bottom of the script
  4. The line should be automatically selected for editing
  5. Edit the line and save it.

Add a Line in the middle of the script

  1. Click on a line to select it.
  2. Click on the "+" button above or below the line to insert a new line above or below the line.
  3. Edit the line and save it.

Delete a Line

  1. Click on a line to select it.
  2. Click on the "DELETE" line button to delete it.
  3. Notice that # directives cannot be deleted.

Insert a Nested Block

  1. Find the # PROGRAM UPDATE block.
  2. Click on a line to select it.
  3. Click on "+" to add a line below it.
  4. Click on "every" to add a new keyword
  5. Click on the second parameter, and enter "10"
  6. Click on "Save" to save the new keyword
  7. Notice there is now a nested block below the "every" keyword with a comment // insert code here.
  8. Click on the "every" line
  9. Click "+" to add a new line below the "every" line
  10. This should create a new blank line inside the every block.
  11. Click "+" to add a second line. This too should be inside the every block.
  12. Click on the next line AFTER the every block.
  13. Click "+" to insert a line above the AFTER line -- this should insert a line outside of the "every" block.
benloh commented 2 years ago

In GitLab by @daveseah on Apr 14, 2022, 12:39

added 4 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Apr 21, 2022, 13:49

added 7 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Apr 21, 2022, 16:12

added 3 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Apr 22, 2022, 12:06

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Apr 22, 2022, 15:03

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Apr 29, 2022, 12:21

added 38 commits

Compare with previous version

benloh commented 2 years ago

added 9 commits

Compare with previous version

benloh commented 2 years ago

added 8 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on May 4, 2022, 11:55

added 18 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on May 6, 2022, 09:01

added 5 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on May 6, 2022, 09:14

added 4 commits

Compare with previous version

benloh commented 2 years ago

added 2 commits

Compare with previous version

benloh commented 2 years ago

added 24 commits

Compare with previous version

benloh commented 2 years ago

added 18 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on May 20, 2022, 19:58

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 11 commits

Compare with previous version

benloh commented 2 years ago

added 27 commits

Compare with previous version

benloh commented 2 years ago

added 47 commits

Compare with previous version

benloh commented 2 years ago

added 15 commits

Compare with previous version

benloh commented 2 years ago

added 12 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 4, 2022, 13:20

added 21 commits

Compare with previous version

benloh commented 2 years ago

added 27 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 11, 2022, 18:01

added 7 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 11, 2022, 18:02

added 2 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 11, 2022, 18:41

added 3 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 13, 2022, 15:20

added 5 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 13, 2022, 15:31

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 2 commits

Compare with previous version

benloh commented 2 years ago

added 19 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 18, 2022, 07:41

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 18, 2022, 13:38

added 6 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 18, 2022, 13:58

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 18, 2022, 14:01

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 21 commits

Compare with previous version

benloh commented 2 years ago

added 3 commits

Compare with previous version

benloh commented 2 years ago

added 2 commits

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 20, 2022, 12:20

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 20, 2022, 16:38

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 21, 2022, 11:40

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 21, 2022, 12:38

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 21, 2022, 15:02

added 3 commits

Compare with previous version

benloh commented 2 years ago

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 22, 2022, 10:27

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 22, 2022, 11:03

added 1 commit

Compare with previous version

benloh commented 2 years ago

In GitLab by @daveseah on Jun 22, 2022, 11:07

added 1 commit

Compare with previous version