freystef / Rails

18xx games moderator
GNU General Public License v2.0
9 stars 9 forks source link

Feature request (1800): restrict tile to company #7

Closed Hawke closed 7 years ago

Hawke commented 7 years ago

In 1800 one of the private companies has a special tile which only it can use.

I was hoping to simply add a SpecialTileLay setup for it, but it seems that there is no way to restrict the tile like this -- any company is allowed to place the tile.

erik-vos commented 7 years ago

Alex,

I am no longer familiar enough with the code to provide a quick answer, but things you could try are:

and in your code somehow override any checks that fail because of these settings. Probably you'll have to override OperatingRound.layTile() and OperatingRound.getSpecialTileLays() (or other methods called by these methods) in your OperatingRound_1800.

Erik

Op 26-10-2016 om 18:28 schreef Alex Mauer:

In /1800/ one of the private companies has a special tile which only it can use.

I was hoping to simply add a SpecialTileLay setup for it, but it seems that there is no way to restrict the tile like this -- any company is allowed to place the tile.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/7, or mute the thread https://github.com/notifications/unsubscribe-auth/ANQ4UQdDscoWyLn3rMMGRnZCFily1EgHks5q33-SgaJpZM4KhYuc.

neutronc commented 7 years ago

Hi,

perhaps you can have a look at 18AL ? Theres a tile being linked to a private compan iirc. Regards, Martin

ChrisTheCat commented 7 years ago

Yes, it seems like the 18AL Lumber company (places tile in swamp) would apply.

On Wed, Oct 26, 2016 at 11:37 AM Dr. Martin Brumm notifications@github.com wrote:

Hi,

perhaps you can have a look at 18AL ? Theres a tile being linked to a private compan iirc. Regards, Martin

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/7#issuecomment-256438892, or mute the thread https://github.com/notifications/unsubscribe-auth/AIU_E3wg3zuluz3bs3Vkuo4cEvE5yU27ks5q3537gaJpZM4KhYuc .

erik-vos commented 7 years ago

Ah yes, the Lumber Terminal! That one caused me quite some headaches to implement. Don't remember the code details, but in 18AL/TileSet.xml you'll find this:

<Tile id="0"><!-- Empty space -->
    <Upgrade id="7,8,9"/>
    <!--Upgrade id="445" hex="G2,M2,N5,O4,P5"/-->
</Tile>

in other words: just omit the regular upgrade rule. Erik

Op 26-10-2016 om 20:37 schreef Dr. Martin Brumm:

Hi,

perhaps you can have a look at 18AL ? Theres a tile being linked to a private compan iirc. Regards, Martin

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/7#issuecomment-256438892, or mute the thread https://github.com/notifications/unsubscribe-auth/ANQ4UTnRCQKntLVhLFqHx3fgCcoysi3gks5q3537gaJpZM4KhYuc.

Hawke commented 7 years ago

Thanks for the advice. Dropping it from the upgrade path was part of the key to prevent other companies from placing the tile (#800). Not sure why it still allows upgrading but doesn't allow placing on an entirely empty space. But I'll take it!

The lumber company in 18AL was very helpful for sure -- Although 1800 is a little different in that this private company does not require that it be owned by another company in order to work.

Only problem I'm running into now is that the special tile is allowed to be placed even if the company is not connected to the hex. If I set the "connected" attribute to yes, then it doesn't allow placement at all.

neutronc commented 7 years ago

Hi Alex

The latter sounds like a bug.

I might check this the weekend after this if nobody beats me to that :)

Regards Martin

Gesendet mit der Telekom Mail App http://www.t-online.de/service/redir/emailmobilapp_ios_smartphone_footerlink.htm

-----Original-Nachricht----- Von: Alex Mauer <notifications@github.com mailto:notifications@github.com

Betreff: Re: [freystef/Rails] Feature request (1800): restrict tile to company (#7) Datum: 27.10.2016, 18:29 Uhr An: freystef/Rails <Rails@noreply.github.com mailto:Rails@noreply.github.com > CC: Dr. Martin Brumm <dr.martin.brumm@t-online.de mailto:dr.martin.brumm@t-online.de >, Comment < comment@noreply.github.com mailto:comment@noreply.github.com >

Thanks for the advice. Dropping it from the upgrade path was part of the key to prevent other companies from placing the tile (#800). Not sure why it still allows upgrading but doesn't allow placing on an entirely empty space. But I'll take it!

The lumber company in 18AL was very helpful for sure -- Although 1800 is a little different in that this private company does not require that it be owned by another company in order to work.

Only problem I'm running into now is that the special tile is allowed to be placed even if the company is not connected to the hex. If I set the "connected" attribute to yes, then it doesn't allow placement at all.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/7#issuecomment-256697309 , or mute the thread https://github.com/notifications/unsubscribe-auth/AGcIyaRtXQAOJIojYHdQ_f9SLTKlOBy5ks5q4NFVgaJpZM4KhYuc .

neutronc commented 7 years ago

Btw there is a discussion list for stuff like this badend on the sourceforge repo.

Might catch even more attention.

Regards Martin

Gesendet mit der Telekom Mail App http://www.t-online.de/service/redir/emailmobilapp_ios_smartphone_footerlink.htm

-----Original-Nachricht----- Von: Alex Mauer <notifications@github.com mailto:notifications@github.com

Betreff: Re: [freystef/Rails] Feature request (1800): restrict tile to company (#7) Datum: 27.10.2016, 18:29 Uhr An: freystef/Rails <Rails@noreply.github.com mailto:Rails@noreply.github.com > CC: Dr. Martin Brumm <dr.martin.brumm@t-online.de mailto:dr.martin.brumm@t-online.de >, Comment < comment@noreply.github.com mailto:comment@noreply.github.com >

Thanks for the advice. Dropping it from the upgrade path was part of the key to prevent other companies from placing the tile (#800). Not sure why it still allows upgrading but doesn't allow placing on an entirely empty space. But I'll take it!

The lumber company in 18AL was very helpful for sure -- Although 1800 is a little different in that this private company does not require that it be owned by another company in order to work.

Only problem I'm running into now is that the special tile is allowed to be placed even if the company is not connected to the hex. If I set the "connected" attribute to yes, then it doesn't allow placement at all.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/7#issuecomment-256697309 , or mute the thread https://github.com/notifications/unsubscribe-auth/AGcIyaRtXQAOJIojYHdQ_f9SLTKlOBy5ks5q4NFVgaJpZM4KhYuc .

Hawke commented 7 years ago

Btw there is a discussion list for stuff like this badend on the sourceforge repo.

Thanks -- I had looked at the mailing lists linked on the main page and it looked like they were basically dead.