Home » Stars! Clones, Extensions, Modding » Stars! Nova - Development » Orders
Re: Orders |
Thu, 07 July 2011 19:53 |
|
evild00d | | | Messages: 14
Registered: July 2009 Location: Norway | |
|
This is an important architectural decision so getting it "wrong" just means that changing it later will cause a lot of pain. I don't like pain I just want stuff to work (like it's that easy)
That said, I'm very much in favor of the proposed command/order solution, but I'm not saying that this is necessarily THE RIGHT WAY(tm).
In this particular case (client-server communication, validation, etc.) storing and passing around state and trying to validate it will likely make things difficult to maintain in the long run. The client- and server-side at some point need to know the state, but conveying a change as a command allows us to capture the player's intent.
With commands (orders if you wish), one of the benefits on the client side would be that undo/redo support would be easy to implement (just one/two stacks of commands and code to reverse commands). On the server side it would make testing, debugging and validation easier. The entire sequence of commands (or resulting events) made during a game could be stored and used as a basis for auditing, running it through external analysis tools, replays, retroactively checking for potential cheats used in a game if a cheat/hack/exploit is published some time after the game completed.
Implementing commands and some kind of "event sourcing" (http://martinfowler.com/eaaDev/EventSourcing.html if you will) is a story for another time
Report message to a moderator
|
|
|
|
|
Orders
By: Aeglos on Wed, 06 July 2011 23:03
|
|
|
Re: Orders
By: Daniel on Thu, 07 July 2011 04:57
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 05:18
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 06:31
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 07:02
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 07:55
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 08:17
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Daniel on Thu, 07 July 2011 10:14
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Thu, 07 July 2011 14:39
|
|
|
Re: Orders
|
|
|
Re: Orders
|
|
|
Re: Orders
|
|
|
Re: Orders
|
|
|
Re: Orders
By: Aeglos on Wed, 20 July 2011 18:43
|
|
|
Re: Orders
By: Musmuris on Fri, 19 August 2011 16:06
|
|
|
Re: Orders
By: Daniel on Fri, 19 August 2011 17:54
|
|
|
Re: Orders
By: Musmuris on Sat, 20 August 2011 04:34
|
|
|
Re: Orders
By: Aeglos on Sat, 20 August 2011 02:53
|
|
|
Re: Orders
By: Daniel on Wed, 22 February 2012 03:12
|
|
|
Re: Orders
By: Daniel on Sat, 25 February 2012 00:04
|
|
|
Re: Orders
By: Daniel on Sat, 25 February 2012 02:38
|
|
|
Re: Orders
By: Daniel on Sat, 25 February 2012 05:46
|
|
|
Re: Orders
By: Aeglos on Sun, 26 February 2012 20:10
|
|
|
Re: Orders
By: Aeglos on Tue, 28 February 2012 03:36
|
|
|
Re: Orders
By: Daniel on Fri, 27 April 2012 17:21
|
|
|
Re: Orders
By: Aeglos on Fri, 27 April 2012 18:42
|
|
|
Re: Orders
By: Aeglos on Sat, 28 April 2012 21:58
|
|
|
Re: Orders
By: Daniel on Sun, 29 April 2012 03:59
|
|
|
Re: Orders
By: Aeglos on Sun, 29 April 2012 13:11
|
|
|
Re: Orders
By: Daniel on Fri, 11 May 2012 21:41
|
|
|
Re: Orders
By: Daniel on Sat, 12 May 2012 01:09
|
Goto Forum:
Current Time: Sun May 12 05:24:01 EDT 2024
|