OpenArena Message Boards

OpenArena Contributions => Idea pit => Topic started by: Neon_Knight on June 04, 2019, 02:10:00 PM



Title: Bot (AI player) editor and generator
Post by: Neon_Knight on June 04, 2019, 02:10:00 PM
So, here's the situation:

OA/Q3 bots have quite the amount of attributes. And if that isn't enough, different skill levels may request different values for each attribute (for example, in skill 1 a bot plays like a noob, never uses weaponjumps and seldom uses the grapple, while in skill 5 it plays like a pro and practically uses weaponjumping and grappling in order to move across the map). Also there are up to three values per weapon (personal preference, accuracy and -for projectile-based weapons- skill). With that amount of values, it would be a good idea to have a bot generator.

In order to make the tool simple and easy to use, it should request only two values per attribute, one expected when skill=1 (the "minimum", which in some cases would be the "maximum") and another expected when skill=5 (vice-versa). Values for skills 2, 3 and 4 should be calculated based in those two peaks. That way the bot would provide a better challenge depending on the chosen level of difficulty. Weapon and item weights (preferences) should be implemented independently from these attributes, as those remain constant throughout skills 1-5. Finally, for the chatlines, that may require a different generator.

Leaving this before I start to think about it more often. And because someone surely have better ideas.

PD: BoomBox is Windows-only and requires installation, so there should be a better, multiplatform alternative.


Title: Re: Bot (AI player) editor and generator
Post by: fromhell on June 04, 2019, 04:43:09 PM
When I thought about this idea some months ago it would be within UI3 but i'm not too sure about writing .c files it can't do a pure check given that ease...


I do find making individual bot .c files a little tedious and would rather make one set of sliders and have the other skills modulate from that...


Title: Re: Bot (AI player) editor and generator
Post by: andrewj on June 05, 2019, 04:51:10 AM
When I thought about this idea some months ago it would be within UI3 but i'm not too sure about writing .c files it can't do a pure check given that ease...
If you're talking about an in-game editor, then you could skip the .c files and send the bot characteristics directly from client to the server via some new command(s) implemented in the game qvm.

Quote from: Neon_Knight
In order to make the tool simple and easy to use, it should request only two values per attribute, one expected when skill=1 (the "minimum", which in some cases would be the "maximum") and another expected when skill=5 (vice-versa).
The current bots already skip skills 2 and 3, they don't exist in the .c files, they are interpolated from skills 1 and 4.  You could in theory skip skill 4 too and just interpolate between 1 and 5 -- see BotLoadCharacter() function in game/ai_char.c