I've been getting these errors with aggravating regularity:
Assert @ c:\projects\Perforce\SinsDiplomacy\main\CodeSource\Engine/Archive/Archive.h(264)
elementCount == data->Size()
Assert @ c:\projects\Perforce\SinsDiplomacy\main\CodeSource\Engine/DataStructures/FixedArray.h(118)
i < MAX_SIZE
Assert @ c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS/Entity/Interfaces/IAbility.cpp(279)
NeedsSingleTarget()
I've also recieved error messages stipulating that "XYZ cannot be converted to an enum value" usually pertaining to the stacking limit lines and such... does anyone actually know what those lines mean? I get the concept, but I can't read the jargon.
I'm not sure what's going on with that first error. My gut reaction is that it deals with a mesh, and with there being too many different elements in particular. Maybe that's because I recognize "element" as the term used for each of the separate UV groups, but it gives you somewhere to start.
The second one throws me for a loop. I don't know what "FixedArray" refers to, but it's clearly too large. Perhaps this deals with the first error in some way?
The final error deals with an ability you've created. The buff type indicates there should only be a single target, and you've either set it up as having no specific target or multiple targets.
The enum value conversion crap is really irritating. It means you have some part of your coding that's incorrect, but it could be any number of sources. For instance, you could have used the wrong letter case (lowercase where uppercase is required, for instance), you could have a typo due to mispelling or even a totally incorrect value, or you could have a blank space where a value is needed. In your case, you've probably just mistyped something in those stacking limit lines. Double check them against stock Sins files to make sure each part matches exactly. You could also check out a tool that ZombiesRus5 is putting together, which helps with entity validation. Here's the link.
Good luck with your corrections!
I can't get the tool to work, but that's b/c I have absolutely no experience with java.... How do you install it?
What specifically is it you can't get to work? Also, no Java experience is required. The core part of this plugin is simply a validation tool that sits on top of the Eclipse text editor. The ant tasks are purely optional and also don't require any java experience.
Did you follow these steps?
InstallEclipse
InstallPlugin
Let me know what issues you are having if these steps didn't work and I'll try and resolve them with you or make the appropriate updates to the documentation. I am still actively supporting this tool and plan an update in the next week or so... so any feedback you can provide before then would be helpful.
It gives me an error maessage stating something to the effect that Eclipse cannot detect a Java runtime environment. I had installed Eclipse to a custom directory, but Java was already preinstalled to the Program Files directory. I tried to circumvent this by copying the .exes for Java to the new directory, which was a partial success- the error message disappeared, but when I run the program a black box appears in a window, DOS style, and then exits automatically with no effect. I ran into a similar problem with Medieval II, when trying to get an unpacker to work. I eventually managed a workaround by editing that batch file to read the new directory, but something tells me that this is a little difficult with exes, what with the registry....
Just so you know, I'm running a new, Vista 64 bit Home Premium, and the Java is version 6 and the Eclipse is the latest version of the 64 bit classic version. I haven't bothered downloading the tool yet, b/c I can't get the Eclipse program to work yet.
Now that I think about it, it could be the fact that the Java is 32 bit- it's installed in the x86 directory. I guess I could try reinstalling with the 64 bit.
Yes, please try that. On the Windows 64 bit systems I had to do the same, plus I had to download the 64 bit version of eclipse too. Let me know if that works. And thank you for the feedback.
It works fine now, but when I create a project, nothing happens.
EDIT: never mind, I knew it was something stupid on my part.
I managed to get the mod (part of it, anyway) functional, but a wierd camera error keeps occuring. It continually moves to the side of the map, even when paused. The only thing that stops it is holding down the opposite arrow key. I removed the batteries from my keyboard to test whether it was a hardware problem: it isn't, as the error continues without the keyboard's input.
That sounds like one of those errors that I used to have on my Gamecube when I'd turn it on while one of the controller joysticks was pushed in any direction. I'm not sure that it has anything to do with your issue... I just wanted to share.
Yes, I've had that error too, which is precisely why I tested to see if it was a hardware issure.
I'm currently finishing up the mecenary mod I've been working on, but I keep getting this message:
c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IBuff.cpp(2002): assert! [isFilterValid]Failed to convert '' to an enum value.
I tried looking at the buffs in your tool, but it isn't catching it.
Also, I've noticed two "errors" that work fine in game: changing the damage type for a weapon to "AFFECTS_ONLY_HULL" and setting a passive weapon applied buff to "GAUSS" At first I was worried that this meant that the game wouldn't accept it, but it turned out fine- I figure this is because the original files don't make use of these values, but they work perfectly in game, as per my previous mod. This correlates with another "error" involving the "SpawnShipsAtPlanet" ability but does not explain the tool's bizarre attitude towards planet files and the .constants file: in the case of the former it freaks out with values (concerning the planetary ring effect or something to that effect) I never touched, though I did mod other parts of the files, and in the latter case it catches on the unmodded section of the file that was added to slow fighter build rates in combat. It also didn't catch any errors in the .constants file I modded for another project, which I found to be an issue with the engine.
Yes, the Entity validation tool can't catch everything. There are too many nuances for that. However, if you find a scenario that you think could have been caught please open an issue on the tool's website (plus kharma given too for doing it). I'll see if it's something that can be validated or not in the tool if you help out like this.
http://code.google.com/p/soaseplugin/issues/list
The developer exe doesn't necessarily warn of all things too. For example the buffInstantActionType "MakeDead" does not work with AlwaysPerform. It does however work with OnDelay. My tool doesn't currently catch this and the developer exe doesn't seem to care too much either.
Is this about my tool or the dev exe. I validate every release against the Diplomacy/Entrenchment/Vanilla files prior to releasing. If you want to send me the files, I'll take a look if it concerns the entity validation tool.
I think I fixed the issue with the passive weapon type for GAUSS, I believe it was excluded from the list of constants in the earlier version.
It's rather large, in terms of file count- 660 entity files added or modded, just for the mercenary mod, and I still haven't completed my new race, or even finished adding everything to the old ones yet. My other post (Tangential Assimilations) has part of the change log for the parts I got working, but I've done quite a bit since then. Most of the errors have been corrected; this tool of yours really speeds thing up. My main focus right now is getting this error resolved, as it's the only thing in the error log that I feel could be responsible for a minidump. I could be wrong, but most of the other errors have appeared before, without crashing my game. Whatever it is, the tool isn't catching it, so I'm, literally stuck staring at a computer screen. Here's the total error log- lots of ability stuff.
c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(309): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(300): assert! [m_aiUseTime == AIUseTime::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(309): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(309): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(309): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(301): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(309): assert! [aiUseTargetCondition == AIUseTargetCondition::Invalid]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(279): assert! [NeedsSingleTarget()]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IAbility.cpp(289): assert! [m_researchPrerequisites.HasSubject(m_baseSourceResearchSubject)]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IBuff.cpp(2002): assert! [isFilterValid]Failed to convert '' to an enum value.c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IResearchSubject.cpp(114): assert! [m_Tier == researchWindowLocation.pos.m_X]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IResearchSubject.cpp(114): assert! [m_Tier == researchWindowLocation.pos.m_X]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IResearchSubject.cpp(114): assert! [m_Tier == researchWindowLocation.pos.m_X]c:\projects\Perforce\SinsDiplomacy\main\CodeSource\GS\Entity\Interfaces\IResearchSubject.cpp(114): assert! [m_Tier == researchWindowLocation.pos.m_X]c
EDIT: forgot to mention, the "SpawnShipsAtPlanet" files are heavily modded versions of the FleetBeacon ability, for spawning merc units. What files do you need? There are a lot of them...
If you could PM me a link to download your whole mod that would be ok. I can't promise to solve everything, but I'm willing to take a look. I've solved some interesting issues for others previously.
I think the needs single target has something to do with abilities on strikecraft.
This is usually do to the tier level not matching the column in the research entity. I'm hoping to add some post validation steps for entity files on this one.
My personal mod is pretty big too so I understand your frustrations.
Ok, got the files and have a couple of questions.
Does minCount and maxCount actually work in spawnShips/requiredShip? I can't find any reference to this is the core sins files. They all use weight in spawShips/randomShip and I can't find any references to requiredShip usage.
If it does work I need to update the syntax rules to reflect this.
I understand you are not quite complete yet and thats ok. But there are quite a few typos and errors that could be easily fixed and start to narrow down the issues you may be having.
For example:
AbilityAcidicPhaseMissiles.entity is reporting ResourceCost is not expected because it should be resourceCost followed by credits, metal, crystal.
This should be HasPhaseMissiles
I also have an updated version (v.0.7.3) of the tool to report tier mismatches in research files. I'll try and upload it later today.
Sweet, I've tested this out and it works. I'll update the syntax rules and post that with version 0.7.3. Thanks again!
I validated yourmod against version 0.7.3 and it took the entity validation errors down quite a bit after removing those false positives. Most are now down to missing or possibly miss-spelled entities. The tier validation is a nice enhancement too as that's not real fun to track down when you have a lot of research files.
I've posted the version v0.7.3 which should help you quite a bit.
Great work, as ever. I hope I can get the working mod posted by the end of the week. A suggestion: the new icon for the files, while epic, makes it harder to see the little tooltips, particularly on a large, hi-rez monitor (or tv ). I would suggest either making the icons larger or using contrasting pips for the error symbols. Other than that, it seems great. I'll post here when I've finished debugging.
EDIT: btw, I can't figure out the whole Karma thing. I'd give you some, but I don't know how...
lol, I agree. It looked quite awesome until I tried zoning in on errors. I may try the entrenchment or diplomacy icons which aren't quite as loud and the original.
I'ts the little thumbs up next to report and view edits.
This seems to look good and I can definately make out the error and warning symbols.
I figuered this out largely by trial and error- the Dev.exe error message gave me the lines I needed. A few notes- you can have at most TWO types of ships spawned using the "requiredshipcount" and the game also is VERY sensitive to these files- any error with the numbers i.e. spawning more fleet supply than you allot will lead to an endless series of errors, with the only means of ending it to use Task Manager (or a similar technique) to force-quit from the dev.exe. Still, if used within its limits it is quite useful- I've heard you can even spawn cap. ships with this ability, but I don't know how to do that, or even if it's possible. The main difference is that this ability spawns permanent ships, unlike the "SpawnFrigate" ability which has a built-in expiration date.
EDIT: I've always wondered how the weighted random thing works for the other line (randonmshipcount); do you know anything about that?
This is how I'm creating a single random flagship in my min-mod [MINI MOD] Sins Flagship Mod (Version 0.02 Released). You can spawn any type of ship whether it is referenced in the PlayerXXX.entity file or not. This allows me to spawn a special capital ship that cannot be built in the capital ship factory.
I'm not exactly sure how they are running the math either. But, it's to make sure you get some high valued shipswhen using Vasari's fleet beacon instead of getting a bunch of LF's. It seems like a simple weighting system, higher the number more important, lower the number less important.
Ok, so now that I've gotten the Merc Mod to work, it crashes whenever the Vasari try to build a defense turret. The camera issue I mentioned earlier seems to occur only for the Vasari and only on the map Ancient Gifts. I think that the "solution" is to hold down the right arrow key for a few seconds, and then press the left arrow key while still holding the right one. I always do this after zooming in, and about five minutes into the event. Your tool seems to be catching on the "WithinCurrentSolarSystem" condition, which to my knowledge is a valid condition, but is not referenced in game; this is a similar bug to the previous two, involving the Gauss weapon type for passive weapon buff triggers and the "AFFECTS_ONLY_HULL" weapon damage type; again, this is due to these conditions not being referenced in the original files, but they work fine in the actual game.
Also, "missing entity reference" errors aren't caught by your tool; towards the end I had to dig for them. Is there any tool to check manifest files for errors i.e. if there are any files missing from the entity? As a side note, how do you get pictures on posts? I tried using the "insert/edit image" button on the top of the written reply area, but I'm not clear on how it works.
The best way is to use my ant tool or harpos manifest generator to build the entity.manifest file. I didn't build this into the tool because I assumed most modders would use manifest generators.
There are many great features available to you once you register, including:
Sign in or Create Account