 |
|
stankarp
|
|
australia
Feb 2002 time: 05:30
|
|
Quick reply.
I am uploading the Diplomacy Update now.
Certain key resources appear more than once on different terrain types, copper, iron, horses etc. This is to ensure there are a fair sprinkiling of those goods available.
|
|
|  |
 |
|  |
 |
|
Unspeakable Horror
|
|
Does this mod require the Activision 1.1 patch or the Apolyton patch? Or none? 
Edit: Activision patch is required.
Last edited by Unspeakable Horror on 20-08-2005 at 00:06
|
|
|  |
 |
|
stankarp
|
|
australia
Feb 2002 time: 05:30
|
|
No, I cannot advise anything. I have had my hands full doing AOM and have not tried doing anything with other uses or functions, source code etc.
|
|
|  |
 |
|
Fromafar
|
|
It is difficult to advise without knowing your exact setup.
I have installed the original game (patched to 1.1, but otherwise unmodified), the full AOM distribution (+ patches), and the playtest in 3 separate directories. On top of that, I have a 4th directory tree for additional modifications.
The Rulesets line in my playtest\ctp2_code\ctp\userprofile.txt contains the - relative - paths of the additional modifications, the AOM distribution, and the original game, in that order. Execpt for the modified uidata\layouts\*.ldl files, which I have copied to the additional modifications, I am not using the data files of the playtest at all. There just are too many text file incompatibilities to sort out. Unfortunately, this means that some buttons do not have text. But I usually can guess, or just avoid the button.
Regarding the relabelled AOM files: check the contents of the AOM\ctp2_data\default\gamedata\gamefile.txt. If the names in there are the relabelled ones, it should work. If the names in there are the original ones, you may have to use modswapper or modmanager to update it with the contents of AOM_gamefile.txt.
However, there is a possibility that it will only work with some of my uncommitted - under test - local source code modifications. Just let me know if anything goes wrong.
|
|
|  |
 |
|
Martin Gühmann
|
 |
Berlin, Germany
Mar 2001 time: 06:30
|
|
quote: Originally posted by Fromafar
Unfortunately, this means that some buttons do not have text. |
That's not such a big problem, just extract the modified and new strings from the modified text files and put them into a seperate file not a big deal with TortoiseMerge. And then remove all the relabled original string files from Strings.txt and add your new string in front of all the other string files and vola no missing text.
To demonstrate that this is very easy here is such a file pair. It goes into your ..\ctp2_data\english\gamedata\ directory.
-Martin
Attachment: aom_newstrings.zip
This has been downloaded 1 time(s).
Last edited by Martin Gühmann on 01-09-2005 at 21:21
|
|
|  |
 |
|
Fromafar
|
|
The main problem with this solution is that you have to repeat it every time a new version of AOM is released . I really don't want to do that, unless it can be automated somehow.
The missing strings reports are a dead giveaway that something is incompatible. You may not be able to observe it immediately, though. It is more likely the lack of special events that is going to be the problem.
Like a missing treaty expiry message: some hardcoded new constants in Diplomat.cpp, combined with TREATY_TO_EXPIRE having been moved from cut_str.txt to info_str.txt. AOM uses AOM_info_str.txt (based on the original info_str.txt), and does not expect TREATY_TO_EXPIRY in this file.
Each change in itself was really harmless. You have reorganised strings a little, to group related strings together, causing just a slight incompatibility. This is unlikely to be a problem, unless you have a mod changing (only) one of the 2 files. And actually, you only moved a couple of strings that were almost never used.
Someone else had a nice idea for a code change: let's make these eternal treaties expire after some turns. Just a slight incompatibility. No problem, because care was taken to notify the player a couple of turns in advance when treaties were going to expire.
Unfortunately, the notification message string happened to be one of the missing moved strings. I wasted a couple of days to find out what had happened to my treaties when I was trying to test some suspect withdrawal code that never seemed to fire properly . I had never noticed the treaty expiry code modification change, because it had been buried in a pile of other changes.
For maximum compatibility, just avoid moving things around, always append new items at the end of existing lists, and treat missing string reports as compiler warnings. 
|
|
|  |
 |
|
Martin Gühmann
|
 |
Berlin, Germany
Mar 2001 time: 06:30
|
|
quote: Originally posted by Fromafar
The main problem with this solution is that you have to repeat it every time a new version of AOM is released . I really don't want to do that, unless it can be automated somehow. |
If Stan would include it in the next update it wouldn't be a problem. However I could do it the other way around and put all the new and moved strings into junk_str.txt, and remove it from the source code imports, would a be a little bit more work.
quote: Originally posted by Fromafar
For maximum compatibility, just avoid moving things around, always append new items at the end of existing lists, and treat missing string reports as compiler warnings. |
You can't garantee maximum compatibility, the slic engine saves the strings as integers, instead of using the names of the string IDs. If I want to continue a game from a Demo game for instance I have to reload slic, because of this and because of the fact that the strings in the different language versions aren't in the same order. In fact some of the strings are in different files.
In fact the AOM_info.txt is such an example of this, it is based on a version for CityMod2 and at that time I was unaware that the strings I found in the German version of info_str.txt could be find in add_str.txt, so I added them from the German version in translation, interestingly they were never used until I added them to AOM_NewStrings.txt. So I removed them and added a new version to my last post.
And another thing is that you have to test the slic engine as well for the MP database sync check, and with different string databases it would fail.
-Martin
|
|
|  |
 |
|
stankarp
|
|
australia
Feb 2002 time: 05:30
|
|
This is an announcement to let people know I am working on the "Icing on the Cake" of AOM.
The diplomacy update meant that once you achieved diplomatic relations with ai (the more aggressive ones were harder, but eventually came across), you were in control of the game, a little too early IMHO.
The problem here was that AI rarely break their treaties against a more powerful player. But AI vs AI war would continue.
So I am working on an update that does 2 main things.
1) Causes the AI to possibly cancel treaties if your aggression level is too high. As part of this, you may be forced at time to give PW aid to an ai or suffer an aggression increase for being heartless. More aggressive AI personalities will cancel their treaties earlier than passive AI.
2) In AI vs AI wars where the AI are close to the human, I am attempting to get those AI to make peace with each other and sign a peace treaty.
Some other things include:
a) making the AI attack a little better against the human,
b) a palace coup option in case you are facing sucession problems (which can happen if you find a King in a ruin),
c) multiple victory options (Science and diplomacy),
d) more ways for frenzy to go up and down, and
e) a small variation for which turn certain historical events occur (the current turn being the earliest now and they may ocur up to 10 turns after that).
I will also be looking at the across water invasion issue.
Work will then commence to transfer AOM to ACS.
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:30
|
|
quote:
b) a palace coup option in case you are facing sucession problems (which can happen if you find a King in a ruin), |
btw is it normal to have a king live 200+ turns?
|
|
|  |
 |
|
stankarp
|
|
australia
Feb 2002 time: 05:30
|
|
quote: btw is it normal to have a king live 200+ turns? |
No, he is supposed to live a maximum of 80 turns. However, I have had an odd occassion where he has not died (very rarely).
Slic is not absolutely 100% reliable.
It has been suggested in an AOM thread that you may need a suicide mission for a 2nd King every now and then (get rid of that palace rival) to restore things to the status quo.
|
|
|  |
 |
|
stankarp
|
|
australia
Feb 2002 time: 05:30
|
|
One thing which I may have not made onvious, and may explain things, .cannot do a reloadslic in AOM . It empties all the slic arrays and basically stuffs that game. you have to start again. However, what I am pleased about with AOM, is I can and have won games right to the end (turn 600+) without a fatal CTD. So have at least 3-5 others AFAIK. I have so many arrays in AOM, eg, age counters for wonder units, kings and heroes, that a reloadslic is not an option, it kills that game. But I have not had a game this year where I have HAD to do a reloadslic.
I have made some progress in the cross water invasions code.
After some initial success (being able to get the ai to sail to the human and even drop of an army), I ran into the bigger picture problem of loading. The issue is that there appeared to be no way to tell if a navy had a cargo or not.
I have done some initial experiments and now believe it is possible. I have about 35% of the code working no question.
I have now written test code to prove that I can monitor loading and unloading by ai navies. Now the thing (which I have never done) but is entirely feasible, is to create arrays to record the names of AI navies, 2 sets, one of assualt navies (which have loaded troops) and one for transport navies( which have unloaded). Frenzy already contains arrays which name armies so I am copying those.
Hopefully within a week, I will be ready to test the whole code. It is very slow as I need to be sure each stage is working before proceeding, so I am using extensive checkers inserted into the game to monitor events, replaying things in cheat mode on numerous occassions to see what my code is doing.
|
|
|  |
 |
|  |
All times are GMT. The time now is 05:30. Apolyton Time is 00:30. |
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
|
|
|
|
|
|