This is what i saw in botlib.h. If anyone can see a way of calling this function it would be great. I can get the data it’s just gonna take a bit of work to do with the other fuctions available to me. Map load time will be long also.
//bot AI library exported functions
typedef struct botlib_import_s
{
//print messages from the bot library
void (QDECL *Print)(int type, char *fmt, …);
//trace a bbox through the world
void (*Trace)(bsp_trace_t *trace, vec3_t start, vec3_t mins, vec3_t maxs, vec3_t end, int passent, int contentmask);
//trace a bbox against a specific entity
void (*EntityTrace)(bsp_trace_t *trace, vec3_t start, vec3_t mins, vec3_t maxs, vec3_t end, int entnum, int contentmask);
//retrieve the contents at the given point
int (*PointContents)(vec3_t point);
//check if the point is in potential visible sight
int (*inPVS)(vec3_t p1, vec3_t p2);
//retrieve the BSP entity data lump
char *(*BSPEntityData)(void);
//
void (*BSPModelMinsMaxsOrigin)(int modelnum, vec3_t angles, vec3_t mins, vec3_t maxs, vec3_t origin);
//send a bot client command
void (*BotClientCommand)(int client, char *command);
//memory allocation
void *(*GetMemory)(int size);
void (*FreeMemory)(void *ptr);
void (*FreeZoneMemory)(void);
void *(*HunkAlloc)(int size);
//file system access
int (*FS_FOpenFile)( const char *qpath, fileHandle_t *file, fsMode_t mode );
int (*FS_Read)( void *buffer, int len, fileHandle_t f );
int (*FS_Write)( const void *buffer, int len, fileHandle_t f );
void (*FS_FCloseFile)( fileHandle_t f );
int (*FS_Seek)( fileHandle_t f, long offset, int origin );
//debug visualisation stuff
int (*DebugLineCreate)(void);
void (*DebugLineDelete)(int line);
void (*DebugLineShow)(int line, vec3_t start, vec3_t end, int color);
//
int (*DebugPolygonCreate)(int color, int numPoints, vec3_t *points);
bot_debugpoly_t* (*DebugPolygonGetFree)(void);
void (*DebugPolygonDelete)(int id);
void (*DebugPolygonDeletePointer)(bot_debugpoly_t* pPoly);
//
// Ridah, Cast AI stuff
qboolean (*BotVisibleFromPos)( vec3_t srcpos, int srcnum, vec3_t destpos, int destnum, qboolean updateVisPos );
qboolean (*BotCheckAttackAtPos)( int entnum, int enemy, vec3_t pos, qboolean ducking, qboolean allowHitWorld);
// done.
// Gordon: ability for botlib to check for singleplayer
// Arnout: removed again, botlibsetup already has a parameter 'singleplayer'
//qboolean (*BotGameIsSinglePlayer) ( void );
// Gordon: direct hookup into rendering, stop using this silly debugpoly faff
void (*BotDrawPolygon)(int color, int numPoints, float *points);
} botlib_import_t;
Thanks for all your input and happy moddding to all
rtt