As part of a university project, I'd like to connect certain events like

  • cargo unloaded
  • cargo transfered
  • money received

with a custom made service / send HTTP Web Requests from within OpenTTD. I'm still rather confused about the languages used to create newgrfs. As far as I understand, for NewGRFs, the language of choice is NML which is a custom built language built ontop of python.

My questions now are

  • Is my plan doable?
  • Is it possible to use a well-known language to connect to openttd such as C, C++ or Python?
  • this might be better off on so, but go check it out first don't 100% trust me on that
    – Penguin
    Mar 12, 2021 at 21:23

1 Answer 1


What you want isn't possible without extensive modification to OpenTTD. NML is a domain-specific language built on top of GRF, not Python. It doesn't have any functionality that the underlying GRF language doesn't, and GRF is designed around the needs of a mid-1990s single-player game.

Your best bet is to add your functionality to OpenTTD itself where you can work in C++, rather than trying to modify a language that was never meant to do anything even remotely like what you want.

  • Thanks a lot for the clarification. In that case, I'm gonna try and fork it. Best wishes :) Mar 11, 2021 at 12:06

Not the answer you're looking for? Browse other questions tagged .