You can subscribe to this list here.
2005 |
Jan
|
Feb
(25) |
Mar
(84) |
Apr
(76) |
May
(25) |
Jun
(1) |
Jul
(28) |
Aug
(23) |
Sep
(50) |
Oct
(46) |
Nov
(65) |
Dec
(76) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(60) |
Feb
(33) |
Mar
(4) |
Apr
(17) |
May
(16) |
Jun
(18) |
Jul
(131) |
Aug
(11) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(5) |
2007 |
Jan
(71) |
Feb
|
Mar
|
Apr
|
May
(6) |
Jun
(19) |
Jul
(40) |
Aug
(38) |
Sep
(7) |
Oct
(58) |
Nov
|
Dec
(10) |
2008 |
Jan
(17) |
Feb
(27) |
Mar
(12) |
Apr
(1) |
May
(50) |
Jun
(10) |
Jul
|
Aug
(15) |
Sep
(24) |
Oct
(64) |
Nov
(115) |
Dec
(47) |
2009 |
Jan
(30) |
Feb
(1) |
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
(5) |
Aug
|
Sep
|
Oct
(4) |
Nov
(132) |
Dec
(93) |
2010 |
Jan
(266) |
Feb
(120) |
Mar
(168) |
Apr
(127) |
May
(83) |
Jun
(93) |
Jul
(77) |
Aug
(77) |
Sep
(86) |
Oct
(30) |
Nov
(4) |
Dec
(22) |
2011 |
Jan
(48) |
Feb
(81) |
Mar
(198) |
Apr
(174) |
May
(72) |
Jun
(101) |
Jul
(236) |
Aug
(144) |
Sep
(54) |
Oct
(132) |
Nov
(94) |
Dec
(111) |
2012 |
Jan
(135) |
Feb
(166) |
Mar
(86) |
Apr
(85) |
May
(137) |
Jun
(83) |
Jul
(54) |
Aug
(29) |
Sep
(49) |
Oct
(37) |
Nov
(8) |
Dec
(6) |
2013 |
Jan
(2) |
Feb
|
Mar
(1) |
Apr
(14) |
May
(5) |
Jun
(15) |
Jul
|
Aug
(38) |
Sep
(44) |
Oct
(45) |
Nov
(40) |
Dec
(23) |
2014 |
Jan
(22) |
Feb
(63) |
Mar
(43) |
Apr
(60) |
May
(10) |
Jun
(5) |
Jul
(13) |
Aug
(57) |
Sep
(36) |
Oct
(2) |
Nov
(30) |
Dec
(27) |
2015 |
Jan
(5) |
Feb
(2) |
Mar
(14) |
Apr
(3) |
May
|
Jun
(3) |
Jul
(10) |
Aug
(63) |
Sep
(31) |
Oct
(26) |
Nov
(11) |
Dec
(6) |
2016 |
Jan
|
Feb
(11) |
Mar
|
Apr
|
May
(1) |
Jun
(16) |
Jul
|
Aug
(4) |
Sep
|
Oct
(1) |
Nov
(4) |
Dec
(1) |
2017 |
Jan
(2) |
Feb
|
Mar
(1) |
Apr
|
May
(1) |
Jun
(20) |
Jul
(4) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(6) |
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
(10) |
May
(10) |
Jun
(1) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
(3) |
Apr
(9) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(7) |
Dec
(4) |
2021 |
Jan
(5) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Oliver H. <oli...@gm...> - 2012-08-28 11:55:07
|
Erik, I am willing to work myself through the XMLs but where do I find them? Is there any documentation available? Cheers Oliver Am 28.08.2012 10:21, schrieb Erik Vos: > Hi Oliver, > > You could inspect the 1830 XML files to see how to implement variants. If > that doesn't help you out, I can assist or do (part of) the job. > > Does a document exist that fully describes the rule changes for this variant > with respect to the standard version? For instance, how does the extra minor > 4a convert to a Prussian share? > > The BGG page mentions two versions of this variant, is there any relevant > difference between these two versions? > > Erik. > |
From: Oliver H. <oli...@gm...> - 2012-08-28 11:53:22
|
I think this is the same variant because Harry is credited as the designer of both. I see the following changes: - 4 is *replaced* by 4a Oberschlesische Bahn (10% Preussen, 160M) - 5 starts in Stettin which is reflected by the new Berlin initial yellow tile - two extra 2-trains - several extra tiles (I don't know which - can you find out by yours?) BGG says that there were two versions, which might explain some minor changes. Do you know which one you own? Oliver. Am 28.08.2012 10:35, schrieb Erik Vos: > BTW, this Schlesien variant appears to be very closely related, but not > identical, to the 1835 Coalfields variant by Harry Wu (which I own). > While we're at it, I think we should implement both. > > Coalfields has the same map changes as Schlesien, but no extra trains or > tiles. > In Coalfields, minor 4 is moved to Breslau, whereas in Schlesien 4a seems to > be an extra (16th) minor. > > Let's sort out these details before we start! > > Erik. > >> -----Original Message----- >> From: Erik Vos [mailto:eri...@xs...] >> Sent: Tuesday, August 28, 2012 10:21 AM >> To: 'Development list for Rails: an 18xx game' >> Subject: RE: [Rails-devel] 1835 Schlesien >> >> Hi Oliver, >> >> You could inspect the 1830 XML files to see how to implement variants. If >> that doesn't help you out, I can assist or do (part of) the job. >> >> Does a document exist that fully describes the rule changes for this > variant >> with respect to the standard version? For instance, how does the extra > minor >> 4a convert to a Prussian share? >> >> The BGG page mentions two versions of this variant, is there any relevant >> difference between these two versions? >> >> Erik. >> >>> -----Original Message----- >>> From: Oliver Heck [mailto:oli...@gm...] >>> Sent: Monday, August 27, 2012 9:58 PM >>> To: rai...@li... >>> Subject: [Rails-devel] 1835 Schlesien >>> >>> Hi there, >>> >>> I am interested in implementing a small variant of 1835. There are >>> only small changes in the map, tiles and minor companies. If I >>> understood the rails concept right, this should mainly be done by >>> editing XML-files. As I have only very little experience in >>> programming, this might be a good start for a contribution but I still > need >> some help to start. >>> You can find the description of 1835 Schlesien at bgg: >>> http://boardgamegeek.com/boardgameexpansion/94856/1835-schlesien >>> >>> Cheers >>> Oliver >>> >>> ---------------------------------------------------------------------- >>> -------- >>> Live Security Virtual Conference >>> Exclusive live event will cover all the ways today's security and >>> threat landscape has changed and how IT managers can respond. >>> Discussions will include endpoint security, mobile security and the > latest in >> malware threats. >>> http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >>> _______________________________________________ >>> Rails-devel mailing list >>> Rai...@li... >>> https://lists.sourceforge.net/lists/listinfo/rails-devel > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel |
From: Erik V. <eri...@xs...> - 2012-08-28 08:35:43
|
BTW, this Schlesien variant appears to be very closely related, but not identical, to the 1835 Coalfields variant by Harry Wu (which I own). While we're at it, I think we should implement both. Coalfields has the same map changes as Schlesien, but no extra trains or tiles. In Coalfields, minor 4 is moved to Breslau, whereas in Schlesien 4a seems to be an extra (16th) minor. Let's sort out these details before we start! Erik. > -----Original Message----- > From: Erik Vos [mailto:eri...@xs...] > Sent: Tuesday, August 28, 2012 10:21 AM > To: 'Development list for Rails: an 18xx game' > Subject: RE: [Rails-devel] 1835 Schlesien > > Hi Oliver, > > You could inspect the 1830 XML files to see how to implement variants. If > that doesn't help you out, I can assist or do (part of) the job. > > Does a document exist that fully describes the rule changes for this variant > with respect to the standard version? For instance, how does the extra minor > 4a convert to a Prussian share? > > The BGG page mentions two versions of this variant, is there any relevant > difference between these two versions? > > Erik. > > > -----Original Message----- > > From: Oliver Heck [mailto:oli...@gm...] > > Sent: Monday, August 27, 2012 9:58 PM > > To: rai...@li... > > Subject: [Rails-devel] 1835 Schlesien > > > > Hi there, > > > > I am interested in implementing a small variant of 1835. There are > > only small changes in the map, tiles and minor companies. If I > > understood the rails concept right, this should mainly be done by > > editing XML-files. As I have only very little experience in > > programming, this might be a good start for a contribution but I still need > some help to start. > > > > You can find the description of 1835 Schlesien at bgg: > > http://boardgamegeek.com/boardgameexpansion/94856/1835-schlesien > > > > Cheers > > Oliver > > > > ---------------------------------------------------------------------- > > -------- > > Live Security Virtual Conference > > Exclusive live event will cover all the ways today's security and > > threat landscape has changed and how IT managers can respond. > > Discussions will include endpoint security, mobile security and the latest in > malware threats. > > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > _______________________________________________ > > Rails-devel mailing list > > Rai...@li... > > https://lists.sourceforge.net/lists/listinfo/rails-devel |
From: Erik V. <eri...@xs...> - 2012-08-28 08:21:32
|
Hi Oliver, You could inspect the 1830 XML files to see how to implement variants. If that doesn't help you out, I can assist or do (part of) the job. Does a document exist that fully describes the rule changes for this variant with respect to the standard version? For instance, how does the extra minor 4a convert to a Prussian share? The BGG page mentions two versions of this variant, is there any relevant difference between these two versions? Erik. > -----Original Message----- > From: Oliver Heck [mailto:oli...@gm...] > Sent: Monday, August 27, 2012 9:58 PM > To: rai...@li... > Subject: [Rails-devel] 1835 Schlesien > > Hi there, > > I am interested in implementing a small variant of 1835. There are only small > changes in the map, tiles and minor companies. If I understood the rails > concept right, this should mainly be done by editing XML-files. As I have only > very little experience in programming, this might be a good start for a > contribution but I still need some help to start. > > You can find the description of 1835 Schlesien at bgg: > http://boardgamegeek.com/boardgameexpansion/94856/1835-schlesien > > Cheers > Oliver > > ---------------------------------------------------------------------------- -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and threat > landscape has changed and how IT managers can respond. Discussions will > include endpoint security, mobile security and the latest in malware threats. > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel |
From: Oliver H. <oli...@gm...> - 2012-08-27 19:58:24
|
Hi there, I am interested in implementing a small variant of 1835. There are only small changes in the map, tiles and minor companies. If I understood the rails concept right, this should mainly be done by editing XML-files. As I have only very little experience in programming, this might be a good start for a contribution but I still need some help to start. You can find the description of 1835 Schlesien at bgg: http://boardgamegeek.com/boardgameexpansion/94856/1835-schlesien Cheers Oliver |
From: Stefan F. <ste...@we...> - 2012-08-22 12:29:36
|
Another milestone is reached for Rails2.0: It is possible to start 1830 without an error. However no reasonable game play and some GUI glitches remain. However a playable version is on the horizon and I wonder if there are any volunteers you would be interested to play around with alpha versions and report their issues? If that is the case I would start releasing alpha versions on the Rails website in a few weeks time. How does the current Rails 2.0 roadmap looks like: A) Get 1830 working again B) Merge (or implement) all patches from the Rails1.x trunk since Rails2.0 left that branch C) (Help to) finish some of the nearly done 18xx versions (1825, 1826, 1880) D) Change the GameSave file format from Java Serialization to (zipped) XML E) Create a prototype for (real-time) online play F) Make sure that all other 18xx versions work again Adding C) and E) soon ensures that serious testing/usage of Rail2.0 will start soon. Stefan |
From: Stefan F. <ste...@we...> - 2012-07-27 13:37:45
|
Erik, thanks for your comments. See my quick replies below. Stefan On 07/27/2012 02:30 PM, Erik Vos wrote: > Stefan, > > All details aside, effectively you remove the (old-style) Portfolio holdall > objects (except for the Bank, where four of such containers are really > needed, and now are renamed to BankPortfolio). That removes a level of > indirection in many calls, so it sounds like a real improvement. All details aside, the Euro is just another European currency ;-) Jokes aside, in fact (the old-style) Portfolio survived as PortfolioModel in Rails2.0 (in rails.game.model), which is the prime example of a PortfolioHolder. So currently there is still a level of redirection involved. More precisely the Portfolio classes are specialized replacements for the general ArrayListState used before. This removes the need for a lot of manual code which was missing in ArrayListState for this special situation. > I notice that you are omitting PortfolioList. Please be aware, that in some > cases sequence matters. > For instance, IIRC, the President's certificate is occasionally retrieved > via .get(0). Of course, there are ways around that. > Only a few days ago I decided to drop PortfolioList: I already prefer to use Sets if items can only appear once inside the collection (as Java has no UniqueList included). However given the more complicated handling of undo/redo for lists, was the decisive argument here. I am aware of the casual use of the first share as the PresidentShare. I regard this as a hack, which I would like to fix in the next few days. > > I wonder why you omit d) Create two portfolios Portfolio<BaseToken> and > Portfolio<BonusToken>. > Is that because in some games BaseTokens can change into BonusTokens? > (Example: 18FL). > Good comment: I forgot to mention that I forgot to mention that I assume that the Token class extends OwnableItem<Token>. In this case it is only possible to store BaseToken and BonusToken inside Portfolio<Token> and one cannot use specialized Portfolios. So a full detailed d) would be: d) Make Token an Interface and have both BaseToken and BonusToken extend OwnableItem themselves. However then it is not possible to use Portfolio<Token> as a joint storage. |
From: Erik V. <eri...@xs...> - 2012-07-27 12:30:23
|
Stefan, All details aside, effectively you remove the (old-style) Portfolio holdall objects (except for the Bank, where four of such containers are really needed, and now are renamed to BankPortfolio). That removes a level of indirection in many calls, so it sounds like a real improvement. A few more notes: > The default implementation of Portfolio is a PortfolioSet: Here all items are > thrown into one bucket, each ownable item is unique (has its own id), thus it > is implemented as a set. > > General Remark: If items are not-unique, there are other structures to deal > with those (non-unique items implement Countable and get stored in a > Wallet). > > A more sophisticated variant is PortfolioMap. Here the portfolio is structured > by a "type" attribute of the items. I notice that you are omitting PortfolioList. Please be aware, that in some cases sequence matters. For instance, IIRC, the President's certificate is occasionally retrieved via .get(0). Of course, there are ways around that. > * A third example: BaseTokens and BonusTokens > > If both of them have to be stored inside a Portfolio<Token> (because Token > extends OwnableItem<Token>, there is no way to separate them. > > Solutions: > a) Add two HashSetState<BaseToken> and HashSetState<BonusToken> in > parallel. > > b) Put the portfolio inside a model and provide .getBonusTokens() and > .getBaseTokens() methods. > > c) Make Tokens implement Typable<Class<? extends Token>> and return > the class as type. > Then Tokens can be stored inside PortfolioMap<Class<? extends Token>, > Token> and portfolio.get(BaseToken.class) and > portfolio.get(BonusToken.class) works. I wonder why you omit d) Create two portfolios Portfolio<BaseToken> and Portfolio<BonusToken>. Is that because in some games BaseTokens can change into BonusTokens? (Example: 18FL). Erik |
From: Stefan F. <ste...@we...> - 2012-07-27 05:05:25
|
All, Another part of the Rails2.0 series, introducing the most important part of the state package, the Portfolio class(es). This is a pretty long text, but it should serve as documentation for future usage. As usual I will state the goal of the design first, followed by more details about the implementation. Critical comments most welcome. Stefan A) The idea behind Portfolio The main problem of the previous undo-mechanism was the ownership of the "Moveable" items: This was not (fully) automated and the side-effects had to be taken care manually. The "Moveable" interface of Rails1.x is renamed to "Ownable" in Rails2.0, but both indicate items that can change their owner during the game (e.g. certificates, trains etc.). In Rails2.0 all ownable Items have to be stored in a "Portfolio" which itself is a subclass of State (thus it has built-in undo/redo and observable mechanisms). A portfolio is a generic collection, thus has a type which indicates what can be stored: e.g. Portfolio<Train>. Each portfolio has an "Owner", which is another interface of the state package to be implemented by those classes that can own items (Rails 1.x: MoveableHolder). Moving an item from one portfolio to the other is very simple: One calls the method item.moveTo(Owner newOwner) and behind the scenes the following happens: A) The item is added to the portfolio of the newOwner B) The item is removed from the portfolio of the oldOwner C) The owner of the item changes from the oldOwner to the newOwner This is similar to what (most of the time) happened in Rails1.x, however there is no manual coding involved anymore in Rails2.0 B) More details for the usage of Portfolio In fact there are two subclasses of Portfolio, which itself is an abstract class: PortfolioSet and PortfolioMap *** How to create Portfolios? It is important to know that each Owner can have only one Portfolio for each Item-Type. However this is the only restriction that exist. Other than that Rails does not care if the Portfolio is created inside the Owner (as a variable there) or somewhere else (e.g. inside a Model). However in the latter case of an indirect holding one has to implement the interface PortfolioHolder and the parent of the PortfolioHolder has to be an Owner. Then item.moveTo(owner) will move the item into the Portfolio of the PortfolioHolder that belongs to the owner. An example: In Rails1.x most items where stored inside a class called "Portfolio". This still exist however it is called "PortfolioModel" now (as it is a subclass of Model). PortfolioModel itself implements PortfolioHolder, thus it is able to hold Portfolios instead of the (true) owner. public class Player() implements Owner { private final PortfolioModel portfolios = PortolioModel.create(this, "Portfolios"); } public class PortfolioModel() implements PortfolioHolder { private final Portfolio<Train> trains = PortfolioSet.create(this, "Trains"); } If one wants to move the train to a new player, train.moveTo(newPlayer) is sufficient. Remark: In the example above the item hierachy automatically allows to locate the portfolio with root.locate("/Companies/PRR/Portfolios/Trains") returns the train portfolio of the company PRR. *** How to create an Ownable Class? Important rule first: Better do not implement the Ownable Interface, but extend from the OwnableItem abstract class (unless you really no what you do and it is really necessary to no extend the abstract class). The major restriction is that an Ownable type can only be stored in one specific typed portfolio. Take an example again: PublicCertificate is a subclass/implementation of Certificate. So in principle it is possible to store PublicCertificate(s) either in Portfolio<Certificate> or Portfolio<PublicCertificate>. To allows Rails identify the correct portfolio to use (and for some other technical reasons with respect to Java Generics) it is required to specify which ones should be used (both variants are possible). Which is used depends which class extends from the OwnableItem: If Certificate extends OwnableItem<Certicate> all certificate(s) and all objects of its subclasses can only be stored inside portfolios of the type Portfolio<Certificate>. If PublicCerticate extends OwnableItem<PublicCerticate>, all public certificates are stored inside portfolio of the type Portfolio<PublicCertificate>. However this implies that Certificate can only be an Interface, as Java one allows extending one class (a case where the concept of Mixins would help). Other than that it is easy. Assume we decide that PublicCerticate is the correct level to extend OwnableItem. Except extending one only has to call the super-constructor. public class PublicCertificate extends OwnableItem<PublicCertificate> { public PublicCertificate(Owner parent, String id) { super(parent, id, PublicCertificate.class) } } The constructor of OwnableItem requires the class of the derived class as an argument to be able to locate the correct portfolio. *** PortfolioSet or PortfolioMap? The default implementation of Portfolio is a PortfolioSet: Here all items are thrown into one bucket, each ownable item is unique (has its own id), thus it is implemented as a set. General Remark: If items are not-unique, there are other structures to deal with those (non-unique items implement Countable and get stored in a Wallet). A more sophisticated variant is PortfolioMap. Here the portfolio is structured by a "type" attribute of the items. An example is the storage of PublicCertificate(s). All certificates for all companies get stored in one PortfolioMap (per owner). This allows to call portfolio.get(company) to retrieve only those certificates of the specified company. To be able to retrieve all certficates for one company only, the PortfolioMap keeps track of the type. Requirement is that the item implements the "Typable" interface. An example makes things clear: This definition of PublicCerticate: public class PublicCertificate extends OwnableItem<PublicCertificate> implements Typable<PublicCompany> { PublicCompany getType(); } allows to store those inside PortfolioMap<PublicCompany, PublicCertificate> portfolio = PortfolioMap.create(this, "Shares"); Moving a share into the map still requires only: share.moveTo(newOwner). The portfolio knows automatically where to put the share according to its method getType(). Further Remark: PortfolioSet and PortfolioMap work interchangeable, thus even in the case above it is still possible to store PublicCertificates inside a PortfolioSet<PublicCertificate>. Think the example of a company which is able to buy-back its own share, here a PortfolioSet is fully sufficient and can be used in parallel to the PortfolioMap(s) of the players. C) Are the restrictions above severe? *** Only one portfolio of each type per owner? Seems pretty bad at the beginning, but there are easy workarounds. * Example: Bank has several portfolios (ipo, pool, unavailable, scrapheap). Solution: Add a new structure BankPortfolio which implements Owner itself. Inside Bank create BankPortfolio ipo = new BankPortfolio.create(this, "ipo"); Then item.moveTo(Bank.ipo) works correctly. * Another example: Used and Unused Tokens of a company One could think that there are two portfolios required (one for used, one for unused). Solution: Make Unused Tokens the portfolio of the company. For usage they get moved to a new owner anyway. To keep track of the used tokens it is still possible to use a HashSetState<Token> in parallel. * A third example: BaseTokens and BonusTokens If both of them have to be stored inside a Portfolio<Token> (because Token extends OwnableItem<Token>, there is no way to separate them. Solutions: a) Add two HashSetState<BaseToken> and HashSetState<BonusToken> in parallel. b) Put the portfolio inside a model and provide .getBonusTokens() and .getBaseTokens() methods. c) Make Tokens implement Typable<Class<? extends Token>> and return the class as type. Then Tokens can be stored inside PortfolioMap<Class<? extends Token>, Token> and portfolio.get(BaseToken.class) and portfolio.get(BonusToken.class) works. D) Implementation Details The implementation is (surprisingly even to me) short. The main class is the PortfolioManager, which is accessible from the StateManager: Internally it stores references to all portfolios created using a (type, owner) tuple as key inside a HashMapState. The OwnableItem itself only has one GenericState<Owner> variable, which tracks the current owner. If item.moveTo(newOwner) is called, PortfolioManager returns both the portfolio of the new and the current owner. This allows to create a PortfolioChange with that information, which is added to the ChangeStack. That's it. |
From: Erik V. <eri...@xs...> - 2012-07-23 19:24:35
|
> I've just started an 1851 game in 1.7.7 and encountered the above, plus two > more bugs (at least I think they are bugs). > > 1. As soon as the Start Round ends and the rest of Stock Round 1 begins, the > president's holding of L&N is shown with "P" after it, not "PU", even though > it hasn't yet floated. This bug appears to be common to several games (By in > 1835 does it too). When I try to do the same, neither "P" nor "PU" is shown, just the owned percentage. Indeed it would be consistent to add "PU" here. > 2. When the 5th share of L&N is purchased, floating the company, and its > remaining 5 shares are moved from IPO to treasury, its price also goes up as if > the company had been fully owned at the end of a stock round. That's a 1851 feature, not a bug. (SR1 has not > ended, but its founder is now prevented from buying the 50% he had set the > par price to enable.) The founder obviously has to factor in this feature. Erik. |
From: Stefan F. <ste...@we...> - 2012-07-23 15:11:20
|
A new maintenance release for Rails 1.x series Downloads are available at http://rails.sourceforge.net/ or by the direct link http://sourceforge.net/projects/rails/files/Rails/1.7.8/ Contributors: Erik Vos, Stefan Frey Bugs reported by Martin Brumm, John David Galt Lists of bugs fixed: - All Games: Update "PD" label in GameStatus lower player names panel - 1835 (and others with NoMapMode): Cannot save game file with ClosePrivate action |
From: Stefan F. <ste...@we...> - 2012-07-23 10:31:53
|
OK, will be (cherry-picked) to 1.7.x, I expect a new release 1.7.8 tonight. On 07/23/2012 12:08 PM, Erik Vos wrote: >> I'll possibly add and update PD to the lower caption row throughout. > > That's how I have fixed it now. Pushed to master. > > Erik. > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > |
From: Erik V. <eri...@xs...> - 2012-07-23 10:08:34
|
> I'll possibly add and update PD to the lower caption row throughout. That's how I have fixed it now. Pushed to master. Erik. |
From: Erik V. <eri...@xs...> - 2012-07-22 22:00:55
|
> I will release Rails 1.7.8 tomorrow, maybe Erik will add his fix for the status > window bug too? Will try, if I can decide what the fix will be. I'll possibly add and update PD to the lower caption row throughout. |
From: Stefan F. <ste...@we...> - 2012-07-22 21:38:56
|
Thanks for reporting this bug: This was a pretty stupid one caused by my own code for the ClosePrivate action. There was the transient keyword missing for the PrivateCompany field to avoid its de-serialization (Rails never serializes the objects themselves, only the identifiers/names). I have attached both the fixed save file and a save file including the ClosePrivate action added. Fix is pushed to the Rails1.7.x branch. I will release Rails 1.7.8 tomorrow, maybe Erik will add his fix for the status window bug too? Stefan On 07/22/2012 03:36 AM, John David Galt wrote: > Warning: 200+ column ASCII-art follows. > > On 2012-06-13 15:49, Erik Vos wrote: >> My commit also includes Stefan's fix for closing the PfB manually. > > This patch appears to cause a new problem. Once I have closed PfB manually, > saving the game no longer works for the rest of that game. > > When I try to perform a save I get this pop-up: > > +-----------------------------------------------------------------------------------------------+ > | Message | > +-----------------------------------------------------------------------------------------------+ > | Save failed, reason: rails.game.PrivateCompany | > | Unexpected action: Save path=C:\Programming\Rails\1835_20120722_0112_OperatingRound 8.1.rails | > | | > | [ OK ] | > +-----------------------------------------------------------------------------------------------+ > > The save file is still created (and attached to this message), but trying to > reload it produces this pop-up: > > > +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ > | Message | > +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ > | Load failed, Reason = writing aborted; java.io.NotSerializableException: rails.game.PrivateCompany To improve Rails please submit save file to Rails user list at rai...@li... | > | Load failed, Reason = loaded file has less actions than current game To improve Rails please submit save file to Rails user list at rai...@li... | > | | > | [ OK ] | > +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > > > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > |
From: John D. G. <jd...@di...> - 2012-07-22 01:36:56
|
Warning: 200+ column ASCII-art follows. On 2012-06-13 15:49, Erik Vos wrote: > My commit also includes Stefan's fix for closing the PfB manually. This patch appears to cause a new problem. Once I have closed PfB manually, saving the game no longer works for the rest of that game. When I try to perform a save I get this pop-up: +-----------------------------------------------------------------------------------------------+ | Message | +-----------------------------------------------------------------------------------------------+ | Save failed, reason: rails.game.PrivateCompany | | Unexpected action: Save path=C:\Programming\Rails\1835_20120722_0112_OperatingRound 8.1.rails | | | | [ OK ] | +-----------------------------------------------------------------------------------------------+ The save file is still created (and attached to this message), but trying to reload it produces this pop-up: +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Message | +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Load failed, Reason = writing aborted; java.io.NotSerializableException: rails.game.PrivateCompany To improve Rails please submit save file to Rails user list at rai...@li... | | Load failed, Reason = loaded file has less actions than current game To improve Rails please submit save file to Rails user list at rai...@li... | | | | [ OK ] | +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |
From: John D. G. <jd...@di...> - 2012-07-21 18:39:38
|
Erik Vos wrote: > Both the upper and lower captions are initialized according to the priority > situation at game starting/loading time, but only the upper caption is ever > updated to show a changed PD. I've just started an 1851 game in 1.7.7 and encountered the above, plus two more bugs (at least I think they are bugs). 1. As soon as the Start Round ends and the rest of Stock Round 1 begins, the president's holding of L&N is shown with "P" after it, not "PU", even though it hasn't yet floated. This bug appears to be common to several games (By in 1835 does it too). 2. When the 5th share of L&N is purchased, floating the company, and its remaining 5 shares are moved from IPO to treasury, its price also goes up as if the company had been fully owned at the end of a stock round. (SR1 has not ended, but its founder is now prevented from buying the 50% he had set the par price to enable.) |
From: Mike B. <com...@ip...> - 2012-07-18 17:13:59
|
As I recalled his orginal thread, the complaint was about CGR shares left unsold/unallocated. Obviously I was mis-remembering! Thanks for setting me straight on this, Stefan! I'll get back to the testing shortly! Mike Bourke Campaign Mastery http://www.campaignmastery.com Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com -----Original Message----- From: Stefan Frey [mailto:ste...@we...] Sent: Thursday, 19 July 2012 1:53 AM To: Development list for Rails: an 18xx game Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? I cannot follow your arguments, but maybe my unfamiliarity with 1856 plays a role here: Are we talking about the same bug form the sf tracker, quoted below? Why do you assume this is related to CGR? Stefan "I've always understood (and played) the 1856 game rules to be that if certificates are still in IPO, then that portion of the dividend goes to the bank and not to the company treasury. Only open market certificates are paid into the company treasury. A cursory look at some postings on the 1856 forum on boardgamegeek agrees with this. I'm brand new to rails, but it appears that payouts are staying in the company treasury early in the game when a substantial portion of the certificates are still in IPO. I looked through the options to see if this is something that has to be turned on, but nothing was obvious. From the bug reports, it appears that people have been playing 1856 on here for over 2 years, so I'm guessing there is something that I've missed. Can someone clear this up for me? Thanks!" On 07/18/2012 05:36 PM, Mike Bourke wrote: > I'm assuming that it was not retained. In theory it's easy, but getting the > loans right so that the CGR is not fully subscribed is against my usual > instinctive habits and playstyle, I have to do it deliberately and not let > my natural instincts have any effect at all. But my instinct from multiple > games played is that he is right, but that it was not the case with earlier > versions of the 1.7.x branch - something that's crept in along the way. > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com > Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com > > -----Original Message----- > From: Stefan Frey [mailto:ste...@we...] > Sent: Thursday, 19 July 2012 1:30 AM > To: Development list for Rails: an 18xx game > Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > Mike: > thanks for looking into that: Maybe the best is to ask the poster > (kdm98) of the bug for a savefile where he experienced the problem? > You should be able to send a message via sourceforge. > Stefan > > On 07/18/2012 01:54 PM, Mike Bourke wrote: >> Attempted to replicate this a couple of times but it's trickier than it >> looks to get the timing right to replicate the exact circumstances >> described. Still investigating. Also have a couple of other bugs that have >> come to my attention that I will be reporting on shortly, one in 1851 and >> another that is also in 1856. >> >> Mike Bourke >> Campaign Mastery http://www.campaignmastery.com >> Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com >> >> -----Original Message----- >> From: Stefan Frey [mailto:ste...@we...] >> Sent: Tuesday, 17 July 2012 9:58 PM >> To: Development list for Rails: an 18xx game >> Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? >> >> There is a bug reported on the issue tracker, that for 1856 Rails pays >> revenue for shares in the IPO into company treasury. >> I doubt that such a bug could still exist for the heavily scrutinized >> 1856 implementation ;-) >> As I am no expert for 1856, can someone else have a look into this? >> Stefan >> >> >> See: >> > http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid >> =723360 >> >> > ---------------------------------------------------------------------------- >> -- >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Rails-devel mailing list >> Rai...@li... >> https://lists.sourceforge.net/lists/listinfo/rails-devel >> >> >> >> --- >> avast! Antivirus: Outbound message clean. >> Virus Database (VPS): 120717-1, 18/07/2012 >> Tested on: 18/07/2012 9:54:16 PM >> avast! - copyright (c) 1988-2012 AVAST Software. >> http://www.avast.com >> >> >> >> >> > ---------------------------------------------------------------------------- > -- >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Rails-devel mailing list >> Rai...@li... >> https://lists.sourceforge.net/lists/listinfo/rails-devel >> > > > > ---------------------------------------------------------------------------- > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120717-1, 18/07/2012 > Tested on: 19/07/2012 1:36:09 AM > avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > ---------------------------------------------------------------------------- -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > ---------------------------------------------------------------------------- -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Rails-devel mailing list Rai...@li... https://lists.sourceforge.net/lists/listinfo/rails-devel --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 120717-1, 18/07/2012 Tested on: 19/07/2012 3:13:57 AM avast! - copyright (c) 1988-2012 AVAST Software. http://www.avast.com |
From: Erik V. <eri...@xs...> - 2012-07-18 15:58:44
|
I added the following comment into the bug tracker: "I did a quick check with a case where shares are both in IPO and Pool, and everything looks OK to me. Pool pays dividend to the company (minus any loan interest), IPO doesn't. I would need a saved file with a clear example to investigate this further." Erik. > -----Original Message----- > From: Mike Bourke [mailto:com...@ip...] > Sent: Wednesday, July 18, 2012 5:36 PM > To: 'Development list for Rails: an 18xx game' > Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > I'm assuming that it was not retained. In theory it's easy, but getting the > loans right so that the CGR is not fully subscribed is against my usual > instinctive habits and playstyle, I have to do it deliberately and not let my > natural instincts have any effect at all. But my instinct from multiple games > played is that he is right, but that it was not the case with earlier versions of > the 1.7.x branch - something that's crept in along the way. > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com Co-author, Assassin's > Amulet http://www.legaciescampaignsetting.com > > -----Original Message----- > From: Stefan Frey [mailto:ste...@we...] > Sent: Thursday, 19 July 2012 1:30 AM > To: Development list for Rails: an 18xx game > Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > Mike: > thanks for looking into that: Maybe the best is to ask the poster > (kdm98) of the bug for a savefile where he experienced the problem? > You should be able to send a message via sourceforge. > Stefan > > On 07/18/2012 01:54 PM, Mike Bourke wrote: > > Attempted to replicate this a couple of times but it's trickier than > > it looks to get the timing right to replicate the exact circumstances > > described. Still investigating. Also have a couple of other bugs that > > have come to my attention that I will be reporting on shortly, one in > > 1851 and another that is also in 1856. > > > > Mike Bourke > > Campaign Mastery http://www.campaignmastery.com Co-author, > Assassin's > > Amulet http://www.legaciescampaignsetting.com > > > > -----Original Message----- > > From: Stefan Frey [mailto:ste...@we...] > > Sent: Tuesday, 17 July 2012 9:58 PM > > To: Development list for Rails: an 18xx game > > Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > > > There is a bug reported on the issue tracker, that for 1856 Rails pays > > revenue for shares in the IPO into company treasury. > > I doubt that such a bug could still exist for the heavily scrutinized > > 1856 implementation ;-) > > As I am no expert for 1856, can someone else have a look into this? > > Stefan > > > > > > See: > > > http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=13217 > 3&atid > > =723360 > > > > > ---------------------------------------------------------------------------- > > -- > > Live Security Virtual Conference > > Exclusive live event will cover all the ways today's security and > > threat landscape has changed and how IT managers can respond. > > Discussions will include endpoint security, mobile security and the > > latest in malware threats. > > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > _______________________________________________ > > Rails-devel mailing list > > Rai...@li... > > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > > > > > --- > > avast! Antivirus: Outbound message clean. > > Virus Database (VPS): 120717-1, 18/07/2012 Tested on: 18/07/2012 > > 9:54:16 PM avast! - copyright (c) 1988-2012 AVAST Software. > > http://www.avast.com > > > > > > > > > > > ---------------------------------------------------------------------------- > -- > > Live Security Virtual Conference > > Exclusive live event will cover all the ways today's security and > > threat landscape has changed and how IT managers can respond. > > Discussions will include endpoint security, mobile security and the > > latest in malware threats. > > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > _______________________________________________ > > Rails-devel mailing list > > Rai...@li... > > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > > > ---------------------------------------------------------------------------- > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and threat > landscape has changed and how IT managers can respond. Discussions will > include endpoint security, mobile security and the latest in malware threats. > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120717-1, 18/07/2012 Tested on: 19/07/2012 1:36:09 > AM avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > ---------------------------------------------------------------------------- -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and threat > landscape has changed and how IT managers can respond. Discussions will > include endpoint security, mobile security and the latest in malware threats. > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel |
From: Stefan F. <ste...@we...> - 2012-07-18 15:53:27
|
I cannot follow your arguments, but maybe my unfamiliarity with 1856 plays a role here: Are we talking about the same bug form the sf tracker, quoted below? Why do you assume this is related to CGR? Stefan "I've always understood (and played) the 1856 game rules to be that if certificates are still in IPO, then that portion of the dividend goes to the bank and not to the company treasury. Only open market certificates are paid into the company treasury. A cursory look at some postings on the 1856 forum on boardgamegeek agrees with this. I'm brand new to rails, but it appears that payouts are staying in the company treasury early in the game when a substantial portion of the certificates are still in IPO. I looked through the options to see if this is something that has to be turned on, but nothing was obvious. From the bug reports, it appears that people have been playing 1856 on here for over 2 years, so I'm guessing there is something that I've missed. Can someone clear this up for me? Thanks!" On 07/18/2012 05:36 PM, Mike Bourke wrote: > I'm assuming that it was not retained. In theory it's easy, but getting the > loans right so that the CGR is not fully subscribed is against my usual > instinctive habits and playstyle, I have to do it deliberately and not let > my natural instincts have any effect at all. But my instinct from multiple > games played is that he is right, but that it was not the case with earlier > versions of the 1.7.x branch - something that's crept in along the way. > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com > Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com > > -----Original Message----- > From: Stefan Frey [mailto:ste...@we...] > Sent: Thursday, 19 July 2012 1:30 AM > To: Development list for Rails: an 18xx game > Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > Mike: > thanks for looking into that: Maybe the best is to ask the poster > (kdm98) of the bug for a savefile where he experienced the problem? > You should be able to send a message via sourceforge. > Stefan > > On 07/18/2012 01:54 PM, Mike Bourke wrote: >> Attempted to replicate this a couple of times but it's trickier than it >> looks to get the timing right to replicate the exact circumstances >> described. Still investigating. Also have a couple of other bugs that have >> come to my attention that I will be reporting on shortly, one in 1851 and >> another that is also in 1856. >> >> Mike Bourke >> Campaign Mastery http://www.campaignmastery.com >> Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com >> >> -----Original Message----- >> From: Stefan Frey [mailto:ste...@we...] >> Sent: Tuesday, 17 July 2012 9:58 PM >> To: Development list for Rails: an 18xx game >> Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? >> >> There is a bug reported on the issue tracker, that for 1856 Rails pays >> revenue for shares in the IPO into company treasury. >> I doubt that such a bug could still exist for the heavily scrutinized >> 1856 implementation ;-) >> As I am no expert for 1856, can someone else have a look into this? >> Stefan >> >> >> See: >> > http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid >> =723360 >> >> > ---------------------------------------------------------------------------- >> -- >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Rails-devel mailing list >> Rai...@li... >> https://lists.sourceforge.net/lists/listinfo/rails-devel >> >> >> >> --- >> avast! Antivirus: Outbound message clean. >> Virus Database (VPS): 120717-1, 18/07/2012 >> Tested on: 18/07/2012 9:54:16 PM >> avast! - copyright (c) 1988-2012 AVAST Software. >> http://www.avast.com >> >> >> >> >> > ---------------------------------------------------------------------------- > -- >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Rails-devel mailing list >> Rai...@li... >> https://lists.sourceforge.net/lists/listinfo/rails-devel >> > > > > ---------------------------------------------------------------------------- > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120717-1, 18/07/2012 > Tested on: 19/07/2012 1:36:09 AM > avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > |
From: Mike B. <com...@ip...> - 2012-07-18 15:36:12
|
I'm assuming that it was not retained. In theory it's easy, but getting the loans right so that the CGR is not fully subscribed is against my usual instinctive habits and playstyle, I have to do it deliberately and not let my natural instincts have any effect at all. But my instinct from multiple games played is that he is right, but that it was not the case with earlier versions of the 1.7.x branch - something that's crept in along the way. Mike Bourke Campaign Mastery http://www.campaignmastery.com Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com -----Original Message----- From: Stefan Frey [mailto:ste...@we...] Sent: Thursday, 19 July 2012 1:30 AM To: Development list for Rails: an 18xx game Subject: Re: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? Mike: thanks for looking into that: Maybe the best is to ask the poster (kdm98) of the bug for a savefile where he experienced the problem? You should be able to send a message via sourceforge. Stefan On 07/18/2012 01:54 PM, Mike Bourke wrote: > Attempted to replicate this a couple of times but it's trickier than it > looks to get the timing right to replicate the exact circumstances > described. Still investigating. Also have a couple of other bugs that have > come to my attention that I will be reporting on shortly, one in 1851 and > another that is also in 1856. > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com > Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com > > -----Original Message----- > From: Stefan Frey [mailto:ste...@we...] > Sent: Tuesday, 17 July 2012 9:58 PM > To: Development list for Rails: an 18xx game > Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > There is a bug reported on the issue tracker, that for 1856 Rails pays > revenue for shares in the IPO into company treasury. > I doubt that such a bug could still exist for the heavily scrutinized > 1856 implementation ;-) > As I am no expert for 1856, can someone else have a look into this? > Stefan > > > See: > http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid > =723360 > > ---------------------------------------------------------------------------- > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120717-1, 18/07/2012 > Tested on: 18/07/2012 9:54:16 PM > avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > ---------------------------------------------------------------------------- -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > ---------------------------------------------------------------------------- -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Rails-devel mailing list Rai...@li... https://lists.sourceforge.net/lists/listinfo/rails-devel --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 120717-1, 18/07/2012 Tested on: 19/07/2012 1:36:09 AM avast! - copyright (c) 1988-2012 AVAST Software. http://www.avast.com |
From: Stefan F. <ste...@we...> - 2012-07-18 15:30:16
|
Mike: thanks for looking into that: Maybe the best is to ask the poster (kdm98) of the bug for a savefile where he experienced the problem? You should be able to send a message via sourceforge. Stefan On 07/18/2012 01:54 PM, Mike Bourke wrote: > Attempted to replicate this a couple of times but it's trickier than it > looks to get the timing right to replicate the exact circumstances > described. Still investigating. Also have a couple of other bugs that have > come to my attention that I will be reporting on shortly, one in 1851 and > another that is also in 1856. > > Mike Bourke > Campaign Mastery http://www.campaignmastery.com > Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com > > -----Original Message----- > From: Stefan Frey [mailto:ste...@we...] > Sent: Tuesday, 17 July 2012 9:58 PM > To: Development list for Rails: an 18xx game > Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? > > There is a bug reported on the issue tracker, that for 1856 Rails pays > revenue for shares in the IPO into company treasury. > I doubt that such a bug could still exist for the heavily scrutinized > 1856 implementation ;-) > As I am no expert for 1856, can someone else have a look into this? > Stefan > > > See: > http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid > =723360 > > ---------------------------------------------------------------------------- > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > > > > --- > avast! Antivirus: Outbound message clean. > Virus Database (VPS): 120717-1, 18/07/2012 > Tested on: 18/07/2012 9:54:16 PM > avast! - copyright (c) 1988-2012 AVAST Software. > http://www.avast.com > > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel > |
From: Mike B. <com...@ip...> - 2012-07-18 11:54:22
|
Attempted to replicate this a couple of times but it's trickier than it looks to get the timing right to replicate the exact circumstances described. Still investigating. Also have a couple of other bugs that have come to my attention that I will be reporting on shortly, one in 1851 and another that is also in 1856. Mike Bourke Campaign Mastery http://www.campaignmastery.com Co-author, Assassin's Amulet http://www.legaciescampaignsetting.com -----Original Message----- From: Stefan Frey [mailto:ste...@we...] Sent: Tuesday, 17 July 2012 9:58 PM To: Development list for Rails: an 18xx game Subject: [Rails-devel] Potential 1856 bug: Revenue of 1856 IPO shares? There is a bug reported on the issue tracker, that for 1856 Rails pays revenue for shares in the IPO into company treasury. I doubt that such a bug could still exist for the heavily scrutinized 1856 implementation ;-) As I am no expert for 1856, can someone else have a look into this? Stefan See: http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid =723360 ---------------------------------------------------------------------------- -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Rails-devel mailing list Rai...@li... https://lists.sourceforge.net/lists/listinfo/rails-devel --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 120717-1, 18/07/2012 Tested on: 18/07/2012 9:54:16 PM avast! - copyright (c) 1988-2012 AVAST Software. http://www.avast.com |
From: Stefan F. <ste...@we...> - 2012-07-17 11:58:21
|
There is a bug reported on the issue tracker, that for 1856 Rails pays revenue for shares in the IPO into company treasury. I doubt that such a bug could still exist for the heavily scrutinized 1856 implementation ;-) As I am no expert for 1856, can someone else have a look into this? Stefan See: http://sourceforge.net/tracker/?func=detail&aid=3544316&group_id=132173&atid=723360 |
From: Stefan F. <ste...@we...> - 2012-07-16 05:02:10
|
After so many details about the foundations, this mail covers best practice for State usage and various State implementations: So this is definitely interesting for all intending to add some serious code to Rails. Stefan I. What are the joint properties of all State implementations? A) Change their Content according to Undo/Redo actions This is the "State" property: All states have their previous (and future for Redo) values stored. This is done transparently both to the Rails user and the Rails developer. (In fact states do not store previous state, instead a list of changes kept, but from outside there is no difference). B) Derived from Observables It is possible to add Observer(s) and Model(s) to them that get updated as soon as the State changes their content. This update not only occurs at the first execution of the change, but every time the State changes due to Undo/Redo actions. C) Derived from Item So every State will have a parent (usually the enclosing class, so use keyword this) and an id. Best practice is to set this identical to the variable name used (see example below). Remark: It is possible to use null as id here, but this creates an "unobservable" state that is mainly used for low-level mechanisms. II. Creation of States States are created using the create() static method and usually there are two variants, either with a (sensible) default or an initial value. Example: private final BooleanState hasFloated = BooleanState.create(this, "hasFloated") (Default here is false) OR private final BooleanState hasFloated = BooleanState.create(this, "hasFloated", true) Best practice for variables containing states is the following: Make them private and final: Private as it is usually better not to expose the State variable itself, but to provide getter/setters. Final is strongly recommended as usually there is no need to create a new State variable (one can simply change their value) AND overwriting a state variable is not an undo/redo proof mechanism itself (see detailed remark at the end of the text). The principle recommendation for Rails variables is the following: Every object can have two sets of variables: a) Static variables They will never change after the time of creation. Use standard java classes and make them final. (Unfortunately this not possible for those objects that get created from XML via the ConfigurableComponents interface). b) Dynamic variables They can change over time. Only use state classes and make them final too. My recommendation for best practice is to group them accordingly for the class definition. Remark: Another reason to make State variables final is to ensure creation at the time of creation of the containing object itself. If it is set to null at creation time, the undo mechanism will never be able to return to that value, best it can do is to return to the initial value of the state variable. So lazy initialization of a State variable is only undo proof, if the program behaves identical if the state variable is set to null or to the initial value at the time of lazy initialization. Rule of thumb is that the null states does not indicate anything special. Rails1.x uses lazy initialization at several places and I have not checked so far if this does not cause some deeply hidden undo-related issues. So make them final prevents such problems by definition. III. State Implementations I distinguish three groups of State implementations in Rails 2.0: First a group that adds a State wrapper around standard variable types (like int, boolean, String etc). Second a group that does the same to various Collection classes (like HashSet, HashMap, ArrayList etc). And third a group with more specialized state behavior (like Portfolio and Wallet). A) Standard States BooleanState, IntegerState, StringState: Wrap Boolean, Integer and String variables Usage: To change a value use state.set(newValue) The current value is returned via state.value() GenericState: belongs to that group to. This allows to wrap any Java class into a State: Usage: GenericState<T> state = GenericState.create(parent, id) where T is the Java class to add State behavior to. Change and viewing the current value use the same methods as above. Example: A variable to store the current player is created by: private final GenericState<Player> currentPlayer = GenericState.create(this, "currentPlayer") The value is changed by currentPlayer.set(nextPlayer) and the value retrieved by currentPlayer.value() B) Collection States ArrayListState, HashMapState, HashSetState (wrap standard Java collections from java.util) ArrayListMultimapState, HashMultimapState (wrap Multimap classes from Google Guava libraries) Short description; ArrayListMultimap<K,V>: Allows duplicate keys and duplicate (key,value) tuples. It replaces a HashMap<K, ArrayList<V>> construct. HashMultimap<K,V>: Allows duplicate keys, but no duplicate (key, value) tuples. It replaces a HashMap<K, HashSet<V>> construct. Usage: Creation follows the standard pattern. At creation time it is possible to use a confirming (standard) collection as initial value to the state variant. Otherwise most of them have the all methods implemented as their counterpart do (and if one is missing, it is possible to add them). Thus usage of the Collection States is identical to their counterparts. Example: private final ArrayListState<Train> listOfTrains = ArrayListState.create(this, "listOfTrains"); listOfTrains.add(newTrain) listOfTrains.remove(oldTrain) if (listOfTrains.contains(train)) do something listOfTrains.isEmpty() listOfTrains.size() A new method available is .view() which returns an Immutable... version of the collection contained. (Immutable variants provided by the Google Guava library). This creates (a lazy - so usually no overhead) copy of the current state of the collection. This makes it easy e.g. to iterate over the list of trains and to change the list inside the loop without creating an error. Recommendation for Iteration is: for (Train train:listOfTrains.view()) do something with trains ... It is also recommended to use the .view() variant for exposure to the outside world, instead of state collection itself, as it prevents unintended changes. C) Specialized States Those are Portfolio (and Subclasses) and Wallet. Details will be covered in a future mail. Short description: A Portfolio allows to store "Ownable" Items (like Certificates, Trains etc.). Differently to all States above a change of the State will not only effect the State itself (or dependent Observers and Models) but also another State: In this case adding an Item to a Portfolio automatically removes it from the previous holding Portfolio. A Wallet does the same for "Countable" Items (like Money etc.). |