Hi @bbosen, thanks for the reply and for the explanation! Given what you say, would it be an idea to do exactly what the AppImage format asks: use relative paths? E.g. the relative path ../share/file.txt to /usr/bin/lac is /usr/share/file.txt, the relative path to /home/user/bin/lac is /home/user/share/file.txt, and so forth. That's the typical approach for relative handling of absolute paths if I understand it correctly. This way, you'd be able to run the same binary lac in however way you want,...
Currently, LAC's behavior depends on how it is started: lac or /usr/bin/lac or otherwise. In case of /usr/bin/lac started from the home directory, it will fail at startup, with an error description that might not be immediately obvious to new users (it wasn't understandable to me): Info: Dirs::Dirs() Function entry: Info: Dirs::Dirs() myfile = Info: .//LAC Fatal: Binary file has no context to the data files. Are you attempting to run LAC without first running our install.sh script? Please consult...
Currently, LAC's behavior depends on how it is started: lac or /usr/bin/lac or otherwise. In case of /usr/bin/lac started from the home directory, it will fail at startup, with an error description that might not be immediately obvious to new users (it wasn't understandable to me): Info: Dirs::Dirs() Function entry: Info: Dirs::Dirs() myfile = Info: .//LAC Fatal: Binary file has no context to the data files. Are you attempting to run LAC without first running our install.sh script? Please consult...
Currently, LAC's behavior depends on how it is started: lac or /usr/bin/lac or otherwise. In case of /usr/bin/lac started from the home directory, it will generally not run, with an error description that might not be immediately obvious to new users (it wasn't understandable to me): Info: Dirs::Dirs() Function entry: Info: Dirs::Dirs() myfile = Info: .//LAC Fatal: Binary file has no context to the data files. Are you attempting to run LAC without first running our install.sh script? Please consult...
I'd be curious to look.:)
Not that I really play freecol in the last months, but what's the commit hash for the fix? Does sourceforge has some nice trick to push a commit name "... fix SF-3114", and it will understand that the issue is fixed once the branch is merged (or right away if committed to master)?
@Mike, unfortunately, I don't play FreeCol that active anymore, so I guess we can mark the issue as fixed, and restore or raise a new issue if something will come up. // Exhaused early because winning at "maximum" difficulty was too easy, yet contaned many similar easy actions. Dunno how it would be with multiplayer, if it was alive. Sorry, anyway, I hope the project will live.
Well, I know for a fact that setting this property as first line of main() works. So we just need to find the right place for the code. I think I've gotta do it, because I'm the one that can observe different behavior. ( Though I still wonder what happens if you set this on Windows: https://sourceforge.net/p/freecol/bugs/3102/#e5b5/5f89 ) I'll do it a bit later.
Well, I know for a fact that setting this property as first line of main() works. So we just need to find the right place for the code. I think I've gotta do it, because I'm the one that can actually observe different behavior. ( Though I still wonder what happens if you set this on Windows: https://sourceforge.net/p/freecol/bugs/3102/#e5b5/5f89 ) I'll do it a bit later.
Well, I know for a fact that setting this property as first line of main() works. So we just need to find the right place for the code. I think I've gotta do it, because I'm the one that can actually observe different behavior. ( Though I still wonder what happens if you set this on Windows: https://sourceforge.net/p/freecol/bugs/3102/#e5b5/5f89 )
Thanks for explanation!
I must report that the current patch doesn't work, yet. 1. Re-start is needed for such changes to apply, I think. Also, there should be a warning of the need of a re-start in settings. 2. It doesn't, in fact, work even if set to the right value AND re-started. I believe this is because the setting gets set too late, and something else might already sneak in and initialise some graphics subsystem. 3. The setting just shows "Enable OpenGL", with the same hint as the main label. I can't see any explanations...
Hi. I didn't have the time to answer yet, sorry. Too busy with offline work, really. The only things we can do is 1. Raise OpenJDK issue and hope for best. (I'm out, sorry, I think it'll take lots of time and won't be resolved in many years. Though raising the issue itself would be good). 2. add transparency to all PNG images so that they don't tile. IDK about what to do with the video. (Note that, unfortunately, I only receive email notifications when status of the issue changes, but never on comments....
I must report that the current patch doesn't work, yet. 1. Re-start is needed for such changes to apply, I think. Also, there should be a warning of the need of a re-start in settings. 2. It doesn't, in fact, work even if set to the right value AND re-started. I believe this is because the setting gets set too late, and something else might already sneak in and initialise some graphics subsystem. 3. The setting just shows "OpenGL", with the same hint as the main label. I can't see any explanations...
( SF doesn't auto-detect git commits, so it's this commit: https://sourceforge.net/p/freecol/git/ci/a9dafd5/ )
Attaching a savegame. Now, if you load the game and try trading with the wagon train, it'll go OK, you're allowed to buy stuff from Indians. However, if you dump your cargo (1 Tools) and attempt trading, action will fail. Question is: why the difference?
Alternately, wait a few years and see if the problem goes away. Read this in a wrong way first and fell into "stupor". xD The problem is, trading works fine if I add at least 1 Tools to the wagon. And not sell it. Just buy, but with 1 slot instead of 2. I'll try to attach a savegame a bit later.
Didn't know about the chapel. Please close the issue then, it's just my lack of rules knowledge.
Hi. I didn't have the time to answer yet, sorry. Too busy with offline work, really. The only things we can do is 1. Raise OpenJDK issue and hope for best. (I'm out, sorry, I think it'll take lots of time and won't be resolved in many years. Though raising the issue itself would be good). 2. add transparency to all PNG images so that they won't tile. IDK about what to do with the video. (Note that, unfortunately, I only receive email notifications when status of the issue changes, but never on comments....
--deleted--
@Beep6581 try to start the game with java -Dsun.java2d.opengl=true -jar FreeCol.jar ?
still can't unload tools at all no matter how from Dutch starting Merchantman ship. Somewhy it doesn't work with the recent commits. Tested on commit 271facbfd7f3690d518009357dc61a965655d029
Confirming, it's fixed. Thank you!
Confirming, the bug is fixed. Thank you!
Confirming, the bug is closed. Thank you!
At least this is what I observe if I use a Merchantman (like Trade-er nation or Naval nation built-in), unload units, load 50 muskets and try to unload 50 muskets. In some other scenarios unloading works, it seems.
Should colonits be commisionable to "messionary" in colony?
Confirmed, it works. Thank you!
Maps are not games. They are incomplete. Well yes. But this is what I do anyway. I create a map (any map at all), and then try to open it as a game. The UI allows me doing that. Did you have to navigate to the map directory to find them or were they offered by default? Yes, they are/were offered by default. Actually, I don't even have a "map" directory, so IDK what you're talking about, exactly. When I start "Map Editor" and click "Save", the save directory is offered by default. So I click OK and...
Can't confirm because as of commit 210a8e9a415f25430ae4f665da316a1f26b841b9, there's no possibility to either dump your cargo or unload it. I mean at all. Unload in colony, or dump in open sea, or anyhow.
This usually applies to "surrender" action, too.
Seems to be fixed. Thank you!
Mike, the bug is indeed fixed now. Issue can be closed. Thank you!
Sourceforge doesn't seem to allow commit lines commenting, so I'll comment here. Is it OK?: } catch (IOException ioe) { / ignore / } Should we maybe log what's going on? Like logger.warn("Failed to set directory permissions for " + dir.toPath()) ? Or the System.out thing, anyway.
Sourceforge doesn't seem to allow commit lines commenting, so I'll comment here. Is it OK?: } catch (IOException ioe) { / ignore / } Should we maybe at least log what's going on? Like logger.warn("Failed to set directory permissions for " + dir.toPath()) ? Or the System.out thing, anyway.
Well I would personally prefer to always have a warning, and explicitely ignore it if you know your ship is waiting for someone. Anyway, you may know user habitats better, so I think it's up for you to decide, I don't mind any solution. On another topic, from what you tell, the "movements" really have no impact in Europe. So that would indeed mean a minor bug and a leaky abstraction. People might think that these 0/- mean something, yet they don't. Anyway, I'm in favor of either closing the issue...
Mike, second line in the description... - have a wagon with partial movement (say, 1/2) in the same colony So, it's about units that already moved during a turn, but can still unload and continue movement -- all within the same turn.
It actually happens not only when taking land from natives, but always on the current master: https://sourceforge.net/p/freecol/bugs/3099/ You need to compile by choosing a commit earlier than that I linked to, I guess (if you want to compile from sources and play conveniently).
UPD: I fould out the following: if the image is a "transparency-enabled" PNG (it has at least one partially transparent pixel), there is no bug. This feels less surprising now as a transparency thing may very well be rendered differently than a thing without transparency.
I've tried net-searching it before and tried openjdk bug tracker now. Unfortunately, I wasn't able to find anything useful. Thing is, it would actually make sense to raise a bug. I just didn't wanna do it cause I'm somewhat lazy. But maybe I should anyway.
(according to logs, port is 3540)
meta.freecol.org doesn't work -- known problem?
Unable to trade with empty WagonTrain
Attached is a savegame with a ship that can be unloaded.
Unloading cargo graphics bug
Attached savegame. Load it, select ship, move to the left twice (into native settlement).
Unable to trade with "Unknown" city
UPD: "good" news. I'll still have to sell my soul to the devil, but even setting partial transparency on the upper-left pixel does the trick. So it can be made almost visually indistinguishable (at least if no one can find that 0.3-1% transparency with his eyes).
I did some work in trying to fix java2d.opengl graphics. Results so far: 1 . No "code" solution was found. The main testing arena is MainPanel.java. Testing can be done near the add(logoLabel) line. For example, like this: add(new JLabel(new ImageIcon("data/rules/classic/resources/images/ui/freecol2.png"))); Unfortunately, the bug just persist, and no tricks I know of could help. 2 . Accidentally, I found out that altering the image may help. After lots of testing, the problem was reduced to this...
I did some work in trying to fix java2d.opengl graphics. Results so far: No "code" solution was found. The main testing arena is MainPanel.java. Testing can be done near the add(logoLabel) line. For example, like this: add(new JLabel(new ImageIcon("data/rules/classic/resources/images/ui/freecol2.png"))); Unfortunately, the bug just persist, and no tricks I know of could help. Accidentally, I found out that altering the image may help. After lots of testing, the problem was reduced to this simple...
What if you set it to false? Like -Dsun.java2d.d3d=false or -Dsun.java2d.opengl=false or -Dsun.java2d.noddraw=true? It's really interesting how it behaves differently on other platforms. BTW, which java version do you have?
I think this may depend on the java version you use. Mine is OpenJDK 64-Bit Server VM (build 9+181, mixed mode).
java2d, checking "Congress Advisor" Note that all pictures in this screenshot and the previous one get to normal if you load some other tab and return to this tab back. In other words, it works correctly on second load, but is always buggy on first load.
java2d, choosing founding father
If the issue gets confirmed, please remove the "needs more info" status..
configurable "Hardy Pioneer"
I'm okay with limiting drag&drop quantities to 100 for Europe. IDK how to implement it myself tho.
I can't comment on the Merge Requests somewhy (sf.net feels really strange after gitlab/gogs/github). So I'll need to comment here. Another downside of the PR I provided: java options get hardcoded into source, which is not overridable further. That's bad. I think about closing the MR and creating a new one, which would recommend to do stuff in "help", not force it.. Dunno how to do it best. Both hard-coding and such slowness are horrible.
fix command line arguments
This is how startup notification looks like (the first thing you see, before video):
Merge request: https://sourceforge.net/p/freecol/git/merge-requests/56/ needs testing! For example, the main screen title looks like this on my comp
force java to use the "quick" java2d version
Wow! I finally was able to fix it! The final answer was found here: https://wiki.archlinux.org/index.php/Java#Better_2D_performance It is to run FreeCol.jar with -Dsun.java2d.opengl=true property. Setting it at runtime via System.setProperty() works, too. I'll try to submit an MR now. The downside of this approach is that the starting screen, as well as some other screens, get buggy. At least on my system. Needs testing, I guess. But on the up side, calculation, changing map center, opening and closing...
@Mike, Maybe you're right. I personally kinda like the fact that you can sell 400 goods simultaneously at better price, it seems natural to me. But without possibilities for exploitation. Then again, a limit of 100 has its own benefits, too. Talking about numbers, a value of 300 may disallow such an exploit already. I can find the exact value if needed.
If anyone's interested in how much you can push this technique at. The optimal buying sequence seems to be: +600 +100 + 100 - 600 - 100 - 100. It works up to a tax rate of about 40% (40.9% IIRC). Each cycle gives you 2700 gold. The minimal amount of gold to make it work under such tax rate is about 7500 gold with free horse utilization and a free caravel, or 10500 with only caravel, or 11500 pure gold without any help of other ships.
Once the issue gets confirmed, we can discuss how to fix it. The easy&dirty fix would be to limit the number of goods that can be sold/bought simultaneously. Like, not allowing amounts bigger than 300. Another implementation might be to limit the number of items to "when price changes + 100". So if price changes when you buy 139 goods, allow 239 of this good to be bought simultaneously. Thoughts?
Once the issue gets confirmed, we can discuss how to fix it. The easy&dirty fix would be to limit the number of goods that can be sold/bought simultaneously. Like, not allowing amounts bigger than 300. Another implementation might bo to limit the number of items to "when price changes + 100". So if price changes when you buy 139 goods, allow 239 of this good to be bought simultaneously. Thoughts?
Once the issue gets confirmed, we can discuss how to fix it. The easy&dirty fix would be to limit the number of goods that can be sold/bought simultaneously. Like, not allowing amounts bigger than 300. Another implementation might bo to limit the number of items to "when price changes + 100". So if price changes when you buy 139 goods, allow 239 of this good to be bought simultaneously. Thoughts?
"Stock market crash": price manipulation
Exactly. This should only appear on OOS or other kinds of exceptions. But instead it happens "normally" when you unload more than you have. BTW, I re-tested the steps above, and it actually happens when unloading any kind of cargo anywhere. Like unloading 2 food from a ship that only has 1 food. Or from Wagon. It reproduces 100%.
Error message "Server can't do that" unnecessary while unloading
UI bug: screen goes blank after cancelling map load
UPD: it only works for UNloading cargo. Loading cargo removes remaining movement in any approach.
I found this error in the error log: java.util.logging.LogManager$RootLogger log WARNING: Uncaught exception from thread: Thread[ReceivingThread-FreeColClient:vasya-question-32-multiple,6,main] Wed Oct 25 02:20:42 MSK 2017 Thread: 285 Stack trace: java.lang.RuntimeException: Missing option: at net.sf.freecol.common.option.OptionGroup.getOption(OptionGroup.java:430) at net.sf.freecol.common.option.OptionContainer.getBoolean(OptionContainer.java:63) at net.sf.freecol.client.control.InGameController.displayModelMessages(InGameController.java:698)...
Feature request: make everything visible upon game end
EDIT: you can even exchange resources between two carriers(ship/wagon) which o...
Wagon can avoid movement loss when loading/unloading
no warning for task-less ship in Europe
UI very slow - bug or feature^W normal?
I've set a wrong milestone. It's NOT fixed in the master branch, it's still present. Probably "Milestone" should be set to "current". I'm not sure about the terminology.
I've set a wrong milestone, I think. It's NOT fixed in the master branch, it's still present. Probably "Milestone" should be set to "current". I'm not sure about the terminology.
-
I'm using Arch / XFCE, but it's not really relevant because I run freecol in a jailed environment. The filesystem on ~ is a separate mount in the jail, which is initially empty. I wonder how XDG-compliant apps should behave if those dirs are non-existent. All programs I encountered so far just create everything they need. As far as I understand XDG, it tells where to store your files, but does not say you dirs should already be created. // As a side note, I like freecol be compliant to XDG specs...
Reproducable bug between human moves
I've set a wrong milestone, I think. It's NOT fixed in the master branch, it's still present. Probably "Milestone" should be set to "current". I'm not sure about the terminology.
freecol fails to launch if ~/.config ~/.cache ~/.local/share are not present
Incorrect updates for colony view, tile and building production
Sorry, to reproduce this bug I have to "click" elsewhere on the screen, not the "Thanks"...
PIN code not cleared, leading to security problems