GEO + Fixed Vehicle Models
Добавить в игру через Steam
Нажмите «Подписаться»
На странице Steam войдите в аккаунт, если потребуется.
Подписаться
О материале
«GEO + Fixed Vehicle Models» — материал мастерской Hearts of Iron IV. Альтернативная история, фокусы и модификации стратегии. Данные Steam, описание автора и ссылка для установки через подписку. Совместимость редакцией не проверена.
Описание автора
this mod combines "fixed vehicle models all dlc" and "geo ww2 models" together fixed vehicle models make the vanilla models big and geo ww2 models adds new high quality models this mod scales up geo ww2 models (by 1.3) to be the same size as the fixed vehicle models non-tank vehicles (motorized, mechanized, armored cars, etc.) are scaled to 0.8
the priority is that someone who is not using the mod will also see the same model (for multiplayer), so even if i manually change my model it will still be the same model to someone with 0 mods enabled, i will just see a bigger and (if it's using a geo ww2 model) higher quality model
ive checked error.log and the replacements it did in game, if u find a bug comment and ill fix
AI was NOT used on any art, it was only used to make python script and combine the mods
everything written below this line is by ai
GEO + Fixed Vehicle Models
Combined Hearts of Iron IV mod merging:
-
Base: Fixed Vehicle Models All DLC (Vehicle Fix)
-
Models: GEO World War 2 Models Mod (GEO WW2)
Vehicle Fix provides scaled-up vanilla models. GEO WW2 provides higher-quality geo_* models for many vanilla entity slots. This mod keeps Vehicle Fix as the foundation and selectively swaps in GEO models where they represent the same vehicle.
Methodology
1. Start from Vehicle Fix
The full Vehicle Fix workshop content is copied as the mod base. All scaled entity definitions, empty vanilla overrides, and Vehicle Fix sizing are preserved.
Each merge run resets Vehicle Fix entity .asset files from the workshop copy before applying replacements, so re-running the script is idempotent.
2. Entity name whitelist
Only entity name values that already exist in Vehicle Fix are considered. GEO-only entities (for example GER_medium_armor_panther_a_entity, FRA_modern_armor_leclerc_entity, or geo_* custom entries) are not added.
3. Decide whether GEO replaces a slot
For each Vehicle Fix entity, the merge script checks whether a GEO model represents the same vehicle.
Vehicle identity is inferred from:
-
Comments in Vehicle Fix _125*.asset files (for example # ARL 44 (FRA_heavy_armor_1))
-
Vanilla game equipment designer icon labels (for example GER_medium_armor_entity #Panzer IV)
-
Vanilla mesh names when VF comments are section headers
-
GEO comments, mesh filenames, and icon labels
-
Roman numeral handling (Panzer IV → panzer4) and hyphenated names (AMX-M4 → amxm4)
Slot identity always comes from the vanilla / Vehicle Fix model, not from where GEO parked the mesh. If GEO has the same vehicle under a different entity name, that mesh is used on the VF slot.
Same-name matching: if GEO uses a geo_* mesh on the same entity name and vehicle tokens match, replace.
Cross-name matching: when GEO uses a different entity name for the same vehicle (common with base-game slots), the script searches GEO entities with a compatible role. Examples:
| Vehicle Fix / vanilla entity | GEO entity used for mesh | Vehicle |
|---|---|---|
| GER_medium_armor_entity | GER_medium_armor_1_entity | Panzer IV |
| FRA_heavy_armor_entity | FRA_heavy_armor_0_entity | Char B1 bis |
| GER_light_armor_entity | GER_light_armor_1_entity | Panzer II |
Cross-name matching requires compatible equipment roles (base medium_armor → medium_armor_1, but not armored_car → light_armor) and strong token overlap.
Same-name slot fallback: when Vehicle Fix has no vehicle label but GEO assigns a geo_* mesh to the same entity name, the GEO slot assignment is trusted.
Kept from Vehicle Fix when GEO assigns a different vehicle to the same slot:
| Entity | Vehicle Fix vehicle | GEO model | Result |
|---|---|---|---|
| FRA_heavy_armor_1_entity | ARL 44 | M4A3E2 Sherman | Keep ARL 44 |
| FRA_medium_armor_1_entity | Somua S35 | M4A4 Sherman | Keep S35 |
| FRA_medium_armor_2_entity | SARL 42 | M4A2 Sherman | Keep SARL 42 |
| ENG_medium_armor_2_entity | Comet | M4A4 | Keep Comet |
| ENG_light_armor_1_entity | Matilda | M3 Stuart | Keep Matilda |
4. Scaling
When a GEO replacement is applied:
final_scale = geo_entity_scale × 1.3
GEO models are larger than vanilla but smaller than Vehicle Fix scaling. The 1.3 multiplier brings GEO models up to Vehicle Fix visual size.
Non-tank vehicle entities (motorized, mechanized, armored cars, recon, etc. in vehicle .asset files) are set to scale = 0.8. Infantry riders attached to those vehicles are left unchanged.
5. Assets copied from GEO
For each accepted replacement, the script copies:
-
GEO mesh definitions into gfx/entities/_geofixed_meshes.gfx
-
GEO model files (.mesh, textures, .anim) referenced by those meshes
-
Required animation definitions into gfx/models/units/tanks/_geofixed_animations.asset
Texture copying handles naming mismatches and shared texture families:
-
geo_panzer1_a.mesh → geo_panzer1a_* textures
-
geo_panzer4_g.mesh → shared geo_panzer4_* textures
-
geo_b1bis.mesh → geo_b1_* textures (mesh name differs from texture prefix)
-
geo_type97_chiha_track_* and geo_38t_e_track_* shared track textures
-
geo_accessories_* shared accessory textures
GEO entity parsing prefers _geo*.asset definitions over vanilla units_tanks.asset overrides, so base-game slots like GER_heavy_armor_entity correctly resolve to geo_tiger_mesh (Tiger I / Panzer VI).
A GEO WW2 vehicle plan CSV (3d model plan - シート.csv) is included for reference when validating nation/vehicle slot assignments. This is from the google sheets linked in Kakheti Arsenal discord.
Key replacements
| Entity | Vehicle | GEO mesh | Final scale |
|---|---|---|---|
| GER_light_armor_0_entity | Panzer I | geo_panzer1_a_mesh | 1.04 |
| GER_medium_armor_entity | Panzer IV | geo_panzer4_g_mesh | 0.91 |
| GER_heavy_armor_entity | Tiger I (Panzer VI) | geo_tiger_mesh | 1.17 |
| FRA_heavy_armor_entity | Char B1 bis | geo_b1bis_mesh | 1.3 |
| USA_medium_armor_0_entity | M3 Lee | geo_m3lee_mesh | 1.3 |
| SOV_medium_armor_entity | T-34 | geo_t3476obr1943_mesh | 0.975 |
| JAP_medium_armor_entity | Type 97 Chi-Ha | geo_type97_chiha_mesh | 1.17 |
59 replacements total. Full machine-readable details: merge_report.json
Regenerating
python3 merge_geo_models.py
The script expects Vehicle Fix, GEO WW2, and the vanilla HOI4 install at their default Steam paths (configured at the top of merge_geo_models.py).
Load order
Enable this mod instead of Vehicle Fix and GEO WW2. Do not run all three together.
Credits
-
Vehicle Fix: Fixed Vehicle Models All DLC (Workshop ID 2909181066)
-
GEO WW2: GEO World War 2 Models Mod (Workshop ID 3132985068)
Как установить и запустить
Откройте оригинальную страницу в Steam Workshop, проверьте версию игры, зависимости и порядок загрузки в описании автора. Нажмите «Подписаться» и дождитесь загрузки Steam. Включите материал в меню модификаций или контента игры, если это требуется. Совместимость и запуск редакцией не проверены.