Discussion in 'Fall Further' started by Vehem, Feb 22, 2008.
Vehem -- why is it I have so many CtD's with FF and not with FfH????
Yeah, unfortunately I'm having more seemingly random CtDs with FF too, which is one reason why I haven't started my real modmod yet (that, plus the fact that xienwolf hasn't uploaded an up to date FF-free version his modcomp on which t base my modmod). It typically seems to crash between turns 200 and 300, but my last game made it to about turn 500 without a CtD (it ended in a MAF instead).
MagCult -- Same here. It's either somewhere close to turn 300 as you said, or on-going series of CtD's after which I can reload, play another one or two turns, and re-CtD once again (especially with the Kahdi). I also had the problem with Hyborem (which I did not use have with FfH). Go figure...
On the other hand, I've played several of the other FF new races to completion without too many problems (to turns 500-600) after the issues with spiders and whatnot got taken care of.
Probably because there are things in FF that aren't in FfH? Notably the artwork which I'm starting to think may be part of the problem you're having.
The Geforce FX 5200 was an entry level card (bottom of the 5xxx range) when it was released in 2003 - odds are that there are problems with some of the graphical effects when using that card.
You've mentioned the Kahdi as having a specific problem - can you try the following for me;
1) Playing as Kahdi, enter worldbuilder, place 1 of each type of these types of unit: warrior, swordsman, champion, immortal, follower, advisor, gnosling, thade, psion. Save the game at this point (easier later).
2) Have each of those units fight a battle, then fortify (this will force them to run through some animations).
If during this process, any unit causes a problem - let me know which. I'm suspecting a possible issue with either the Thade or the Psion (both use graphical effects).
If we can identify the units, I can search out some non-shader versions of them which might solve the problem for you. If it turns out that none of the above units cause a problem, then at least we've ruled out one option.
Got any details on your graphics card? Any details on the civs in play when the crashes are between 200 and 300?
Thanks -- I'll get back to you later (this evening) with some answers on this.
Dunno if you fixed this, or even if you are talking about C++ or python, but if it is python, int(x) is what you want. That truncates everything after the decimal. For example, int(2.9) == 2 and int(-2.9) == -2
Just thought about this one too - the DLL source is effectively "FF free" - pretty much everything new in there requires that you explicitly enable or use it, with a few exceptions (decimal values for Happiness from features/military - you can emulate the default behaviour by using values of "100"). If you want a "clean" version - just take the DLL and the Schemas, along with the GlobalDefines and GameOptions.
There's no real need to wait on anything else - you'd lose all the features you've been requesting (UnitStats, the parts of FFHBUG that don't interact with the main interface), though you can regain those by looking at the Python (as I understand it you only have problems with the C++?).
By my reckoning then it's time for a Magister Modmod update
EDIT: And keep copies of your stable versions... If you get something working, zip it up and save it somewhere. If I recall, your past versions were abandoned when you tried to add something and the mod "broke". If you've got old copies, you can roll back to that and lose very little of the work you've done. If you want a hand with setting up proper source control (SVN or GIT for instance), let me know and I'll help where I can.
I've found even improper source control a great help. A little NAS box automatically backs up multiple versions of all the files I alter. It's come in handy.
I read in the 0.33 changelog that FFH2 pythonpostcombats will be moved to the .dll and the callback set to off by default. Will the FF postcombat's follow? I ask because the Scions use a few ("spelldeadG" and "mopsuicide", plus FFH2's "postCombatReducePopulation") and I won't be able to move them myself. (How significant a performance hit do they cause, anyway?)
I'm not really sure what my graphics card is, and am finding it harder than I expected to find out. My computer is a Toshiba Satellite P105-S6084 laptop, which has not been changed since I got in summer 2006 (except that the hardrive had to be replaced when I dropped it last December).
Most of my games were Calabim, Elohim, Sheaim, Lanun, Grigori, or Kuriotates. (I don't think I've had a crash yet as the Kuriotates though. Eurabatres had crushed several empires and helped me set up several colonies from conquered cities before the Memory Allocation Failure in my last game. I wonder if the fact that I tended to keep only 1 city for myself in those games could have had an effect too.) I hardly been playing the new civs at all, except for occasionally the Austrin. I haven't played the Khadi in 0.41 even once, although they have shown up as opponents. Now that I think of it, several CtDs came in games where I had cheated and given myself some extra units to avoid being overrun by barbarians early on, and the most common unit I gave myself was an Advisor. I think these units had usually died long before the CtD though.
Yeah, I figured I'd probably just take the DLL and schema files, but wasn't sure about what what python and .ini files I'd need too. It would just be easier if there was a single download that woud put all the files where I need them in case I forgot a scheme file or something.
I'm pretty familiar with basic python (I've been editing CvSpellInterface.py, CvGameUtils.py, CustomFunctions.py, and CvEventManager.py for quite some time with no real trouble), but have never really dared to mess with things that effect screens or the graphical interface. I've sucessfully compiled and DLLs before (including merges and minor tweaks of my own), but have run into problems when I tried to change any of the schema files. I think I even got a TempFeature and a TempImprovment function (based on TempTerrain) to work, but this was in the same DLL as I unsucessfully tried to allow unrestricted colony liberation. The game version seemed to be increasingly unstable as I made more changes (like borrowing some AoI graphics), and I think I never actually got around to testing whether the improvements/features created though these functions really were temporary.
Yeah, I'll try to back things up better, and aslo better document changes. I'm not sure if I want to deal with learning about SVN or GIT yet.
Right now I'm trying to decide whether the minor things I'd want to change in the FF DLL (like requiring the summoning trait for a summon's x to go to the summoner) warrent compiling my own DLL. I'm not sure that they do by themselves, but there are several things I'd like to try to borrow from modcomps by Dom Pedro II and Jeckel. Of course, these mods still have thier own problems, and Conqueror's Delight is probably way too ambitious for me too attempt before I've gotten any schema changes to work.
Yeah, I never posted it, but that one dawned on me a little while later, to quit rounding at all and just int(__) everything to truncate. But indeed, thank you for helping out, many times I can completely miss these things for months on end.
As Vehem stated, waiting on a "FF Free" version will not be advisable, as I doubt there will be one until well after 0.33 is released. And it will be the exact same DLL & exact same Schema Files. The only difference will be weeding through the Python files to cut out all of the FF related bits from there and allow people to play normal FfH with the new DLL. Honestly that should just mean CvMainInterface, CvPediaMain, CvPediaPromotion, possibly CvScreens... not sure which files I will require for the most part and how easily I can pull BUG back out of the code, or how much of it I will be required to include still.
Sounds like the same computer my Wife has, we're considering an upgrade for her soon here since she can only barely play FfH/FF on it. She has never played a game past turn 100 yet (not much of a gamer) so I can't say if she gets CtDs at about the same point or not.
Does DirectX Diagnostic not give accurate info on your laptop? It is usually pretty good.
If you are not sure what I am referring to (or for others reading):
Start Menu -> Run
Type "dxdiag" in the Open dialogue box and hit the OK button
Once the app is running, click over to the Display tab and your video display device should be listed in the Device section
One of the issues I've just noticed is the SECT_OF_FLIES issue from the main FFH thread.
In the ImprovementInfos file there's a UNIT_SECT_OF_FLIES reference that generates a CtD. It needs to be replaced with UNIT_CHAMPION. This CtD only occurs when the Armageddon Counter is high enough, so naturally it only occurs mid-to-late game.
Unfortunately, this change seems to break savegames so you can't go back to make sure that was the only problem.
I've had another CtD since then, so I'd assume there's more issues than this.
I tried each of these suggested Kahdi units in combat followed with a Fortify command on the following turn. There was no problem. Units seem okay from that prospect. The Thade's graphics are not always visible either on the map (the first time the unit appears), or especially off to the left side of the screen (all the time). Maybe it's too dark.
I wonder if it's the Khadi gate building that's causing some issues.
The two Khad games I still have on file had the following other civs:
1. One big unavoidable CtD (after Turn 297): Natana, Daracaat, Dannmon, Dain, and Beeri.
2. A series of CtD's every other turn (around Turn 196): Hianthrog, Arendel, Jonas, Os-Gabella, and Sandalphon
FYI -- I did play at least one game to completion with Natane without any problems. Ditto Dannmon (other than the problem with the Immortal promotion with wasn't related to any particular civ). The only problems I ever had with Daracaat was with their spiders (that was fixed, I think). I did have one big, unresolvable CtD playing Hianthrog once (never ran them to completion in other games however). I had some occasional CtD's with Deirdra as well, but so far I was able to reload and move on. The worst civ to date is the Khadi, with lots of CtD's.
I'll take back my comment about Hianthrog (sorry!). IIRC, it was the presence of Hyborem that caused the CtD in that instance. So Hianthrog should be OK. It's strange though that I would have some issues with Hyborem on FF when I never had any with FfH before.
I did a quick search and came up with this, "Intel Graphics Media Accelerator 950 with 32MB-128MB dynamically allocated shared graphics memory"
hi there guys! I know that you've merged flavourmod in patch D, which was great imho. I've noticed that the flavourful unique features and safety distance from the latest version of flavourmod were not added in though. those would be quick and easy to add back in and they make the game even better, especially safety distance... so I was wondering if those are gonna be added back in a future update
Incidentally, I did run across a clear cause for CtD (see savegame attached) really early on.
The issue comes from one of the Daracaat tribesman that is heavily promoted through chaos. Two promotions seem to be causing the crash:
1: East Winds (normally attributable only to ships)
2. Both Strong and Weak promotions (conflicting w/each other?)
The CtD does not occur if I remove both the East Winds + Weak promotions from the unit. Otherwise, the CtD takes place when the barb tiger next to that tribesman attacks it.
The Chaos effect needs to be revised to avoid conflicts among chosen promotions. I don't know if the CtD will take place on your PC, but it sure does on mine, and I can clearly reproduce or avoid it as described above.
Maybe that Tribesman had a bad case of the Fair Winds!
Unfortunately this is yet another that doesn't crash for me It wouldn't load at all with some of the changes I have made recently, so I did a completely fresh install of 41 then patch D. Loaded up, passed the turn, and the Tribesman won the battle and gained a level.
So far I have run it 5 times with the same result in each instance (poor tiger ALMOST won once though).
I noticed in the game settings you are using both PerfectWorld-Flavoured and the FlavourMod option. Seems an odd combination, and ought not to cause any issues, but also ought not to be needed that you run both at once. I'm not entirely sure which will take precedence, probably the map version rather than the Gameoption version. Anyway, if that was your issue the problems would manifest on the start of the game, so just an odd thing that I noticed.
Whether you can reproduce the CtD at this point is neither here nor there. The fact it does trigger on some machines and is clearly identified ought to be enough. With all due respect, I think you are missing the point, which is that land units should not end up with ship-specific promotions, for one. Conflicting promotions, for second, such as Weak + Strong remain a tad absurd if anything. Either way -- they are a clear cause of problems on some PCs.
No, it is not a clear cause of problems. And thus it is useless.
Were it a clear cause of problems, it would be reproduceable in a variety of situations. Were the issue that mix of promotions, I could grant those promotions to ANY unit and cause a crash. Were it even a solid crash that has nothing to do with your machine and/or any changes to your program (the mod or base) then it would crash on every system.
I most certainly do not miss the point at all. I looked at each of those promotions and every aspect of what they are designed to do, none of them have even the slightest chance of causing a crash by their base programming. What the base programming DOES have a chance of is that the Random Number generator could be causing an issue with something else happening in the world which you cannot see currently on your machine. But since you have new Random Seed on Reload active, that is highly unlikely since you are able to get the crash to occur reliably every time that you run it.
It is great that you are able to find issues with the game, and that you report them. It is unfortunate that none of them are reproducable and thus we cannot solve any issue which might be behind it. It is horrible that you are starting to become confrontational about the fact your issues are not reproduceable.
That the crash occurs on some machines is enough to make me care and want to solve it. That the crash does NOT occur on MY machine is enough to make it impossible for me to do anything about it.
And yes, some promotion combinations can happen that do not make too much sense, but they do NOT cause any issues and thus are not really worth programming the code needed to ensure they never happen.
DirectX Diagnostic says "Mobile Intel(R) 945GM Express Chipset Family" 128.0 MB
edit: I've noticed that occasionally when you purchase a promotion for a unit it doesn't graphically update it to show the unit having it yet or being able to select another promotion until you move it. This si similar to the problem that happens when the animatins for a unit are wrong, but the units' animations appear to be fine. This is usually in forests or jungles (which I think is a pretty old bug, but hadn't noticed it for a while until recently), but it just happened to my Doviello Beastman on a featureless plain. (This is in my modifed version of FF 041C. I haven't made any graphical changes yet.)
edit2: It happened again, but this time more severely. My ranger (which was in a jungle tile with an Ancient Tower) seemed to stay selected when I tried to select an Acolyte. I was able to unselect it by selecting a worker, and moved the Acolyte into an undefended city and tried to move the Ranger closer to help defend against a barbaian Lizardman. When the Ranger started moving, there was a CtD. This is still in the modifed 041C version. I think I'll just abandon that version and begin my modmod with the 041D SDK/schema now.
Separate names with a comma.