It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
Cursed-Ghost: Another glitch I just noticed is that auto allocation doesn’t seem to work right.
This is corrected in the latest development version. In the production manager we already tracked down half a dosen reimplementation issues, hopefully this was the last of them.

avatar
Cursed-Ghost: Another glitch I notice is that the when you click on a research centre and look at total this is displaying incorrectly at the moment I have 2 habitats which make 6 personnel however when I click on my research centres total is only displaying 2 when it should be displaying 6, and yes both habitats are connected to the complex.
The original behavior is preserved. The research center total metric shows the sum of running centers versus total count of reserach centers.

avatar
Cursed-Ghost: By default the cost of a spy is 9 materials if you don’t have any cost reduction.
The original behavior is preserved. The normal raw materials consumption rate of Training Halls is 1. So 1 raw materials is consumed per turn. The Infantry cost is 2 cargo, thus it finishes in two turns. The infiltrator cost is 9 cargo, so it takes nine turns times 1 raw material. The mining stations of the given complex will show 1 material consumed per turn, yes.

avatar
Cursed-Ghost: Another glitch I just noticed after capturing one of the alien fighter bombers and destroying one of the gray teams missile crawlers, it didn’t leave a patch of debris now I know this can happen when attacking targets such as scouts that are on coastal tiles but since missile crawlers can’t move on to coastal tiles since they are unable to traverse water then destroying a missile crawler should always leave a patch of debris.
I spent close to an hour and could not reproduce this issue. I also looked into the relevant algorithm and the decision logic cannot discriminate destroyed units that are standing only on normal land.

avatar
Cursed-Ghost: The tile marked in this screen shot however seems to be defective in 1.04 and maxport and for some reason it is in-passable even though there is nothing there and I should be able to move a unit on to it.
I added this to the original defects list as defect 198. This can only be fixed if the map itself is regenerated. I cannot distribute Interplay game assets, so cannot fix this (yet).

avatar
Cursed-Ghost: When alien units upgrade the wrong message is being displayed as you can see in this screen shot.
Thanks, fixed it.

avatar
Cursed-Ghost: another glitch I've noticed is that when i press Alt Gr + L to do a quick reload it doesn't work
The game uses the USB Keyboard keycode/scancode map. The original game used the MS-DOS DPMI server US layout (by default). I cannot fix this until a locale aware human input interface is implemented. It is on the roadmap under package 7, Localization.

avatar
Cursed-Ghost: Another glitch i just noticed for some reason the computer isn’t doing a collision check when trying to build and is therefore able to built in places where it shouldn't be able to notice how the computer dock is built on top of the alien gunboat this shouldn't be possible, I've seen this happen in 1.04 also
This is caused by the notorious hash map glitch I mentioned above. Without a save game just before the issue occurs it is futile effort to try to fix it. Lets hope that players will be able to produce a relevant saved game.

avatar
Cursed-Ghost: Another glitch i just noticed is that cost reductions are not being applied correctly.
The original behavior is preserved. The goal of build rate X1 X2 X4 selection is to speed up production on the expense of excess material usage. Check the in-game help for the X2 and X4 buttons which says the same. At 20% cost reduction the mining station turns attribute is decreased from 12 to 10 turns demand. At X1 rate raw consumption per turn is 2 cargo, at X2 its 8 cargo, at X4 its 24 cargo consumption per turn. So 56 total cost over 3 turns comes from: 2 turns at X4 rate for 2 * 24 cargo + 1 turn at X2 rate for 8 cargo = 3 turns (4+4+2 rate = 10 turns demand) for 24+24+8 = 56 cargo.

avatar
Cursed-Ghost: However if you actually want to build said mine in 5 turns you have to load up the builder with 56 materials even though the cost is now only 50 materials clearly
I added this to the original defects list as defect 197.

avatar
Cursed-Ghost: There seems to be a glitch with the mini map in that it doesn’t appear to be updating in real time properly, this is most evident on the first turn.
I know about this issue, but did not find the root cause for it yet. The MAXSPY part of the report is a different story. I agree that every unit shall always be at an up to date location on the minimap and now this is not satisfied.

avatar
Cursed-Ghost: when I increase the resolution from 640x480 to 800x600 the map isn’t being stretched to the edge of the window
This is a limitation of the original game engine. In M.A.X. 1 the GUI is drawn and the tactical map on top of it. In M.A.X. 2 the order is swapped. In M.A.X. 1 the original tactical map drawer or renderer algorithm is a super efficient and cunning, but huge assembly routine. The super duper optimizations take a big toll. The algorithm cannot render anything that is not a 64x64 pixel shape. I was able to reimplement the assembly code in C language, but I cannot claim that I understand all the wicked tricks of the algorithm to be able to change it (yet). Without fully understanding the algorithm there is no way to life the 64x64 pixel limitation. As at 800x600 resolution the black tactical map screen area is not a multiple of 64x64 pixels, there will be gaps and I cannot do anything against this (yet). After the SW renderer is reworked, e.g. GUI is drawn on top of tactical map like in M.A.X. 2, this issue will go away.

avatar
Cursed-Ghost: Additionally something is off with Scale quality.
I have no CRT monitors anymore (unfortunately). I cannot test this. "Scale quality: 0 - Nearest neighbor" is the closest thing to the original VESA BIOS output. It is supposed to be pixel perfect output. Your video is not downloadable anymore, but regardless, I do not think I would be able to do anything about this.
Excuse me, gentlemen, I'm not sure I understood correctly the WinXP issue. Does the port not work on XP anymore? If so, it would be a real loss for me.
avatar
Lord Gaznak: Excuse me, gentlemen, I'm not sure I understood correctly the WinXP issue. Does the port not work on XP anymore? If so, it would be a real loss for me.
M.A.X. on GOG uses DOSBox which works on WinXP. What we were talking about is a separate project. This separate project also aims to support WinXP even though it is becoming more and more difficult.
avatar
klei1984: M.A.X. on GOG uses DOSBox which works on WinXP. What we were talking about is a separate project. This separate project also aims to support WinXP even though it is becoming more and more difficult.
Oh, it seems I asked a stupid question, because the port will be using its own EXE, right?
avatar
Lord Gaznak: ... the port will be using its own EXE, right?
Yes. As of today, the port can be copied (installed) into the original M.A.X. folder and it does not overwrite anything. The saved game files are shared, the two applications are interoperable.
Hello, sorry for the long response delay.
no problem.
For some unknown reason I packed an ini file with unix line termination. The packages made by GitHub are correct. So starting from the next release, there will be a Windows XP 32-bit package on the Download page.
I see so question where do I find the XP compatible version tried downloading the Windows 7-Zip file 32 bit but that’s obviously the wrong one as it doesn’t work when I tried running it I get the GetTickCount64 error again.

The github page doesn’t seem to want to work properly for me either so when I go to https://github.com/klei1984/max/releases all I see under Assets is a spinning circle evidently my browser is to old.
Will look into game ticks later. First the main game loop needs to be documented and regression tests need to be added before I can make design changes. This is the hearth of the system...
Fixing this might actually be more straightforward than you think because Syndicate Wars port had this problem as well, as Syndicate Wars is an old game that was only ever meant to run at like 20 frames per second so of course when its running at like 60 frames per second it was way to fast you can read here how they fixed it

https://groups.google.com/g/syndicate-wars-port/c/sVDHowuiXcs

Maybe this will give some insight into how to fix it for maxport

of course this isn’t the first time I’ve had this issue with old games had this problem with Privateer 2 the Darkening as well and I believe the speed fix for that did something very similar to the what they did for Syndicate Wars port, but either way reducing the frame rate to like 20/30 frames per second should probably do this trick you’d just have to experiment around abit.
Original M.A.X. behavior is preserved. 1) If the stealth unit is inside enemy scan range when it fires, then it will remain revealed until it leaves the enemy scan range in the given turn. 2) A revealed stealth unit becomes hidden immediately after a single movement regardless of being in the scan range of the enemy when moved in a turn in which the stealth unit did not fire an attack.
Personally I’m of the opinion that the Original M.A.X. behavior for subs and personnel carriers in incorrect.

If I attack with a Sub but don’t use all my shots and then move away so long as there are no corvettes in range then the sub should submerge and become invisible again since only corvettes can see and attack subs.

Another issue I have with this is that in this scenario if your sub remains visible when it should of submerged then that leaves your subs exposed to attack from the air on your opponents next turn which in my opinion is unfair after attacking with a sub it should only remain visible if a.) It expended all its shots and can’t move or b.) It is within the detection range of a corvette.

In all other scenarios the sub should submerge and become invisible gain.

With regards to personnel carriers if they are in the water and are spotted because you got to close to a corvette for example then as soon as you move outside the detection range of that corvette the personnel carrier should submerge and become invisible again assuming you weren’t destroyed after being detected.

Now obviously if the personnel carrier has insufficient movement points to move outside the detection range then it should remain visible.

If you are detected because the personnel carrier moved on to land then assuming you have sufficient movement points to enter the water again then personnel carrier should submerge and become invisible again otherwise it should remain visible

Now for Spies it’s a slightly different matter and the correct behavior would I think depend a lot on the situation.

So for example

Scenario 1 The spy is moving into position to perform an action but gets to close to enemy infantry and is detected in this case if the spy moves outside the detection range of the enemy infantry the spy should become invisible again since only infantry can see spies

Scenario 2 The spy attempts to disable/steal an enemy unit or the spy attempts to disable a building and fails and is thus detected in this case the spy should remain visible until the next turn as it is now.

Scenario 3 the spy attacks an enemy building or unit, in this case if there are no enemy infantry nearby and the spy has movement points left then as soon as the spy moves it should become invisible again if there are enemy infantry nearby and the spy has enough movement points to move outside there detection range then again the spy should become invisible again if not then the spy should remain visible until the next turn assuming it isn’t destroyed.
I cannot reproduce this issue. SDL manages window or screen operation modes. The game uses stock default configurations. In mode 1 the game gets exclusive rights to the screen, and desktop resolution is changed to the game resolution configured. You are not supposed to use ALT+TAB or Windows key or similar at all. I could look into it if a reliable way is found to reproduce the issue. For me it never happened. In mode 2 the game configures borderless windowed mode where you shall be able to use ALT+TAB and similar without issue. Pressing ALT+D, the minimize all hotkey on Windows minimizes the game window as it should on my system. I will look into Windows design documents to see what is expected behavior when we use the Windows key or ALT+TAB with borderless full screen and windowed mode applications. Could you try the DOSBox emulator? It uses SDL1 while I use SDL2, but if that works well, then I could look into their configuration for ideas.
With regards to full screen mode what is probably happening is control over the window isn’t being release when you ALT+TAB back to the desktop which is what should happen.

for example if I play command and conquer 95 in full screen mode and then ALT+TAB back to the desktop the game releases control over the window and the game is minimised the same thing happens when I play MAX through VDM Sound if I ALT+TAB back to the desktop control over the window is release and the game is minimised so my question would be why isn’t control over the window being released when I ALT+TAB back to the desktop in maxport.

Now granted you probably aren’t supposed to ALT+TAB back to the desktop like that but I don’t have a multi screen display so I don’t really have a choice maybe there is a setting somewhere that can be changed so that when I ALT+TAB back to the desktop control over the window will be release.

With regards to borderless window mode nether pressing ALT+TAB or the windows key or ALT+D will minimise the window while it does release the curser so I’m able to open other windows over the top of it there doesn’t seem to be any way to minimise it if I try to ALT+TAB which then releases the curser and shows the task bar and I then right click on the maxport tab in the task bar to try and get the menu up nothing happens it just goes back in to the game, I can’t get the minimise/maximise/close buttons to appear in the top corner of the screen either so clearly something isn’t working right because in my experience when using window mode in other games usually once you press the key combo to release the curser if you hover over the window the minimise/maximise/close buttons will appear in the top corner of the screen which will then let you minimise the window you can also right click on the tab in the task bar and you will get a menu that will present you with the following options restore/move/size minimise/maximise/close

So again maybe there is some setting some where that can be changes to correct this.

After doing a quick search I’m pretty sure this is an issue with the way you have this set up evidently you have the setting in sdl set that hide the minimise/maximise/close buttons in window mode I would suggest playing round with the settings to see if you can make it show the close minimise buttons upon lose of focus because in my experience this is how window mode in other game usually work when you press the key combo to release the curser that also makes the windows buttons available

I did a quick search and found this

https://wiki.libsdl.org/SDL2/SDL_MinimizeWindow
https://wiki.libsdl.org/SDL2/SDL_MaximizeWindow
https://wiki.libsdl.org/SDL2/SDL_RestoreWindow

So clearly this is possible.

What about SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS

https://wiki.libsdl.org/SDL2/SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS

Would this fix the issue you think? because if I’m understanding what this does correctly this should cause the game to be minimised if you alt tab back to the desktop

This page seems to have a lot of info on SDL Hints maybe it will be helpful.

[url=https://metacpan.org/pod/SDL2::hints]https://metacpan.org/pod/SDL2::hints[/url]
Post edited October 10, 2023 by Cursed-Ghost
If you have no debugger software attached, you are not able to debug. Based on the screenshot you found a failing assertion test. Assertion tests trap unrecoverable errors before they occur in situations that suggest corrupted application state. In your case the assertion test suggests that your saved game contains a hash map corruption. It is a known issue, we are working on it since months to triage it and resolve all root causes (there are multiple). By pushing the Debug button you provoke a crash as an exception is raised by the application that is supposed to be caught by the debugger software and as there is no such a thing the operating system catches the unhandled exception and the application terminates. If you abort this error and restore the last backup save from SAVE10.BAK, you might prevent the save game corruption. If you ignore this error, you will continue to play with the corrupted game state. This particular hash map corruption issue happened a lot of times in original M.A.X. too, this is the cause for ghost units that pop up on the map some times and cannot be interacted with.
In that case would it be possible to run a check and see if a debugger exists and if not simply display an error message to the effect of no debugger found, as this should prevent the game crashing when hitting the debug button if there is no debugger the reason I ask is because I’ve run in to this sort an issue before when writing scripts, and usually the fix is simple you just account for what ever it is that’s causing the problem and then display an appropriate error message when that particular event or what ever happens.
The assertion test message is the only relevant information in this particular case. You can enable the task log system by pressing ALT+F3 twice. If you attach the SAVE10.BAK + tell the assertion test message, plus attach the log file it gives us sufficient context to investigate further. Minidumps are not possible to be made on Windows operating systems in a meaningful manner as Windows does not understands DWARF debug symbols and GCC compiler or GDB debugger cannot interpret the Windows PDB and Minidump formats. Developing a GCC and Windows compatible crash dump writer wrapper application is possible, but it makes not much sense without a callstack walker which is also not available on Windows in combination with the GCC compiler. If a viable library or method becomes available I will look into integrating it later. For now, the available debug services should suffice.
I’ll have to remember that for when the next version is released.
The original behavior is preserved. The research center total metric shows the sum of running centers versus total count of reserach centers.
I think you may have misunderstood what I meant when I said Another glitch I notice is that the when you click on a research centre and look at total this is displaying incorrectly at the moment I have 2 habitats which make 6 personnel however when I click on my research centres total is only displaying 2 when it should be displaying 6, and yes both habitats are connected to the complex.

In my current game of max on 1.04 if I click on my research centre it displays 21/22 which means I have 22 personnel and I’m currently using 21 of them.

However in maxport the total display is incorrect and when I click on my research centre it displays 2/2 when it should display 2/6 since I have 2 habitats that produce 6 personnel and I am using 2 of them so like I said the total display is wrong.
I spent close to an hour and could not reproduce this issue. I also looked into the relevant algorithm and the decision logic cannot discriminate destroyed units that are standing only on normal land.
That’s strange because destroyed units failing to leave a patch of debris happened to me frequently if it would help I still have the save where this issue happened I can also use a screen recorder to record a short clip so you can see what is going on if that would be helpful.
The original behavior is preserved. The goal of build rate X1 X2 X4 selection is to speed up production on the expense of excess material usage. Check the in-game help for the X2 and X4 buttons which says the same. At 20% cost reduction the mining station turns attribute is decreased from 12 to 10 turns demand. At X1 rate raw consumption per turn is 2 cargo, at X2 its 8 cargo, at X4 its 24 cargo consumption per turn. So 56 total cost over 3 turns comes from: 2 turns at X4 rate for 2 * 24 cargo + 1 turn at X2 rate for 8 cargo = 3 turns (4+4+2 rate = 10 turns demand) for 24+24+8 = 56 cargo.
Again I think you have misunderstood when I said the cost reductions aren’t being applied correctly, because there are 2 issues as work here the first is that the calculation is wrong so that after applying a 10% cost reduction if I want to build a mine at x4 speed which should take 5 turns I still have to load up the builder with 56 materials clearly this is incorrect I should not have to load the builder up with 56 materials I should only need to load the builder up with 50 materials

The second issue that I noticed with maxport is that after applying 20% cost reduction the game is telling me the cost to build the mine at x4 speed is 56 material, which is clearly incorrect

how is the cost of a mine built at x4 speed 50 materials after applying a 10% cost reduction but 56 materials after applying 20% cost reduction that makes no sense the cost and number of turns is supposed to go down not up I mean 56 materials is the amount needed before you have applied any cost reduction so clearly there is something funny going on here.
Post edited October 10, 2023 by Cursed-Ghost
on an unrelated matter how do you get the GOG forum to do quotes like that ? can't find the control for it and I'm not sure if I'm just looking past it or its its just another case of things not working right due to using an old browser.

edit:

Ok so after going into inspector and trawling through the github page code I finally managed to find the link for the XP compatible version of 5.0 however it doesn’t work it's completely broken.

If I try to load up one of my saves it crashes instantly if I try to start a new game I can only get as far as the load out screen before the game crashes doesn't seem to be any error message or crash log so no idea why it is that it crashes as soon as it goes to the game screen

what i do notice though looking at https://github.com/klei1984/max/commits/master

some of the entries have red x next to them specifically

Fixed defect 201.
Fixed defect 195.

clicking the red x it says that the failing element for the XP comparable version was Setup Dependencies so maybe that's why its not working.
Post edited October 10, 2023 by Cursed-Ghost
avatar
Cursed-Ghost: on an unrelated matter how do you get the GOG forum to do quotes like that ? can't find the control for it and I'm not sure if I'm just looking past it or its its just another case of things not working right due to using an old browser.
There is a reply button on top of messages when you hover your mouse pointer over a particular message or post. It wraps the message to be quoted by two tags:

\ [quote_<post message index>\]
your quote here
\ [/quote\]


avatar
Cursed-Ghost: Ok so after going into inspector and trawling through the github page code I finally managed to find the link for the XP compatible version of 5.0 however it doesn’t work it's completely broken.
For me on virtual Windows XP the game cannot initialize the screen and wants to exit the game gracefully, but then crashes as the audio engine is not yet initialized when it wants to clean up yet to be allocated resources. This is a defect, but in your case you reach menus though so this is surely not the case you experience.

Will try to build a soft renderer version and see what happens.
I found one reoccurring exception which occurs within Windows XP's ntdll.dll v5.1.2600.xyz itself at address 0x0000100b through std::filesystem::path which is a C++ standard library function provided by the compiler.

Looking up this error on the Internet I found a suggestion from Oracle that to work around the issue, we should/could do the followings, which worked for me.

Navigate to Control Panel, System, Advanced, Performance, Settings, Data Execution Prevention. There select second option which allows definition of exceptions.

Add the max.exe executable to the list of excepted programs.

Update: Also found the root cause and fixed it in the latest commit. For future releases the above work around will not be required.
Post edited October 13, 2023 by klei1984
I listened to the updated audio engine sample and it sounds great!
There is a reported issue related to volume control. So for the time being change volume in OS not in game. The issue will be fixed after i am done with what i am doing currently (unknown eta).
Ok so just gave 6.0 a go and while the fix sorted out the previously reported crash and I was able to load my previous save just fine, and start a new game just fine to, within a couple of minutes of loading my game the whole thing just froze and I had to alt tab back to the desktop and close the game from the task bar, so I restarted the game loaded up my save again and started playing and again within a couple of minutes of loading my game the whole thing just froze again so looks like something else isn’t working right which is weird as I didn’t have this trouble with 4.2 again as before not sure why its freezing because I don’t see any error.

The good news though is that the new sound manger seems to work a treat, though until the game stops crashing and freezing its going to be hard to actually do any testing.

Question do you supposed it would be possible to back port the concord from max 2 as a playable team in max port, also I know that you rescaled video to window resolution but as an addendum to that what about possibly up scaling the video as well to make it a little better quality, not a high priority I’ll grant you but something worth thinking about assuming its possible.

also would you mind adding the xp link to https://klei1984.github.io/max/download/ because its a pain trying to get the link from git hub as there scripting isn't working properly in my pal and it wont appear all i see is a spinning circle so with each new release i have to go digging through git hubs page code in inspector to find it
avatar
Cursed-Ghost: within a couple of minutes of loading my game the whole thing just froze ... I don’t see any error.
Is there anything written in the black console window when the game does not respond?
Does the same thing happen on the first training mission map if you load the game and do nothing?
What does the windows application/system event viewer say about the forcefully closed application? Each time you shut down a hung application the system log should store something.

avatar
Cursed-Ghost: Question do you supposed it would be possible to back port the concord from max 2 as a playable team
Do you really mean Concord units/clans? So basically M.A.X. 1 human + alien units (plus robotic walker (ebo))? Or do you mean the sheevat race?

Adding new clans and alien units as buildable ones would not be difficult, but none of the stock scenarios / missions / computer players would be able to use them. For that the computer AI would need to be expanded too.

Any ways, anything can be done. It is just a matter of time. 4+ years of work led us to the point where we are today. I assume another 5 years and we could have the entire sheevat race in and the original cancelled / abandoned plot of M.A.X. 2 could be implemented as a M.A.X. 1 campaign game.

Biggest impediments to add units / buildings from M.A.X. 2:
- M.A.X. 2 in-game sprites (graphics assets) are useless crap quality 32x32 pixel isometric renders. Even M.A.X. 1 had 64x64 pixel sprites. There are very few magazine images and even fewer fake marketing screenshots in top down rendered mode that could be used as pointers. Creating ~50 units from scratch will take a lot of time even for a skilled and experienced 3D artist. Not to mention that the existing materials are copyrighted.
- M.A.X. 2 implements many new behaviors. Regenerative personal shields, grazers, psi-spawns, temporary stasis, corrosion smog, etc. Those features need to be fully deciphered first to add them which will be extremely difficult as M.A.X. 2 executables are fully optimized by MSVC compiler.

avatar
Cursed-Ghost: in max port, also I know that you rescaled video to window resolution but as an addendum to that what about possibly up scaling the video as well to make it a little better quality, not a high priority I’ll grant you but something worth thinking about assuming its possible.
This is close to the quality that could be achieved today with super resolution algorithms (youtube degraded the video quality compared to the source material, I cannot do anything with that):
https://youtu.be/X4n5i6zuQXo

Same quality could be added to the port as well. I just need to finish the installer tool which will convert all game assets from original to new formats and high resolutions. Not any time soon though.

avatar
Cursed-Ghost: also would you mind adding the xp link to https://klei1984.github.io/max/download/
I did not realize its missing, sorry for that. I will add the link.
avatar
Cursed-Ghost: within a couple of minutes of loading my game the whole thing just froze ... I don’t see any error.
Found the issue. The music shuffler or randomizer is broken it seems since I introduced the new sound engine. Will fix the issue and the volume control soon.