| 
      
      
      From: Ian L. <ig...@ea...> - 2003-04-26 20:52:37
      
     | 
| On Sat, Apr 26, 2003 at 05:55:45PM +0200, Shae Matijs Erisson wrote:
> 
> Please respond with any comments, thoughts, or ideas.
> 
> Basic Idea:
> real-time strategy, similar to warcraft, starcraft, command&conquer, etc
> different in that the player writes the AI for his units ahead of time,  and then uses high level less-detailed controls/commands in battle (or more detailed if you want to write it that way)
I don't think the pre-game order writing is any different to the in-game
ordering. It may turn out that players tend to start the game with a
portfolio of complex orders that they anticipate being all they need for
the game, and spend the game just assigning them as appropriate.
> Open questions:
> 
> Is communication jamming a good idea?
This can be ignored for now, of course.
As for orders, we could have something like this:
Trigger datatype, essentially a function of type WorldState -> Bool
onTrigger :: Trigger -> State -> State -> State
With the orders
  --------------------      See enemy unit       ------------------
  |Go to waypoint foo|==========================(Destroy enemy unit)   
  --------------------                           ------------------   
            |
            | Got to waypoint foo
            |
            *
we could have
state1 = onTrigger see_enemy_unit (destroy_enemy_unit state1)
       $ onTrigger (got_to_waypoint "foo") nostate
       $ go_to_waypoint "foo"
I don't think this gets us any closer to order updating.
I guess the engine probably wants to work by working out how long it is
until the next trigger happens rather than stepping time and testing
them; this will have to be updated every time the user does anything
that might change it, of course.
Ian
 |