Difference between revisions of "Commshare"
Line 18: | Line 18: | ||
= Privileges = | = Privileges = | ||
− | All members may accept, decline, or issue invites. Only the squad leader may kick anyone | + | All members may accept, decline, or issue invites. Only the squad leader may kick anyone. |
− | |||
− | |||
= Developing = | = Developing = |
Revision as of 17:18, 21 January 2017
Contents
Overview
Commshare (or Command Share) is an alpha feature. Players who engage in Commsharing are assigned to a squad, which functions as if all the members of the squad were one player. Each member assigned to a squad adds their income and units to the squad.
Overview of modes
Commshare has three modes of operation:
- All mode
All players are merged at game start (specifically ~166ms into the game). Nobody may unmerge or kick anyone at any time.
- Invite mode (Default)
To merge with another player, you must first both agree to it. The player who invites the other first becomes the 'squad leader' who acts as the representative of the squad. Squad leaders can kick anyone for any reason at any time. They will receive their units back upon getting kicked, however. You may also leave a squad at any time as well. Issuing an invite is simple: Press H then click
- None
No commsharing is allowed. No commshare commands will be responded to.
Privileges
All members may accept, decline, or issue invites. Only the squad leader may kick anyone.
Developing
Commands to commshare should be issued using SendLuaRulesMsg with the following string:
sharemode <command> <param>
This is not case sensitive. The following are valid commands:
Command: | Param: | Purpose: |
---|---|---|
Accept | playerID | Accepts an invite from playerID. |
Decline | playerID | Declines an invite from playerID. |
Invite | playerID | Issues an invite to playerID. |
Kick | playerID | Forces playerID to unmerge, requires teamleader. |
Remerge | None | Causes you to remerge, if you were disconnected/kick from game. |
Unmerge | None | Causes you to unmerge. |
TeamRulesParam: Getting invites
Invites are stored in TeamRulesParam as private data. It is stored as if it was an ordered table.
Param: | Info: | Notes: |
---|---|---|
commshare_invitecount | # of invites | Get this first, then do a for i=1,commshare_invitecount loop. |
"commshare_invite_" .. i .."_id" | ID of the player who sent the invite | |
"commshare_invite_" .. i .."_timeleft" | Time remaining on this invite | You must check if this is different than last second's count to see if it's dead. |