Page 1 of 16
Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Jul 17, 2019 6:15 pm
by berto
All new CSVN Sneak Peeks, Coming Attractions, Works-In-Progress to go in this thread.
For previous posts in the series, visit:
http://www.matrixgames.com/forums/tm.asp?m=3942519
(See especially the later posts in that thread.)
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Tue Jul 23, 2019 3:02 pm
by Crossroads
To get things started up here, here's a screenshot using the weekend's BETA where I am testing the CS Event Engine scripting I have been adding, among other things the player briefings seen here.
I reduced the screenshot to 50% size, original is from my 3440x1440 widescreen, with desktop scaling set at 100% (none). 2D view, which at this BETA stage is already quite close to the finished article, 3D unit images on chits, large Toolbar.
Sorry about the poor picture quality, had to pack it quite a lot to make the 200KB (!) image limit on this forum...
OK Here we go, compressed to 35% quality does it.

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Jul 26, 2019 8:25 am
by berto
A recent (private) Dev Team Forum post:
ORIGINAL: berto
A (composite) screenshot taken just before the VC forces occupy the supply cache hex to finish the assault:
Works like a charm! [:)]
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Jul 26, 2019 8:52 am
by Crossroads
Note the CSEE script there: for destroying the supply, Event Points are awarded, too. But capturing it, instead of destroying it, ups the VM Supply level as well!

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Jul 26, 2019 9:33 am
by berto
ORIGINAL: berto
This new XCaptured counter flag, and the new is_captured() CSEE function, both required careful thought and deep programming.
Earlier, several weeks back, I had changed the game engine, for destroyed units, to save their particulars in the .btl (and other) save files.
With the new is_captured() function, and with saving dead unit particulars in the save game files, we can now have event processing that, at any point in the game, can do things like:
[*]if the VC have captured 3 or more ARVN supply caches, then ...
[*]if the VC have captured 2 or more village chiefs (depicted either as civilian units, or as "commanders"), then ...
[*]if the US captures the NVA regimental commander, then ... else (kills him) ...
[*]if the VC have captured 2 or more civilian units, then ... (somehow deal them as hostages)
Some interesting new possibilities there.
Remember: The Vietnam Wars were as much political conflicts as military ones. Unconventional warfare, guerrilla warfare. We should have at least a few scenarios, and CSEE events, depicting those aspects.
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Jul 26, 2019 9:47 am
by berto
ORIGINAL: berto
One could imagine one or more
Cambodian Incursion scenarios for example where, by means of high EP [Event Point] awards, the object is more to
capture NVA supply caches (and their documents etc.) than to destroy combat units or occupy territory.
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Tue Jul 30, 2019 8:01 pm
by berto
Another recent (private) Dev Team Forum post:
ORIGINAL: berto
Here's a high priority wish list item: in-game hex-side terrain tags.
How many times does it happen? You look at a hex, and its hexsides. Arrayed around that hex ...
Is that an Unpaved road? a Path?
Is that a Cliff? An Embankment? An Escarpment?
Is that a Stream? A Minor River?
Is that a Light Bridge? A Medium Bridge? A Heavy Bridge?
And so on.
It's not always quite clear. Too often it is infuriatingly unclear.
In our game, in the HexInfo box, we do indicate the hex Terrain (and Ground conditions). But we don't indicate the hexside terrains.
Here is how JTS Panzer Battles solves the problem.
The default Unit List:
And the alternate Unit List view, which displays when you right click on the Unit List, else by way of (a recent innovation) pressing the Tab hot key:
Below the Unit List (note where in PzB, it is in the Unit List alternative display where the organizational and other unit info shows), you will see a hex schematic, showing the hexside terrains arrayed around the current hot spot hex.
I would like maybe to do something like that in the Campaign Series. This is a long-time feature in JTS games over the past decade and more. In the Campaign Series, this is long overdue!
Either that, or maybe show hexside terrains, on map, by way of tooltips.
Something, anything. I have a deep felt need to fix this.
Thoughts?
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Tue Jul 30, 2019 8:03 pm
by berto
"Something, anything". Thinking outside the box, extending the Display > Map Hints feature, in the map editor:
ORIGINAL: berto
ORIGINAL: berto
Now I am working on something else.
The "something else":
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Tue Jul 30, 2019 8:04 pm
by berto
ORIGINAL: berto
Available also now in game (also in the scen editor):
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Tue Jul 30, 2019 8:06 pm
by berto
A key to the Side labels:
RoadSide, // RD
RailSide, // RL
StreamSide, // SR
MinorRiverSide, // MR
HeavyBridgeSide, // HB
MediumBridgeSide, // MB
LightBridgeSide, // LB
HedgeSide, // HG
DuneSide, // DN
CliffSide, // CL
EmbankSide, // EM
UnpavedSide, // UP
GullySide, // GL
FordSide, // FD
PathSide, // PT
HighSide, // HI
StoneSide, // SN
BocageSide, // BC
EscarpmentSide, // ES
ReefSide, // RF
DitchSide, // DI
CrestSide, // CR
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Jul 31, 2019 12:07 pm
by Big Ivan
That's a great new feature berto for map and scenario making!

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Thu Aug 01, 2019 4:41 am
by Crossroads
ORIGINAL: Big Ivan
That's a great new feature berto for map and scenario making!
Now with a dedicated Toolbar icon as well:
A note about Toolbars in our games: It can be toggled OFF, if so opted, for instance if hot keys are your thing. Or access via Menu. Also, it comes in three sized: Large (here), Medium, and Small. Finally, it comes in two versions, monochrome, or color coded (here).

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Aug 02, 2019 11:58 am
by Crossroads
A quick screenshout covering the what is the current CS Vietnam 2D view BETA look and feel. Subject to changes, as always.

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Fri Aug 02, 2019 12:11 pm
by Crossroads
And another one. Previous screenshot was with 2D Normal View, NATO Symbols on counters, Hexes ON, Medium Toolbar.
This one with 2D Zoom-in View, 3D Images on counters (portraying a proper facing, too), and no Toolbar. Hexes OFF, too. Options galore.

RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Aug 07, 2019 7:30 pm
by berto
Some more recent (private) Dev Team Forum posts.
ORIGINAL: berto
There are many interesting code examples I could be showing you, but this one is especially so.
ORIGINAL: Jason Petho
ORIGINAL: berto
Jason, in VN_641230_Binh_Gia.txt, what does this mean?
...
Second case. What does '"relieves" the trapped garrison' mean? I truly don't understand what you mean by that. A single ARVN ranger unit first arrives on the scene? All lost objectives are recaptured -- by "any" (a single?) ARVN ranger unit? The captive SV units in the garrison are all saved? Etc., etc.
This refers to the Ranger unit being able to be adjacent (thereby saving the garrison from the siege)
to the trapped garrison forces (which will become surrounded as the scenario plays out).
Determining if any counter of one unit (Ranger) is adjacent to any counter of another unit (garrison) -- a tricky problem!
Here without added comment is one way to do this:
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Aug 07, 2019 7:30 pm
by berto
ORIGINAL: berto
An earlier version, where I misconstrued "garrison" to mean the
place (Binh Gia and everything within its walls):
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Aug 07, 2019 7:31 pm
by berto
ORIGINAL: berto
To help make the previous two code examples clearer:
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Wed Aug 28, 2019 5:42 pm
by berto
Some more recent (private) Dev Team Forum posts.
ORIGINAL: berto
So, I am working to SAI the VN_641230_Binh_Gia scenario. With the VC SAI finished, and parts of the ARVN SAI finished, next up is implementing the ARVN helo reinforcements SAI. In this scenario, the ARVN helo reinforcements begin appearing on Turn 6. To get to my current area of SAI focus, I have to sit through watching ... and watching ... and watching [>:] the auto-test replay of Turns 1 through 5, which I have endured many, many times already.
Before I get to the good stuff, let me explain my SAI development methodology.
[*]First, I will develop one side or the other's SAI, with the opposition side's units on hold() in the meantime.
[*]I script this, I script that. Along the way, I auto-test the game play, for example:
rober@Rob10rto /cygdrive/c/Games/Matrix Games/Vietnam/vietnam
$ ./vnengine.exe -W -7 -T -R -L3 VN_641230_Binh_Gia.scn
I observe shortcomings, see areas of improvement, and all too often, I encounter bugs.
[*]I apply the improvements, fix the bugs, and redo the auto-tests.
[*]Wash, rinse, and repeat ...
Eventually, I am satisfied that the one side's SAI is WAD, or good enough. Then:
[*]Second, I develop the other side's SAI in the same manner as above (and with the earlier side's units also all on hold()).
Satisfied with each side's SAI when run in isolation, one side at a time only, then:
[*]Third, I run both side's SAI in tandem.
[*]Of course, there will still be shortcomings, better ideas, and bugs.
[*]More improvements and bug fixes. More auto-retests.
[*]Wash, rinse, and repeat ...
That's a lot of auto-test replays to sit through! [X(]
Lots of watching and watching and watching the same thing over and over and over again, patiently waiting until the turn or the action point of current interest comes around.
This is the chief reason why the scripting process is so time consuming: All of those minutes of auto-test replay watching add up to hours and hours of dead time. Stupefyingly boring dead time.
Available to me, but not to you [:'(], I have a mechanism to stop/start the AI action. I can
$ touch "$VN"/pass
to create a file "pass" (an empty file) in the CSVN home folder, else
$ rm "$VN"/pass
to r(e)m(ove) that file. (Doing this in a Cygwin terminal.)
I have coded things such that when I run the game in Debug mode (unavailable to you guys [:'(]), I can halt the AI auto-test replay at the next phase turnaround by means of an 'rm'; and resume the AI auto-test replay by means of a 'touch', and also an AI > Activate AI toggle. (I have many other means of testing and debugging at my disposal, some of them available to you also, most importantly use of the DEBUG switch (set in user.lua), the CSEE log() function, etc.)
Great, but not quite so great: touch'ing or rm'ing the pass file still requires me to pay somewhat close attention, since it is a manual action. I can let my attention wander; I can multi-task and do other things while waiting for the auto-test replay to get to the stop point; but I still need to 'touch' or 'rm' the file at the appropriate time. I can't automate this.
Or I couldn't, until ...
ORIGINAL: berto
Available in the next release, the new CSEE functions:
[*]pass() [effectively only for my use]
[*]nopass() [ditto]
[*]
aistop(msg) [for everybody to use]
By means of this
function on_arty_attack (hc, trackid, pid, name, side, nation, oid, orgname, points, strength, HQ, Leader) -- DO NOT REMOVE
aistop("in on_arty_attack(), hc " .. hc)
end
I can get the SAI
automatically to stop, and display this:
Automatically stop, and display the diagnostic message, without my having to pay attention or take manual action until then.
The msg is optional. You can also call the aistop() function without any inputs, as in
function on_next_phase (turn, side) -- DO NOT REMOVE
...
if turn == 3 and
side = SIDE_A then
--nopass()
aistop()
end
end
On Turn 3, at the end of the Side A phase, one might see this:
(This is effectively much the same as my using nopass().)
Note that one might also add a diagnostic message here, as in:
if turn == 3 and
side = SIDE_A then
aistop("in on_next_phase(), Turn " .. turn .. ", Side " .. side)
end
This is way, way cool.
The CSEE now has debugging breakpoints! Together with the aistop(
msg) diagnostics, perhaps supplemented by additional standard CSEE log() calls; by using the CSEE traceon() & traceoff() calls, for code tracing; and by other means -- the Lua CSEE offers a rich array of debugging tools and techniques.
And just as important: Automated ways of applying those tools and techniques, freeing us from much of the development/testing/debugging tedium.
This is a huge advance, it will save us from hours and hours of boring auto-test replay watching. Let the CSEE automatedly monitor its progress and stop by itself, while we do other things.
Geek joy!
If it's not clear: You, the player, need not concern yourself with any of this. This is all just background stuff of concern to us, the game developers, and perhaps also you as a modder.
The CSEE gives us lots of toys to play with. Play the actual game. Play the modding meta game. One way or the other,
have fun!
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Thu Aug 29, 2019 6:55 am
by wodin
Loving the crisp 2D graphics.
RE: Sneak Peeks, Coming Attractions, Works-In-Progress
Posted: Sat Aug 31, 2019 10:06 pm
by Jason Petho
Campaign Series Vietnam: ALPHA graphics. Master Maps.
The DMZ master map has been completed to the extent it is going to be for the 1.00 release. As you can see, it is quite extensive and covers a lot of well known battlefields that will be trimmed down for each of the various scenarios.
