You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The start-up protocol was reworked in #49 and #48 to use agent_id instead of the multi-purpose spawn_id. The agent_id allows us to bind processes to bots/scripts without relying on core to start the bot/script process with a RLBOT_SPAWN_ID env var. We decided to keep spawn_id as a concept due to their usefulness internally. However, spawn_ids are still used by bot processes in the current implementation (Bots know their spawn_id since it is passed to them in the ControllableInfoTeam message). Externally spawn_ids are used for:
Bots find their in-game name (e.g. "Nexto (2)") by comparing their spawn id to bots in the match settings.
The SetLoadout message uses spawn_id.
Both of these can be replaced with better alternatives:
The bots are passed their in-game name in ControllableInfo instead.
The SetLoadout message use game packet index instead.
With these changes, ControllableInfo do not need to include spawn_id anymore. Additionally, spawn_id also appears in the PlayerConfiguration and ScriptConfiguration, but with the above changes I don't think that is necessary anymore either. Let me know if I am wrong on that.
The text was updated successfully, but these errors were encountered:
spawn_id still has applications for bot devs, with it being a unique identifier for bots. I don't think it should be removed from GamePacket even if those other changes go through.
It's not unique between matches (might be helpful for custom match managers that control custom game modes) & between scripts and bots. This gave me significant headache in core when I tried to remove spawn ids completely.
Sure, we can change SetLoadout to take the the index (can be converted to spawn id internally by core) and add the process's name to ControllableInfo - not sure how hard that latter one will be to implement, might be tricky or trivial I forgot when that info in congregated - but I'm against removing it from GamePacket
The start-up protocol was reworked in #49 and #48 to use
agent_id
instead of the multi-purposespawn_id
. Theagent_id
allows us to bind processes to bots/scripts without relying on core to start the bot/script process with aRLBOT_SPAWN_ID
env var. We decided to keepspawn_id
as a concept due to their usefulness internally. However,spawn_id
s are still used by bot processes in the current implementation (Bots know theirspawn_id
since it is passed to them in theControllableInfoTeam
message). Externallyspawn_ids
are used for:SetLoadout
message usesspawn_id
.Both of these can be replaced with better alternatives:
ControllableInfo
instead.SetLoadout
message use game packet index instead.With these changes,
ControllableInfo
do not need to includespawn_id
anymore. Additionally,spawn_id
also appears in thePlayerConfiguration
andScriptConfiguration
, but with the above changes I don't think that is necessary anymore either. Let me know if I am wrong on that.The text was updated successfully, but these errors were encountered: