@ElliottLMz
Sorry, should have made this more clearly. I mean, the script doesnt even pick anything. On the print thing is this the output: [table: 0x8be84c1df935964d]
This will help us to help you out more easily. What exactly is not working about your code? What do you expect your code to do, and what is it in fact doing? What attempts have you made to debug it?
This is not helpful clarification. What are randomPlayerIndex and randomPlayerName equal to? This is the first thing you should be checking when debugging this code.
It looks like the problem is that playersNotJoiningGameChildren is a table, so when you declare,
local playersNotJoiningGameArray = {playersNotJoiningGameChildren}
you are nesting the table inside another table. This means that when you pick something out of that (outer) table, your code will always choose the playersNotJoiningGameChildren table itself. To solve this, you can just directly use the playersNotJoiningGameChildren table instead of playersNotJoiningGameArray.