SEOW installation

For bug reports and fixes, installation issues, and new ideas for technical features.

Moderator: SEOW Developers

IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

OK, here is exactly what I have on my development PC today. Apologies if I got version numbers wrong before. I use this rig to develop SEOW, host campaigns and take part in others' campaigns. Of course SEOW HQ has its own database and MP hosting service too.

Desktop environment
  • Windows 11 Home, v10.0.26100 (24H2)
    Apache v2.4.59 (web server, free)
    PHP v8.3.1 (web scripting engine, free)
    MySQL v9.0 (database server, free)
    Navicat v17 (database editing tool, not free)
    Visual Studio 2022 (development IDE for SEDCS, free)
    TortoiseSVN v1.14.9, Build 29743 (versioning utility, free)
SEOW software
  • SEDCS v8.1.0.19, packaged with .NET 8.0
    SEDB75, auto-patched to SEDB80b
    MP v7.3.272
Sims/Games
  • IL2 v4.12.2 with HSFX v7.0.3 + expert mod
    ArmA2 with Iron Front merged
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

Thanks for this comprehensive update.

So I used the same tools with the same versions, except I'm using PHPMyAdmin 5.2.2 instead of Navicat. I have Windows 10 Pro and I don't have Visual Studio 2022 installed.

I get the error messages below when I click on one of the sectors in SEOW.
Screenshot 2025-03-19 at 19-53-27 SEOW Mission HQ Ardennes Sector.jpg
Screenshot 2025-03-19 at 19-53-27 SEOW Mission HQ Ardennes Sector.jpg (16.94 KiB) Viewed 668 times
Screenshot 2025-03-19 at 19-59-17 SEOW Mission HQ.jpg
Screenshot 2025-03-19 at 19-59-17 SEOW Mission HQ.jpg (10.24 KiB) Viewed 668 times
#0 E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php(6): include()
#1 E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php(35): include('E:\\Seow\\SEOW 20...')
#2 {main}
thrown in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 459
[19-Mar-2025 18:47:24 UTC] PHP Warning: Attempt to read property "EOF" on false in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 430
[19-Mar-2025 18:47:24 UTC] PHP Stack trace:
[19-Mar-2025 18:47:24 UTC] PHP 1. {main}() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:0
[19-Mar-2025 18:47:24 UTC] PHP 2. include() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:35
[19-Mar-2025 18:47:24 UTC] PHP 3. include() E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php:6
[19-Mar-2025 18:47:24 UTC] PHP Warning: Attempt to read property "fields" on false in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 436
[19-Mar-2025 18:47:24 UTC] PHP Stack trace:
[19-Mar-2025 18:47:24 UTC] PHP 1. {main}() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:0
[19-Mar-2025 18:47:24 UTC] PHP 2. include() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:35
[19-Mar-2025 18:47:24 UTC] PHP 3. include() E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php:6
[19-Mar-2025 18:47:24 UTC] PHP Warning: Trying to access array offset on null in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 436
[19-Mar-2025 18:47:24 UTC] PHP Stack trace:
[19-Mar-2025 18:47:24 UTC] PHP 1. {main}() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:0
[19-Mar-2025 18:47:24 UTC] PHP 2. include() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:35
[19-Mar-2025 18:47:24 UTC] PHP 3. include() E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php:6
[19-Mar-2025 18:47:24 UTC] PHP Warning: Attempt to read property "fields" on false in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 437
[19-Mar-2025 18:47:24 UTC] PHP Stack trace:
[19-Mar-2025 18:47:24 UTC] PHP 1. {main}() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:0
[19-Mar-2025 18:47:24 UTC] PHP 2. include() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:35
[19-Mar-2025 18:47:24 UTC] PHP 3. include() E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php:6
[19-Mar-2025 18:47:24 UTC] PHP Warning: Trying to access array offset on null in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 437
[19-Mar-2025 18:47:24 UTC] PHP Stack trace:
[19-Mar-2025 18:47:24 UTC] PHP 1. {main}() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:0
[19-Mar-2025 18:47:24 UTC] PHP 2. include() E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php:35
[19-Mar-2025 18:47:24 UTC] PHP 3. include() E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php:6
[19-Mar-2025 18:47:24 UTC] PHP Fatal error: Uncaught Error: Call to a member function Close() on false in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php:459
Stack trace:
#0 E:\Seow\SEOW 2025\Semp\Scripts\MP-BuildPage.php(6): include()
#1 E:\Seow\SEOW 2025\Semp\Ardennes\Ardennes-Bastogne.php(35): include('E:\\Seow\\SEOW 20...')
#2 {main}
thrown in E:\Seow\SEOW 2025\Semp\Scripts\MP-SQL.php on line 459
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

Hmm, that's curious. So assuming that all the software is installed and operating correctly (note that Visual Studio only needed if you are going to develop SEDCS code), then the usual workflow is as follows:
  1. On your MySQL server (or via phpmyadmin), create a database to hold your campaign, call it "MyDB" for example. Load the relevant SEDB75 database into MyDB. If you are solely interested in an Ardennes sector campaign, load SEDB75_Ardennes_extinserts.sql into MyDB. If you want only one database with support for all different sectors, then load SEDB75_Reference_extinserts.sql.
  2. Connect the MP to MyDB using the Scripts/MP-Admin.php tool. For now, just edit the Default Connection to point at MyDB using your MySQL server login credentials. Use "mysql" as the DB Type field. Make sure your PHP is using the "mysqli" module, rather than "mysql" and restart your web server. This module setting is important, and is completely different to the DB Type specified in the MP-Admin page. If this PHP connection is correct you should be seeing Ardennes sector pages in the MP with no errors.
  3. Connect SEDCS 8.1 to MyDB database using same credentials as you using for the MP. Flush the database. You are now ready to configure your campaign settings, load a template and start your campaign.
At this stage it might be easier to discuss online via Teamspeak. Drop into SEOW HQ and have a chat if you see me there.

Cheers,
4Shades
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

OK! Thanks again, this is the sequence of actions to do to initialize a campaign that I had forgotten. Second part of your answer;
Connect the MP to MyDB using the Scripts/MP-Admin.php tool. For now, just edit the Default Connection to point at MyDB using your MySQL server login credentials.
Now everything seems to be working. I'm going to create and play a few campaigns to see if I run into any other issues. I think my questions will now be about using options in campaign building.
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

:D :D :D :D :D
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

With IL2 v4.12.2 with HSFX v7.0.3 + expert mod the game loads quickly up to 50% then waits 1 minute then continues up to 60% waits 1 minute before finishing loading. Do you have this problem?
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

Yes. Maybe not a minute delay each stage, but a delay nonetheless. This is an IL2-HSFX issue, nothing to do with SEOW.

Fast PC with solid state drive helps.
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

I completed the first mission of my Ardennes campaign, and after analyzing the mission in DCS and clicking update in the PM, there are no results, as if nothing happened.
Rebuild and manual do nothing. There is nothing in the statistics, eventlog.lst problem?
Can you remind me of the actions to take after completing a mission to get the results?
Screenshot 2025-03-21.jpg
Screenshot 2025-03-21.jpg (6.81 KiB) Viewed 628 times
Screenshot 2025-03-21 at 14-43-48 ardennes Campaign Analysis -.jpg
Screenshot 2025-03-21 at 14-43-48 ardennes Campaign Analysis -.jpg (20.67 KiB) Viewed 626 times
Eventlog: "eventlog_SE-ardennes-194012150900.lst"

Code: Select all

[21 mars 25 10:23:27] Mission: net/coop/SEOW/SE-ardennes-194012150900.mis is Playing
09:00:00 Mission BEGIN
09:00:00 OBT~karl is trying to occupy seat 8AF_004FG_335FS012(0)
09:00:00 8AF_004FG_335FS012(0) seat occupied by OBT~karl at 8908.796 2717.2964
09:00:00 8AF_004FG_335FS012 loaded weapons '2x500' fuel 60%
09:00:00 8AF_356FG_360FS000 damaged by landscape at 8101.4883 38301.434
09:00:00 8AF_004FG_335FS012 in flight at 8936.16 2746.8638
09:00:03 8AF_356FG_360FS000(0) bailed out at 8252.136 38444.766
09:00:03 8AF_356FG_360FS000(0) was killed at 8273.56 38466.266
09:00:17 8AF_356FG_360FS002 damaged by landscape at 8646.46 38553.223
09:00:17 8AF_356FG_360FS002(0) was killed at 8646.46 38553.223
09:00:17 8AF_356FG_360FS002 shot down by landscape at 8646.46 38553.223
09:00:18 8AF_356FG_360FS001(0) was killed at 8671.052 38702.574
09:00:18 8AF_356FG_360FS001 shot down by landscape at 8671.052 38702.574
09:00:18 8AF_356FG_360FS003 damaged by landscape at 8715.908 38506.746
09:00:21 8AF_356FG_360FS003(0) bailed out at 8812.882 38603.594
09:00:22 8AF_356FG_360FS003(0) was killed at 8860.037 38645.574
09:01:39 8AF_356FG_360FS003 shot down by landscape at 9110.263 38919.387
09:03:04 8AF_356FG_360FS000 shot down by landscape at 10229.048 40119.14
09:04:14 g01330 landed at -30812.324 -40362.902
09:04:14 g01330 damaged on the ground at -30812.324 -40362.902
09:04:20 g01330(0) bailed out at -30812.324 -40362.902
09:04:29 g01330(0) successfully bailed out at -30861.594 -40318.766
09:04:29 g01330(0) was captured at -30861.594 -40318.766
09:05:15 g01330 crashed at -30812.324 -40362.902
09:06:01 8AF_004FG_335FS012 damaged by II_JG5_2000 at 38829.81 18681.83
09:06:12 8AF_004FG_335FS012(0) was killed at 39399.0 18656.742
09:06:12 8AF_004FG_335FS012 shot down by II_JG5_2000 at 39399.0 18656.742
09:06:47 8AF_004FG_335FS013 damaged by II_JG5_2000 at 38634.676 18511.248
09:06:47 8AF_004FG_335FS013(0) was heavily wounded at 38634.676 18511.248
09:06:52 8AF_004FG_335FS013(0) bailed out at 38734.28 18989.041
09:06:53 8AF_004FG_335FS013(0) was killed in his chute by 8AF_004FG_335FS013 at 38749.883 19045.697
09:06:53 8AF_004FG_335FS013 shot down by II_JG5_2000 at 38751.273 19048.787
09:07:39 1_ZG76_003(0) was killed at 39962.867 17729.137
09:07:39 1_ZG76_003 shot down by landscape at 39962.867 17729.137
09:07:44 1_ZG76_002(0) was killed at 39534.113 17733.047
09:07:44 1_ZG76_002 shot down by landscape at 39534.113 17733.047
09:08:03 II_JG5_2001 damaged by landscape at 36710.242 18803.607
09:08:03 II_JG5_2001(0) was killed at 36710.242 18803.607
09:08:03 II_JG5_2001 shot down by 8AF_004FG_335FS010 at 36710.242 18803.607
09:09:41 II_JG5_2002(0) was wounded at 36011.938 19782.66
09:09:41 II_JG5_2002(0) bailed out at 36011.938 19782.66
09:09:55 II_JG5_2002 shot down by 8AF_004FG_335FS010 at 35896.387 19835.25
09:10:04 8AF_004FG_335FS010(0) was killed by II_JG5_2003 at 33675.88 20082.371
09:10:19 8AF_004FG_335FS010 damaged by landscape at 31529.678 20161.955
09:10:19 8AF_004FG_335FS010 shot down by II_JG5_2003 at 31529.678 20161.955
09:11:16 II_JG5_2000(0) was killed by 8AF_004FG_335FS011 at 35858.547 21541.957
09:11:22 II_JG5_2000 damaged by landscape at 36199.902 22081.799
09:11:22 II_JG5_2000 shot down by 8AF_004FG_335FS011 at 36199.902 22081.799
09:11:32 II_JG5_2002(0) successfully bailed out at 35633.02 20126.262
09:13:04 8AF_004FG_335FS011 damaged by II_JG5_2003 at 37536.098 17282.793
09:13:04 II_JG5_2003 damaged by 8AF_004FG_335FS011 at 37537.098 17282.959
09:13:08 II_JG5_2003(0) was wounded at 37412.42 17621.967
09:13:08 II_JG5_2003(0) bailed out at 37412.42 17621.967
09:13:08 8AF_004FG_335FS011(0) bailed out at 37776.145 16859.732
09:13:13 8AF_004FG_335FS011 shot down by II_JG5_2003 at 38114.86 16375.923
09:13:23 II_JG5_2003 crashed at 37173.12 18011.836
09:13:42 I_JG300_000 landed at 54974.55 23184.117
09:14:17 8AF_004FG_335FS011(0) successfully bailed out at 38306.24 16268.292
09:14:17 8AF_004FG_335FS011(0) was captured at 38306.24 16268.292
09:15:00 II_JG5_2003(0) successfully bailed out at 37019.75 18160.621
09:23:24 8AF_004FG_335FS000 landed at 7516.319 2705.3694
09:27:36 369_Static destroyed by B_8AF_091BG_323BS101 at 52789.5 36691.25
09:29:01 B_8AF_091BG_323BS103(0) was wounded at 52688.25 36580.062
09:29:01 B_8AF_091BG_323BS103(0) was heavily wounded at 52688.25 36580.062
09:29:01 B_8AF_091BG_323BS103(0) was killed at 52688.25 36580.062
09:29:01 B_8AF_091BG_323BS103 crashed at 52688.25 36580.062
09:29:34 1_ZG76_000 landed at 56809.098 36432.56
09:30:38 B_8AF_091BG_323BS102(0) was wounded at 53020.938 36510.793
09:30:38 B_8AF_091BG_323BS102(0) was killed at 53020.938 36510.793
09:30:38 B_8AF_091BG_323BS102 crashed at 53020.938 36510.793
09:30:54 B_8AF_091BG_323BS101 damaged by NONAME at 53015.492 36497.22
09:30:55 B_8AF_091BG_323BS101(0) was wounded at 52841.395 36543.656
09:30:55 B_8AF_091BG_323BS101(0) was killed at 52841.395 36543.656
09:30:55 B_8AF_091BG_323BS101 crashed at 52841.395 36543.656
09:31:06 1_ZG76_001 landed at 56755.293 36388.234
09:32:38 Mission END
-------------------------------------------------------
Name: 	OBT~karl
Score: 	0
State: 	KIA
Enemy Aircraft Kill: 	0
Enemy Static Aircraft Kill: 	0
Enemy Tank Kill: 	0
Enemy Car Kill: 	0
Enemy Artillery Kill: 	0
Enemy AAA Kill: 	0
Enemy Wagon Kill: 	0
Enemy Ship Kill: 	0
Enemy Radio Kill: 	0
Friend Aircraft Kill: 	0
Friend Static Aircraft Kill: 	0
Friend Tank Kill: 	0
Friend Car Kill: 	0
Friend Artillery Kill: 	0
Friend AAA Kill: 	0
Friend Wagon Kill: 	0
Friend Ship Kill: 	0
Friend Radio Kill: 	0
Fire Bullets: 		138
Hit Bullets: 		9
Hit Air Bullets: 	9
Fire Roskets: 		0
Hit Roskets: 		0
Fire Bombs: 		1
Hit Bombs: 		0
-------------------------------------------------------
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

OK, the first thing you need to do is set up your IL2/HSFX game to save a logfile. I do this by using the following lines in the conf.ini file (under the [game] section) in the IL2/HSFX game folder:

Code: Select all

eventlog=eventlog.lst
eventlogkeep=0
This ensures that IL2/HSFX writes mission events to file "eventlog.lst" in the game home folder, and overwrites it every time you run the game. That means that after every mission you should have a look in eventlog.lst to make sure your mission event data is in there. If it isn't SEOW has no way of knowing what happened in the mission, so you need to get this working before your campaign. Try it out and make sure the the game is logging correctly to file.

Next, you need to make sure your DCS knows
  1. where to put the IL2/HSFX mission files when they are built
  2. where to find the IL2/HSF log file (e.g. eventlog.lst)
You set these locations in the DCS Files/Misc tab. There are similar locations for ArmA2 files and folders, but you can neglect these if you are only running conventional SEOW campaigns.

Using the DCS, you hit "Build" to create the IL2/HSFX mission file. Once that is built you close the DCS and go and play the mission. After that your eventlog.lst file should contain data about what happened during the mission, how many pilots flew, what aircraft, ships, vehicles etc were damaged or destroyed, when and where etc. Then you open up DCS and hit "Analyze". When that finishes you can refresh your MP pages and see the new state of the battlefield ready for the next mission plans. You can also look at the Statistics pages.

One very important rule in SEOW is that if you encounter software errors, e.g. in the MP or DCS, during a campaign you should let me know. Don't just ignore them and carry on, that will always end in tears. They probably indicate game version or mod mismatches so it is best to understand the problem and fix it before making things worse by moving forward with a bugged campaign.

Now let's talk about Statistics. The Statistics tool in the MP is a separate PHP engine that reads the campaign database and constructs reports of mission events. As long as the DCS has successfully Analyzed your campaign mission logs, the Statistics engine will happily build the reports that so many people love to read. The Statistics engine has several configuration options, that you can edit directly in the Statistics/MP-StatisticsMetadata.php file. Here are a couple of important ones:

$StatsLanguage : the name of which language pack to display statistics pages in. Default "English". I had fun doing the Latin pack!
$StatsUseCache : whether to use page caching or not. Default true (IIRC)

Statistics caching is only useful if you have many players (e.g. 50+) in your campaign who want to look at the statistics reports at the same time, which can stress your web server. If this isn't the case, then set $StatsUseCache = false.

Another feature is that you can either delay Statistics for particular sectors by several missions (to simulate intelligence processing delays) or disable the Statistics altogether. Not many people use these two features, but we have used them at SEOW HQ.

Cheers,
4S
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

Thanks for this information, after checking everything was ok for me but after a new test I have the same problem, nothing in the statistics. Small clarification, the file "eventlog.lst" that I declared in DCS is renamed by seow with the name of the mission after analysis. "eventlog.lst" disappears and it becomes "eventlog_SE-ardennes-194012150900.lst" in my case however in DCS the path of the file is always "eventlog.lst" I suppose that is normal?
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

Yes that is normal.

Please post the contents of your log file here.
IV/JG7_4Shades
SEOW Developer

Image
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

Ok, I see your log file above (maybe you had posted it before, sorry!). It all seems normal.

When you did the DCS Analyse did DCS report any errors? You can also have a look at the ActionData table in the database. That should now contain all the destruction events from the event log.
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

No error message in DCS, and the Actiondata page in phpmyadmin is empty...

Screenshot 2025-03-22 at 08-35-29 localhost _ MySQL _ ardennes _ actiondata phpMyAdmin 5.2.2.jpg
Screenshot 2025-03-22 at 08-35-29 localhost _ MySQL _ ardennes _ actiondata phpMyAdmin 5.2.2.jpg (22.52 KiB) Viewed 603 times
IV/JG7_4Shades
Posts: 2237
Joined: Mon 08 Jan 2007 11:10 pm
Location: Perth, Western Australia

Re: SEOW installation

Post by IV/JG7_4Shades »

That has got me stumped. Can you let me download your database, mission file and event log please?
IV/JG7_4Shades
SEOW Developer

Image
OBT~karl
Posts: 32
Joined: Sun 20 Feb 2011 1:42 pm
Location: France - Lorraine

Re: SEOW installation

Post by OBT~karl »

This is what you asked me and thanks for the follow-up.

http://gofile.me/6vJ1a/LYsNh36yk
Post Reply