freystef / Rails

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

Issue with Bonus Tile Lay in 18AL #15

Closed futzy314 closed 7 years ago

futzy314 commented 7 years ago

I am currently part of a 5 player game of 18AL using 2.0 RC1. Everything has been fine up until now, but I am trying to use the Bonus Tile Lay feature, and the game is getting messed up at that point. I will attach the save file. Any way to work around this for now? 18AL_20161215_2035_Ian.zip

neutronc commented 7 years ago

Thanks for uploading, i will try to find out whats happening,

neutronc commented 7 years ago

On which field did you place the tile ?

neutronc commented 7 years ago

OK the confirmation of that Tile Lay goes ballistic.. The game engine doesnt accept a disconnected tile apparently right now... Will have to check.

neutronc commented 7 years ago

The problem is that the stop on the tile of type "town" isnt properly recognised for whatever reason. This causes the NetworkVertice Routine to bail with a nullpointer exception. Upon tracing back the code i landed in the MapHex.upgrade Method and even here the Tile is not setup correctly. Trying to find out whats happening earlier...

neutronc commented 7 years ago

My guess is that since the hextile before had no stop the game doesnt translate the necessary information from the tile definition for the upgrade of this hex...

neutronc commented 7 years ago

No its even simplier the MapHex.upgrade routine doesnt check if theres no stop on the hex before if the new tile brings a stop. Code changed heavily from 1.8 to 2.0 here. So this has to be fixed.

erik-vos commented 7 years ago

Sorry, I'm not in Rails 2.0 yet.

I suppose this relates to the Lumber Terminal? As this SpecialTile lay is configured with 'connected="no"', no connectivity check should be done at all, and any attempts to update a connectivity graph (if Rails 2.0 has such a thing) should gracefully accept the absence of any neighbouring stops.

However, from the answers so far I understand that the root problem is that the connectivity checking code is not prepared to find a new stop on a hex just upgraded where no stop existed before. That's of course a different issue that I can shed no light upon.

Op 17-12-2016 om 18:49 schreef Dr. Martin Brumm:

Assigned #15 https://github.com/freystef/Rails/issues/15 to @erik-vos https://github.com/erik-vos.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/freystef/Rails/issues/15#event-897653166, or mute the thread https://github.com/notifications/unsubscribe-auth/ANQ4Ufb4wERBj9GUoAiGVSgEfud6xG1rks5rJCCcgaJpZM4LOlDn.

neutronc commented 7 years ago

Good Morning/evening i have fixed the error please jump over at sourceforge for the new build. Regards Martin