1 How to modify POG files
- You need the PC version, do NOT install your game it in C:/Programm Files, I recommand C:/Hogs of War
- You need to download 2 programs:
- A Hex Editor, I recommend Hex-Editor MX or Hex Editor Neo.
- Notepad++
- Backup the whole map folder in your hogs of war directory (and also any other files you want to modify)
- In the map folder you will find all the maps you can edit, the first mission is called "ESTU.POG" (here is a list of all the missions)
- Open ESTU.POG in Notepad++
- If you want to remove one object on a map, you need to erase the WHOLE block from the object name until the next object name ! (see screenshot)
- You can add an object in the exact same way, you need to copy & paste the WHOLE object block. It doesn't really matter where you paste it, but it shouldn't be at the very beginning, nor at the very end, just paste it right infront of another object block. In Notepad++ there are special functions to copy the binary content, if you use regular copy/paste it won't work, you need to use: Edit --> Paste Special --> Copy/Paste Binary Content
- You must not add spaces/return or any additional charakters to the file, otherwise it will crash. You litterally can only copy & paste content from various map files.
- Once you have pasted the desired objects into your POG file you can edit the objects themself. To do this, you have to open the file in the Hex-Editor MX.
- The file is now shown in hexadecimal format, each pair represents one value that has a meaning in the game. Now the struggle starts, you basically need to find out what the meaning of all those pairs is and what other values the pairs can accept. You can do that by manipulating the values and check if it changes something ingame or you could also check the other mission files and see if other values are used there (or if similar values are used in the same spots).
- You don't have to do all of the work, you will find a nearly complete list below. However, in case you figure out new values, please share them with me !
(image not found)
If you want to remove the GR_ME object, you need to remove everything till the next object (GR_HV).
You can also copy the whole block starting from GR_ME and ending right before HV_ME, then you paste it again directly in front of the HV_ME. This way you will have two times the same GR_ME object.
2 POG FORMAT STRUCTURE EXPLAINED
The first two bytes of the POG files contains the number of objects in the mission. Then in all the following bytes these objects are described.
In this example I show the object HV_ME (it's a pig), but my findings will work on any object. The data size of all the objects is exactly the same (94 bytes) you can edit each of them and manipulate how the objects behave in the game in some way.
Black - Name
The name of the object. This will force some proprieties on the object and will also allow further modification in the following values.
You can find the object names by checking the other mission files and simply try them out in your test mission.
You can find a list of objects in the wiki: https://skybreaker.eu/lexicon/…xicon/8-object-catalogue/
Dark Green - X|Z|Y Precision
Used to place the object more precisely.
Explaination for precision coordinates will follow...
Green - X|Z|Y Coordinates
The X, Z and Y positions of the object on the map, where Z is the height.
Explaination for XZY coordinates will follow...
Beige - Object ID
The ID of the current object.
Silver - Rotation Precision
Used to rotate the object more precisely.
Explaination for precision rotation will follow...
Grey - Rotation
Rotate the object around the vertical axis.
Explaination for rotation will follow...
Dark Yellow - Unused ?
Unknown ? Probably an unused value.
Red - Pig Rank ID / Parameter 1
See here: Rank List
Terracotta - Collision
Collision of the object in the X, Z, Y axis.
Light Purple - Advanced Collision Settings
Special settings used for some objects, for instance bridges. The value 01 might cause the "buggy" walking on bridges.
Yellow - Object Value
• Pig Health
• Shelter Hitpoints
• Vehicle Hitpoints
• Crate Delay
*The value defined here can be maximum 254 (in hexadecimal FE), if you want bigger values use the multiplier explained below.
**The value 255 (in hexadecimal FF) means the default value of the object !
Brown - Multiplier for bigger values
Purple - Spawn Settings
Violet - Group Value
This value adds the object to a group.
• 01: Group 1
• 02: Group 2
• 03: Group 3
• 04: Group 4
• etc...
Turquoise - Script Event
• 1 (0x01): Crate will drop (at "Droppoint Coordinates") when this object dies or is destroyed
• 2 (0x02): Promotion Point will drop (at "Droppoint Coordinates") when this object dies or is destroyed
• 4 (0x04): Your team loses promotion points (amount in "Content Value"), if you destroy this object (used in Mission 15)
• 7 (0x07): If this object reaches the square with droppoint coordinates, a crate will be dropped (used as landmark in Mission 4)
• (0x08): If this object reaches the square with droppoint coordinates, a promotion point will be dropped
• (0x0D): Crate will drop when the group of objects (group in the "Trigger Group") is dead/destroyed
• (0x0E): Promotion Point will drop when the group of objects (group in the "Trigger Group") is dead/destroyed
• (0x10): Your team loses promotion points (amount in "Content Value"), when the group is dead (group in "Trigger Group") (used in PSX Mission 17)
• (0x13): The object behaves like a pickup item (weapon/health crate)
• (0x14): The first task (used in Training Mission)
• (0x15): The last task (used in Training Mission)
• (0x16): Intermediate task (the object is present from the start of the mission) (used in Training Mission)
• (0x17): Intermediate task (used in Training Mission)
Dark Blue - Script Group
This value is a parameter for the scripted events. When a certain group satisfies the script condition then the script event will get executed.
Blue - Script Parameter 0
• Weapon type inside crates
See here: Weapon List
Light Blue - Script Parameter 1
Mint Green - X|Z|Y Droppoint Precision
Used to set the droppoint more precisely.
Explaination for precision droppoint coordinates will follow...
Yellowish Green - X|Z|Y Script Location
The X, Z, Y position of the droppoint.
Explaination for droppoint coordinates will follow...
Orange - Start Settings
Blue Grey - Player Type
00: CPU
01: Human
Gold - Additional Settings
• Pig Spawn Delay: Amount of turns before the pig spawns (used together with "Start Settings"=40)
There are 17 additional bytes on the 4th line (from 0x41 to 0x51). Those values are used for advanced scripting, a tutorial will follow.
If you find any other values or discover some new then please share it with us (here or on the Hogs of War Discord)
HUGE THANKS to Valera & Mikhail for discovering most of those informations !