Dev Diary PMC Ukraine Berdyansk ArmA 3 Terrain

This is dev diary for PMC Ukraine Berdyansk ArmA 3 real world data terrain by PMC.

We have been writing development or developer diaries to PMC Tactical Forums for two decades, these addon dev diaries are spread to many forum topics. One example PMC Tactical Forums: Vietnam: The Experience Neverending development diary 2007-10-13. On 2020 things changed in Farming Simulator 19 editing community when we started to write detailed dev diaries as web html pages because we had no forum, now in 2022 the same dev diary story telling continues in ofp/arma community.

These dev diaries are my current on the fly thoughts and emotions, if I feel shitty I will clearly state that. I try to avoid it but sometimes there might be hilarious profanity rants when things don't go exactly as I planned, so if you are "offended" by few curse words you probably should stop reading now Smiley ;)

Also these dev diaries are written to many addon projects and sometimes repeating the same lines of text or taking exact same screenshots feels stupid so there might be text just listing boring "I did XYZ and then ZYX" type of info without further details. And remember; this is NOT a tutorial, this is entertainment Smiley ;)

Time stamps are Universal Time Coordinated (UTC).

2022-03-01 Project Started

2022-03-01T08:56:00Z This page was created.

2022-03-01T09:07:00Z Global Mapper project created, user created feature grid done, KMZ file exported.

Now we wait a long time until Terra Incognita queue frees so we can continue / start downloading this terrains satellite imagery, looking at the queue... it will take days heh.

2022-03-02T15:03:00Z Terra incognita satellite imagery download started. Normal 2 x 2 grid sections, seems to come to 16 oziexplorer tiles.

2022-03-06 Global Mapper Editing

2022-03-06T19:19:00Z Been editing long time today already but now other project tasks are running out so have some time to put edit into PMC Ukraine Berdyansk.

Global mapper exported SRTM 1-arc-sec v3 ASCII Grid heightmap.asc file. Then downloaded GEBCO ocean sea bottom heightmap data and merged it into final heightmap.asc in global mapper.

2022-03-06T20:13:00Z Small detour to put in few more edits to PMC Ukraine Sumy, now back to berdyansk in full.

Reduced OpenStreetMap (OSM) roads to 3100 feature count, then exported all cropped OSM shape files.

Then transformed all OSM shapes to UTM Projection 31N 200,000/0 Terrain Builder readable coordinates, also did roads.shp ID/ORDER edits of course and pmc_names.hpp config.cpp class names{} err class Smiley :)

Currently my muscle memory and "workflow" is just insanely good, I am flowing through these steps smoothly like a quicksilver Smiley ;)

When you're on top of your game, its a beautiful thing...

2022-03-06T20:47:00Z Finished global mapper assigning RGB colors to OSM shapes.

Started global mapper exporting satellite mask.

Then created terrain builder project. Copied Terrain Processor files there and started to run obj_forest and road smoothing TPP things.

2022-03-06T21:21:00Z Terrain builder satellite mask imported.

Then created global mapper map catalog and exported preview-arcgis-17-level.png image.

And now, I'm starting to get a bit tired, not exhausted but just editing energy is draining fast and don't feel like pushing myself into bigger edits anymore, feels like its late in the evening maybe time for TV/movies or something.

Also less than 50gb free space in E: editing hard disk drive (HDD), so heh that probably fills up if I do a full berdyansk image conversion process Smiley :)

Actually... I am calling it a night here.

2022-03-06T21:31:00Z Editing continues tomorrow.

2022-03-07 GIMP Satellite Texture Editing

2022-03-07T09:10:00Z New editing day has started, we continue where we left off last night. First thing to do is to global mapper export satellite texture. This task again takes more than 2 hours I believe.

2022-03-07T09:51:00Z Started to GIMP clone stamp tool brush off clouds. Editing in GIMP is fun, but I hate satellite imagery clouds, SO much.

Satellite texture tiles with clouds: A4, A3, A2, B4, B3, C1

Satellite texture tiles with coastline: C4, C3, C2, D3, D2, D1

Satellite texture tiles ocean: D4

2022-03-07T11:11:00Z Finished clone stamp tool brushing clouds off, now beginning to fix the coastline tiles for ocean bottom sandy texture.

Satellite texture/mask is 61440 x 61440 pixel resolution, its split into 4 x 4 grid tiles which is 15360 resolution per tile. Such PNG images save much longer in GIMP than lower res ones (well doh), its usually few minutes waiting time when doing overwrite PNG save.

I usually watch Ukraine war news live streams while GIMP is saving. Bored.

2022-03-07T12:38:00Z Finished GIMP painting coast lines and the one full ocean bottom tile.

Then used GraphicsMagick and ran _run_graphicsmagick_darken_and_picturemap_tiles_4x4_green.bat and _run_graphicsmagick_l3dt_8192_texture_map_tiles_4x4.bat to get satellite texture BMP images ready for terrain builder.

Not sure if this is just temporary because lack of proper sleep last night but today is a first day I really feel exhausted about arma3 terrain editing. I have been hammering these edits since the Russia Ukraine war begun and now its like what, 11th or 12th day or something like that. Just overall feeling is like I need a break, mind wanders to maybe play some Farming Simulator 19 or something for some relaxing non fighting related content. Dunno, could probably be just "localized" temporary mood after just struggling through those GIMP coast line free hand selection paintings which were quite painful.

2022-03-07T12:48:00Z Copied newly generated picturemap_ca.tga etc images into terrain builder source dir.

Then terrain builder imported satellite texture, created airfield_runways shape layer and the poly line for runway, exported it to data\ airfield_runways.shp file.

L3DT imported heightmap.asc with smoothed roads, then L3DT_texture_map.png and then smoothed out the only airfield runway in this terrain. Exported heightmap.asc back out again, edited the header and imported to terrain builder with rebuilt terrain etc.

2022-03-07T13:13:00Z Terrain builder generate layers started, now we wait.

2022-03-07T14:33:00Z Terrain builder finished (some time ago, I think).

Exported WRP, moveObject re-pathed WRP, then started Convert Layers PNG to PAA Fast bat.

Edited Separate Data Layers for smaller PBOs bat's, then ran them once PNGs were converted. Then re-pathed RVMATs using moveObject, after which all addons were ready for binarization (PMC Editing Wiki: search "binarize").

2022-03-07T15:01:00Z Started pboProject binarizing. We are done here.

2022-04-05 One Day Out

2022-04-05T16:29:00Z New editing day has started. Its been almost a month of since I created PMC Ukraine Berdyansk terrain and if we are to believe this dev diary I haven't even seen it in arma3 yet. Todays goal is to finish editing and release this terrain... if there are no issues or sudden lack of motivation to do so. I just released PMC Taiwan Kaohsiung terrain and feeling great at the moment, lets do this.

Looking at my 00.txt real world data terrain tool pipeline text file, there are new object generation task and ocean coastline fixing still to do, uh oh, those are no small things to get done, especially the ocean one.

As usual return to previously made terrain always begins with arma3 in-game orientation check, just to get my bearings.

2022-04-05T16:36:00Z However with convenient timing its now my lunch break Smiley :)

2022-04-05T17:02:00Z Feeding time is over, lets go to Ukraine Berdyansk.

In-game check shows that roads.shp indeed is broken, airfield is missing class names{} pmc_names.hpp entry but has been heightmap smoothed so that looks good. Coastline in 2D mapview at least looks more or less OK, in 3D of course coastline looks like shit, water creeping to land and too much elevations above water level in the actual ocean (which is caused by GEBCO data).

Before starting to edit had to subst p:\pmc\ namespace from taiwan to ukraine root directory.

Terrain builder loaded the project up, checked that keypoints is done for the airfield (it was, apparently I just didn't copy-paste config.cpp class into pmc_names.hpp yet), then imported roads.shp shape file in.

PMC Ukraine Berdyansk ArmA 3 Screenshot

Then exported WRP, saved project (just in case, I didn't actually edit anything) and closed the project. Next copy-pasted class names{} entry from the .HPP next to WRP file into actual config.cpp pmc_names.hpp file. Now after the next binarization our airfield has a name.

Copied over latest Terrain Processor TPP Templates file with good object generation asks, plus the roads.* file copying and *.LBT file deleting bat files, edited and ran the roads bat to get roads shape files here, then started terrain processor to generate these new objects. I'm hoping it wont create more than few million so I don't need to split the shape file up to 2 x 2 grid tile setup, this is small 61.4km terrain so I don't think there are any need for that. Edit: "small" heh, well that was my thought at the time of writing it, I wouldn't really call sixty one point four kilometer terrain a "small", but heh yeah anyways Smiley ;)

Hah wrote that above paragraph and when checked out terrain processor it was already finished, oh my she was fast! Smiley :)

Objects count 1,336,296 total. Pfft, peanuts...

2022-04-05T18:00:00Z Terrain builder started to import objects, ETA only like 10-13min or so.

PMC Ukraine Berdyansk ArmA 3 Screenshot

Hmm take a look at that odd ocean coastline satellite texture bug on the background, how did that happen? Smiley :o

Hmm and I didn't even see it in-game when inspecting the coast, am I blind as a fucking bat? Was it not visible from underwater? Hmm?

Oh well it is there now and v0.1 release comes out with it, will be fixed on the first upgrade, wrote a bug/issue report about it.

While terrain builder was importing objects I switched to edit the dreaded ocean coastline water creeping into terrain issue, not my favorite thing to do especially after PMC Taiwan Kaohsiung terrain where this task had just failed, global mapper crashed.

Started to follow my tool pipeline to fix water creeping to land issue. Did the few steps and then started global mapper and created map catalog of Sat_Mask_??.png images, however at this point remembered that I need to first save them in GIMP so that global mapper exported satellite mask tiles are merged with my ocean coastline painted masks. Got that all? You follow? Good, just checking Smiley :D

Yeah I know this part of the dev diary is a bit hand wavey "get it done" style heh, but yeah.

Doing the editing in GIMP. If you can call copy-pasting editing Smiley ;)

PMC Ukraine Berdyansk ArmA 3 Screenshot

Got all the Sat_Mask_??.png images properly colored for ocean areas, then continued in global mapper to create whatever that thing was I was creating there heh.

sat_C3.png was the culprit for that one single missed satellite texture tile ocean coast, I fixed it in GIMP and saved to Satellite.Texture/ as XCF file. However... hmm do I really want to re-generate layers just for this tiny fix, its hmm dunno how many hours extra time for literally nothing, 99% of the players wont even notice it in the underwater.

Did some exprimenting and seems like global mapper crashes because the created ocean coastline shape is too detailed. When I reduced the details a great deal it works, I can generate the final ocean depth "heightmap" from the shape. Hmm interesting.

The only problem is, if I reduce details on that shape... is it going to be accurate coastline anymore or just some blocky whacky THE THiNG. No idea.

Got the "heightmap-final.asc" done, imported it to terrain builder and did the usual shuffle to get WRP exported, then started pboProject binarization, lets go see in-game how the new ocean coastline looks.

2022-04-05T20:06:00Z In-game arma3 check complete, coastline heightmap looks... surprisingly good considering its kind of fake with -3m flat elevation. It is much better option than the water creeping to land setup.

Now I saw the one missed satellite texture tile which was not painted as ocean bottom pattern.

2022-04-05T20:17:00Z Okay so cant think of anything else to fix, time to start the release procedure. I'm going to take this one step at the time, not calling out release for today or whatever, I'll edit and what happens... happens Smiley ;)

Added pmc_ukraine_berdyansk to PMC "worldSize" mission pack terrains list, with this we get bunch of missions for berdyansk.

Updated mod.cpp for new google/maps link and more accurate terrain specs data.

2022-04-05T20:31:00Z Addon pbo's bisign files generates and 7-zip release packet created.

2022-04-05T20:42:00Z Uh oh! went to take screenshots and by the airfield... saw that runway is not leveled, ok my bad I forgot to level it out after doing the water creeping to land fix, also now I realize that roads are not smoothed either.

Okay so going to delete the 7-zip release packet, and going back to terrain builder for some more work, oh well no big deal, glad I saw this now instead after the release.

L3DT imported the water creep fixed heightmap-final.asc, then smoothed out the airfield runways and exported into heightmap.asc file. Then ran terrain processor road smoothing.

Decided after all that because this release would be tomorrows task anyways, I am going to re-generate layers to fix that one annoying missed spot in satellite texture. In fact when doing that will also import the new better satellite mask too.

If you have to binarize... why not fix this missed spot issue as well.

Used graphicsmagick to convert satellite mask images first, then satellite texture images. Deleted old layers PAA files, RVMATs etc, then started terrain builder again. Updated picturemap_ca.tga image too. Then imported new satellite mask into terrain builder after first deleting all the old ones (would be crazy amount of clicks to reload from source).

2022-04-05T21:13:00Z Terrain builder started generate layers. This will take a while.

Managed to cut my hair and shave while terrain builder is generating satellite texture layers, gotta optimize time use Smiley :)

And left me still with a lot of waiting time, when got back to computer it was still running 5min on texture and who knows how long it will slice and dice the satellite mask next.

Okay starting to put those web page php files together now then. Got main homepage and changelog done, now just need screenshots and to move this dev diary into that actual web page.

2022-04-05T22:25:00Z Terrain builder finished generating layers.

Then started convert layers PNG to PAA fast bat file, this time rock'n'roll with 26 CPU threads Smiley :D


PMC Ukraine Berdyansk ArmA 3 Screenshot

Then ran separate WRP and Data bat file, all the moveObject re-pathing RVMATs/WRP stuff and then we were ready to binarize.

Started pboProject binarization.

2022-04-05T23:06:00Z Binarization done, ready for arma3 in-game check.

Everything looked fine in arma3, so took a screenshots while I was at there and settings were on ULTRA. Then begins the real web page work with screenshots, proof reading and link adding, uuh...

2022-04-06T00:05:00Z Screenshots done and added to main/screenshots page.

2022-04-06T00:09:00Z Moved localhost dev diary page content into this actual web page. Now begins the painstaking proof reading and link adding. I'm just going to chill, if this doesn't finish tonight then no worries will continue it tomorrow morning.

2022-04-06T00:54:00Z This dev diary page proof read, images verified and links added. It was okay job, not too bad, but my pinky copy-paste finger still is in agony heh.

Decided to leave release for tomorrow even though I'm still not tired or anything, but why push it, its great to start tomorrow by releasing a terrain.

Generated new bising keys, again (heh) and then just time stamped readme to new date (its past midnight UTC now) and then ran release packing bat file.

2022-04-06T13:20:00Z New editing day has started. After waking up did usual computer chores, then had to cook food which I hate to do right in the morning heh, ate and now ready to continue editing. Nothing to edit, last night I compiled the release packet and web pages are pretty much good to go as well. Only thing to do is the release news/forum post text.

While release packet was uploading, did the news/forum post texts, got ready to commit them. Did one more typo fixes to this dev diary web page and then we were ready to go.

2022-04-06T13:45:00Z PMC Ukraine Berdyansk v0.1 has been released! Smiley :cool:

PMC Ukraine Berdyansk: Changelog, Dev Diary, Screenshots. Back to PMC Terrain's page.