Here is an install program that will install the game to your device. It just downloads all needed files from my website, then runs the game afterwards. It downloads the Written.txt file instead of the .cod version. It creates a winstone-data folder for the game files.
I've been wanting to make a new version, so if you have any suggestions or advice let me have them please.
- Dav
Code: Select all
'=============================================
'INSTALL WRITTEN IN STONE GAME FOR SMART BASIC
'=============================================
'
'NAME: Winstone-install.txt, v1.01
'Coded by Dav, 1/21/2015
'
'Written In Stone is a word puzzle game.
'It is currently available for smart basic by
'running this install script to download the
'game files from my basic programming website.
'Also, you may download a .ZIP archive of all
'the game files at my website as well. Visit
'the forum for a url to that. 
'
'Enjoy the game.  Let me know how it plays.
'
'
'- Dav
'
'=============================================
option base 1
option screenlock off
'Location of download files (my site)
url$="www.qbasicnews.com/dav/"
print "==========================================="
print " INSTALL Written In Stone v1.1 Game by Dav"
print "==========================================="
print "       (Install v1.01 - 1/21/2015)"
print
if capstr$(device_type$()) <> "IPAD" then
   print "Sorry, this game is only for iPad."
   end
end if
if file_exists("winstone-data/") then goto there
print "This will install the WRITTEN IN STONE game"
print "on your smart Basic device and download all"
print "needed game media files from the internet."
print 
print "A 'winstone-data' folder will be created in"
print "current directory along with 'Winstone.txt'"
print "which is the game program code to run."
print 
print "It will take up about 4MB of data space and"
print "will download from  ";url$
print "You will only have to do the download once."
print "It should only take a couple of minutes."
print
print "Checking internet connection....";
if system_ext_ip$() ="" then
   print "Error!"
   print
   print "You do not appear to be online."
   print "Please connect to the internet and"
   print "try running install again. STOPPED..."
   end
end if
print "OK!"
print
print "MAKE SURE YOU STAY CONNECTED TO THE"
print "INTERNET DURING THE ENTIRE PROCESS."
print
button "install" text "Download & Install" at 70,580
button "later" text "No thanks, maybe later" at 300,580
do
    if button_pressed("later") then 
      text clear
      print "Winstone Install cancelled."
      button "install" delete
      button "later" delete
      end
    end if
    if button_pressed("install") then break
until 0
button "later" delete
button "install" delete
text clear
'==========================================
install:
'=======
'Create folders first..dont overwrite if esists.
text clear
print "Creating folders..."
if file_exists("winstone-data/") = 0  then
   dir "winstone-data/" create
else
   text clear
there:
   print
   print "WARNING NOTICE..."
   print
   print "The winstone-data folder already exists."
   print "The game may already be installed."
   print "To re-install, Delete the winstone-data"
   print "folder and run install again."
   print
   print "Install halted."
   end
end if
if file_exists("winstone-data/fnt2/") = 0 then dir "winstone-data/fnt2" create
if file_exists("winstone-data/img/") = 0 then dir "winstone-data/img/" create
if file_exists("winstone-data/num/") = 0 then dir "winstone-data/num/" create
if file_exists("winstone-data/sfx/") = 0 then dir "winstone-data/sfx/" create
if file_exists("winstone-data/vid/") = 0 then dir "winstone-data/vid/" create
'get list of files to download...
'count files first...
restore to filenames
totalfiles=-1
while a$<>"#"
  read a$ ! totalfiles+=1
end while
'divide in half for real number
'(half of READ was to get filesize)
totalfiles = totalfiles / 2
dim filename$(totalfiles)
dim filesize(totalfiles)
'fill arrays with names and sizes
RESTORE TO filenames
   for g = 1 to totalfiles
   read a$ ! filesize(g) = val(a$)
   read b$ ! filename$(g) = b$
next g
button "stop" text "Stop Downloading" at 100,200
text clear
print "Installing 'Written in Stone' game"
print
print "Downloading file 'Winstone.txt' ";"(? bytes)" 
'first, download "Winstone.txt" file into 
'the cirrent dir
 u$=url$&"Winstone.txt"
 http u$ getdim m
 file "Winstone.txt" writedim m
 text clear
'download the files...
for r = 1 to totalfiles
  text clear
  print "Installing 'Written in Stone' game"
  print
  print "Downloading file ";r;" of ";totalfiles
  print url$;filename$(r);
  print " (";trim$(str$(filesize(r)));" bytes)"
  if system_ext_ip$() ="" then 'check connection..
     goto skip
  else
     'do download here...
     u$=url$&filename$(r)
     http u$ getdim m
     file filename$(r) writedim m
  end if
  if button_pressed("stop") then
skip:
    button "stop" delete
    text clear
    print "Download interrupted!"
    print
    print "Game was not installed."
    print "You must re-download again to install."
    print
    print "An incomplete winstone-data folder created."
    print "Do you want me to delete this folder?"
    button "yes" text "Yes, delete winstone-data folder" at 30, 200
    button "no" text "No, I will take care of it later" at 30, 250
    do
      if button_pressed("yes") then
        dir "winstone-data/" delete
        break
      end if
      if button_pressed("no") then break
    until 0
    button "yes" delete
    button "no" delete
    text clear
    end
  end if
next r
button "stop" delete
text clear
print "Download complete!"
print "Game installed!"
print
print "Run winstone.txt to start the game."
print
print "Would you like to run the game now?"
button "runyes" text "Yes, run Winstone.txt now" at 100,200
button "runno" text "No, I'll run it later" at 100, 300
do
   if button_pressed("runyes") then
     run "Winstone.txt"
     break
   end if
   if button_pressed("runno") then break
until 0
end
'=====================================
filenames:
'=========
'the file sizes are not used in checking
'right now, just for show....
'data "252437","Winstone.COD"
data "1243","Winstone-readme.txt"
data "1121","winstone-data/fnt2/A.jpg"
data "1101","winstone-data/fnt2/B.jpg"
data "1082","winstone-data/fnt2/C.jpg"
data "1094","winstone-data/fnt2/D.jpg"
data "1063","winstone-data/fnt2/E.jpg"
data "1035","winstone-data/fnt2/F.jpg"
data "1112","winstone-data/fnt2/G.jpg"
data "1081","winstone-data/fnt2/H.jpg"
data "1044","winstone-data/fnt2/I.jpg"
data "1044","winstone-data/fnt2/J.jpg"
data "1097","winstone-data/fnt2/K.jpg"
data "996","winstone-data/fnt2/L.jpg"
data "1089","winstone-data/fnt2/M.jpg"
data "1087","winstone-data/fnt2/N.jpg"
data "1118","winstone-data/fnt2/O.jpg"
data "1050","winstone-data/fnt2/P.jpg"
data "1124","winstone-data/fnt2/Q.jpg"
data "1089","winstone-data/fnt2/R.jpg"
data "1117","winstone-data/fnt2/S.jpg"
data "935","winstone-data/fnt2/space.jpg"
data "1029","winstone-data/fnt2/T.jpg"
data "1083","winstone-data/fnt2/U.jpg"
data "1104","winstone-data/fnt2/V.jpg"
data "1091","winstone-data/fnt2/W.jpg"
data "1122","winstone-data/fnt2/X.jpg"
data "1072","winstone-data/fnt2/Y.jpg"
data "1078","winstone-data/fnt2/Z.jpg"
data "1101","winstone-data/fnt2/_A.jpg"
data "1087","winstone-data/fnt2/_B.jpg"
data "1076","winstone-data/fnt2/_C.jpg"
data "1081","winstone-data/fnt2/_D.jpg"
data "1059","winstone-data/fnt2/_E.jpg"
data "1021","winstone-data/fnt2/_F.jpg"
data "1102","winstone-data/fnt2/_G.jpg"
data "1067","winstone-data/fnt2/_H.jpg"
data "1029","winstone-data/fnt2/_I.jpg"
data "1026","winstone-data/fnt2/_J.jpg"
data "1081","winstone-data/fnt2/_K.jpg"
data "982","winstone-data/fnt2/_L.jpg"
data "1069","winstone-data/fnt2/_M.jpg"
data "1074","winstone-data/fnt2/_N.jpg"
data "1108","winstone-data/fnt2/_O.jpg"
data "1031","winstone-data/fnt2/_P.jpg"
data "1114","winstone-data/fnt2/_Q.jpg"
data "1078","winstone-data/fnt2/_R.jpg"
data "1107","winstone-data/fnt2/_S.jpg"
data "1028","winstone-data/fnt2/_T.jpg"
data "1084","winstone-data/fnt2/_U.jpg"
data "1087","winstone-data/fnt2/_V.jpg"
data "1087","winstone-data/fnt2/_W.jpg"
data "1107","winstone-data/fnt2/_X.jpg"
data "1056","winstone-data/fnt2/_Y.jpg"
data "1066","winstone-data/fnt2/_Z.jpg"
data "1544","winstone-data/img/back.jpg"
data "55148","winstone-data/img/board6.jpg"
data "1694","winstone-data/img/config.jpg"
data "193282","winstone-data/img/configscreen2.jpg"
data "1466","winstone-data/img/help.jpg"
data "197422","winstone-data/img/helpscreen.jpg"
data "1389","winstone-data/img/hint.jpg"
data "57764","winstone-data/img/menu_top2.jpg"
data "1284","winstone-data/img/no.jpg"
data "186692","winstone-data/img/paper-timeup.jpg"
data "92639","winstone-data/img/paper-title-left.jpg"
data "92323","winstone-data/img/paper-title-right.jpg"
data "183301","winstone-data/img/paper-title.jpg"
data "10996","winstone-data/img/pop-a-1.jpg"
data "9575","winstone-data/img/pop-a-2.jpg"
data "10025","winstone-data/img/pop-a-3.jpg"
data "7404","winstone-data/img/pop-a-4.jpg"
data "8612","winstone-data/img/pop-a-5.jpg"
data "6395","winstone-data/img/pop-a-6.jpg"
data "7381","winstone-data/img/pop-b-1.jpg"
data "5979","winstone-data/img/pop-b-2.jpg"
data "6606","winstone-data/img/pop-b-3.jpg"
data "7093","winstone-data/img/pop-b-4.jpg"
data "5228","winstone-data/img/pop-b-5.jpg"
data "5863","winstone-data/img/pop-b-6.jpg"
data "5615","winstone-data/img/pop-c-1.jpg"
data "5865","winstone-data/img/pop-c-2.jpg"
data "6980","winstone-data/img/pop-c-3.jpg"
data "5748","winstone-data/img/pop-c-4.jpg"
data "6015","winstone-data/img/pop-c-5.jpg"
data "6585","winstone-data/img/pop-c-6.jpg"
data "6214","winstone-data/img/pop-d-1.jpg"
data "6653","winstone-data/img/pop-d-2.jpg"
data "4651","winstone-data/img/pop-d-3.jpg"
data "6624","winstone-data/img/pop-d-4.jpg"
data "6142","winstone-data/img/pop-d-5.jpg"
data "6878","winstone-data/img/pop-d-6.jpg"
data "6545","winstone-data/img/pop-e-1.jpg"
data "5404","winstone-data/img/pop-e-2.jpg"
data "5027","winstone-data/img/pop-e-3.jpg"
data "6183","winstone-data/img/pop-e-4.jpg"
data "6007","winstone-data/img/pop-e-5.jpg"
data "4484","winstone-data/img/pop-e-6.jpg"
data "5438","winstone-data/img/pop-f-1.jpg"
data "5766","winstone-data/img/pop-f-2.jpg"
data "6131","winstone-data/img/pop-f-3.jpg"
data "6240","winstone-data/img/pop-f-4.jpg"
data "6006","winstone-data/img/pop-f-5.jpg"
data "5659","winstone-data/img/pop-f-6.jpg"
data "5073","winstone-data/img/pop-g-1.jpg"
data "4976","winstone-data/img/pop-g-2.jpg"
data "5959","winstone-data/img/pop-g-3.jpg"
data "6729","winstone-data/img/pop-g-4.jpg"
data "5791","winstone-data/img/pop-g-5.jpg"
data "5928","winstone-data/img/pop-g-6.jpg"
data "6246","winstone-data/img/pop-h-1.jpg"
data "5840","winstone-data/img/pop-h-2.jpg"
data "5831","winstone-data/img/pop-h-3.jpg"
data "6608","winstone-data/img/pop-h-4.jpg"
data "7125","winstone-data/img/pop-h-5.jpg"
data "7437","winstone-data/img/pop-h-6.jpg"
data "4716","winstone-data/img/pop-z-1.jpg"
data "4759","winstone-data/img/pop-z-10.jpg"
data "4976","winstone-data/img/pop-z-11.jpg"
data "4820","winstone-data/img/pop-z-12.jpg"
data "5154","winstone-data/img/pop-z-13.jpg"
data "4941","winstone-data/img/pop-z-14.jpg"
data "4688","winstone-data/img/pop-z-15.jpg"
data "4473","winstone-data/img/pop-z-16.jpg"
data "4816","winstone-data/img/pop-z-2.jpg"
data "5920","winstone-data/img/pop-z-3.jpg"
data "4959","winstone-data/img/pop-z-4.jpg"
data "4629","winstone-data/img/pop-z-5.jpg"
data "5146","winstone-data/img/pop-z-6.jpg"
data "4402","winstone-data/img/pop-z-7.jpg"
data "5366","winstone-data/img/pop-z-8.jpg"
data "4794","winstone-data/img/pop-z-9.jpg"
data "3800","winstone-data/img/popstrip.jpg"
data "1408","winstone-data/img/quitbtn.jpg"
data "1559","winstone-data/img/quote.jpg"
data "2819","winstone-data/img/reset.jpg"
data "18563","winstone-data/img/resetnotice.jpg"
data "7381","winstone-data/img/select-champ.jpg"
data "6383","winstone-data/img/select-msg.jpg"
data "53532","winstone-data/img/select.jpg"
data "919","winstone-data/img/solved.jpg"
data "1583","winstone-data/img/startbtn.jpg"
data "37527","winstone-data/img/timernotice.jpg"
data "664","winstone-data/img/time_grn2.jpg"
data "676","winstone-data/img/time_red2.jpg"
data "661","winstone-data/img/time_yel2.jpg"
data "1941","winstone-data/img/title.jpg"
data "4522","winstone-data/img/wimp.jpg"
data "283761","winstone-data/img/win.jpg"
data "1389","winstone-data/img/yes.jpg"
data "1639","winstone-data/img/_back.jpg"
data "1808","winstone-data/img/_config.jpg"
data "1586","winstone-data/img/_help.jpg"
data "1499","winstone-data/img/_hint.jpg"
data "1405","winstone-data/img/_no.jpg"
data "1538","winstone-data/img/_quitbtn.jpg"
data "1665","winstone-data/img/_quote.jpg"
data "2958","winstone-data/img/_reset.jpg"
data "1725","winstone-data/img/_startbtn.jpg"
data "2037","winstone-data/img/_title.jpg"
data "4757","winstone-data/img/_wimp.jpg"
data "1506","winstone-data/img/_yes.jpg"
data "1048","winstone-data/num/1.jpg"
data "1213","winstone-data/num/10.jpg"
data "1161","winstone-data/num/11.jpg"
data "1216","winstone-data/num/12.jpg"
data "1209","winstone-data/num/13.jpg"
data "1216","winstone-data/num/14.jpg"
data "1204","winstone-data/num/15.jpg"
data "1229","winstone-data/num/16.jpg"
data "1193","winstone-data/num/17.jpg"
data "1232","winstone-data/num/18.jpg"
data "1230","winstone-data/num/19.jpg"
data "1097","winstone-data/num/2.jpg"
data "1248","winstone-data/num/20.jpg"
data "1194","winstone-data/num/21.jpg"
data "1249","winstone-data/num/22.jpg"
data "1247","winstone-data/num/23.jpg"
data "1252","winstone-data/num/24.jpg"
data "1261","winstone-data/num/25.jpg"
data "1270","winstone-data/num/26.jpg"
data "1228","winstone-data/num/27.jpg"
data "1264","winstone-data/num/28.jpg"
data "1262","winstone-data/num/29.jpg"
data "1119","winstone-data/num/3.jpg"
data "1264","winstone-data/num/30.jpg"
data "1214","winstone-data/num/31.jpg"
data "1270","winstone-data/num/32.jpg"
data "1259","winstone-data/num/33.jpg"
data "1248","winstone-data/num/34.jpg"
data "1275","winstone-data/num/35.jpg"
data "1276","winstone-data/num/36.jpg"
data "1234","winstone-data/num/37.jpg"
data "1281","winstone-data/num/38.jpg"
data "1285","winstone-data/num/39.jpg"
data "1082","winstone-data/num/4.jpg"
data "1246","winstone-data/num/40.jpg"
data "1203","winstone-data/num/41.jpg"
data "1245","winstone-data/num/42.jpg"
data "1276","winstone-data/num/43.jpg"
data "1251","winstone-data/num/44.jpg"
data "1272","winstone-data/num/45.jpg"
data "1269","winstone-data/num/46.jpg"
data "1227","winstone-data/num/47.jpg"
data "1271","winstone-data/num/48.jpg"
data "1270","winstone-data/num/49.jpg"
data "1119","winstone-data/num/5.jpg"
data "1275","winstone-data/num/50.jpg"
data "1114","winstone-data/num/6.jpg"
data "1078","winstone-data/num/7.jpg"
data "1129","winstone-data/num/8.jpg"
data "1123","winstone-data/num/9.jpg"
data "43094","winstone-data/sfx/sfx_boom.mp3"
data "59477","winstone-data/sfx/sfx_clap.mp3"
data "10368","winstone-data/sfx/sfx_click.mp3"
data "5960","winstone-data/sfx/sfx_click2.mp3"
data "10158","winstone-data/sfx/sfx_click5.mp3"
data "171699","winstone-data/sfx/sfx_credits.mp3"
data "34736","winstone-data/sfx/sfx_crumble.mp3"
data "12717","winstone-data/sfx/sfx_dropdown.mp3"
data "3858","winstone-data/sfx/sfx_music.mid"
data "4444","winstone-data/sfx/sfx_pop1.mp3"
data "36907","winstone-data/sfx/sfx_roll.mp3"
data "105870","winstone-data/sfx/sfx_rumble.mp3"
data "105870","winstone-data/sfx/sfx_rumble2.mp3"
data "6396","winstone-data/sfx/sfx_select.mp3"
data "13501","winstone-data/sfx/sfx_slideup.mp3"
data "61506","winstone-data/vid/crum0000.jpg"
data "62013","winstone-data/vid/crum0001.jpg"
data "63214","winstone-data/vid/crum0002.jpg"
data "64006","winstone-data/vid/crum0003.jpg"
data "64119","winstone-data/vid/crum0004.jpg"
data "63966","winstone-data/vid/crum0005.jpg"
data "63104","winstone-data/vid/crum0006.jpg"
data "62907","winstone-data/vid/crum0007.jpg"
data "51274","winstone-data/vid/crum0008.jpg"
data "42284","winstone-data/vid/crum0009.jpg"
data "32678","winstone-data/vid/crum0010.jpg"
data "26198","winstone-data/vid/crum0011.jpg"
data "18806","winstone-data/vid/crum0012.jpg"
data "15227","winstone-data/vid/crum0013.jpg"
data "13850","winstone-data/vid/crum0014.jpg"
data "17133","winstone-data/vid/roll0000.jpg"
data "17074","winstone-data/vid/roll0001.jpg"
data "17025","winstone-data/vid/roll0002.jpg"
data "16976","winstone-data/vid/roll0003.jpg"
data "16857","winstone-data/vid/roll0004.jpg"
data "16631","winstone-data/vid/roll0005.jpg"
data "25927","winstone-data/vid/sel0000.jpg"
data "23638","winstone-data/vid/sel0001.jpg"
data "20104","winstone-data/vid/sel0002.jpg"
data "17789","winstone-data/vid/sel0003.jpg"
data "15694","winstone-data/vid/sel0004.jpg"
data "13662","winstone-data/vid/sel0005.jpg"
data "12329","winstone-data/vid/sel0006.jpg"
data "11103","winstone-data/vid/sel0007.jpg"
data "10106","winstone-data/vid/sel0008.jpg"
data "9163","winstone-data/vid/sel0009.jpg"
data "8398","winstone-data/vid/sel0010.jpg"
data "7631","winstone-data/vid/sel0011.jpg"
data "7111","winstone-data/vid/sel0012.jpg"
data "6553","winstone-data/vid/sel0013.jpg"
data "5980","winstone-data/vid/sel0014.jpg"
data "4875","winstone-data/vid/sel0015.jpg"
data "#"

