Skip to content

Korwiin/disable_kneeboard_maps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DCS Mod — Disable Kneeboard Map Pages

Suppresses all automatic kneeboard page generation built into the DCS kneeboard system, leaving the kneeboard clear for custom pages only.


What It Disables

Auto-generated page type Source Override file After mod
Per-waypoint map page avKneeboard C++ device/init.lua Removed
Fixed overview pages (40/80/160nm) avKneeboard C++ device/init.lua Removed
Per-waypoint text note page avKneeboard C++ device/init.lua Removed
Flight plan route overview page ccKneeboard C++ indicator/init.lua Removed

Custom pages placed in Saved Games\DCS\KNEEBOARD\ are not affected and continue to load normally.


Installation via OVGME (recommended)

OVGME is the standard tool for safely swapping DCS game files. It backs up originals before applying and can revert cleanly.

Setup (one-time)

  1. Install OVGME and create a configuration for your DCS install (root = D:\DCS World\ or wherever DCS is installed).
  2. Set your mods folder to wherever you store OVGME mod packages (e.g. D:\OVGME_Mods\DCS\).

Install this mod

  1. Copy the disable_kneeboard_maps folder into your OVGME mods folder:

    <OVGME mods folder>\
    └── disable_kneeboard_maps\
        └── Scripts\
            └── Aircrafts\
                └── _Common\
                    └── Cockpit\
                        └── KNEEBOARD\
                            ├── device\
                            │   └── init.lua
                            └── indicator\
                                └── init.lua
    

    The folder structure mirrors the DCS install root — OVGME merges it on top of the game directory.

  2. In OVGME, enable disable_kneeboard_maps. OVGME backs up both original files and replaces them with this mod's versions.

  3. Launch DCS. Fly any aircraft and open the kneeboard — waypoint map pages should be absent.

To disable without uninstalling: toggle the mod off in OVGME. The original is restored automatically.

After a DCS update

DCS updates overwrite game files, which will silently remove this mod. After each update:

  1. In OVGME, disable and re-enable the mod to reapply it (OVGME detects the change).

Alternative: Direct file edit

If you prefer not to use OVGME, edit both files manually in your DCS install.

Note: These edits will be lost on every DCS update. OVGME handles that automatically.

File 1 — device/init.lua

DCS World\Scripts\Aircrafts\_Common\Cockpit\KNEEBOARD\device\init.lua
  1. Back it up as init.lua.original.
  2. Append these four lines to the end of the file:
    function on_waypoint_adding(x, z, course) end
    function generate_maps() map_pages = {} end
    note_generate_template     = nil
    number_of_additional_pages = 0
  3. Save.

File 2 — indicator/init.lua

DCS World\Scripts\Aircrafts\_Common\Cockpit\KNEEBOARD\indicator\init.lua
  1. Back it up as init.lua.original.
  2. Find this line near the top:
    pages = {{BASE,MAP,OVERLAY}}
    Change it to:
    pages = {}
  3. Find and delete (or comment out) the line immediately after:
    GetSelf():Add_Map_Page(MAP,LockOn_Options.common_script_path.."KNEEBOARD/indicator/map_page.lua")
  4. Save.

Relaunch DCS. To restore either file: delete the edited version and rename .original back to init.lua.


How It Works

device/init.lua runs in the avKneeboard C++ device context. The C++ driver calls two Lua callbacks after reading the mission flight plan:

  • on_waypoint_adding(x, z, course) — called once per waypoint; normally adds an entry to the map_pages table. This mod replaces it with an empty function.
  • generate_maps() — called after all waypoints; normally appends three fixed overview pages. This mod replaces it and sets map_pages = {} so avKneeboard finds nothing to render.

Setting note_generate_template = nil suppresses the per-waypoint text note pages, which are generated by avKneeboard evaluating that Lua string template for each waypoint.

Lua's function definition is an assignment — redefining a function later in the same file overwrites the earlier definition. The override file preserves all original setup code so avKneeboard still receives the chart_defaults, need_to_be_closed, and other variables it may read before calling the callbacks.


Why not a DCS Tech Mod?

DCS's tech mod API (declare_plugin in entry.lua) only exposes mount functions for asset paths: mount_vfs_model_path, mount_vfs_texture_path, mount_vfs_liveries_path, mount_vfs_sound_path. None of these reach Scripts/Aircrafts/. There is no mount_vfs_path or equivalent for cockpit scripts — that function does not exist.

OVGME operates at the OS level (file copy/restore) so it can override any game file, including cockpit scripts.


Compatibility

  • DCS 2.x (tested against source extracted May 2026)
  • All aircraft that use the _Common kneeboard device (most flyable modules)
  • Aircraft with custom kneeboard implementations may not be affected

Source

Reverse-engineered from Scripts/Aircrafts/_Common/Cockpit/KNEEBOARD/ in the DCS install. See the companion project Burning Skies Kneeboard for full API notes.

About

OVGME mod for DCS World: suppresses all auto-generated kneeboard map pages

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages