RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Bananabench AsyncBananabench CSVBananabench JSONBananabench PrintBananabench XMLBananabenchPhysics BenchmarkBeamConsole Folder OverviewJSON PerformanceConsole MainResave Parts ConfigsServer TestsSimple LoadSimulation TestDynamic Collision TestMain Development TestUnit Tests

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

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

See Also

  • BeamConsole Folder Overview - Directory overview
  • bananabench-async Reference - Related reference
  • bananabench-csv Reference - Related reference
  • bananabench-json Reference - Related reference
  • Console Commands Guide - Guide

Bananabench Print

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

Bananabench

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 NotesSee Also