I'd definitely love to see what you can come up with. I have never used Lua myself, but this sounds like a worthy cause to learn it for.
Talking about it has gotten me interested in Lua again so I dusted off that old proof of concept I did and have been playing around with it for the past few days. Running Lua from inside Civ 3 is no problem, that's no surprise since the injected C code can do anything any normal C program could. As expected the hard part is getting Lua to interface with Civ 3's functions and data types. LuaJIT has an FFI library that's supposed to make that kind of thing easy, though I'm not sure how applicable it is to my needs here. One roadblock I've already run into is that it finds C function addresses automatically using the Win32 method GetProcAddress, which doesn't work for finding addresses in Civ3Conquests.exe since the EXE is not set up to export them. Similarly the mod's own injected functions aren't available that way. However, there is a solution, I can redirect the Lua DLL's calls to GetProcAddress to my own replacement function, as I've done for so many Civ 3 functions, that provides the addresses of Civ 3 functions when asked. That's one piece of the puzzle anyway.
This has been fun but I'm not sure how far I want to go down this road. Right now I'm planning to reimplement the disorder warning feature in Lua as a beefier proof of concept, since it's a relatively simple but not trivial feature. If people are interested in this I could continue working on it but if not I don't think it's worth the effort. I might post a separate thread about this to gauge interest.
It's a really strange exception that I do not understand why it was made the way it is - agricultural is the strongest trait by far due to this. If you could make this an option to "fix" the incosistency, it would be great. Also, settling on food resources deletes all the extra food, while settling on prod or money resources does not cause such a loss.
Sure, removing that exception to the tile penalty is a 10 minute job at most so I'll go ahead and do it for R14. About allowing bonus food from resources on city tiles, I doubt that's difficult but I'd have to look into it. Added to the list for now.
What about simply allowing transport units to transport other transport units, or allowing a naval unit to transport other naval units?
You'd still have the problem of getting units into some transport in the first place and figuring out where they're supposed to go. The base game unit AI doesn't do a great job of this. As far as I can tell, the way it works is that units load up for a naval invasion if they happen to find themselves in a city with a naval transport and have nothing better to do. There's no way for them to seek out a transport, which is why the AI often sends out transports that are only partially filled.
I wonder if in new mods there is that thing fixed with treasury cashed in capitol which is not working when you start a game from conquest folder?
I'm not sure what you're referring to, but I haven't touched anything related to that so no, sorry, it hasn't been fixed.
Also, would it be possible to change the restriction on the additional production generated by the civil engineer in the original game so that it can also be used for unit production and not just for constructing buildings?
Probably. It's been a while since I looked at that part of the code but as I recall the game just checks if the city's current build is an improvement or unit to determine whether shields from specialists can contribute, so that should be another case where the logic could be bypassed with a small edit.
I've just tested the charm bombard again and have found out if you give a land artillery piece the charm special order, it will have the same the same targeting behavior like regular artillery in Vanilla and PTW.
Interesting find. I looked over the bombard code again, and it does look like it would be possible to make charm bombard do normal damage against units. Basically the way the charm attack procedure works is that it rolls a damage kind (damaging buildings, population, or units) then calls a method to apply that to the city, and if the city didn't absorb the damage, then it goes on to apply charm status to units on the tile. I could intercept that method call to apply regular damage to units, depending on the damage kind, and avoid the rest of the charm bombard procedure. There's one catch in that cities aren't always vulnerable to charm attacks depending on what improvements are present. I'd have to bypass that code as well. Making it so that charm bombard applies normally but only to one unit is probably possible too but more difficult.