 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:25
|
|
The crashbug which shows the ai stacktrace is due to the lack of an ai 'profile' in the relevant scneario files. If you want to bypass it, you can copy the ai sections of Delenda into the other scenarios civilisation section. I'll correct it so that it is not necessary, particularly if the -newai switch is not on, and adjust the scenario files as needed.
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:25
|
|
Vovan, can you check the isEnemy function? With your code added, everything is very peaceful. I didn't see why, but in game.military.lists.SquareData.getEncounter(), we check if the civs are enemies and Carthage and Rome aren't enemies. That's true of all scenarios, even though diplomatic status has been set to war in the scenario file. Can you check this? Also, it looks like you could use singletons for your diplomatic statuses rather than calling new War() every so often?
The good point is diplomacy has an effect on the game. I'll implement it so that you dont take territory of a civ you're not at war with.
|
|
|  |
 |
|
TheDarkside
|
 |
Slayer
Oct 2001 time: 05:25
|
|
Hey guys, I am new to the team and lemme just say I'm thrilled to be working with all of you on this project. The first thing I have been looking into which seemed a good easy thing to start on is bug #166, to refresh your memory:
quote: --166 (Heffalump/Mark) It looks like a bug has crept into the unloading menu code. Below is the way it usually works.
To unload:
1. put the ship on a coastal square
2. left-click on either a ship in the carrying TF or the carried TF and select the unload option.
That's it.
It looks like the bug is making those unload options not appear at first. This results in a very short set of options. A work-around is to select the transporting TF with a mouse click. This makes at least the unload option for the ship appear. Selecting the carried TF seems to make the unload option appear for those.
|
It's a simple fix to get to work the way Mark intended. But while looking into the code I noticed there's another bug here... it won't let you take a task force of ships and load more than one individual unit on them, even if they can fit. As a demonstration, load up Carthage scenario and grab the three trireme task force on sicily. Loading that lone legion is no problem, now sail over to another place with a lone legion and try to laod him: it won't let you. Now empty the ships, take two legions and combine them into one task force. Now you can load them both together. This too is a simple fix but I just wanted to let you know about it.
Now while working with this I thought there was ways I could improve it a little bit but I need to see what you all think. One thing is, it looks like if you have several units on a ship, and click the unload command, you dump them all off. I was thinking it might be nice if you could right-click the particular unit you want to unload and unload him individually, or right-click the ships to get an 'unload all' command. Let me know what you think.
-Tony
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:25
|
|
Hey Tony, an official welcome to the forum! 
quote: Originally posted by TheDarkside
One thing is, it looks like if you have several units on a ship, and click the unload command, you dump them all off. I was thinking it might be nice if you could right-click the particular unit you want to unload and unload him individually, or right-click the ships to get an 'unload all' command. Let me know what you think. |
This sounds good to me, although maybe it should be by TF rather than by unit. However I'm not really up on that part of the interface and code, so there might be some bad ramification that I'm not thinking of to do it that way. Be best to see what Laurent and Gary think. However their web access is in short supply now, so if there isn't much time invested to do it, you could just try and see how it works.
Great to have you in the team!
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:25
|
|
There is one loaded land TF per naval TF, not one unit.
The most important thing is that a TF must be carried by a single naval TF, otherwise, you have headaches figuring out what happens when you split the naval units.
If you want to load several units on a ship, it's better to have them all in a single TF right now because the code behaves that way. I'd rather keep it this way because I think we have enough lists everywhere and there's no point adding a list where a single TF can work as well.
The point is we should be able to add units to the carried TF if the boats allow it.
The best would be to add the units to the carried TF, is the carrier has the capacity to do so, so that we can retain a single TF carried by the ship.
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:25
|
|
I'm tracking lots of NullPointerExceptions when the new ai is enabled. Some are due to multithreading, so I have to add a few synchronized blocks where it makes sense. Others come from other bugs, ot maybe not bugs:
A civ may not have a capital. This can happen if it only has units, but no square, but maybe sometimes too when it had no square and, later, conquered a new one. I am not absolutely positive about that, but I know I shouldn't plan to take a capital if there is none.
What's the exact role of a civ capital by the way? Currently, taking cities or capitals is not that useful in itself, it is just a kind of heuristic which tells the ai that a square looks interesting. Being a heuristic, it lends itself to abuse easily, so I ask: what is a civ capital for?
|
|
|  |
 |
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:25
|
|
I fixed the diplomatic bug which prevented fights from happening.
I didn't make all the changes I would have liked to to the diplomatic code. Mostly the problem stems from the use of a new Clss.InnerClass() pattern instead of class.InnerDataMember pattern:
When comparing two diplomatic statuses, isEqual was called but not implementing. It shouldn't even be necessary to implement it if there was a single wr object (either a singleton of Diplomatic.War class or a static data member of Diplomatic class).
I think that the code will have to be updated smeday so that diplomatic status can be written as "war" in the xml file rather than "-1".
|
|
|  |
 |
|  |
All times are GMT. The time now is 05:25. Apolyton Time is 00:25. |
top of page
|
|
|
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|