Managed to cobble together a Sudoku script...
@echo off & title=Sudoku
:: Sudoku: Michael Sanders - 2017
::
https://busybox.hypermart.net/sudoku.html
::
:: 6^3 = 216 possible permutations...
::
:: levels of play, easy to difficult: 1-6
:seed
setlocal enabledelayedexpansion
set level=3&::<-------------
set m[1]=1 2 3 4 5 6 7 8 9
set m[2]=4 5 6 7 8 9 1 2 3
set m[3]=7 8 9 1 2 3 4 5 6
set m[4]=3 1 2 6 4 5 9 7 8
set m[5]=6 4 5 9 7 8 3 1 2
set m[6]=9 7 8 3 1 2 6 4 5
set m[7]=2 3 1 5 6 4 8 9 7
set m[8]=5 6 4 8 9 7 2 3 1
set m[9]=8 9 7 2 3 1 5 6 4
:main
for /l %%x in (1,1,9) do (
set k=0
set b=123456789
call :mask %%x
)
for /l %%x in (1,1,3) do (
echo.
if %%x equ 1 set s=123
if %%x equ 2 set s=456
if %%x equ 3 set s=789
set c=0
call :shuffle
)
if %0=="%~0" echo.&pause>nul|set/p =any key to exit...
endlocal & exit/b
:mask
if %level% lss 1 goto :eof
if %level% gtr 6 set level=6
set/a j=%random%%%(9-!k!)
set n=!b:~%j%,1!
set b=!b:%n%=!
set m[%1]=!m[%1]:%n%=.!
set/a k+=1
if !k! lss %level% goto :mask
goto :eof
:shuffle
set/a r=%random%%%(3-!c!)
set p=!s:~%r%,1!
set s=!s:%p%=!
set/a c+=1
echo.!m[%p%]!
if !c! lss 3 goto :shuffle
:eof
--
later on,
Mike
https://busybox.hypermart.net