The majority of bot memory isn't used by the system. There are only 227 sysvars (version 2.43.1e) - actually I think its more like 224 as there are a few duplicate names that map to the same location. The list is below, straight from the code. Add in the genetic memory locations and you still end up with fewer than 250 locations used by the system. The rest are open for private use.
I gaurentee locations 50-175 inclusive will not be used by the system in the future. Bot authors are encouraged (but not required) to define private sysvars in this range.
As of 2.43.1e, there are 10 in/out sysvar pairs.
sysvar(1).Name = "up"
sysvar(1).value = 1
sysvar(2).Name = "dn"
sysvar(2).value = 2
sysvar(3).Name = "sx"
sysvar(3).value = 3
sysvar(4).Name = "dx"
sysvar(4).value = 4
sysvar(5).Name = "aimdx"
sysvar(5).value = 5
sysvar(6).Name = "aimright"
sysvar(6).value = 5
sysvar(7).Name = "aimsx"
sysvar(7).value = 6
sysvar(
.Name = "aimleft"
sysvar(
.value = 6
sysvar(9).Name = "shoot"
sysvar(9).value = 7
sysvar(10).Name = "shootval"
sysvar(10).value = 8
sysvar(11).Name = "robage"
sysvar(11).value = 9
sysvar(12).Name = "mass"
sysvar(12).value = 10
sysvar(13).Name = "maxvel"
sysvar(13).value = 11
sysvar(14).Name = "timer"
sysvar(14).value = 12
sysvar(15).Name = "aim"
sysvar(15).value = 18
sysvar(16).Name = "setaim"
sysvar(16).value = 19
sysvar(17).Name = "bodgain"
sysvar(17).value = 194
sysvar(18).Name = "bodloss"
sysvar(18).value = 195
sysvar(19).Name = "velscalar"
sysvar(19).value = 196
sysvar(20).Name = "velsx"
sysvar(20).value = 197
sysvar(21).Name = "veldx"
sysvar(21).value = 198
sysvar(22).Name = "veldn"
sysvar(22).value = 199
sysvar(23).Name = "velup"
sysvar(23).value = 200
sysvar(24).Name = "vel"
sysvar(24).value = 200
sysvar(25).Name = "hit"
sysvar(25).value = 201
sysvar(26).Name = "shflav"
sysvar(26).value = 202
sysvar(27).Name = "pain"
sysvar(27).value = 203
sysvar(28).Name = "pleas"
sysvar(28).value = 204
sysvar(29).Name = "hitup"
sysvar(29).value = 205
sysvar(30).Name = "hitdn"
sysvar(30).value = 206
sysvar(31).Name = "hitdx"
sysvar(31).value = 207
sysvar(32).Name = "hitsx"
sysvar(32).value = 208
sysvar(33).Name = "shang"
sysvar(33).value = 209
sysvar(34).Name = "shup"
sysvar(34).value = 210
sysvar(35).Name = "shdn"
sysvar(35).value = 211
sysvar(36).Name = "shdx"
sysvar(36).value = 212
sysvar(37).Name = "shsx"
sysvar(37).value = 213
sysvar(38).Name = "edge"
sysvar(38).value = 214
sysvar(39).Name = "fixed"
sysvar(39).value = 215
sysvar(40).Name = "fixpos"
sysvar(40).value = 216
sysvar(41).Name = "depth"
sysvar(41).value = 217
sysvar(42).Name = "ypos"
sysvar(42).value = 217
sysvar(43).Name = "daytime"
sysvar(43).value = 218
sysvar(44).Name = "xpos"
sysvar(44).value = 219
sysvar(45).Name = "kills"
sysvar(45).value = 220
sysvar(46).Name = "hitang"
sysvar(46).value = 221
sysvar(47).Name = "repro"
sysvar(47).value = 300
sysvar(48).Name = "mrepro"
sysvar(48).value = 301
sysvar(49).Name = "sexrepro"
sysvar(49).value = 302
sysvar(50).Name = "nrg"
sysvar(50).value = 310
sysvar(51).Name = "body"
sysvar(51).value = 311
sysvar(52).Name = "fdbody"
sysvar(52).value = 312
sysvar(53).Name = "strbody"
sysvar(53).value = 313
sysvar(54).Name = "setboy"
sysvar(54).value = 314
sysvar(55).Name = "rdboy"
sysvar(55).value = 315
sysvar(56).Name = "tie"
sysvar(56).value = 330
sysvar(57).Name = "stifftie"
sysvar(57).value = 331
sysvar(58).Name = "mkvirus"
sysvar(58).value = 335
sysvar(59).Name = "dnalen"
sysvar(59).value = 336
sysvar(60).Name = "vtimer"
sysvar(60).value = 337
sysvar(61).Name = "vshoot"
sysvar(61).value = 338
sysvar(62).Name = "genes"
sysvar(62).value = 339
sysvar(63).Name = "delgene"
sysvar(63).value = 340
sysvar(64).Name = "thisgene"
sysvar(64).value = 341
sysvar(65).Name = "sun"
sysvar(65).value = 400
sysvar(66).Name = "trefbody"
sysvar(66).value = 437
sysvar(67).Name = "trefxpos"
sysvar(67).value = 438
sysvar(68).Name = "trefypos"
sysvar(68).value = 439
sysvar(69).Name = "trefvelmysx"
sysvar(69).value = 440
sysvar(70).Name = "trefvelmydx"
sysvar(70).value = 441
sysvar(71).Name = "trefvelmydn"
sysvar(71).value = 442
sysvar(72).Name = "trefvelmyup"
sysvar(72).value = 443
sysvar(73).Name = "trefvelscalar"
sysvar(73).value = 444
sysvar(74).Name = "trefvelyoursx"
sysvar(74).value = 445
sysvar(75).Name = "trefvelyourdx"
sysvar(75).value = 446
sysvar(76).Name = "trefvelyourdn"
sysvar(76).value = 447
sysvar(77).Name = "trefvelyourup"
sysvar(77).value = 448
sysvar(78).Name = "trefshell"
sysvar(78).value = 449
sysvar(79).Name = "tieang"
sysvar(79).value = 450
sysvar(80).Name = "tielen"
sysvar(80).value = 451
sysvar(81).Name = "tieloc"
sysvar(81).value = 452
sysvar(82).Name = "tieval"
sysvar(82).value = 453
sysvar(83).Name = "tiepres"
sysvar(83).value = 454
sysvar(84).Name = "tienum"
sysvar(84).value = 455
sysvar(85).Name = "trefup"
sysvar(85).value = 456
sysvar(86).Name = "trefdn"
sysvar(86).value = 457
sysvar(87).Name = "trefsx"
sysvar(87).value = 458
sysvar(88).Name = "trefdx"
sysvar(88).value = 459
sysvar(89).Name = "trefaimdx"
sysvar(89).value = 460
sysvar(90).Name = "trefaimsx"
sysvar(90).value = 461
sysvar(91).Name = "trefshoot"
sysvar(91).value = 462
sysvar(92).Name = "trefeye"
sysvar(92).value = 463
sysvar(93).Name = "trefnrg"
sysvar(93).value = 464
sysvar(94).Name = "trefage"
sysvar(94).value = 465
sysvar(95).Name = "numties"
sysvar(95).value = 466
sysvar(96).Name = "deltie"
sysvar(96).value = 467
sysvar(97).Name = "fixang"
sysvar(97).value = 468
sysvar(98).Name = "fixlen"
sysvar(98).value = 469
sysvar(99).Name = "multi"
sysvar(99).value = 470
sysvar(100).Name = "readtie"
sysvar(100).value = 471
sysvar(101).Name = "fertilized"
sysvar(101).value = 303
sysvar(102).Name = "memval"
sysvar(102).value = 473
sysvar(103).Name = "memloc"
sysvar(103).value = 474
sysvar(104).Name = "tmemval"
sysvar(104).value = 475
sysvar(105).Name = "tmemloc"
sysvar(105).value = 476
sysvar(106).Name = "reffixed"
sysvar(106).value = 477
sysvar(107).Name = "treffixed"
sysvar(107).value = 478
sysvar(108).Name = "trefaim"
sysvar(108).value = 479
sysvar(109).Name = "tieang1"
sysvar(109).value = 480
sysvar(110).Name = "tieang2"
sysvar(110).value = 481
sysvar(111).Name = "tieang3"
sysvar(111).value = 482
sysvar(112).Name = "tieang4"
sysvar(112).value = 483
sysvar(113).Name = "tielen1"
sysvar(113).value = 484
sysvar(114).Name = "tielen2"
sysvar(114).value = 485
sysvar(115).Name = "tielen3"
sysvar(115).value = 486
sysvar(116).Name = "tielen4"
sysvar(116).value = 487
sysvar(117).Name = "eye1"
sysvar(117).value = 501
sysvar(118).Name = "eye2"
sysvar(118).value = 502
sysvar(119).Name = "eye3"
sysvar(119).value = 503
sysvar(120).Name = "eye4"
sysvar(120).value = 504
sysvar(121).Name = "eye5"
sysvar(121).value = 505
sysvar(122).Name = "eye6"
sysvar(122).value = 506
sysvar(123).Name = "eye7"
sysvar(123).value = 507
sysvar(124).Name = "eye8"
sysvar(124).value = 508
sysvar(125).Name = "eye9"
sysvar(125).value = 509
sysvar(126).Name = "refmulti"
sysvar(126).value = 686
sysvar(127).Name = "refshell"
sysvar(127).value = 687
sysvar(128).Name = "refbody"
sysvar(128).value = 688
sysvar(129).Name = "refxpos"
sysvar(129).value = 689
sysvar(130).Name = "refypos"
sysvar(130).value = 690
sysvar(131).Name = "refvelscalar"
sysvar(131).value = 695
sysvar(132).Name = "refvelsx"
sysvar(132).value = 696
sysvar(133).Name = "refveldx"
sysvar(133).value = 697
sysvar(134).Name = "refveldn"
sysvar(134).value = 698
sysvar(135).Name = "refvel"
sysvar(135).value = 699
sysvar(136).Name = "refvelup"
sysvar(136).value = 699
sysvar(137).Name = "refup"
sysvar(137).value = 701
sysvar(138).Name = "refdn"
sysvar(138).value = 702
sysvar(139).Name = "refsx"
sysvar(139).value = 703
sysvar(140).Name = "refdx"
sysvar(140).value = 704
sysvar(141).Name = "refaimdx"
sysvar(141).value = 705
sysvar(142).Name = "refaimsx"
sysvar(142).value = 706
sysvar(143).Name = "refshoot"
sysvar(143).value = 707
sysvar(144).Name = "refeye"
sysvar(144).value = 708
sysvar(145).Name = "refnrg"
sysvar(145).value = 709
sysvar(146).Name = "refage"
sysvar(146).value = 710
sysvar(147).Name = "refaim"
sysvar(147).value = 711
sysvar(148).Name = "reftie"
sysvar(148).value = 712
sysvar(149).Name = "refpoison"
sysvar(149).value = 713
sysvar(150).Name = "refvenom"
sysvar(150).value = 714
sysvar(151).Name = "refkills"
sysvar(151).value = 715
sysvar(152).Name = "myup"
sysvar(152).value = 721
sysvar(153).Name = "mydn"
sysvar(153).value = 722
sysvar(154).Name = "mysx"
sysvar(154).value = 723
sysvar(155).Name = "mydx"
sysvar(155).value = 724
sysvar(156).Name = "myaimdx"
sysvar(156).value = 725
sysvar(157).Name = "myaimsx"
sysvar(157).value = 726
sysvar(158).Name = "myshoot"
sysvar(158).value = 727
sysvar(159).Name = "myeye"
sysvar(159).value = 728
sysvar(160).Name = "myties"
sysvar(160).value = 729
sysvar(161).Name = "mypoison"
sysvar(161).value = 730
sysvar(162).Name = "myvenom"
sysvar(162).value = 731
sysvar(163).Name = "out1"
sysvar(163).value = 800
sysvar(164).Name = "out2"
sysvar(164).value = 801
sysvar(165).Name = "out3"
sysvar(165).value = 802
sysvar(166).Name = "out4"
sysvar(166).value = 803
sysvar(167).Name = "out5"
sysvar(167).value = 804
sysvar(168).Name = "in1"
sysvar(168).value = 810
sysvar(169).Name = "in2"
sysvar(169).value = 811
sysvar(170).Name = "in3"
sysvar(170).value = 812
sysvar(171).Name = "in4"
sysvar(171).value = 813
sysvar(172).Name = "in5"
sysvar(172).value = 814
sysvar(173).Name = "mkslime"
sysvar(173).value = 820
sysvar(174).Name = "slime"
sysvar(174).value = 821
sysvar(175).Name = "mkshell"
sysvar(175).value = 822
sysvar(176).Name = "shell"
sysvar(176).value = 823
sysvar(177).Name = "strvenom"
sysvar(177).value = 824
sysvar(178).Name = "venom"
sysvar(178).value = 825
sysvar(179).Name = "strpoison"
sysvar(179).value = 826
sysvar(180).Name = "mkpoison"
sysvar(180).value = 826
sysvar(181).Name = "poison"
sysvar(181).value = 827
sysvar(182).Name = "waste"
sysvar(182).value = 828
sysvar(183).Name = "pwaste"
sysvar(183).value = 829
sysvar(184).Name = "sharenrg"
sysvar(184).value = 830
sysvar(185).Name = "sharewaste"
sysvar(185).value = 831
sysvar(186).Name = "shareshell"
sysvar(186).value = 832
sysvar(187).Name = "shareslime"
sysvar(187).value = 833
sysvar(188).Name = "ploc"
sysvar(188).value = 834
sysvar(189).Name = "vloc"
sysvar(189).value = 835
sysvar(190).Name = "venval"
sysvar(190).value = 836
sysvar(191).Name = "paralyzed"
sysvar(191).value = 837
sysvar(192).Name = "poisoned"
sysvar(192).value = 838
sysvar(193).Name = "backshot"
sysvar(193).value = 900
sysvar(194).Name = "aimshoot"
sysvar(194).value = 901
sysvar(195).Name = "eyef"
sysvar(195).value = 510
sysvar(196).Name = "focuseye"
sysvar(196).value = 511
sysvar(197).Name = "eye1dir"
sysvar(197).value = 521
sysvar(198).Name = "eye2dir"
sysvar(198).value = 522
sysvar(199).Name = "eye3dir"
sysvar(199).value = 523
sysvar(200).Name = "eye4dir"
sysvar(200).value = 524
sysvar(201).Name = "eye5dir"
sysvar(201).value = 525
sysvar(202).Name = "eye6dir"
sysvar(202).value = 526
sysvar(203).Name = "eye7dir"
sysvar(203).value = 527
sysvar(204).Name = "eye8dir"
sysvar(204).value = 528
sysvar(205).Name = "eye9dir"
sysvar(205).value = 529
sysvar(206).Name = "eye1width"
sysvar(206).value = 531
sysvar(207).Name = "eye2width"
sysvar(207).value = 532
sysvar(208).Name = "eye3width"
sysvar(208).value = 533
sysvar(209).Name = "eye4width"
sysvar(209).value = 534
sysvar(210).Name = "eye5width"
sysvar(210).value = 535
sysvar(211).Name = "eye6width"
sysvar(211).value = 536
sysvar(212).Name = "eye7width"
sysvar(212).value = 537
sysvar(213).Name = "eye8width"
sysvar(213).value = 538
sysvar(214).Name = "eye9width"
sysvar(214).value = 539
sysvar(215).Name = "reftype"
sysvar(215).value = 685
sysvar(216).Name = "totalbots"
sysvar(216).value = 401
sysvar(217).Name = "totalmyspecies"
sysvar(217).value = 402
sysvar(218).Name = "out6"
sysvar(218).value = 805
sysvar(219).Name = "out7"
sysvar(219).value = 806
sysvar(220).Name = "out8"
sysvar(220).value = 807
sysvar(221).Name = "out9"
sysvar(221).value = 808
sysvar(222).Name = "out10"
sysvar(222).value = 815
sysvar(223).Name = "in6"
sysvar(223).value = 816
sysvar(224).Name = "in7"
sysvar(224).value = 817
sysvar(225).Name = "in8"
sysvar(225).value = 818
sysvar(226).Name = "in9"
sysvar(226).value = 819
sysvar(227).Name = "in10"
sysvar(227).value = 820