How to make mod file.

Inei

Chieftain
Joined
Jun 10, 2015
Messages
10
I made a mod using another mod as reference and fully constructed it in notepad. So I am being curious now about how to actually make a mod archive file out of that folder , and how and where to upload it properly. Will be very grateful for that kind of assistance.
 
What do you mean by "mod archive"? BE-Mods don't come in custom archives, they are just the folders, usually packaged into a zip/rar-archive.

If you have a working mod (and changed the id in the modinfo-file) then that's already all you need, create a zip-archive (by right-clicking on the folder -> Send to -> Zip archive) and upload it wherever you want, other users will be able to use it just like you do by unpacking it into their mod folder.

If you actually want to upload it to the steam workshop you'll need to use the Beyond Earth SDK though, which can be found in your steam library, under tools as long as you own a legal copy of the game.
 
There is another question, if it won't bother you much.
I want to make a compatibility file so my mod will work with data of another mod, if I just make <Update>'s will it affect another mod files, or I need to make some kind of dependency? And if yes, how to do that.
 
If both mods edit different things, they you don't need to create dependencies, but if you want to change content that another mod has created (for example if you create a mod that adds a building that gives +2 science and another mod that changes the yield of that building to +4), then you'll need to set dependencies in the modinfo-file to make sure mods are loaded in the correct order.

The modinfo will look something like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<Mod id="04e9967a-3e13-4829-8bd9-18387779246b" version="1">
  <Properties>
    <Name>Quicksie Testmod</Name>
    <Stability>Alpha</Stability>
    <Teaser>This is a quick testmod.</Teaser>
    <Description>This is a quick testmod.</Description>
    <Authors>Ryika</Authors>
    <HideSetupGame>0</HideSetupGame>
    <AffectsSavedGames>1</AffectsSavedGames>
    <MinCompatibleSaveVersion>0</MinCompatibleSaveVersion>
    <SupportsSinglePlayer>1</SupportsSinglePlayer>
    <SupportsMultiplayer>1</SupportsMultiplayer>
    <SupportsHotSeat>1</SupportsHotSeat>
    <SupportsMac>1</SupportsMac>
    <ReloadLandmarkSystem>0</ReloadLandmarkSystem>
    <ReloadStrategicViewSystem>0</ReloadStrategicViewSystem>
    <ReloadUnitSystem>0</ReloadUnitSystem>
  </Properties>
[B]  <Dependencies>
    <Mod id="97b70076-47c3-4e7c-b0b1-81c3e50872c8" minversion="0" maxversion="999" title="Random Testmod" />
  </Dependencies>
  <References>
    <Mod id="97b70076-47c3-4e7c-b0b1-81c3e50872c9" minversion="0" maxversion="999" title="Another Random Testmod" />
  </References>
  <Blocks>
    <Mod id="97b70076-47c3-4e7c-b0b1-81c3e50872c3" minversion="0" maxversion="999" title="A Third Testmod" />
  </Blocks>[/B]
  <Files />
</Mod>

You need to enter title and mod-id of the mods you're referencing (can be found in their modinfo-files)

You don't need to add all 3, but only the one(s) that fit your mod:

Dependencies -> Used, if that other mods NEEDS to be active for your mod to work - your mod can no longer be activated unless that mod is active, too). The mod you're referencing will be loaded before your mod, so both mods make changes to the same files/values your mod will override changes that were made by the mod.

References -> Does the same as Dependencies, but the mod does not have to be active for your mod to be activated. (Best used if you have a mod that works with the unmodded game but gets into compatibility issues with other mods when they override some of your changes)

Blocks -> Completely prevents your mod from being activated if the referenced mod is set as active (and vice versa).
 
Thankies alot. That will help greatly. This way I will use reference as it will allow my mod to work without that another mod, while it will be changing values of that another mod if that mod is active.

That mod I want to make compatibility with is actually your "Aggressive Wildlife - A Hostile Planet". As it seems you not put correct unit classes for new aliens, and it won't work well with mine one, as I use unit class to emulate alien fighting bonus, and I found no reference for that in promotions values. There are some minor unit power tweaks as well, if you won't mind, as it makes "Aggressive Wildlife" just too easy without them. And I also made HQ stronger so AI won't get wiped every time by angry aliens that about to stalk their children...

P.S. By the way, is there any way to make some updates to activate only when reference mod is active? For example - to make HQ become stronger only with active Aggressive Wildlife, as it makes little sense to make it stronger without aliens craving for human flesh.

P.P.S.

And another thing if you won't mind - Can I use

Code:
<Set MaxGlobalInstances="1"/>

for values that was not in there in the first place, or it will only work with

Code:
<Set>
    <MaxGlobalInstances>1</MaxGlobalInstances>
</Set>

or there is no difference between those?
 
Hehe. Sure feel free to make all the changes you want. :)

But yeah, looking at my mod files there's a lot of weird stuff going on. Reusing Unitclasses was probably not the best idea for maximum modability and for example Siege Worm actually has the "UNITCLASS_SIEGE", which is used by the actual siege units... not sure how or why that happened. Will really need to recreate that mod at one point.
 
Oh, and I was always curious, did Alien Queen was purposely not been set as "Alien Lifeform" to be able to bypass Ultrasonic Fence, or you just forgot to add it there?
I personally like it as is, though, it makes it possible for that queen to gain experience when being repeatedly shot for low damage, which she spends on healing promotions when almost about to fall, and makes it very hard to kill as you need to drop her health several times until she finally falls. I've seen some AI capitals been destroyed cause of that.

And another question, if you know, is there any way to make explorer gain combat experience? Or it is hard-coded?
 
Oh, and I was always curious, did Alien Queen was purposely not been set as "Alien Lifeform" to be able to bypass Ultrasonic Fence, or you just forgot to add it there?
I personally like it as is, though, it makes it possible for that queen to gain experience when being repeatedly shot for low damage, which she spends on healing promotions when almost about to fall, and makes it very hard to kill as you need to drop her health several times until she finally falls. I've seen some AI capitals been destroyed cause of that.
I actually don't know anymore. But I assume it was by mistake as that makes her take damage from Miasma - and there are some other tags that literally don't make sense for that unit, like the UnitArtInfoUpgradeVariation. I assume I copied another unit and just forget to "clean" it up. ^^

Don't know about the combat experience, but I assume it is because the UNITCOMBAT_RECON has no promotions defined in the UnitPromotions_UnitCombats in CivBEUnitPromotions.xml - but that's only a wild guess, can't test it right now.
 
I was trying to give aliens promotions system, but it seems they are hardcoded to not receive promotions or experience via AlienLifeform variable. As well as something blocks both Roctopus and Explorer from getting experience in first place. Even if I make one with higher level via IGE they can only choose the first promotion in line and that's all. They don't even have experience bar.


And what about those questions?

P.S. By the way, is there any way to make some updates to activate only when reference mod is active? For example - to make HQ become stronger only with active Aggressive Wildlife, as it makes little sense to make it stronger without aliens craving for human flesh.

P.P.S.

And another thing if you won't mind - Can I use

Code:
<Set MaxGlobalInstances="1"/>

for values that was not in there in the first place, or it will only work with

Code:
<Set>
    <MaxGlobalInstances>1</MaxGlobalInstances>
</Set>

or there is no difference between those?


I am sorry for asking so many questions, but after spending so long time trying to figure out how it all works via other mods... Your help is like divine intervention.
 
Will look into promotions tomorrow if noone else has given his input until then (its 23:57 here ^^), never really bothered too much with that until now.

@P.S. Don't think that's possible with xml. Lua should be able to do that with some trickery, but in general I'd rather say create 2 mods, one for the base game and then a second mod - with a dependency on the first one - that makes the changes that you only want to be active for the Aggressive Alien Mod.

@P.P.S: Both are valid and do the same thing, the first one is of course the more elegant version. Seems like I didn't know about that back then. ;)
 
Looks like we are living in the same time zone. :rolleyes: Well, good nighties and see you tomorrow. Will still need your opinion on that mod I made, if it won't bother you much. It taken three days of making, and more three days of tuning after all.
 
Alright, so: Indeed, the AlienLifeform-Tag does deactivate Exp, which is strange but not unexpected, because it also deactivates the ability to actually produce the unit which seems to be a really silly hardcoded limitation.

Alien Units can still have free promotions given to them at the beginning of the game or via Lua though. The second version would allow for "random" promotions, but is of course a lot more complicated.

And sure, feel free to send me that mod, I'll give it a try and my opinion. :)
 
I already added some free promotions from my mod to aliens, including those new from your mod too, which make them real scary at some point. Though... I am not sure about those other defines. As evolved aliens are much stronger now, and I set them appearing after around 600th turn when you already supposed to have at least level 6 affinity, at least - that's how it was in my three 400% speed games.

I uploaded mod to Civfanatics yesterday, though it seems it will take some time to pass moderation. Here's dropbox link for personal use for now.
 
Alright, haven't played too much (it's just too HOT to concentrate or do anything other than sitting outside and enjoying the sun), but I gave it a try! And I have to say: A lot of interesting promotions you got there, that must have been a ton of work to put together. :D I think an in-depth promotion system is definitely something that would make the game interesting, so yeah - great idea. Looks very solid, too, with many possible ways to specialize units into a number of combat roles. So... not really much else to say about the base mod, looks great. :)

When it comes to the compatibility-part though I think you overdid it a bit - with +50 Combat Strength and +200 HP the capitals literally become unbreakable by ANYTHING, until very very late in the game. ^^ How about instead just giving the Headquarters a 1-2 tile AlienUnitRepelRange? That way it could still act as a "safe haven" against aliens without becoming super-op.
 
About HQ... There was a reason why Alien Queens have 150 Combat Strength and +50% bonus against cities. ^^ I actually thought about making Siege Worms immune to repellant too - and they also have that bonus against range attacks.
Though, when I do that I will just need to adjust UF range by one as well probably. As for the way they are now - aliens just not even dare to attack them, even though it oneshots most low level aliens. It was made so it won't be possible to be abused to get tons of culture and science from alien kills (when they gather around city and attack each turn giving tons of that with proper virtues). While one kill per turn allows to keep basic alien population in local area controlled. And still some science and culture to not get behind A.I. players too far. But repeal range sounds like I good idea. I just not thought of that somehow.

I actually got slightly different promotions mod idea while been working on that one. To make so called "specializations" mod. Where units won't become too much overpowered by being able to learn everything. And will choose their own "path" in promotions grid - for example - it starts as simple soldier, and at level 2 can choose between attacking and defending spec, at level 5 each of those specs get can be adjusted by another chose - like scouting branch, medic, assault and such... And in the end - at level cap around level 8 (or 10 with precog, which still will be wonder for everyone to build) they will have their unique specialization - like medics will heal adjusted units, while scout will have increased sight range and mobility, I even think to make a kind of saboteurs may be, which will be invisible to most other units, though still need to think of that conception properly. I also think to decrease combat bonus for each level by +5% Combat Strength (which is quite overpowered by itself with +10% as it appears) with witch they will have around +50% and variety bonuses from their spec at top level. This way they will be easier to train and not so hurting to lose. As if you'll lose like level 20 soldier now, it will really hurt giving how much time you spend to train it. Which means more save & load. And I hate doing such things.

Anyways, thank you very much for your suggestion. I will adjust the HQ and leave that mod for now, while continue working on that specs mod. :)
 
Back
Top Bottom