Page 1 of 2

Widget request: Ingame Alliances

Posted: 29 Mar 2008, 18:42
by Auswaschbar
Hello all,

since revision 5624 its possible to ally and unally others ingame if its specified in the gamesetupscript with "FixedAllies" which defaults to true. If this is set to false each Allyteam can made an alliance with another Allyteam, so units won't attack each other, instead they can repair etc.
I made the following commands to do this:
> ally x
> unally x
Because typing "/ally x" or "/unally x" every time is not that user friendly, it would be great if someone who is interested could write a pretty lua widget to make this.

Thanks

Re: Widget request: Ingame Alliances

Posted: 30 Mar 2008, 13:07
by Tobi
Auswaschbar wrote:if its specified in the gamesetupscript with "FixedAllies" which defaults to true
Is this documented in Documentation/Spring start.txt already?

If not could you do so, then at least the only piece of documentation we have keeps up to date ;-)

Nice it's finally in some way possible to ally/unally btw :-)

Re: Widget request: Ingame Alliances

Posted: 30 Mar 2008, 13:46
by MelTraX
Could you maybe change the style of the command to match other commands?

For example "/ally x [0|1]" so "/ally x" would toggle, 0 would unally and 1 would ally.

If you do, I can easily add a toggle functionality to IceUIs player info window.. Does the command output anything so that the other player knows I want an alliance with him? Do I have a way (other than parsing script.txt) to find out if FixedAllies has been set?

Re: Widget request: Ingame Alliances

Posted: 31 Mar 2008, 13:04
by Auswaschbar
MelTraX wrote:Could you maybe change the style of the command to match other commands?

For example "/ally x [0|1]" so "/ally x" would toggle, 0 would unally and 1 would ally.
I have changed it to "ally x [0|1]". "ally x" does nothing because I don't think its a good idea (safety).
MelTraX wrote:Does the command output anything so that the other player knows I want an alliance with him? Do I have a way (other than parsing script.txt) to find out if FixedAllies has been set?
It doesn't output anything. In the playerlist the "E" will change to "E+" if you have allied him. But don't forget that teams are not symmetric, so with "E+" his units can still attack the player's.

Re: Widget request: Ingame Alliances

Posted: 31 Mar 2008, 13:20
by lurker
For extra credit, make the widget also have an alliance offer mode that will synchronize the alliance start between two people and automatically cancel when the other person drops.

Re: Widget request: Ingame Alliances

Posted: 31 Mar 2008, 13:39
by Auswaschbar
I have hidden the alliance states of the other players because I found it offers some nice player-to-player interactions and increases the communicational aspect of ingame diplomacy.

Re: Widget request: Ingame Alliances

Posted: 01 Apr 2008, 13:17
by Acidd_UK
Auswaschbar wrote:I have changed it to "ally x [0|1]". "ally x" does nothing because I don't think its a good idea (safety).
You need to learn to trust other developers/players. If they do something stupid then that's not your fault but not letting them try to do something clever is bad imho...

Re: Widget request: Ingame Alliances

Posted: 01 Apr 2008, 13:50
by KDR_11k
Auswaschbar wrote:I have hidden the alliance states of the other players because I found it offers some nice player-to-player interactions and increases the communicational aspect of ingame diplomacy.
You can't "PM" a player ingame tho so to tell the other guy that you want to ally you have to use public chat.

Re: Widget request: Ingame Alliances

Posted: 01 Apr 2008, 14:41
by Forboding Angel
ally with him and then use ally chat :twisted:

Re: Widget request: Ingame Alliances

Posted: 01 Apr 2008, 14:46
by Auswaschbar
KDR_11k wrote:
Auswaschbar wrote:I have hidden the alliance states of the other players because I found it offers some nice player-to-player interactions and increases the communicational aspect of ingame diplomacy.
You can't "PM" a player ingame tho so to tell the other guy that you want to ally you have to use public chat.
Thats what I'm currently doing.

Re: Widget request: Ingame Alliances

Posted: 01 Apr 2008, 16:17
by KDR_11k
Make sure all players on the respective allyteams see that chat so you can't use the ingame chat to relay info to the enemy (for griefing).

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 00:27
by Auswaschbar
KDR_11k wrote:Make sure all players on the respective allyteams see that chat so you can't use the ingame chat to relay info to the enemy (for griefing).
I thought it would be sufficient to restrict it for spectators only.

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 14:12
by KDR_11k
Auswaschbar wrote:
KDR_11k wrote:Make sure all players on the respective allyteams see that chat so you can't use the ingame chat to relay info to the enemy (for griefing).
I thought it would be sufficient to restrict it for spectators only.
I disagree, what one player on your allyteam tells others is the business of the whole alliance. Especially when he's talking to people not on the allyteam.

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 14:31
by Auswaschbar
KDR_11k wrote:
Auswaschbar wrote:
KDR_11k wrote:Make sure all players on the respective allyteams see that chat so you can't use the ingame chat to relay info to the enemy (for griefing).
I thought it would be sufficient to restrict it for spectators only.
I disagree, what one player on your allyteam tells others is the business of the whole alliance. Especially when he's talking to people not on the allyteam.
A private message is not a private message when the whole allyteam can see it.
If you are afraid someone will tell secrets to the other team then you:
- play with the wrong people
- should be more worried about teamspeak or other 3rd party apps then about PM's
- can still watch the demo afterwards to check if he really did

Furthermore I never saw problems with ingame PM's in any other strategy game.

PS.: Added a FixedAllies-Callout

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 15:24
by KDR_11k
PMs make sense in a FFA where you want to cooperate with someone against someone else but in games with two teams there is no reason to have directed messages. PMs should be for communicating to some enemies but not all (and even then the target allyteam should see the message so the receipent won't have to relay it to his team). There is nothing you can say that should remain hidden from your allyteam (dynamic alliances are something different, if you want to break one of those, fine but if you are in an allyteam that cannot be broken then you have no business hiding things from your allies).

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 16:05
by Vadi
PM's are good for helping out newbies also.

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 16:14
by Jamuk426
You're forgetting that the ingame alliances are temporary... You may want to talk to your team and agree to force someone out of the alliance, try to convince an enemy to betray their ally, ect. If you eliminate that you limit the ability to use deceptive tactics like this.

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 19:45
by j5mello
KDR isn't talking about temporary alliances he is talking about starting a game with set teams 1 and 2 and having those groupings be able to see PM traffic...

If you start/launch a team game you don't want one of your allies switching halfway thru because he thinks you are gonna lose or his friend is on the other team. If you allow that whats the point in having teams...

now that its been brought up, a lock teams option would be handy to prevent stuff like that.
Don't do it as an ingame .command it will only be a pain.

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 19:50
by Auswaschbar
j5mello wrote:KDR isn't talking about temporary alliances he is talking about starting a game with set teams 1 and 2 and having those groupings be able to see PM traffic...

If you start/launch a team game you don't want one of your allies switching halfway thru because he thinks you are gonna lose or his friend is on the other team. If you allow that whats the point in having teams...

now that its been brought up, a lock teams option would be handy to prevent stuff like that.
Don't do it as an ingame .command it will only be a pain.
As mentioned in the OP teams are locked by default, you need to enable ingame-alliances via startscript. But how is this related to PM's?

Re: Widget request: Ingame Alliances

Posted: 02 Apr 2008, 20:15
by CarRepairer
Is an ingame alliance a permanent alliance with shared victory or is it just a ceasefire? I would want to make ceasefires with other allianceteams in an FFA where they don't see my LOS, but our units just don't attack eachother, and we still can't win the game until one of us is dead.

Ceasefire would be better wording than Ally to disginguish the two concepts.

I am still unclear as to whether you ally (ceasefire with) a playername or an allyteam number (what is X?). If it's playername the widget could coordinate when one person on an allyteam ceasefires with someone on another allyteam, both allyteams ceasefire with everyone else. Either way, it is a welcome feature. I'd put it in CA so that everyone in the battle would have the widget and it can synchronize ceasefire agreements.