Skip to content

the cansail flag and who is allowed on ships #498

@stm2

Description

@stm2

enter_ship has a nice logic, which even comes with test coverage:
You can enter a ship if your race has either of the RCF_CANSAIL, RCF_WALK, RCF_FLY flags set. But this is not the same everywhere. For example, in build.c, when you build a new ship, you only enter it if you have RCF_CANSAIL.

Also, the comment in enter_Ship says this is "to disallow swimmers from entering land inside ships". But there are afaics no swimmers that would be disallowed on land, at least in coastal regions.

I'm unsure what to do. Remove RCF_WALK/FLY option from enter_ship? Remove the cansail flag altogether (and the restriction to enter ships)?

Note that the race flags default to RCF_CANSAIL set, which is defined in xmlreader.c:parse_races, which is not what I would have expected.
Note also that shadowdemons and -masters are the only races not allowed on ships. Why all the hate? Is cansail simply deprecated?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions