[mod] Religion and Revolution Extended (modmod of Religion and Revolution)

Nightinggale

Deity
Joined
Feb 2, 2009
Messages
5,378
Out of date!!!
Use Religion and Revolution 1.6 instead

As previously announced I decided to make a mod of the mod Religion and Revolution. Here it is: the modmod Religion and Revolution Extended.

This is based on Religion and Revolution 1.5, which in turn is based on The Authentic Colonization 2.03_final. The full credit list for those two mods can be found here.

I will be doing mod development a little different from the other mods.
Cherokee tribe said:
  • Tell me and I will forget
  • Show me, and I may not remember
  • Involve me, and I will understand
Ok, maybe the Cherokee didn't actually post this on CivFanatics, but they did say it and it tells my view one mod development and software development in general. I will give everybody access to the newest version at all time. It's great in the sense that nobody will have to wait for already made features, but it also mean the code is less tested when people get it. In a sense everybody will become beta testers.

It also mean I'm open for contributions from everybody. In fact I depend on it as I suck when it comes to graphics. There is a list further down of missing graphics.

The mod is hosted here. Since this is a free account on Github, it has size issues and will need files from RaR 1.5. Also you need a Git client to get it. See Install for more information.

Goal:
There is no fixed goal other than generally allow reduced micromanagement, increase speed and reduce memory usage. I also indent to hunt and kill every single bug.
Other ideas will be coded when they appear.

Install and usage guides
I thought a little about this and decided to take the approach :stupid:
In other words I will tell ONE way to get this working and write in a way so as little prior knowledge is needed. Maybe it isn't the best way but it's the way I predict is least likely to cause problems.

Install
Spoiler :
The mod is currently only distributed though git. This mean you will have to install a git client to get it. I will assume you have installed TortoiseGit.

Go to your colo MODS directory in "My Games" as I fear permission issues with the one in program files.

Right click on an empty place and select "Git Clone"
Set URL to
Code:
https://github.com/Nightinggale/Religion_and_Revolution_Extended.git
Hit OK and wait for download.

Adding files from RaR
Open \Religion_and_Revolution_Extended\Assets
Delete Art and Sounds
Copy Art and Sounds from Religion and Revolution 1.5 to Assets

You will notice that those two directories now have a red !. This means they have local modifications and you don't want that unless you know you made them. To clear those local modifications:
Select directory and right click.
Select TortoiseGit->Revert
Select all and ok
Doing that should return the green V. All directories should have green V when you are done.
The mod should now be playable


Update
Spoiler :
Goto MODS directory.
Right click on Religion_and_Revolution_Extended
Select TortoiseGit->Pull
OK


Install without Git
Not recommended, but can be used by people who won't/can't install Git.
Spoiler :
  1. Make a copy of Religion_and_Revolution in MODS and call it Religion_and_Revolution_Extended.
  2. Goto the project page and click ZIP.
  3. Unzip the downloaded file.
  4. Copy the content of Religion_and_Revolution_Extended-master (the unzipped file) into Religion_and_Revolution_Extended. Click "yes to all" about merging directories and overwriting files.
Repeat step 2-4 whenever you want to update.


Create desktop shortcut
Spoiler :
Goto Colonization.exe in program files.
Drag Colonization.exe to the desktop while holding down ALT.
Right click and select properties.
Add at the end of target
Code:
 mod="Religion_and_Revolution_Extended"
Notice the first character is a space. It must have at least one space after the " already in the end of Target.
Click "change icon" button.
Browse
Select RaR_desktop_icon.ico in MODS/Religion_and_Revolution_Extended
ok
ok
Now Colonization will open directly in Religion and Revolution Extended when this shortcut is double clicked. This approach works with all mods and the icon is optional.


Load RaR 1.5 savegames
Spoiler :
Until stated otherwise, RaRE can load RaR 1.5 savegames. However a little trick is needed to load them.
First remove Religion_and_Revolution from MODS (I highly recommend you to keep it somewhere else for safekeeping)
Either you make a copy of Religion_and_Revolution_Extended and call it Religion_and_Revolution or you can make a symbolic link.
The symbolic link is the technically best solution as you use the same files for both and as such update both at the same time and only use disk space for one.

Important: RaR can't read RaRE savegames. This is a one way travel option.
Also I'm not sure how much I will recommend this as it makes the game see RaR as RaRE. If this is used, then the link/copy should be removed when it's no longer needed to avoid confusion. Start all new games in RaRE.


Email notifications
Spoiler :
It should be possible to get an email every time something new is committed.
Read The github guide
This mod's URL is as previously stated https://github.com/Nightinggale/Religion_and_Revolution_Extended


BUGS
Bugs are reported here.
I enabled asserts and I would like people to upload savegames which asserts every time. Asserts triggers when the code assumes something and the assumption is wrong due to a bug (which is often undetected). This should make it a lot easier to find bugs.
If an assert triggers in fullscreen you need to alt+tab out of the game to see it. The game stalls. Window mode will not have that issue.
 
Screenshots
 

Attachments

  • Feeder.JPG
    Feeder.JPG
    208.3 KB · Views: 1,880
  • TOTAL_PRODUCTION.JPG
    TOTAL_PRODUCTION.JPG
    213.8 KB · Views: 1,442
That is awesome. One of the biggest problems that I see with RaR is the managing of goods, etc and you doing this is great. More time enjoying the game and less doing the boring stuff.
 
I wish you a lot of fun and success with this project. :thumbsup:
(Sorry if this comes a bit late but I have been gone again the last days.)
 
I wish you a lot of fun and success with this project. :thumbsup:
Thank you. Success isn't given to you, you make it and I feel fully able to do that for myself. The real question is if I can attract other people to do anything. If not, then any new feature will be boring looking.

It took almost two days before anybody posted and I still haven't found out if people can figure out how to install this mod without having problems.
 
I'm finishing my RaR 1.5 game, after that I will download and install the mod, but from what you have written it seems awesome.
 
Nightingale, I have read your descriptions and it sounds promising.

Nevertheless, I would advise you to provide some screenshots of the new elements (like your "traderoute feeder") to satisfy the human curiosity.

I may install your files and have a look at it and then decide whether I will install this Git-client (I am reluctant to install too many client on my machine, as typically this will leave one with a mess after a while).
 
I committed a change to freeing criminals and servants. Now it uses the timer from AOD (free is based on serving their term based on time in the new world and nothing else).

Nevertheless, I would advise you to provide some screenshots of the new elements (like your "traderoute feeder") to satisfy the human curiosity.
Thanks for reminding me of my plans for the reserved post :mischief:

I may install your files and have a look at it and then decide whether I will install this Git-client (I am reluctant to install too many client on my machine, as typically this will leave one with a mess after a while).
I agree and I'm not really happy with the current setup. It is a great setup for people coding and maybe not so great for regular users. I wonder if it is possible to get the CLI based client to work without installing it. If it is possible, then I would be able to distribute that one together with two .bat files, one for install and one for update.
 
I have just had a quick look at your screenshots. First, thanks for providing them. :goodjob:

Then a quick question: the "overall production and storage" is a summing up of all production and storage over all of the cities?
If yes, this would be really great and helpful. I have often wished for such a display. :)
 
On second thought:
If my assumption as above would be correct, would there be a way to integrate the "overall production and storage" lines into the "normal" production display, best at the top of it?

By this, one would have all the necessary information at one glance - you see the total of your production, the total of your storage and then, below, have the individual quantities per city.
 
On second thought:
If my assumption as above would be correct, would there be a way to integrate the "overall production and storage" lines into the "normal" production display, best at the top of it?

By this, one would have all the necessary information at one glance - you see the total of your production, the total of your storage and then, below, have the individual quantities per city.
It is the combined values for all colonies. My original goal was to get the combined surplus of lumber to make sure I could supply all colonies without overflowing them. Feeder service then makes sure the lumber is evenly distributed based on needs.
Naturally this goes for all yields, but lumber is the trickiest to handle due to the decentralization. Tobacco goes to the colony with the cigar factory and so on.

The reason why it is placed on a page of it's own is because the code assumes each line to be a colony. Clicking on it sends the view to that colony and if it isn't a colony, the game crashes. The new screen is different from the other ones because lines can't be clicked or sorted. I would have liked to have it on the same page, but without being able to make sure it wouldn't crash I decided against it.

Edit: One thing I forgot to mention. If you go from a page with yields to another page with yields (like from production to total production), then it will remember which subpage you were on. That means the displayed yields columns will stay the same and you no longer have to click the right array a lot when you compare pages. I did serious work to the domestic advisor file and a lot of such nice features are allocated automatically to pages without extra code. In will automatically make new pages as needed if somebody adds more buildings or yields and they no longer fit the current ones. In fact it's no longer have code to tell it's 3 pages. It discovers that each time you open the domestic advisor. Hopefully this automation will avoid future bugs.
 
Wow. In total, this sounds very promising. :goodjob:
 
Bad news. Windows crashed and now it will no longer boot. My first attempt at saving it failed and I might need to reinstall everything. This means next commit is further into the future than I thought this morning :badcomp:

The good news is that it appears that I haven't lost any data at all. Also due to the power of dualboot I'm without windows, but not without a computer. I'm 100% sure I will return to modding despite this setback.
 
Sorry to hear about your Windows installation. :(

One question though, as I am currently testing your files: what exactly does the "import feeder" do?
From the popup description it sound like starting the import into a city at 75% (of what?) and stopping it at 100% (again, of what?)

And, btw, this new summarization screen is really a great help! :goodjob:
 
One question though, as I am currently testing your files: what exactly does the "import feeder" do?
From the popup description it sound like starting the import into a city at 75% (of what?) and stopping it at 100% (again, of what?)
It's of the import/export threshold. In the screenshot it's 200 for lumber and 100 for stone.

The text is written in Assets/XML/Text/CIV4GameText_RaR_Extended.xml
I think I remember something about not entirely knowing what to write and then go "screw it. People will know or it will be changed later". If somebody can come up with an improved text, then I'm open for it. In fact I'm always open for improvements.

Maybe it should write what 75% and 100% are based on current setting, though I'm not sure it updates the text while the window is open and now I can't test it.

It might also be mentioned that feeder imported goods are written in green and non-imported goods (with feeder on) are written in red in the import/export overview.

The whole idea is that if you set say lumber to 200, then it will import until it reaches 200. Import is then turned off and wagon trains will no longer spend time moving lumber to the colony. Once it used lumber and is below 150 it starts to import again. This will also prevent the case where one colony gets all the lumber and another one runs out. Lumber moving might be less of an issue with 2-plot radius than when I first came up with this concept because colonies with no lumber at all are now less common. Still it's a great tool for distributing goods according to needs.
 
Ok.

Let's say, we have three cities A, B and C.
A delivers a yield to B, where part of that yield is consumed. Then, B delivers to C (could be the main port city).
A keeps a reserve of 50 items of that yield. B shall keep a reserve of 50, too.
What happens now, if the "feeder" checkbox has been marked?

Following your explanation, A would stop delivering the yield, unless the storage quantity in B decreases below 35 items, no?
(I am not saying that this is the wrong approach, I just want to understand the logic)
 
Back
Top Bottom