Project

Profile

Help

HostedRedmine.com has moved to the Planio platform. All logins and passwords remained the same. All users will be able to login and use Redmine just as before. Read more...

Feature #741273

Separate extras from action targets in unit orders structures

Added by Marko Lindqvist over 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Category:
General
Sprint/Milestone:
Start date:
Due date:
% Done:

0%

Estimated time:

Description

S3_0/master have 'target' of the unit orders to mean both activity target (extra) for ORDER_ACTIVITY and action target for ORDER_ACTION. We are going to need them both simultaneously in the future. Store them separately already in S3_0 to avoid compatibility issues later. This is especially true for savegame3.c which should have correct format from the beginning.


Related issues

Related to Freeciv - Bug #757270: Various bugs related to extra/target split in unit ordersClosed

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>
Blocks Freeciv - Feature #738333: Action enablers support for extra targeted actionsClosed

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>
Blocks Freeciv - Task #656466: S3_0 datafile format freeze (d3f)Closed2019-10-05

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>

History

#1 Updated by Marko Lindqvist over 4 years ago

  • Blocks Feature #738333: Action enablers support for extra targeted actions added

#4 Updated by Marko Lindqvist over 4 years ago

  • Blocks Task #656466: S3_0 datafile format freeze (d3f) added

#5 Updated by Marko Lindqvist over 4 years ago

  • Status changed from Resolved to Closed
  • Assignee set to Marko Lindqvist

#6 Updated by Jacob Nevins about 4 years ago

  • Related to Bug #757270: Various bugs related to extra/target split in unit orders added

#7 Updated by Sveinung Kvilhaugsvik about 4 years ago

Marko Lindqvist wrote:

We are going to need them both simultaneously in the future.

Are you planning an action that requires both an extra target AND (a building target OR a tech target)? (Example: Get "Advanced Flight" from "Medium Cave Library") If yes: Should target be split in tech target and building target too? (If yes: are you planning to turn buildings into extras so that would happen as a side effect?)

#8 Updated by Marko Lindqvist about 4 years ago

Sveinung Kvilhaugsvik wrote:

Marko Lindqvist wrote:

We are going to need them both simultaneously in the future.

Are you planning an action that requires both an extra target AND (a building target OR a tech target)? (Example: Get "Advanced Flight" from "Medium Cave Library") If yes: Should target be split in tech target and building target too? (If yes: are you planning to turn buildings into extras so that would happen as a side effect?)

This was probably about targeting extra on specific tile, so tile+extra targets.

#9 Updated by Sveinung Kvilhaugsvik about 4 years ago

Marko Lindqvist wrote:

Sveinung Kvilhaugsvik wrote:

Marko Lindqvist wrote:

We are going to need them both simultaneously in the future.

Are you planning an action that requires both an extra target AND (a building target OR a tech target)? (Example: Get "Advanced Flight" from "Medium Cave Library") If yes: Should target be split in tech target and building target too? (If yes: are you planning to turn buildings into extras so that would happen as a side effect?)

This was probably about targeting extra on specific tile, so tile+extra targets.

In that case I suggest two fields: target (unit, city, tile) and sub_target (extra, building, tech). This means (4 + 2 =) 6 bytes per unit order.

This makes long range (non adjacent target) actions possible in unit orders possible. It makes specifying target unit in unit orders possible. Long range actions will even be able to have a complex target (example: long range precision artillery bombard bridge). Setting explicit target rather than just adjacent or current tile relative to unit position could also allow target validation.

Also available in: Atom PDF