## News:

*NEW* Current Version on STEAM16.793

Webchat:
Visit the chat

## Chat.GPT

#### Kitty Hello

I asked Chat:GPT to write a GLBasic program, that shows a starfield, and, with the exception of CLS instead of CLEARSCREEN, it just worked out of the box. Awesome

#### bigsofty

Wow, kinda scarey but wow!
Cheers,

Ian.

"It is practically impossible to teach good programming style to students that have had prior exposure to BASIC.  As potential programmers, they are mentally mutilated beyond hope of regeneration."
(E. W. Dijkstra)

#### Qedo

So is our fun over? let's hope that at least the imagination is lacking

#### Kitty Hello

I think it's a good addition to the manual. But it's never going to create a game. Especially if you have a new idea.

#### loftcat

Ooh that's good. I'm amazed it recognises languages out of the mainstream. Could be useful for when I forget little bits of syntax.

#### Hemlos

Chatgpt is my buddy

Note, it even gave example
Me to ChatGPT:
QuoteI need a math formula, GLBasic TYPE coding, planet orbit physics, for finding the Orbital Semi-Major Axis.

Code (glbasic) Select
TYPE Orbit
average_distance%  // Average distance between the planet and its central body
eccentricity%     // Eccentricity of the orbit

FUNCTION CalculateSemiMajorAxis: ()
LOCAL semi_major_axis
semi_major_axis = (2 * average_distance%) / (1 - POW(eccentricity%, 2))
RETURN semi_major_axis
ENDFUNCTION
ENDTYPE

// Usage example
GLOBAL Orbit AS Orbit
Orbit.average_distance = 10  // Example value for average_distance
Orbit.eccentricity = 0.5    // Example value for eccentricity

LOCAL semi_major_axis
semi_major_axis = Orbit.CalculateSemiMajorAxis()
PRINT "Semi-Major Axis: " + semi_major_axis

This is wrong, FUNCTION CalculateSemiMajorAxis: ()
But ill let it slide by this time.

Bing ChatGpt is pretty smart

#### Quentin

quite interesting. I asked to it to create a pong game for GLBasic and it seems, it is able to learn. But sometimes it's hard to explain exactly what I mean

see chat her:
https://chat.openai.com/share/3cbbfac1-3880-4b40-a513-827b9eba91cd

#### Kitty Hello

It did write a complete game of Pong!? That's so insane.

#### dreamerman

All that AI stuff evolved so much in couple last years.. We are on the verge of revolution in many aspects of creative work, such AI tools will replace many 'creative' professions and on other hand will create new ones.. Imagine if someone is writing a legit book and need some art for cover or as illustrations for new chapters, now he can use MindJurney by him self and get something interesting, on other hand artist can use such tools to fastly generate many different visions/sketches of some client idea and later use it as base for further work and so on.. AI can now write basic books (like motivation, biography, books for kids), but will not write large series or universe that makes cross reference (like Cosmere - by Brandon Sanderson), but could be used for new ideas or to make parts of narration. Maybe it would be usefully in writing some parts of more advanced code not only simpler examples (but fact that it already can write a working game in such niche language as GLB is stunning).

On my hand I'm interested in game asset creation, more particular sprites with animation or something that would be usefull in a game, yet still such AI models need a lot of training in that direction (and of course it will be hard to deliver competitive art for them). Those are couple examples generated with Leonardo AI with different creation models:
Check my source code editor for GLBasic - link Update: 20.04.2020

#### MrPlow

Wow! It knows GLBasic...
Yes, I have done a few assets examples too...
Comp:
Speccy-48k, Speccy-128k, Amigas, PCs

#### MrPlow

Hi I asked GPT to create GUI menu in GLBasic and it gave me

Code (glbasic) Select
// Set the screen dimensions
SCREEN 800, 600, 0, 2

GLOBAL menuItems[2] = ["Option 1", "Option 2"]

// Main loop
WHILE TRUE
// Clear the screen
CLS RGB(255, 255, 255)

FOR i = 0 TO UBOUND(menuItems)
LOCAL itemY = i * MENU_ITEM_HEIGHT + 10
RECT 10, itemY, 790, itemY + MENU_ITEM_HEIGHT, RGB(200, 200, 200)
NEXT

// Check for mouse input
LOCAL mouseX, mouseY, mouseButton
MOUSESTATE mouseX, mouseY, mouseButton

// Highlight the selected menu item
FOR i = 0 TO UBOUND(menuItems)
LOCAL itemY = i * MENU_ITEM_HEIGHT + 10
IF mouseX > 10 AND mouseX < 790 AND mouseY > itemY AND mouseY < itemY + MENU_ITEM_HEIGHT
RECT 10, itemY, 790, itemY + MENU_ITEM_HEIGHT, RGB(150, 150, 150)
ENDIF
NEXT

// Check for mouse click on a menu item
IF mouseButton = 1 AND selectedMenuItem <> -1
// Perform action based on the selected menu item
CASE 0
PRINT "Option 1 selected", 400, 300
CASE 1
PRINT "Option 2 selected", 400, 300
END SELECT
SLEEP 1000  // Display the message for a short time
ENDIF

// Refresh the screen
SHOWSCREEN
WEND

// End the program
END

Needed some fixing but the example was close -

Code (glbasic) Select
SUB main2:
SETFONT 1
// Set the screen dimensions
//SCREEN 800, 600, 0, 2

// Main loop
WHILE TRUE
// Clear the screen
CLEARSCREEN RGB(255, 255, 255)

FOR i = 0 TO LEN(menuItems\$[])-1
LOCAL itemY = i * MENU_ITEM_HEIGHT + 10
DRAWRECT 10, itemY, 790, itemY + MENU_ITEM_HEIGHT, RGB(200, 200, 200)
NEXT

// Check for mouse input
LOCAL mouseX, mouseY, mouseButton,mb2
MOUSESTATE mouseX, mouseY, mouseButton,mb2

// Highlight the selected menu item
FOR i = 0 TO LEN(menuItems\$[])-1
LOCAL itemY = i * MENU_ITEM_HEIGHT + 10
IF mouseX > 10 AND mouseX < 790 AND mouseY > itemY AND mouseY < itemY + MENU_ITEM_HEIGHT
DRAWRECT 10, itemY, 790, itemY + MENU_ITEM_HEIGHT, RGB(150, 150, 150)
ENDIF
NEXT

// Check for mouse click on a menu item
IF mouseButton = 1 AND selectedMenuItem <> -1
// Perform action based on the selected menu item
CASE 0
PRINT "Option 1 selected", 400, 300
CASE 1
PRINT "Option 2 selected", 400, 300
ENDSELECT
SLEEP 1000  // Display the message for a short time
ENDIF

// Refresh the screen
SHOWSCREEN
WEND

// End the program
ENDSUB
Comp:
Speccy-48k, Speccy-128k, Amigas, PCs

#### Qedo

Great, but Chat.GPT needs to study the syntax of Glbasic better