RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

bananabench-async Referencebananabench-csv Referencebananabench-json Referencebananabench-print Referencebananabench-xml Referencebananabench Referencebenchphysics ReferenceBeamConsole Folder Overviewjson-performance Referencemain Referenceresave-pcs Referenceservertests Referencesimpleload Referencesimtest Referencetest_dyncol Referencetest Referenceunittests Reference

UI

Resources

BeamNG Game Engine Lua Cheat SheetGE Developer RecipesMCP Server Setup

// RLS.STUDIOS=true

Premium Mods for BeamNG.drive. Career systems, custom vehicles, and immersive gameplay experiences.

Index

HomeProjectsPatreon

Socials

DiscordPatreon (RLS)Patreon (Vehicles)

© 2026 RLS Studios. All rights reserved.

Modding since 2024

API Referenceconsole

bananabench-xml Reference

Script defined in `lua/console/bananabench-xml.lua`. Runs bananabench on a predefined set of vehicles and exports results as XML, suitable for CI/CD performance reporting.

Script defined in lua/console/bananabench-xml.lua. Runs bananabench on a predefined set of vehicles and exports results as XML, suitable for CI/CD performance reporting.


Functions/Exports

XML (global table/class)

Simple XML builder with metatable-based OOP.

  • XML.create() - creates new XML node
  • xml:addChild(child) - adds child node
  • xml:encode() - returns full XML string with declaration
  • xml:toString(indent) - recursive serialization with indentation

serializeXmlToFile(filename, obj) (local)

Writes XML object to file.

xh(name, attribs) (local)

Helper to create an XML node with name and attributes in one call.

writeXML(res, filename) (local)

Converts bananabench results into structured XML report format with:

  • <report> root with name, category, time
  • <test> per vehicle (WithDynamicCollision / WithoutDynamicCollision variants)
  • <result> containing <success>, <performance>, <executiontime>, <compiletime>, <metrics>

Predefined Test Vehicles

barstow, burnside, etki, fullsize, moonhawk, pessima, pickup, pigeon, pressure_ball

Usage

beamng -console lua/console/bananabench-xml.lua
# Outputs: bananabench.xml

Internal Notes

  • Requires lua/console/bananabench module
  • XML format designed for CI performance dashboards (category="performance")
  • Metrics include: MBeams/s, % realtime, max MBeams/s, max MBeams vehicle count
  • Error log section is commented out (logcache not populated in current version)
  • Output file hardcoded to bananabench.xml

bananabench-print Reference

Script defined in `lua/console/bananabench-print.lua`. Simplest bananabench runner - executes the benchmark and prints results to console only.

bananabench Reference

Module defined in `lua/console/bananabench.lua`. Core physics benchmarking module that measures beam simulation throughput (MBeams/s) and real-time performance percentage across multiple vehicles.

On this page

Functions/ExportsXML (global table/class)serializeXmlToFile(filename, obj) (local)xh(name, attribs) (local)writeXML(res, filename) (local)Predefined Test VehiclesUsageInternal Notes