1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Project name

Discussion in 'Civ4Col - Medieval: Conquests' started by Nightinggale, Apr 23, 2014.

  1. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    I'm planning a major redesign of how we store our files.

    I'm planning a design like this:

    Each mod will get a submodule of it's own. This mean each mod has a master and can make branches from it. Also if you pull a mod, you don't have to pull other mod files as well.

    The DLL source code will have a submodule of it's own. It will only contain C++ and project files meaning it is intended to be quite small.

    Each mod will then include the source submodule. This mean whenever you finish pulling a mod, it will automatically pull the latest source code and place it inside a directory in what you just pulled. This will make it feel like there is a source code in each mod while in reality it still pulls from just one and changes to it will affect all mods. If we do this right, the game can figure out which mod to compile for just by looking at the mod, which was pulled first meaning Makefile.settings will not longer be needed (though I have no plan for removing this ability).

    The problem
    Medieval Conquest will end up as a submodule just like all the other mods. This mean it would be fitting to find a new name for the overall project, which contains all the mods and the source code.

    I'm thinking of finding some rather generic name like "Colonization mods" or something like that. However I haven't come up with a name that I like. Can any of you come up with a fitting name?
     
  2. orlanth

    orlanth Storm God. Yarr!

    Joined:
    Nov 17, 2001
    Messages:
    1,776
    How about... KailoNightzation!! :king::p:D:cool:
     
  3. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    The problem with that name is that it will mean nothing to outsiders and be a candidate to be the worst name possible when it comes to attracting new people.
     
  4. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    Heh, thats a good one orlanth:) But I'd agree with Night.

    If we want it to represent what we are doing, perhaps we could just call it Colonization Mod Source or Civ4Col Mod Source for short.
     
  5. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
  6. orlanth

    orlanth Storm God. Yarr!

    Joined:
    Nov 17, 2001
    Messages:
    1,776
  7. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    Har har

    If you need a name quick just go with the Colonization Mod Collection, or Colonization Mods :)

    Or use an alternate word for Collection, like Assemblage, Assembly, or Compilation
     
  8. Lib.Spi't

    Lib.Spi't Overlord of the Wasteland

    Joined:
    Feb 12, 2009
    Messages:
    3,707
    Location:
    UK
  9. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
  10. Lib.Spi't

    Lib.Spi't Overlord of the Wasteland

    Joined:
    Feb 12, 2009
    Messages:
    3,707
    Location:
    UK
    Don't give me permission!!!!

    Just put the goodies in my bag and no one gets hurt!
     
  11. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    I plan on making a world history submodule and give you write permission to that one alone (if I can figure out how to do that). This will allow you to write to assets only (python excepted). World history will then likely NOT use branches. Odds are that you figure out how to use that one and if not, then only world history will be damaged. The only exception is if you upload pirated files and get the whole project closed, but that goes for everybody.
     
  12. Lib.Spi't

    Lib.Spi't Overlord of the Wasteland

    Joined:
    Feb 12, 2009
    Messages:
    3,707
    Location:
    UK
    Avast Mateys! Give me ya codey toys or I'll blast ye whole Project down to the locker of davey jones!!
     
  13. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    Lib man, you trip me out. Laughing out loud for reals:lol:


    This sounds great Night, see you guys at the CMC ;)
     
  14. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    I managed to m add a git module and push the DLL source code, hence preserving history of who did what while splitting out non-source data. Checking out the code here is just a 3 MB download, not 250 like from github.
    https://sourceforge.net/p/colonizationmodcollection/sourceDLL/ci/master/tree/

    Now I just need to add the rest and then join all of it together.

    EDIT: arrghh... now I received a notification email with the log for every single "new" revision. That's quite a big mail :eek:
     
  15. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    Now I have DLL source, M:C and python on sourceforge and we can continue working with those as it is now. Right now I'm the only one with write access, but that can easily be changed.

    I want to make it so what when M:C is pulled, it automatically pulls python and sourceDLL. It looked simple in theory, but to gain write access, my SF username is in the URL and it will be useless for other people. I wonder if I can make some pull hook to insert username when pulling and though that generate the needed list of URLs locally for each user rather than some global fixed one.

    I found the pull solution. First of all git can actually handle relative paths meaning now it looks for submodules on the same server. As a result it will reuse the first part of the URL as was used when pulling M:C. and the whole username issue is avoided.

    Automatically pulling submodule was added in git 1.7.5
    You just have to open cmd.exe and write
    Code:
    git.exe config --global fetch.recurseSubmodules true
    After doing this once, it will always remember this setting and always pull submodules when pulling git. As it is global it is set right away for each new clone you make.
     
  16. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    Edit: Ok, I found it. Windows 8 search from the charm menu turned up negative. I went to were git was installed and found it. These windows never do what you want them too.

    Ok, I appears to have done something different. It pulled the MOD_Yield_Check, MOD_Yields, and MOD_Yields_Python but that is it. Still no source files or python...

    Is there any other way to do this. Search does not find any git.exe and cmd.exe says it don't recognize it either. I always have trouble with working with the cmd.exe.
     
  17. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    Those 3 files are mod specific and part of Medieval_Conquest. It would be really surprising if you didn't get those. The source will use those to figure out which mod to compile for. In other words it should be able to compile for all mods without manual configuration in Makefile.settings.

    Regarding lack of submodules:
    Try using this GIT GUI: http://www.syntevo.com/smartgithg/download
    Not because the one you are using is broken, but if you use the same as I do, then I can tell how to use it ;)
    With smartGIT, you clone again and in the menu you make sure you select that you want all heads and submodules. That should do it.
     
  18. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
  19. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,354
    Unlikely. Git is quite tolerant when it comes to avoiding problems with having multiple installations. However you can just tell smartGIT to use your existing git installation instead of installing a new one.
     
  20. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone

Share This Page