Ballistic Zen

Ballistic Zen

Not enough ratings
Collectable Map
By lightwo
Complete collectable map with tables, featuring IDs and more!
   
Award
Favorite
Favorited
Unfavorite
Guide Moved!
This guide has been moved here[blog.lightwo.net]

Read more
World Map and Introduction
World map

Ballistic Zen has 3 types of collectables:
  • Common (3 Respect)
  • Rare/Basic (10 Respect)
  • Hidden (20 Respect)

In this guide, under the section of each region, there is a table that contains IDs of collectables as they are saved in the save file (Saved column). This is how you can track your progress:
  1. Find the save directory:
    • Windows:
      Open Run dialogue with Win+R and paste:
      "%APPDATA%\..\LocalLow\footnotesforthefuture\Ballistic Zen"
    • Linux:
      1. Go to the Steam library directory where the game is installed
      2. Navigate to:
        steamapps/compatdata/1966930/pfx/drive_c/users/steamuser/AppData/LocalLow/footnotesforthefuture/Ballistic Zen
  2. Edit the save file saveData.dat
  3. Scroll down to the "collected" section, which should look like this:
    "collected": [ { "Key": 478786, "Value": true }, { "Key": 441597, "Value": true }, { ... }, ]
    Each "Key" with "Value" equal to true is an unlocked collectable.

    Considering there is no convenient way to know what collectables have not been obtained, one way to determine that is by copying each ID in the Saved column of each table; if searching for it in the save file yields nothing, note it down, and repeat until you reach the final ID.
Residential District
Residential District map

ID
Saved
Screenshots and notes
1
524844
2
505529
3
478786
4
441597
5
395364
6
329416
7
293303
8
310016
9
284063
10
242727
11
12
178147
166255
13
100936
14
100468
15
151944
16
177793
17
210942
18
258722
19
290669
20
367984
21
399684
22
435675
23
24
25
424454
425284
426084
26
345923
27
324516
28
277265
29
227517
Residential District pt. 2
ID
Saved
Screenshots and notes
30
255058
Get a running start on the ramp

Continue along and launch yourself up the following ramp

Jump on the last ramp, but jump off as late as possible!

Wallrun along the wall to the left, but get on its side at the peak of your jump

If you manage to jump across to this wall, make sure to...

...immediately wallrun around to stay as high as possible, and keep your momentum!

If you manage to get here, climb to the taller part of the structure

There's your collectable.

31
411644
Get up to the first level of the building

Wallrun up to the second level

Go along the ledge and jump

Wallrun along the wall...

...and wallrun around to the hole!

Shiny.

Financial District
Financial District map


ID
Saved
Screenshots and notes
32
94711
33
55722
34
102901
35
108836
36
114918
37
145290
38
193908
39
271251
40
309909
41
234318
42
237542
43
272096
44
185739
45
156094
46
216482
47
197226
Get a running start on the first ramp

Jump on the second ramp and leave as late as possible

Wallrun on the straight bit of the wall...

...go around the corner...

...do a 180 (by jumping off the wallrun)!

Go around the corner again

Do another 180

If you're high enough, jump off and climb up; if not, repeat the 180s

Almost there...

Sweet, sweet respect.
48
239760
Get a running start and jump off the small building, or the short wall just behind

Wallrun along the border wall

Wallrun along the passage

Jump off the wallrun to gain height as the passage winds to the side

Jump up onto the passage

It's yours!
Entertainment District
Entertainment District map


ID
Saved
Screenshots and notes
49
324270
50
334485
51
358234
52
375151
53
434420
54
448965
55
489700
56
334619
57
325124
58
323304
59
60
342099
325098
Shrouded District
Shrouded District map


ID
Saved
Screenshots and notes
61
449865
62
400973
Get a running start, start the run like the line A Leap Into Mist

Jump off of the next ramp

Slide your way to the building that is normally wallran to progress the line

Wallrun to it...

...and immediately jump towards and wallrun the first one!

Keep doing this until...

...you reach the top of the first building.

Mission passed! Respect +
Pyramid
Pyramid map


ID
Saved
Screenshots and notes
63
520282
64
490649
65
518749
66
508608
67
499023
68
479986
69
518546
70
488329
71
568595
72
467295
73
563746
74
558955
75
530053
76
462269
77
524426
78
523825
79
493972
80
593217
81
437089
82
555565
83
593996
84
493865
85
468980
86
451263
87
531846
88
480853
89
413885
Raw Data and Other Sorcery
CSV data
GameObject fileID;Transform fileID;order number;save file ID;x;y;z;quality;region 2654;5904;1;524844;126.600006;-1.500001;-509.3464;common;residential 1420;4650;2;505529;148.13;4.0000663;-483.34;rare;residential 2649;5912;3;478786;138.4;0.5000024;-458.3464;common;residential 2664;5897;4;441597;112.600006;6.5;-427;common;residential 1417;4651;5;395364;91.399994;7.500002;-384.6536;basic;residential 2666;5895;6;329416;85.399994;34.499973;-318.1536;common;residential 2653;5909;7;293303;117.534;7.5;-268.724;common;residential 2665;5896;8;310016;222.79001;21;-215.58;common;residential 1418;4653;9;284063;246.4;15.5;-141.3464;basic;residential 1416;4654;10;242727;229.85263;1.5000019;-78;rare;residential 2651;5910;11;178147;115.69;1.4999981;-135.47;common;residential 2667;5892;12;166255;100.54001;1.4999981;-132.41;common;residential 1419;4652;13;100936;53.399994;34.5;-85.653595;rare;residential 2663;5898;14;100468;-3.0899963;22.5;-100.41998;common;residential 2655;5905;15;151944;32.759995;7.5;-148.37;common;residential 1415;4655;16;177793;12.600006;26.499996;-177.3464;basic;residential 2650;5911;17;210942;79.600006;21.5;-195.3464;common;residential 2661;5902;18;258722;151.6;1.5;-209.6536;common;residential 2668;5894;19;290669;58.665955;11.500002;-284.68686;common;residential 2658;5901;20;367984;-5;27.499979;-367.95;common;residential 2662;5899;21;399684;1.8800049;11.499998;-399.68;common;residential 2659;5900;22;435675;-51;5.1200027;-432.68;common;residential 2648;5913;23;424454;-90.38;25.5;-414.72;common;residential 1414;4656;24;425284;-91.4;25.5;-415.3464;basic;residential 2657;5906;25;426084;-92.33;25.5;-415.96;common;residential 2669;5893;26;345923;-136.158;5;-318;common;residential 2660;5903;27;324516;-114.46;23.25;-303.66;common;residential 2652;5908;28;277265;-91.41;44.500008;-261.763;common;residential 2656;5907;29;227517;-60.009995;31.5;-219.46;common;residential 3021;6047;30;255058;76.399994;72.5;-243.3464;hidden;residential 3020;6048;31;411644;138.54001;16.5;-387.63;hidden;residential 2139;4517;32;94711;92;29;-22.5;common;financial 2143;4513;33;55722;51.351906;37.5;-21.632118;common;financial 2142;4512;34;102901;-9.921419;14.500002;102.42127;common;financial 1048;3818;35;108836;17;41.499996;107.5;rare;financial 2144;4511;36;114918;82.5;8.5;80;common;financial 2140;4516;37;145290;140.5;0.50000226;37;common;financial 2137;4518;38;193908;188;7.5;47.5;common;financial 2141;4514;39;271251;263.72058;10;63.468864;common;financial 1050;3816;40;309909;290.3027;24.49998;108.48041;rare;financial 2138;4515;41;234318;204.03976;21.5;115.20721;common;financial 2145;4510;42;237542;143.51028;10;189.29062;common;financial 1051;3815;43;272096;148.5;13.500001;228;rare;financial 2136;4519;44;185739;-15.846729;18.499992;185.06137;common;financial 2135;4520;45;156094;-105;2.5000463;115.5;common;financial 1049;3817;46;216482;-178.6022;2.5000005;122.33481;rare;financial 2265;4818;47;197226;-43.6;38.500015;192.3464;hidden;financial 2266;4817;48;239760;238;33.50003;29;hidden;financial 917;2432;49;324270;125.5;7.500001;299;common;construction 430;1869;50;334485;125;42;310.25;rare;construction 922;2426;51;358234;121.5;-2.4999933;337;common;construction 923;2427;52;375151;139.5;9.499654;348.25;common;construction 919;2428;53;434420;138.5;9.499654;411.75;common;construction 921;2429;54;448965;97.5;22.999653;438.25;common;construction 914;2434;55;489700;74.5;1.5;484;common;construction 918;2431;56;334619;71;-2.499998;327;common;construction 913;2436;57;325124;66.5;38.5;318.25;common;construction 915;2435;58;323304;-80;42.499977;313.25;common;construction 920;2430;59;342099;-74;0.5;334;common;construction 916;2433;60;325098;-71;0.49999952;317.25;common;construction 198;609;61;449865;-437.5;-88.49991;104.75;rare;fogged 402;777;62;400973;-375.66;-73.5;140.21;hidden;fogged 749;2242;63;520282;512.2594;0.5;91.01469;common;pyramid 763;2229;64;490649;477.5252;0.5;112.72304;common;pyramid 750;2241;65;518749;516.75;4.500001;45.5;common;pyramid 755;2235;66;508608;497.75067;5;104.5304;common;pyramid 759;2230;67;499023;490.6839;5;90.849396;common;pyramid 751;2237;68;479986;451.31146;5.5;163.41661;common;pyramid 762;2228;69;518546;502.5;8.500001;128;common;pyramid 744;2248;70;488329;485.25;11.499999;54.75;common;pyramid 758;2232;71;568595;554;14;128;common;pyramid 742;2246;72;467295;456.25;15.500002;101;common;pyramid 752;2236;73;563746;542.3802;17.5;153.73094;common;pyramid 747;2245;74;558955;555.25;19;64.25;common;pyramid 753;2238;75;530053;506.5;20.5;156.25;common;pyramid 746;2244;76;462269;455.25;21.5;80.25;common;pyramid 276;1518;77;524426;519.25;24.5;73.5;rare;pyramid 275;1519;78;523825;503.5;33.5;144.5;rare;pyramid 278;1516;79;493972;462.5;36.5;173.5;rare;pyramid 748;2240;80;593217;578;46;133.5;common;pyramid 756;2234;81;437089;434.89148;51.5;43.772255;common;pyramid 760;2233;82;555565;555.2926;53.5;17.393719;common;pyramid 754;2239;83;593996;586.75;54.500004;92.5;common;pyramid 745;2243;84;493865;457.5;65.5;186;common;pyramid 277;1517;85;468980;467.25;68.5;40.25;rare;pyramid 757;2231;86;451263;425.25;74.50001;151;common;pyramid 743;2247;87;531846;496.75;75.5;190;common;pyramid 761;2227;88;480853;465.35016;107.5;121.11548;common;pyramid 414;1466;89;413885;398.4;107;112.15359;rare;base

Save file IDs
Collectable IDs in the save file are generated using this function within the game:
Mathf.RoundToInt(transform.position.Horizontal().magnitude * 1000);
In math:
Round(1000 *(Root(X^2 + Z^2)))
In awk (error: 411644 is not rounded properly due to double precision rounding of 411643.49):
{printf ("%.0f", 1000 *(sqrt($5^2 + $7^2)))}

Region names
Note: All regions start with main-; the collectable in base region is at the end of the game on Pyramid

Final name
Internal name
Residential District
residential
Financial District
financial
Entertainment District
construction
Shrouded District
fogged
Pyramid
pyramid
Border Walls
base

The map
Top-down map render[drive.google.com] (38 MB)
SVG file[lightwo.net] (saving it requires the map render to be downloaded separately)

Generating SVG
This was accomplished using awk. Note that the final map file had number positions manually adjusted to avoid overlapping text; achieved with Inkscape.

Contents of convert.awk:
# https://stackoverflow.com/a/41032138 BEGIN {print "<svg viewBox=\"0 0 8192 4608\" xmlns=\"http://www.w3.org/2000/svg\">\n" "<style>circle{r:3; stroke-width:1; fill-opacity:0;} text{font-family:monospace; font-weight:bold; stroke-width:0.5; stroke:white;} .common{stroke:lightblue;} .rare{stroke:blue;} .basic{stroke:darkblue;} .hidden{stroke:yellow;}</style>\n" "<image href=\"Map Layout.png\" width=\"8192\" height=\"4608\"/>\n" "<g transform=\"translate(3747 2281) scale(4.265,4.265)\">"} {print "<circle cx=\""$5"\" cy=\""(-$7)"\" id=\""$3"\" r=\"3\" class=\""$8"\"/>" } {print "<text x=\""($5 + 5)"\" y=\""(-$7 + 5)"\">"$3"</text>" } END {print "</g></svg>"}
Run command:
awk -F";" -f convert.awk coords.csv > out.svg

The developer?!
Yes, Alex himself greatly helped in the making of the guide (thank you!). He transcended forth his Bri'ish powers by:
  • Rendering the top-down map and adjusting the world accordingly
  • Revealing the math behind collectable IDs
  • Helping for the points on the map not to resemble a long sausage (X and Z, not X and Y)
  • Eating biscuits loudly