Sneak Peeks, Coming Attractions, Works-In-Progress

The Campaign Series: Middle East 1948-1985 is a new turn-based, tactical wargame that focuses on conflicts in the Middle East.

Moderator: Jason Petho

User avatar
Jason Petho
Posts: 17626
Joined: Tue Jun 22, 2004 10:31 am
Location: Terrace, BC, Canada
Contact:

RE: NVA Heavy Machinegun

Post by Jason Petho »

ORIGINAL: Deepstuff3725

Any chance some day, way down the road, we might see a CS: Modern Warfare? I'd like to put together and play scenarios with US and coalition forces going up against different insurgents and terrorist groups, being able to use toys like the M1 Abrams tank, A-10s and F-18s, US Navy Seal teams, etc.

Jeff

As we build the OOB's comprehensively between 1948 and 1985, you'll find these goodies in the US, which is COLD WAR ready:


P100049 5 8 22 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100049 9 97 0 1 4 2113551 80 1 85 12 67 42 30 M1 Abrams , M1 Abrams ,
P100050 4 8 22 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100049 9 97 0 1 4 2113551 80 1 85 12 67 42 30 M1 Abrams , M1 Abrams ,
P100051 3 8 22 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100049 9 97 0 1 4 2113551 80 1 85 12 67 42 30 M1 Abrams , M1 Abrams ,
P100052 2 8 22 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100049 9 97 0 1 4 2113551 80 1 85 12 67 42 30 M1 Abrams , M1 Abrams ,
P100053 5 8 24 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100053 10 97 0 1 4 2113551 84 1 85 12 81 48 35 IPM1 Abrams , IPM1 Abrams ,
P100054 4 8 24 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100053 10 97 0 1 4 2113551 84 1 85 12 81 48 35 IPM1 Abrams , IPM1 Abrams ,
P100055 3 8 24 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100053 10 97 0 1 4 2113551 84 1 85 12 81 48 35 IPM1 Abrams , IPM1 Abrams ,
P100056 2 8 24 35 0 0 73 48 54 2 5 1 12 0 0 1 24 62 P100053 10 97 0 1 4 2113551 84 1 85 12 81 48 35 IPM1 Abrams , IPM1 Abrams ,


P102086 1 12 12 33 25 25 16 10 0 2 0 0 1 6 7 0 429 47 P102086 14 2 131 1024 49 4227085 61 1 85 12 0 0 0 SEAL , SEAL ,

P106575 2 0 11 35 0 0 400 350 0 0 0 14 31 7 6 0 376 129 P106575 6 65536 0 0 2052 8208 77 1 85 12 0 0 0 A-10 Thunderbolt , A-10 ,


P105054 2 0 22 0 0 0 0 0 0 0 0 14 26 7 6 0 71 0 P105054 6 0 0 0 524288 0 83 1 85 12 0 0 0 F/A-18A Hornet , F/A-18A ,
User avatar
Crossroads
Posts: 18403
Joined: Sun Jul 05, 2009 8:57 am

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Crossroads »

And of course, the British Army of the Rhine is already part of the CS Middle East British OOB
Visit us at: Campaign Series Legion
---
CS: Vietnam 1948-1967 < 2.10.0 Public Beta Open (Oct 21, 2025)
CS: Middle East 1948-1985 < 3.10.0 Public Beta Open (Oct 21, 2025)
jamespcrowley
Posts: 362
Joined: Tue Jun 10, 2003 12:58 am
Location: Chichester UK

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by jamespcrowley »

Probably a stupid question; does the hex size have to represent 250m?


When you consider that many board and computer squad level games use a hex size of 40 -50 m, 250 seems excessive for formations just over three times as big as a squad.

Cheers

Jim
Oberst_Klink
Posts: 4919
Joined: Sun Feb 10, 2008 7:37 pm
Location: Germany
Contact:

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Oberst_Klink »

ORIGINAL: jamespcrowley

Probably a stupid question; does the hex size have to represent 250m?


When you consider that many board and computer squad level games use a hex size of 40 -50 m, 250 seems excessive for formations just over three times as big as a squad.

James,

see it this way - up to 6 units can occupy a hex, so the stacking allows up to 6 platoons or vehicles. In smaller scale, 50m/Hex like in WinSPWW2 etc you can stack less units into one hex; which makes sense, right? I just checked it out. So, the hex scale fits into the maximum availale troops/density you can pack in there.

Klink, Oberst

Image
Attachments
cats.jpg
cats.jpg (177.86 KiB) Viewed 475 times
My Blog & on Twitter.
Visit CS Legion on Twitter & Facebook for updates.
User avatar
Jason Petho
Posts: 17626
Joined: Tue Jun 22, 2004 10:31 am
Location: Terrace, BC, Canada
Contact:

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Jason Petho »

...does the hex size have to represent 250m?

Yes.

It is the fundamental map scale of the series.
User avatar
Crossroads
Posts: 18403
Joined: Sun Jul 05, 2009 8:57 am

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Crossroads »

With Campaign Series, as it was originally developed by a crew of Avalon Hill veterans that founded Talonsoft, it may not be a big surprise they decided to continue the 250m scale of Panzerblitz, Panzer Leader, and Arab Israeli Wars.

SPI's Mech War series of the old were 200m hexes, while their somewhat older Red Star / White Star series were 300m hexes. At the other end there's the coming Normandy: the Beginning of the End choosing to use a higher, 150-200m scale for hexes.

Most of the platoon scale boardgames seem to be there or thereabouts with 250 m hex sizes, seems [:)]

Checked, another 150m hex series are the LnL Nations at War and World at War series.
Visit us at: Campaign Series Legion
---
CS: Vietnam 1948-1967 < 2.10.0 Public Beta Open (Oct 21, 2025)
CS: Middle East 1948-1985 < 3.10.0 Public Beta Open (Oct 21, 2025)
User avatar
Warhorse
Posts: 5373
Joined: Fri May 12, 2000 8:00 am
Location: Birdsboro, PA, USA
Contact:

Type 63 Light Tank in veggie camo

Post by Warhorse »

As part of the NVA/VC camo project, which will be an option, here is the Type 63 resplendent in it's vegetative camo to evade air superiority!!



Image
Attachments
Type63.jpg
Type63.jpg (92.87 KiB) Viewed 475 times
Mike Amos

Meine Ehre heißt Treue
www.cslegion.com
User avatar
Big Ivan
Posts: 2032
Joined: Mon Jun 09, 2008 12:34 am
Location: Mansfield, Ohio USA

RE: Type 63 Light Tank in veggie camo

Post by Big Ivan »

ORIGINAL: Warhorse

As part of the NVA/VC camo project, which will be an option, here is the Type 63 resplendent in it's vegetative camo to evade air superiority!!



Image

That's pretty slick Mike, I like that!![:)]
Blitz call sign Big Ivan.
Assistant Forum Moderator for CS and CSx2 at The Blitz Wargaming Club.
User avatar
Warhorse
Posts: 5373
Joined: Fri May 12, 2000 8:00 am
Location: Birdsboro, PA, USA
Contact:

RE: Type 63 Light Tank in veggie camo

Post by Warhorse »

Thanks John, taking a little time, but going to be boss!
Mike Amos

Meine Ehre heißt Treue
www.cslegion.com
User avatar
Warhorse
Posts: 5373
Joined: Fri May 12, 2000 8:00 am
Location: Birdsboro, PA, USA
Contact:

PAVN Assault Gun

Post by Warhorse »

Almost done the camo pack, here is the ISU-122 Assault Gun.



Image
Attachments
PAVNJSU122.jpg
PAVNJSU122.jpg (20.98 KiB) Viewed 476 times
Mike Amos

Meine Ehre heißt Treue
www.cslegion.com
User avatar
Warhorse
Posts: 5373
Joined: Fri May 12, 2000 8:00 am
Location: Birdsboro, PA, USA
Contact:

RE: PAVN Assault Gun

Post by Warhorse »

NVA camo'd vehicles move up a road! All vehicles, and heavy crew-served weapons now are foliage camo'd, will be able to use via JSGME!



Image
Attachments
NVACamo.jpg
NVACamo.jpg (492.47 KiB) Viewed 476 times
Mike Amos

Meine Ehre heißt Treue
www.cslegion.com
User avatar
Big Ivan
Posts: 2032
Joined: Mon Jun 09, 2008 12:34 am
Location: Mansfield, Ohio USA

RE: PAVN Assault Gun

Post by Big Ivan »

Looking real cool Mike, just beautiful!![:)]
Blitz call sign Big Ivan.
Assistant Forum Moderator for CS and CSx2 at The Blitz Wargaming Club.
User avatar
Warhorse
Posts: 5373
Joined: Fri May 12, 2000 8:00 am
Location: Birdsboro, PA, USA
Contact:

RE: PAVN Assault Gun

Post by Warhorse »

Thanks man, now on to the ARVN!
Mike Amos

Meine Ehre heißt Treue
www.cslegion.com
User avatar
Crossroads
Posts: 18403
Joined: Sun Jul 05, 2009 8:57 am

RE: PAVN Assault Gun

Post by Crossroads »

Here's Mike's PRVN unit images on 2D view. Watch out, they look the business!

Image
Visit us at: Campaign Series Legion
---
CS: Vietnam 1948-1967 < 2.10.0 Public Beta Open (Oct 21, 2025)
CS: Middle East 1948-1985 < 3.10.0 Public Beta Open (Oct 21, 2025)
User avatar
berto
Posts: 21461
Joined: Wed Mar 13, 2002 1:15 am
Location: metro Chicago, Illinois, USA
Contact:

RE: PAVN Assault Gun

Post by berto »


Another recent (private) Dev Team Forum post:
ORIGINAL: berto
ORIGINAL: berto

I am struggling to implement way point movement...
Done! As in, for example:

function battle_plan_hmong_attack_left (turn, side)

local i

move_way_point(HMONG_1ST_COMPANY, {"22,10","22,13"})
for i = 1, #HMONG_1ST_COMPANY do
local trackid = HMONG_1ST_COMPANY
if within(trackid, "22,13", 1) then
attack_strong({trackid}, "22,17")
end
end

end


Campaign Series Legion https://cslegion.com/
Campaign Series Lead Coder https://www.matrixgames.com/forums/view ... hp?f=10167
Panzer Campaigns, Panzer Battles Lead Coder https://wargameds.com
User avatar
berto
Posts: 21461
Joined: Wed Mar 13, 2002 1:15 am
Location: metro Chicago, Illinois, USA
Contact:

RE: PAVN Assault Gun

Post by berto »


A work-in-progress:

Image

Image

Image
Campaign Series Legion https://cslegion.com/
Campaign Series Lead Coder https://www.matrixgames.com/forums/view ... hp?f=10167
Panzer Campaigns, Panzer Battles Lead Coder https://wargameds.com
User avatar
Crossroads
Posts: 18403
Joined: Sun Jul 05, 2009 8:57 am

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Crossroads »

Not your father’s AI, anymore [:)]
Visit us at: Campaign Series Legion
---
CS: Vietnam 1948-1967 < 2.10.0 Public Beta Open (Oct 21, 2025)
CS: Middle East 1948-1985 < 3.10.0 Public Beta Open (Oct 21, 2025)
User avatar
Blond_Knight
Posts: 998
Joined: Sat May 15, 2004 3:52 am

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Blond_Knight »

Im not saying we need an editor for the lua files but how about a syntax checker? Im assuming if you call a variable that doesn't exist it'll output to the log file?

Berto if you need an extra hand I do a lot of powershell and some Linux scripting as a Sysadmin.
User avatar
berto
Posts: 21461
Joined: Wed Mar 13, 2002 1:15 am
Location: metro Chicago, Illinois, USA
Contact:

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by berto »

ORIGINAL: Blond_Knight

Im not saying we need an editor for the lua files but how about a syntax checker? ...
You mean like the standard Lua compiler luac?

rober@Rob10rto /cygdrive/c/Documents and Settings/rober/My Documents/Games/Matrix Games/Images
$ luac -p "$VN/mods/DEV - Test Scenarios"/*.lua "$VN/mods/DEV - Test Scenarios/scenarios"/*.lua
luac: ... - Test Scenarios/scenarios/LA_671216_phou-den-din_H.lua:224: 'then' expected near 'move_rush'

[:)]

A support utility I wrote to work together with luac, take a gander at this:
ORIGINAL: berto

Let's see if I can make your heads hurt.

The source code to txt.l, the heart of the new lstrip.exe utility (one component of csluachk.pl):

Image

Needless to say (?), get even just a single ; out of place, omit a vital \ or whatever, the whole thing falls apart, won't compile (translate into machine code). It all has to be just so.
In addition, I have at least one other home-grown utility, csluachk.pl, to check the Lua scripts in various other ways, for example:

rober@Rob10rto ~/cslint
$ ./csluachk.pl -G -n -w +e -g vn
...
ERROR: for VN_510327_Mao_Khe_H.lua:226: mistaken side: FRENCHSIDE
ERROR: for VN_510327_Mao_Khe_H.lua:226: mistaken side parameter: inc_event_points(FRENCHSIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:254: mistaken side: FRENCHSIDE
ERROR: for VN_510327_Mao_Khe_H.lua:254: mistaken side parameter: inc_event_points(FRENCHSIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:282: mistaken side: FRENCHSIDE
ERROR: for VN_510327_Mao_Khe_H.lua:282: mistaken side parameter: inc_event_points(FRENCHSIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:354: mistaken nation parameter: inc_morale_shift(FRENCH_SIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:370: mistaken nation parameter: inc_morale_shift(FRENCH_SIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:387: mistaken nation parameter: inc_morale_shift(VIET_MINH_SIDE, ...)
ERROR: for VN_510327_Mao_Khe_H.lua:403: mistaken nation parameter: inc_morale_shift(VIET_MINH_SIDE, ...)
...
ERROR: for VN_521201_Na_San_H.lua:443: mistaken side: French_SIDE
ERROR: for VN_521201_Na_San_H.lua:473: mistaken side: French_SIDE
ERROR: /usr/local/bin/luac: ...rix Games/Vietnam/vietnam/scenarios/VN_540404_PK15_H.lua:208: 'then' expected near 'if'
...
ERROR: for VN_480810_Gionc_Dinh_A.lua:104: mistaken objective hex coordinates: objective_owner(15,11)
ERROR: for VN_480810_Gionc_Dinh_A.lua:110: mistaken objective hex coordinates: objective_owner(15,11)
ERROR: for VN_480810_Gionc_Dinh_A.lua:116: mistaken objective hex coordinates: objective_owner(15,11)
WARNING: in VN_480810_Gionc_Dinh_A.lua, referenced just once: VP_2_CAPTURED
WARNING: in VN_480810_Gionc_Dinh_A.lua, referenced just once: VP_3_CAPTURED
...
WARNING: for LA_630915_SamNeua_A.lua, missing or mistaken on_resume()
WARNING: for LA_630915_SamNeua_A.lua, missing or mistaken on_shutdown()
WARNING: for LA_630915_SamNeua_A.lua, missing or mistaken on_next_phase()
WARNING: for LA_630915_SamNeua_A.lua, missing or mistaken on_next_turn()
...

And many other possible errors.
Im assuming if you call a variable that doesn't exist it'll output to the log file?
Yes, the Lua interpreter will surely log all significant errors (in the standard game log files engine.log & error.log, but also optionally in the new lua.log), for example:

rober@Rob10rto /cygdrive/r/Temp/logs
$ cat error.log
2018-07-31 05:16:36 vnengine.exe: [ERROR ID 3000] (lua.cpp, line 317, Lua::Load()) user.lua file load error: user.lua:178: 'end' expected ( to close 'function' at line 88) near <eof>
2018-07-31 05:16:59 vnengine.exe: [ERROR ID 3000] (appl.cpp, line 3186, ApplWindow::LOnNextPhase()) in ApplWindow::LOnNextPhase, error running function 'on_next_phase': scenarios\MoveWayPointTest1.lua:67: attempt to call a nil value (global 'move_way_point')

By means of the CSEE log() command

FUNCTION

log (logfile, loglevel, msg)

DESCRIPTION

Log a message, at the given level, to one of the standard game log files.

INPUTS

logfile -- any of

ERRLOG
APPLOG
LUALOG

loglevel -- any of

LOG_DEBUG
LOG_INFO
LOG_NOTICE
LOG_WARNING
LOG_ERROR

text -- character string, or some function or expression evaluating to a character string

RETURN VALUE

none

EXAMPLES

log(LUALOG, LOG_INFO, "entering on_startup(), turn is " .. current_turn())

log(APPLOG, LOG_INFO, "entering on_startup(), turn is " .. current_turn())

log(ERRLOG, LOG_ERROR, "unit trackid " .. trackid .. " does not exist")

SEE ALSO

message ()
message_once ()
_message ()
note ()
note_once ()
_note ()
debug ()

and its cousins (the SEE ALSO), you can log the CSEE up the wazoo.

A sample use:

log(LUALOG, LOG_DEBUG,
"turn " .. current_turn() ..
", i " .. i ..
", j " .. j ..
", trackid " .. trackid ..
", loc " .. loc ..
", from " .. from ..
", to " .. to
)

And its corresponding lua.log file output:

rober@Rob10rto /cygdrive/r/Temp/logs
$ cat lua.log
2018-07-31 07:52:44 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 2, i 1, j 3, trackid 293, loc 59,78, from 59,73, to 50,68
2018-07-31 07:52:44 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 2, i 1, j 2, trackid 293, loc 59,78, from 50,73, to 59,73
2018-07-31 07:52:44 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 2, i 1, j 1, trackid 293, loc 59,78, from 59,78, to 50,73
2018-07-31 07:52:44 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) moveit(), trackid 293, hexcoor 50,73
2018-07-31 07:52:48 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 3, i 1, j 3, trackid 293, loc 56,76, from 59,73, to 50,68
2018-07-31 07:52:48 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 3, i 1, j 2, trackid 293, loc 56,76, from 50,73, to 59,73
2018-07-31 07:52:48 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 3, i 1, j 1, trackid 293, loc 56,76, from 56,76, to 50,73
2018-07-31 07:52:48 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) moveit(), trackid 293, hexcoor 50,73
2018-07-31 07:52:53 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 4, i 1, j 3, trackid 293, loc 53,75, from 59,73, to 50,68
2018-07-31 07:52:53 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 4, i 1, j 2, trackid 293, loc 53,75, from 50,73, to 59,73
2018-07-31 07:52:53 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) turn 4, i 1, j 1, trackid 293, loc 53,75, from 53,75, to 50,73
2018-07-31 07:52:53 vnengine.exe: [DEBUG ID 10] (lua.cpp, line 445, l_log()) moveit(), trackid 293, hexcoor 50,73
...

Oh, yes, there will be all sorts of diagnostic support for the CSEE Lua scripting, much of it home-grown. Lots of possibilities here, but lots of pitfalls also. We'll try to help you avoid the pits.
Campaign Series Legion https://cslegion.com/
Campaign Series Lead Coder https://www.matrixgames.com/forums/view ... hp?f=10167
Panzer Campaigns, Panzer Battles Lead Coder https://wargameds.com
User avatar
Blond_Knight
Posts: 998
Joined: Sat May 15, 2004 3:52 am

RE: Sneak Peeks, Coming Attractions, Works-In-Progress

Post by Blond_Knight »

OK thats cool!
Post Reply

Return to “Campaign Series: Middle East 1948-1985”