The Scripting module provides access to 3 different toolsets:

  • EMS Runtime Scripting - tools that allow EnergyPlus simulations to be customised so the performance of innovative systems can be assessed or custom outputs generated. 
  • C# Scripting - tools that allow you to write C# code to modify the model, simulations and results at key points in the program execution. An extensive API is provided giving you the same deep access to the program and model data that DesignBuilder developers have.
  • Python Scripting, similar to the C# scripting tools but using the Python scripting language. 

EMS Runtime Scripting

Key features

The integrated EMS environment provides all of the required sensors, actuators, variables, outputs etc in easy to use dialogs. The facilties provided help to make the script writing process straightforward and accessible for any energy modeller with a little coding knowledge. EMS scripts are included in the EnergyPlus IDF input file and execute very quickly at runtime. EMS scripting productivity features include:

  • A range of DesignBuilder extensions to the standard EMS syntax allow fully portable scripts to be written. This means that a script written for one project can be used on other projects or even shared with other users on the public script repository.
  • Read building, zone or surface settings from the DesignBuilder model to populate data within the script.
  • Load fully formed actuator, sensor, variable, output statements from easy to use dialogs.
  • Colour syntax highlighting in the scripting window helps with readability.


Some example EMS applications include:

  • Precision control over simulated behaviour for HVAC, natural ventilation, glazing and lighting systems. E.g. you can use EMS to add manufacturer control logic to equipment such as heat pumps or override default EnergyPlus control linkage between economisers and heat recovery.
  • Custom shading controls to model advanced facade systems such as multi-state electrochromic and thermochromic glazing.
  • Linking one system with another (e.g. link earth tube or solar preheat zone to HVAC inlet).
  • Advanced control of natural ventilation actuators based on CO2 or moisture levels within the building.
  • Create your own custom outputs not normally provided by EnergyPlus (e.g. CIBSE TM52 outputs).
  • Dialogs list 1000s of standard built-in EnergyPlus outputs for selection.
  • Researching new building systems or the impact of non-standard occupant behaviour patterns.

EMS is ideal for researchers and more advanced modellers looking to assess the performance of innovative systems that have not yet found their way into the standard list of EnergyPlus capabilities.

C# Scripting

The C# scripting tools allow you to write standard C# code to process and modify the model, simulation inputs and results at key points in the program execution. An extensive API is provided giving you the same deep access to the program and model data that DesignBuilder developers have.


Some example C# scripting applications include:

  • Advanced analysis and optimisation of innovative systems by setting up custom design variables for optimisation, sensitivity and parametric analysis studies.
  • Model EnergyPlus component types not yet supported by the DesignBuilder GUI by modifying the standard EnergyPlus IDF input file generated by DesignBuilder. Additional IDF can be included and standard IDF swapped out and replaced with custom changes.
  • Create your own custom reports based on model data and/or simulation outputs.


Python Scripting

The Python scripting tools allow you to write Python code to modify the simulation inputs and results at key points in the program execution. Access to the API in Python scripts will be included from DesignBuilder v7.



Scripting is included in the Engineering Plus and Engineering Pro packages.


The EMS part of the Scripting module also requires the Simulation module.

“DesignBuilder’s Energy Management System (EMS) functionality was used to optimize the performance of a low-temperature chilled water plant serving a suite of operating rooms (ORs). As a result of this study, the client was able to identify a potential controls adjustment that would result in an annual cost savings of up to $20,000.”
Michael Sweeney

Get Started with DesignBuilder for Free

Find out for yourself why so many companies and universities choose DesignBuilder

Contact Us

  • DesignBuilder Software Ltd
    Stroud House
    Russell Street
    Stroud, Gloucs
    GL5 3AN
  • +44 (0) 1453 755500