Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2004:
[Freeciv-Dev] Re: (PR#10276) Goto bug
Home

[Freeciv-Dev] Re: (PR#10276) Goto bug

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: mstefek@xxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#10276) Goto bug
From: "Jason Short" <jdorje@xxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 23 Sep 2004 11:53:20 -0700
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=10276 >

Mateusz Stefek wrote:
> <URL: http://rt.freeciv.org/Ticket/Display.html?id=10276 >
> 
>>[jdorje - Thu Sep 23 18:14:02 2004]:
>>
>>
>>>[mstefek - Thu Sep 23 16:57:21 2004]:
>>>
>>>Something strange happened today with Settlers in goto mode.
>>>It work also in trident and after reloading a game.
>>>I will attach the savegame and a screenshot as a comment.
>>
>>I'm not sure how to reproduce this.  How did you get both the goto line
>>and the mapview info popup, at different locations?

> I don't remember much. Probably two turns before I directed Settlers
> inside Upsala at buffalo. (I'm sure that I pointed them at buffalo)
> Note that the road between Upsalla and Settlers was constructed in that
> turn or in the next

Oh, you're not in goto mode - you're clicking to see the route the 
settlers were already given...

The reason for this is simple.  The settlers were given a strict set of 
orders "go east, go south, go west" and they are following this.  But 
there's nothing that guarantees that this path goes to the desired 
location.  The path can be inaccurate if terrain or specials are changed 
(like building a road) or any time that random moves are involved.

I'm not sure if it can be solved.  Maybe we can replace the "move in 
direction <dir>" with "move to (<x>,<y>)".  If the move fails then the 
order is repeated next turn.  However this runs into problems with 
danger-paths.  Greg had some ideas on this: either dropping danger-paths 
(tririeme goto sticks to safe waters) or replacing the "wait" order with 
an "assure full MP" order.

For the time being the solution is probably just to add more sanity 
checking.  An (x,y) value should be added to each order.  If the unit's 
position isn't (x,y) at the start of the order the route should be 
considered busted and should be aborted.  This will at least prevent 
your settlers wandering off into the ocean, though it will mean their 
orders are canceled instead.

jason




[Prev in Thread] Current Thread [Next in Thread]