Haha there's no end to the joy of creation the fantastic material today's ToTpp* is providing us !
*TheNamelessOne, but also all others like Fairline, Tanelorn, catfish with graphics, Profgarfield with Lua, knighttime, Jpetrovski, Tootall-2012, blake00 for pioneering these design opportunities, and everybody including you for this new emulation !
This type of batch file system is what I used in Medieval Millennium, which was written when TOTPP 0.15.1 was the latest release. (Yours actually goes a step further, to swap files and put them back in a single script -- I had two scripts, one to install my mod and another to uninstall it.)I'm having so much fun with all the standard Civ graphics that I decided to go a step further and start messing with the DLL files. Prior to this, I have been enhancing the batch file to cater for backups and messing with the main game directory files. The batch will kick off Civ2 automatically and then restore the original files once done playing with no manual intervention needed
Once you exit the game:
If you run this for the first time, the backup of the original DLL files is taken automatically:
Yes my idea is that players directly kick off the batch file, and it automatically sets up the files and executes the game. Once civ2 is closed, it automatically restores back any "common" overwritten files in the root folder. I actually have a shortcut to the batch file in my desktop and it really speeds things up to run the scenarioThis type of batch file system is what I used in Medieval Millennium, which was written when TOTPP 0.15.1 was the latest release. (Yours actually goes a step further, to swap files and put them back in a single script -- I had two scripts, one to install my mod and another to uninstall it.)
I didn't know! Thanks for that. Anyway I'll leave it like this for now as I'm having some crazy ideas I want to implement and see if they work...But as of TOTPP 0.16, this is no longer necessary. You can place updated .dll files in your scenario directory, without touching the ones in the game's main directory at all. Scenarios (and mods) will now look there first, and use any .dll file found there instead of the base version.
Now I am entirely happy with the radio buttons and check boxes as they follow the same pattern as the normal buttons. Styles for both sides using @Fairline 's amazing shields in the check boxes
Done, now the political map looks much better thanks to the improved coastline. Also now that I'm getting better at it I improved the big icons and used smoother textures and transitionsI'm currently reworking my terrain and icon files using Mercator's smooth tile shapes, they look much easier to work with!
So today I was able to do this by starting a new Fantasy game and selecting my custom maps. It took some effort but finally I have managed to have a .scn file with my 4 maps and all the map 1 city/unit placement perfectly integrated without my cities disappearing after the import, so big thanks again to @Prof. Garfield for his copyGamePieces.lua script which is available here. That saved me the need to start again from scratch in order to have the additional mapsI believe in the end I'll start a new fantasy/sci-game from scratch and import all my data using ProfGarfield's script, my game didn't like these "on the fly" map imports
I'm loving Lua (and ProfGarfield's template) so far, with just a few lines of code I've built the basic Political Map functionality in the onEnterTile(unit,previousTile) routine, and works perfectly fine, I see the political map being updated real time as units move :In-game, each time a city is captured or a unit moves successfully to another tile, the terrain in the same coordinates in the political map will be changing accordingly, as well as certain terrain surronding the city to avoid "gaps". Lua will allow me to handle this so the political map will be always up to date.
-- Change Political Map (map 1) - Only for units where domain = 0 (Ground) if unit.owner == object.pNationalistSpanish and unit.type.domain == 0 then civ.getTile(unit.location.x,unit.location.y,1).baseTerrain = object.bNationalistSpain elseif unit.owner == object.pRepublicanSpanish and unit.type.domain == 0 then civ.getTile(unit.location.x,unit.location.y,1).baseTerrain = object.bRepublicanSpain end
That's great !Hi all,
So in the last days I've playing around with another new concept I want to implement for this scenario: a comprehensive espionage lua module. For this, I have put into use the always forgotten Future Technology tech, as Lua can deal with it and do its magic.
In my scenario, as a general rule civilization advances/technologies are considered decisions which the human player take. One decision then can lead to another decision and so on (that's what the Tech Tree defines). The Future Technology tech is seen here as the funding of the intelligence agencies. Every time the human player decides to provide funding to the intelligence agency (a.k.a. researching future technology), then onTurn a new espionage.lua module is invoked to perform random espionage actions against the enemy.
So far I have only coded the ability to provide the location of enemy ships, but I plan to implement to also be able to provide the location of specific enemy generals, build-up of enemy troops, get enemy cities investigated (like the classic civ Spy), get the "check intelligence" screen (open a temporary embassy with the enemy), etc. The possibilities are endless!
See how the "spy the enemy Navy" feature works in game with the below PoC test.
The decision is taken (FT tech is researched). Level 1 is because it's the FT 1, so it means it's the first time FT is researched. Please don't mind the tech icons as these are temporary from my old MGE scenario...
View attachment 637977
View attachment 637983
On the next turn, the new espionage.lua module is invoked. I wanted to mimic the old macro "RECEIVEDTECHNOLOGY" behaviour so the action happens on the turn after the techs are researched. Some nice Lua code will spy on the enemy as many times as how many levels of FT were researched on the previous turn, as my scenario allows multiple decisions (discoveries) per turn!
On the first time we decide to fund the intelligence agency, we get an extra text telling it's set up (text is provisional). Each tribe have their own intelligence agency name.
View attachment 637980
The random espionage action for now it's always "investigate navy" as it's the only feature I've coded. Then the Lua code will check a parameter table of navy ships with all their details. As I said in a previous post, I'm playing with the unit IDs to represent different ships of the same class (unit type) . See how the parameter table looks for this PoC (it needs to include many more ships, but to prove the code works it's just enough). I might even include additional fields, like the captain name, we'll see
View attachment 637992
Lua will randomly choose a ship from the parameter table, and provide a detailed report about it, including nearest city and distance (functionality sourced from @Prof. Garfield 's LST helpkey.lua module).
For ships inside a city it tells you where the ship is currently docked:
View attachment 637985
For ships on sea, it will tell you the closest city and distance (that's the helpkey functionality):
View attachment 637991
Of course this works for the Republican player too
View attachment 637994
View attachment 637996
I might include extra stuff and need to polish a bug on the city names i get (don't seem correct). I also need to see if there's any way to be able to use the letter ñ and "accents" in the text module to write names in Spanish properly...
That's all, I hope you like this new feature!