Share undoable moves with allies

Brainstorm ideas of possible additions to the game. Read this before posting!

Moderator: Forum Moderators

Forum rules
Before posting a new idea, you must read the following:
gabba
Inactive Developer
Posts: 129
Joined: January 24th, 2005, 5:08 pm
Location: Quebec

Share undoable moves with allies

Post by gabba »

Update: GSoC is now over and the interface for this whiteboard project is pretty much complete: consider it as being in "beta" state. The networked part hasn't been implemented but is planned as a long-term development.
Just download 1.9.0 to test this out, and head over there for feedback and known issues.

----------------

The latest version of this idea is here, it's my GSoC proposal actually. Right now I'm mainly using this thread as an image repository. Your comments are welcome, but I don't expect having a lot of time to answer them. I'll try to take into account constructive criticism though!

-----------Original text of this post below-----------------
Main idea: Share undoable moves with allies

Currently when playing a coop game (either RPG or more standard multiplayer campaign), there are several things that really irk me when it's not my turn:
  • You wait a long time before seeing anything happening
  • When your ally who's taking his turn finally attacks an enemy or makes another non-undoable move, you have to sit through a delayed replay of his moves. If he already finished his turn, your ally has to wait while you watch this.
  • After a few undoable moves by either allied player, communication is completely out of sync. If you tell your ally, "look, I'm encircling his leader", he has no clue what you're talking about: he doesn't see what you're doing. If your ally asks you "should I move my white mage here to heal you units next turn", you 1) have no clue about which hex "here" is supposed to mean 2) even if you did, you can't adequately counsel him, since you don't see how he positioned his other units
I think the reasonable solution is simply to add an option called Share undoable moves with allies. Both you and your ally need to enable it for it to work. If you both have it enabled, what it does is it shows you your allies' moves exactly as if you were staring at the same screen while he plays his turn. Net effect: you don't wait forever for something to happen, you don't sit through a replay and make others wait in the meanwhile, and you can actually shout to your ally on skype "NO idiot, don't move your white mage there!" before it's too late.

When sharing undoable moves, some mild confusion might happen when you ally undoes a move: if you're not paying attention (after all the unit just changed from "red" movement status to "yellow" or "green" orb), you might think you're witnessing a move instead of an undo. This is why extra visual clues would be needed in that mode, possibly just a red UNDO text that floats up from the unit, or alternate red footsteps symbols that the unit gobbles up backwards as it goes back to its previous location.

For the true "over the shoulder" experience, I think this option should show you everything, down to the attack dialogue your ally gets when he attacks an enemy. This way you can discuss which attack he should use, while you both see the attack stats and odds. Same thing for the recruit and unit upgrade dialogues. All those would make for a more interesting coop experience, and would be especially good for teaching newbs to the game.
Oh yeah, and those chargen menus from Bobs' RPG era and the like would also fall in this category: help your friends choose their class and starting items instead of staring blankly at the screen.

Optional, secondary idea: Share undoable moves with enemies

I don't expect this second idea to be very popular, but the thing is: if the first one is implemented, this one will almost be free to implement. So we might as well discuss it, too.
A "Share undoable moves with enemies" option would simply show your opponents all your moves as you do them, even those that can be undone. It does remove some waiting boredom, like the first option. It would be useful when you want to play chess-style (where a moved piece is a moved piece, no undo), but without fiddling with the scenarios options to disable undo. And contrary to a fixed scenario option, it allows you to still agree on "friendly undos" from time to time: "this was too stupid, can I move it back?" --"Sure, go ahead".
A second use is when you just don't care if the opponent can read your mind by seeing your every move, either because your skill level is greatly superior, or the game is very casual (i.e. you're playing with your younger brother), and you just want to make the game less boring by minimizing the waiting factor.
Sharing undoable moves from enemies would probably make "delay shroud updates" useless, but after all they are somewhat incompatible ideas.

Reaaaally nice. Who's gonna code this :roll: ?

Well... me actually. If the feature is popular enough, I'd be happy to code it. I'm also considering to include it as part of a summer of code proposal for summer 2010: time will tell, I have several project ideas.

BTW, similar ideas were discussed a while ago in a thread I started over there, but I wanted to post the idea in this forum so it gets wider exposure.

Edit: Attaching some images since I'm working on my GSoC proposal wiki page for this and I need some way to store relevent images. As a bonus it gives you an idea of what I'm working on! But obviously those are very early mockups.
Attachments
DoubleAndTripleDigits_overlay.png
How to deal with overlapping paths.
How to deal with overlapping paths.
Experiment with an alternate numbering system for planned moves.
Experiment with an alternate numbering system for planned moves.
Red lines are planned moves for the current player, the blue line is a move planned by his ally. What, assassins don't have ambush? Well, this one does :P.
Red lines are planned moves for the current player, the blue line is a move planned by his ally. What, assassins don't have ambush? Well, this one does :P.
How to adjust the display when the player wants to plan two moves to the same location?
How to adjust the display when the player wants to plan two moves to the same location?
Last edited by gabba on August 27th, 2010, 8:12 am, edited 10 times in total.
Reason: End of GSoC update
User avatar
someone
Posts: 188
Joined: March 13th, 2009, 9:03 pm

Re: Share undoable moves with allies

Post by someone »

This is a great idea!
Net effect: you don't wait forever for something to happen, you don't sit through a replay and make others wait in the meanwhile, and you can actually shout to your ally on skype "NO idiot, don't move your white mage there!" before it's too late.
I've been there so many times. If you can, I'd say go for it. :wink:
Expanding Wesnoth

You are an Arch Mage - You're definitely intelligent, but some people would say you spend too much time inside. The power you have learned, however, is simply unmatched.
gabba
Inactive Developer
Posts: 129
Joined: January 24th, 2005, 5:08 pm
Location: Quebec

Re: Share undoable moves with allies

Post by gabba »

Well at least someone supports my idea :P ! (Thanks someone :) , and sorry, couldn't resist the pun).
Caphriel
Posts: 994
Joined: April 21st, 2008, 4:10 pm

Re: Share undoable moves with allies

Post by Caphriel »

This one doesn't seem to be getting much attention, but out of the three ideas you posted, this one strikes me as the most desirable to implement, because it could be useful in mainline. It would make team games a lot easier to deal with, especially for players who prefer playing with delay shroud in order to protect themselves from misclicks. Labels are useful, but putting a label on every hex you're moving a unit to is time consuming and still feels makeshift, as your teammates have to reference the unit in its current position to see its status.
Noy
Inactive Developer
Posts: 1321
Joined: March 13th, 2005, 3:59 pm

Re: Share undoable moves with allies

Post by Noy »

As noted above, of the three ideas its the most amenable at first glance. Its not a gameplay change and from a purely communication standpoint its definitely welcome, but I'll consider its consequences before I say anything. My guess is that its more a question of implementation and scale of programming, which maybe excessive for a GSOC proposal.
I suspect having one foot in the past is the best way to understand the present.

Don Hewitt.
gabba
Inactive Developer
Posts: 129
Joined: January 24th, 2005, 5:08 pm
Location: Quebec

Re: Share undoable moves with allies

Post by gabba »

@Noy: Thanks for your input. This is definitely the least controversial of my ideas, and also the most realistic to implement, but I don't see many posts in here. (I guess that for maximum attention, I should have titled my thread "this gamez suxxorz lol".)

Personally I was under the impression that this was too small for a GSoC project, so if you think it's too big, maybe it's actually just the right size? Please share your thoughts once you've had time to analyse the implications a bit more.
Noy
Inactive Developer
Posts: 1321
Joined: March 13th, 2005, 3:59 pm

Re: Share undoable moves with allies

Post by Noy »

gabba wrote:@Noy: Thanks for your input. This is definitely the least controversial of my ideas, and also the most realistic to implement, but I don't see many posts in here. (I guess that for maximum attention, I should have titled my thread "this gamez suxxorz lol".)

Personally I was under the impression that this was too small for a GSoC project, so if you think it's too big, maybe it's actually just the right size? Please share your thoughts once you've had time to analyse the implications a bit more.
I can't speak to that because I'm not a coder but reading Zookeeper's reply in your proposal last year suggests to me that it will be quite an extensive undertaking which may make it too ambitious for a summer project. I'm not entirely sure how it will work either, which is why I'm not sure whether it is worth it either.
I suspect having one foot in the past is the best way to understand the present.

Don Hewitt.
User avatar
em3
Posts: 342
Joined: April 1st, 2009, 8:59 pm
Location: Poland

Re: Share undoable moves with allies

Post by em3 »

If you really need some encouragement from regular users, then let me say: This feature would be helpful, indeed. ;)
ride on shooting star
gabba
Inactive Developer
Posts: 129
Joined: January 24th, 2005, 5:08 pm
Location: Quebec

Re: Share undoable moves with allies

Post by gabba »

Any support is good, I like to code stuff that people will actually use ;).
I chatted with the devs and overall they like the idea as well, so there are good odds this will get in.

edit: moar images
Attachments
Tight situation-sel.png
Capture-The Battle for Wesnoth - 1.8.0-sel.png
Last edited by gabba on April 9th, 2010, 9:23 pm, edited 3 times in total.
User avatar
Des
Posts: 116
Joined: November 7th, 2007, 7:58 am
Contact:

Re: Share undoable moves with allies

Post by Des »

I'm all for this, as long as it's feasible to code. This is much better polished than your last proposal.

Hope it can happen.
Redrock Gulch (Winter 2009 Map Contest Submission)

To rely on rustics and not prepare is the greatest of crimes; to be prepared beforehand for any contingency is the greatest of Virtues. - Sun Tzu, The Art of War
Mabuse
Posts: 2239
Joined: November 6th, 2007, 1:38 pm

Re: Share undoable moves with allies

Post by Mabuse »

good idea.
The best bet is your own, good Taste.
gabba
Inactive Developer
Posts: 129
Joined: January 24th, 2005, 5:08 pm
Location: Quebec

Re: Share undoable moves with allies

Post by gabba »

Another post for more attachments, sorry for the useless bump.

The proposal I'm working on is over there: http://wiki.wesnoth.org/GSoC-WesnothWhiteboard_Gabba
(Link subject to change, sorry if it breaks.)
Attachments
Toggle view-sel.png
Tight situation-sel.png
NetworkSequenceDiagram.png
Interface_doubleAndTripleDigits_Side.png
DoubleAndTripleDigits_overlay_highlight.png
DoubleAndTripleDigits_overlay_highlight.png (95.47 KiB) Viewed 4294 times
Last edited by gabba on April 9th, 2010, 5:15 am, edited 4 times in total.
User avatar
Des
Posts: 116
Joined: November 7th, 2007, 7:58 am
Contact:

Re: Share undoable moves with allies

Post by Des »

gabba,

Glad to see this project fleshed out more for Google Summer of Code. Your ideas are great and would significantly improve the team experience of the game.

Good luck!
Redrock Gulch (Winter 2009 Map Contest Submission)

To rely on rustics and not prepare is the greatest of crimes; to be prepared beforehand for any contingency is the greatest of Virtues. - Sun Tzu, The Art of War
Caphriel
Posts: 994
Joined: April 21st, 2008, 4:10 pm

Re: Share undoable moves with allies

Post by Caphriel »

I'm curious, why not share them with allies as they appear to the player performing them? To make it clear that they're undoable?
Max
Posts: 1449
Joined: April 13th, 2008, 12:41 am

Re: Share undoable moves with allies

Post by Max »

gabba wrote:When sharing undoable moves, some mild confusion might happen when you ally undoes a move: if you're not paying attention (after all the unit just changed from "red" movement status to "yellow" or "green" orb), you might think you're witnessing a move instead of an undo. This is why extra visual clues would be needed in that mode, possibly just a red UNDO text that floats up from the unit, or alternate red footsteps symbols that the unit gobbles up backwards as it goes back to its previous location.
i don't see why you would want to add any additional visual information - nobody would ever have complained about seeing all moves if it had been implemented this way from the very beginning.

is there a reason why this shouldn't just be the default (for allies and enemies)? - maybe network traffic/performance?
gabba wrote:For the true "over the shoulder" experience, I think this option should show you everything, down to the attack dialogue your ally gets when he attacks an enemy.
nice, but sounds quite complicated - don't forget that right now you're free to do stuff in the ui (e.g. show unit information) during enemy/ally turns...
Locked