Vic2ToHoI4-0.2F
This continued big push with this update is updating the province mappings and modernizing the code. Africa and much of Asia now have updated mappings. As well, there's a list of city locations that was pulled from the game, and that has been used to fix up some previously-done mappings.
If you would, please help out the project by doing a debug conversion, loading it up, and examining the Americas, Europe Africa, West Asia, South Asia, and South-East Asia, particularly any areas you know well. Let me know of any bad province mappings, or even go ahead and update them.
As well, I went back and did some state-level fixes. Impassable states are now converted (the impassability is pulled from HoI4, so it'll be in the same areas the game is). And I finally got naval bases placed well. It turns out that with one exception (which looks like a bug in HoI4) I could just import the locations from HoI4. Who knew?
I've also gone through and done more country conversion stuff. We were provided some updated tech and unit mappings, I got research slot conversion finalized, and set starting laws appropriately. There are some other things in the changelog.
And as always, there were a handful of bugs I went and fixed. Please keep reporting bugs, oddities, and rough edges, as that means I can keep fixing them.
It might be a little while until the next release, as I'm planning to help address the root issue behind the latest EU4 difficulties. Wish us luck, as it requires doing major work with the deepest, darkest, most confusing part of the converter (or finally replacing it).
How you can help
First, we can use more portraits. It would help a great deal if you could create new portraits and update cultureGroupToGraphics.txt to point at them correctly. As the name implies, culture groups are mapped to sets of portraits (also, ideologies). I'd like to stick with HoI4's existing art style if possible. However, if you add a truly large number of portraits, I'll not object to you changing the overall style. Bears and Equine portraits are an exception. Feel free to not match the existing style with them, as they're already just in there for fun.
We can use help with female names, callsigns, and company names. Some might be able to be pulled from HoI4. They go in names.txt. Create a debug mod to get a list of missing ones.
We can use help with translations. We have a bunch more localisations in, but they're either translated with google translate or semi-educated edits of default localisations. Either way, they probably need review.
Province mappings are always an issue. Some of @derhochmeister's are in, and there are some more improvements from @derhochmeister that still need integration. If you want to integrate them and make more improvements, that would be very helpful. Or double-check the work in the Americas, Europe, Africa, West Asia, South Asia, and Southeast Asia. If you generate a debug mod you can more easily see what got mapped to where.
If you know C++ or would like to learn, we can always use more people programming. I’m focused on country internals right now, but you could work on whatever part strikes your fancy, or I could give specific direction. Either way, that’s the biggest aspect of working on the converter. If you're learning, this is a good project to improve your skills. If you know a lot, I would love to have your feedback so I can improve my skills.
If you can test, that would be helpful. Catching bugs and oddities earlier means they get fixed earlier. I try to release test versions of the converter on the forum for testing, so running those and looking things over is helpful. With CI now running, I could probably even set up test builds to be automatic. And if you have professional experience in testing, well, I'm sure we could be doing things far better. Tell me how!
We can always use help figuring out how things work, and how we can do them better. If you know how to mod HoI4, we can use your help figuring it out. As well, there's always more room for flavor events, decisions, and the like.
We can always handle more discussion on how things are converted over on the development thread. As well, I try to document implemented items over on the project wiki. And your encouragement helps more than you know.
Changelog
Bug-fixes:
Fix issue #416 (Leaders in all upper-case)
Fix issue #417 (HoI country mappings disappeared again)
Hopefully fix issue #404, (capitals getting moved by landless nations)
A quick logic fix
Update a FAQ item with an improved method.
Add a missing header that was breaking the Linux build
Fix a crash bug
Fix another crash bug
Missing localisations for countries should not block conversion
Country conversion:
Updated Tech/Unit Mappings
Add more depth to the HPM theocracy government.
Set a default graphical culture and 2d graphical culture
Update culture group to graphics mappings for my megacampaign
Further improve localisations for Vic2 dynamic nations
Convert research slots
Convert starting laws
Correct the submarine equipment type
State conversion:
Create impassable states
Import impassable provinces from HoI4
Make sure impassable states get their manpower.
Better handle finding the capital of partially-impassable states
Major fix to naval base positions.
Province mappings:
Update province mappings in Turkey
Update province mappings in Caucasus
Update province mappings in Levant
Update province mappings in Arabia
Update province mappings in Iran
Update Egyptian province mappings
Update province mappings in Libya
Update province mappings in Tunisia
Update provinces in Algeria
Update province mappings in Morocco and Western Sahara
Update province mappings in Sudan
Update province mappings with correction from cities in wrong mappings
Update province mappings in western Africa
Update Central African province mappings
Update the remaining African province mappings
Update province mappings in Central Asia
Update province mappings in Afghanistan and Pakistan
Update remaining South Asian province mappings
Update province mappings in South-East Asia
Clean-up and modernization:
Enable C++17 on EU4toVic2
Use std::optional in some common items
Replace all cases where "" was returned with std::optional
Fix up both CMakeLists.txt files
Use optional in V2World
Use std::optional throughout HoI4World
Dead code removal
Another addition of std::optional in mappers and general components
Return a const object in date::operator =
Clean up the parser interfaces
Clean up the interface to Object
Eliminate some uses of null_ptr in the common items
Add a mode to to code analysis
Some corrections from the C++ Standard Guidelines
Update .gitignore
Fixes to EU4toVic2 after the changes to common items
Don't try to return references when objects must be returned
Change V2Party from a class to a struct so it's more explicit about permissions
Make members of Vic2Agreement private
Rework V2Party again, making it a class with private members