How to use standard c libraries in a mod

I am new to modding but have started to play around with creating a simple mod and having some success

However I tried to add an external c file to the project but this file use the c standard libraries such as

#include <stdbool.h>
#include <stdint.h>

Reading VM Considerations in q_shared.h it seems to imply its not possible for the VM to use them, however it is in the server?

Is it fair to say its possible to use modern/standard c libraries on the server but not the game? so its easier to work with?


game code (not the engine itself, but the rules for eg baseq3) operates in the quake (3) virtual machine, it intentionally cannot work outside of that. That’s my understanding of the situation, if that’s the problem you’re running into. A developer more familiar with what you’re doing will have a better answer.

(Unrelatedly but as a reminder, if you use the Quake 3 source code, or any Quake or GPL’d engine, you must make your changes to the code available on request or more ideally on github or another public source repository. You also cannot distribute the Quake 1,2, or 3 game data, but you can give people money to buy it or a gift copy from Steam or gog)

Thanks for the clarification, yes that makes sense, I did want to display notifications to the user such as messages images from the esports event sponsor inside the game but getting a http request let alone web image display to work seems out of my league in the QVM

However as far as messages are concerned it seems to make sense to do the custom https requests on the server and send messages to the client from the server, I still have no clue about rendering external images lol

And I understand the liscencing thanks for the clarification!

So if I make a mod I just need to make my mod code public? And then ask users to buy quake on steam to ad the game data to the mode/ioquake3 build themselves?

People only need to buy the Quake 3 game if your mod uses Quake 3 data and/or the mod SDK license (and is compiled with pre-source code release/mod SDK tools, and uses nothing from ioquake3 or other GPL source. Hire a lawyer, this is not legal advice) The Quake 3 mod sdk was what was available to developers before the complete engine source code was released, the complete source code release included the baseq3 and missionpack game code.