[MOD] Colonization: 2071

Setting relative to 0,0 disables the relative system and you set coordinates just like before the system was introduced.

Yes, it works after rebuild from the master branch. :cool: It turns out git has an old DLL still in the 2071 branch, but it won't let me remove it.
Git tells me that the DLL is not monitored by git meaning you always have to compile it yourself.

I'm not really sure about what would be best for the tech screen. It might be in for a rewrite just like the domestic advisor. Imagine having a fixed pixel size on tech boxes and placement and bigger monitors will then show more of the tech tree.

Having multiple screens to switch between might not be a bad idea.
 
Hi there, i'm looking to create an educational scenario using a civ 4 mod and it was suggested i try this mod, so this is my scenario at the moment:

I want to be able to have it so that Luna (The moon) can be colonised, which then leads to colonising Mars. I would also like to have it so that Sol (The sun) generates heat, so that the closer you get to it, the more armour the probes you might send there require to function.

As for random events, i'd like to have things like micrometeroite strikes, Gamma ray bursts, space junk and the like.

As for movement, i would like it that the further away from Earth you get your movement turns get longer (it would take more turns to travel to Mars than it would to Luna)

As far as enemies go, i imagine that initially i'd have asteroids and comets, would i be able to simulate orbits for those?

That's all for now.
 
Hi there, i'm looking to create an educational scenario using a civ 4 mod and it was suggested i try this mod, so this is my scenario at the moment:
I will always welcome new ideas for mods. Colonization 2071 doesn't have a DLL of it's own. Instead it uses the Medieval Conquest DLL. There are more info on that here: http://forums.civfanatics.com/showthread.php?t=523087
I also plan on writing some more details documentation on how it works, but I haven't really done that yet. The Medieval Conquest subforum is a decent, yet somewhat unorganized source. Questions are also welcome.

I want to be able to have it so that Luna (The moon) can be colonised, which then leads to colonising Mars. I would also like to have it so that Sol (The sun) generates heat, so that the closer you get to it, the more armour the probes you might send there require to function.
Sounds like an interesting concept.

As for movement, i would like it that the further away from Earth you get your movement turns get longer (it would take more turns to travel to Mars than it would to Luna)
There are 3 options for that.
  1. Make a map with more space plots for further away places
  2. gradually use different terrain/features, which has different movement cost
  3. use distance from a specific plot to add movement cost (needs DLL update)
Presumably #3 might be the most attractive one as it would also be useful for the heat resisting armour for probes. Currently each plot has a cache of distance to the nearest accesspoint to each trade screen (Europe in vanilla colonization). Adding an access point on each sun plot and we more or less already have the distance available. The sun would then have a mountain like terrain meaning units can't actually move into it and hence the sun trade screen is unreachable. We only need the distance to it, not the screen itself.

As far as enemies go, i imagine that initially i'd have asteroids and comets, would i be able to simulate orbits for those?
Sounds like you need orbit terrain. Think of it as making barbarians, which can only move in shallow water in civ4.
 
Is there documentation for how to do this with colonization? i don't have the game yet so i'd like to read up on how to go about it before getting started.
 
Is there documentation for how to do this with colonization? i don't have the game yet so i'd like to read up on how to go about it before getting started.
Documentation is lacking :(
For the most parts, modding documentation is interchangeable with civ4. The concepts of terrain, units, promotions etc are more or less the same and set up the same way in XML. The main differences are yields and professions.

Maybe it would be a good idea to just download the mod and just look inside the XML directory to get an idea of what the setup looks like. Getting the git version would likely be best as a lot have changed since last version. While setting up git is good, the quick way would be to follow this link: https://github.com/Nightinggale/Medieval_Tech/tree/colonization2071
Bottom right has "Download ZIP".

I would also recommend that you play M:C and col2071 to get a feeling of the gameplay before you start making something yourself. As the development version of col2071 isn't really playable at the moment (major reworks), you should try the last release.

Also look around in http://forums.civfanatics.com/forumdisplay.php?f=483 and maybe http://forums.civfanatics.com/showthread.php?t=517120 to see plans and implementation of DLL features. Providing you do make this mod, it will use the same DLL and as such have access to the same DLL features. I don't know if you know how to code C++, but because it is a shared DLL, having a C++ coder for every mod is far less important and not having one at all isn't a major issue.
 
No idea how to code C++. though i imagine having a graphics person will be handy before long.

Thank you for explaining things, i imagine this will be a summer project as i'm due to finish university soon.
 
though i imagine having a graphics person will be handy before long.
Luckily Firaxis didn't change the graphics format. That mean graphics can be copied from any version of civ4 and any tool made for civ4 can be used. However I don't know how to actually make any graphics, but I assume the civ4 graphics forum is a decent source for that. It might also be a place to find a partner, though I don't know if "advertising" for one is a good idea before you have at least parts of a core working and know you can and will finish the mod. Sure it might not look great with medieval units for placeholders, but they should do fine while setting up the foundations for the mod.
 
sounds exciting! :scan: I'm glad to see more interest in SF modding (even if its gotta be a realistic one with no weird aliens involved ;):borg:) and you'd be welcome to use 2071 or M:C as a base as NG said. Much of the XML is somewhat similar to Civ4 so could be worth perusing the Civ4 Modiki at http://modiki.civfanatics.com/index.php/Civ4_XML_Reference .

Fortunately I also have a whole Wagon Train load of scifi building and unit graphics in Civ4 nif format which I've been gradually accumulating over the years from various Civ4 mods and forums, and which I'd be glad to give to you or anyone else interested. Also see the huge Buttons and Terrains graphics packs in my sig which hopefully are more than enough for any SF modder. In addition to that I've been slowly working on a set of scifi building nif graphics especially for Colonization modding, which I've modified to create several 3-tiered chains of progressively more advanced processing buildings. I'm not good with creating new graphics so could really use the help of a graphical modder, but have been able to accomplish some by removing blocks in nifskope to create some "chains" of progressively more advanced buildings.

I haven't finally imported/loaded all these nifs into Civ4Col which I'm dreading a little, they should be possible to import using this tutorial http://forums.civfanatics.com/showthread.php?t=317419 however in the old 2071 version I had some cases of persistent problems importing units and couldn't get Blender to load & configure correctly on my PC to solve them.
 
Awesome! once i've graduated university i'll get things rolling. (or at the earliest the end of the month, i'm almost broke and have to wait 2 / 3 weeks for my next student loan payment)
 
Hey NG, it's not been letting me push a commit to 2071 branch on github, is it down atm or temporarily locked?

unable to access 'https://github.com/Nightingale/Medieval_Tech.git/: Could not resolve host: github.com
 
It can't find github.com :confused: Looks like the server was down or there is a problem in your end. Try again and if it fails again, try visiting https://github.com/Nightinggale/Medieval_Tech
I didn't do anything. However it looks like nobody attempted to push for a week meaning you will be the one to discover if it broke on the first of April :p

EDIT: Kailric managed to push an hour ago, but my email notification failed. Looks like github isn't working 100% right now.
 
graah:badcomp:
It wasnt github but my PC.. suddenly it would not let me push/pull anything; after hours of trying & reinstalling git and smartgit, I realized stupid Comodo Firewall update decided to start sandboxing git pull/push requests without asking or notifying me in any way whatsoever. :aargh::wallbash:
anyway, fixed it now and finally was able to push successfully.:king:
 
I moved Colonization 2071 to Sourceforge. https://sourceforge.net/p/colonizationmodcollection/Colonization2071/ref/master/

Install guide:
Open cmd.exe and write
Code:
 git.exe config --global fetch.recurseSubmodules true
As this is globally set, it will be remembered across clones and you will only have to do it once.

Login to sourceforge (failure to login will give you a read only URL)

Copy the URL part of the clone command
Code:
git clone [B]ssh://[I][COLOR="Red"]username[/COLOR][/I]@git.code.sf.net/p/colonizationmodcollection/Colonization2071[/B] colonizationmodcollection-Colonization2071

No Makefile.settings will be needed as colonization 2071 is autodetected :scan:

There is a minor difference in file layout.
sourceDLL - shared (no mod specific code)
sourceMOD - mod specific C++ code (not shared)
Assets/Python - shared

Committing to the shared directories (submodules) will give those changes to other mods the next time they pull. Because of this there is a very important python function to remember
Code:
if [B]gc.isColonization2071()[/B]:
    some super cool spaceship code here
While the python design goal is to avoid mod specific code and move all mod specific details into XML, it can be used and shouldn't be avoided if needed.
For the record we also have gc.isMedievalConquest() and gc.isWorldHistory(). More may appear in the future.


Oh and do remember that commit also commits to submodules (if modified) while push does not. You have to select the submodule and then click push if you actually changed anything in it.

EDIT:
For some reason it refuse to automatically give me master branch for submodules.
Make sure both sourceDLL and Python has (Master) in directories panel
If not select the submodule you want to change, select Master = origin in branches and right click to select "switch branch"
Confirm and it should change to (Master)
Do this for both if needed.

This is how you select branches for the submodules. Knowing how to switch branch for submodules could be beneficial to know for later usage.
 
hmm so in SmartGit, I select clone then paste the following to Repository URL and then click Git:

ssh://col2071@git.code.sf.net/p/colonizationmodcollection/Colonization2071 colonizationmodcollection-Colonization2071

But then get this message:
Could not read from remote repository. Please make sure you have the correct access rights and the repository exists

Is this meaning I'm not logged in correctly or need more permissions? I logged into sourceforge.net as col2071 in my browser, but I'm not sure how to log in to sourceforge via SmartGit.
 
ssh://col2071@git.code.sf.net/p/colonizationmodcollection/Colonization2071 colonizationmodcollection-Colonization2071
The black is the URL while the red is extra info for command line git. It is really annoying that sourceforge gives the URL like this because you are the 3rd person to make this mistake. That's a pretty bad track record considering only 3 people tried so pull so far.

Once smartGIT has the correct URL it will ask you for your password. In fact it will ask for the password when you pull each module meaning you will be asked 3 times. You can skip the password if you use ssh keys instead. More info here: https://sourceforge.net/account/ssh
(highly recommended)
 
apparently it's not just that; when I enter ssh://col2071@git.code.sf.net/p/colonizationmodcollection/Colonization2071 when doing SmartGit clone it's still giving the same message as above.

I'm embarking on reading the sourceforge docs about SSH Keys etc, would I need to set public keys up to connect with SmartGit? alternately do I instal PuTTY and use it to connect rather than smartgit?
 
graah:badcomp:
It wasnt github but my PC.. suddenly it would not let me push/pull anything; after hours of trying & reinstalling git and smartgit, I realized stupid Comodo Firewall update decided to start sandboxing git pull/push requests without asking or notifying me in any way whatsoever. :aargh::wallbash:
Your are not doing a very good job at convincing us to use Comodo Firewall :lol:
 
Your are not doing a very good job at convincing us to use Comodo Firewall
lol I would never wish that on anyone. :crazyeye: but I can't blame it on Comodo this time either, the same thing happens even with the firewall disabled. Could you try connecting as "col2071" via smartgit with that same link to check if it's working for you on that account?

[edit] holdon, maybe I can blame comodo after all :mad: after adding smartssh.cmd to Trusted Files list its able to progress a little further. Yet it didn't work even with the firewall set to Disabled; does this mean it was lying about the firewall being deactivated? truly diabolical :devil:

Anyway now its asking me for a private key file:
Provide the credentials for authenticated to the SSH server 'git.code.sf.net' as user 'col2071'
Should I install PuTTy to generate keys? I tried entering my sourceforge password in the "passphrase" box but it doesnt accept this.
 
Could you try connecting as "col2071" via smartgit with that same link to check if it's working for you on that account?
Not without your password :lol:
Besides it would be pointless as I can use my own account. It should work just fine.

Sourceforge added the ability to use https:// instead of git:// (see page for full URL). Using git's own protocol is faster, but not allowed by all firewalls.

Anyway now its asking me for a private key file:
Provide the credentials for authenticated to the SSH server 'git.code.sf.net' as user 'col2071'
Should I install PuTTy to generate keys? I tried entering my sourceforge password in the "passphrase" box but it doesnt accept this.
Presumably yes. I have yet to to set up sourceforge access in a pure windows environment meaning I used ssh-keygen (openssh).

You could try to pull as RO (Read Only). I will assume it will do that without asking for your password. If that works, then you know everything but your password works.

Before I made an ssh key, smartGIT just asked for my password and when I typed it, it worked just fine. It did however ask 3 times as it also pulls submodules, which really quickly becomes annoying.

Using https should avoid the issue of using ssh keys.
 
Back
Top Bottom