Need help developing 3.3.0 campaign

Discuss the future of Warzone 2100 with us.
User avatar
alfred007
Regular
Regular
Posts: 619
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 »

Forgon wrote:My current solution is to reduce the number of transporters available
with Insane for the end of both Alpha and Beta to 3, so that units can
still be built in the following missions without breaking unit limits.
With a few extra checks, transporters could not be empty or loaded with
units that would exceed unit limit allowances.
Interesting idea. But at the end of Alpha mission, you have to reduce the transporter starts from 5 to 4. With the current master version, you can start 5 transporters. 4 are arriving in Beta 01, the fifth get shot down and you have to rescue your downed units in Beta 02. With your solution, it also makes sense to think about to make it possible that you rescue units that you put into the transporter. At the moment you get scripted units in Beta 02 no matter what units you put into the fifth transporter.

Forgon wrote:With this approach, only one issue remains: Overruling of unit limits
when rescuing units. I'm sure we all agree that this can be tolerated.
From my side, I agree that this can be tolerated. But we have still one more issue. In every away mission the transporter is count as a combat unit and you can use only 39 units. Only if you have 40 units already produced in the last non-away level before you can use 40. And in Beta mission from Beta 06 on you have 5 away missions in a row. So when you want to upgrade your units you have to fight with only 39 units. That should be fixed in my eyes.

Forgon wrote:Could you remind me what I have to watch out for in Alpha 10?
Alpha map.png
Alpha map.png (72.98 KiB) Viewed 5793 times

At each of the points 1-5 will land 3 transporters each with NP cyborgs. First 3 at point one, then three at point two and so on. At the two green "X" you have to await ground reinforcements. Tracked Mantis Heavy Cannon tanks and Mortar units with a sensor unit. In the southeast corner, they will arrive after the second transporter has landed at point 1, in the north, they will arrive after the fifth transporter has landed at point 2. You have to destroy them all. Let one of the two sensor units alive so you will have enough time to prepare your units for Alpha 11.
Forgon
Code contributor
Code contributor
Posts: 298
Joined: 07 Dec 2016, 22:23

Re: Need help developing 3.3.0 campaign

Post by Forgon »

alfred007 wrote: 08 Jul 2019, 23:49 [...]
From my side, I agree that this can be tolerated. But we have still one more issue. In every away mission the transporter is count as a combat unit and you can use only 39 units. Only if you have 40 units already produced in the last non-away level before you can use 40. [...]
Berserk Cyborg has already suggested a working patch to fix this, which
excludes transporters from unit counts:

Code: Select all

diff --git a/src/structure.cpp b/src/structure.cpp
index a05451d30..1c2c5804f 100644
--- a/src/structure.cpp
+++ b/src/structure.cpp
@@ -2482,7 +2482,12 @@ int getMaxConstructors(int player)
 
 bool IsPlayerDroidLimitReached(int player)
 {
-	int numDroids = getNumDroids(player) + getNumMissionDroids(player) + getNumTransporterDroids(player);
+	int numDroids = getNumDroids(player) + getNumMissionDroids(player);
+	// transporters do not count as units in single-player games
+	if (bMultiPlayer)
+	{
+		numDroids += getNumTransporterDroids(player);
+	}
 	return numDroids >= getMaxDroids(player);
 }
Bethrezen
Regular
Regular
Posts: 661
Joined: 25 Sep 2009, 02:05

Re: Need help developing 3.3.0 campaign

Post by Bethrezen »

During my testing, I found two more issues. As you can see on the picture below my trucks are repairing a repair facility from very far away. I don't know if that was intended but it is way too far away from where they can repair the repair facility. A saved game is attached, use alpha 06-08, wait a few seconds until the NP mortar damage the repair facility and then let truck group number one repair the facility.

Image
you know that's kind of interesting, i wonder what specifically caused that, because as i understand it you can't change builders range like that since the range is hard coded, because I remember suggesting that the builders and the mobile repair units need a range increase but apparently Berserk Cyborg couldn't find a way to do it since the range is hard coded and can't be modded, well apparently that's not entirely true or this wouldn't happen, i know this is just a bug but I'm wondering if some further investigation might lead to a way to mod even hard coded values, obviously it would be a bit of a hack and the correct approach would be to un-hard code hard coded values so they can be changed by mods, but this might at least provide a temporary work around, until someone gets round to un hard coding those values.

Could you remind me what I have to watch out for in Alpha 10?
humm...... i can see alpha 10 being near impossible to complete with only 40 units particularly on insane because even with 18 lancers with experience attached to an experienced commander and supported by a near by repair bay I have difficulty stopping the new paradigm tanks because they are so dam heavily armoured i normally need 3 groups of units to do that mission 2 squads of lancers to cover the north and south approaches at points 1 and 2 and deal with there heavy tanks, and a squad of machine gunners on halt-tracks to chase down there cyborgs and light units that land at spawn points 3, 4 and 5.

I don't see how its possible to stop that many heavy tanks with so few units, especially if you are having to divert a whole bunch of those units to chase down there cyborgs and other light units, in that case you wont have enough fire power so you wont be able to kill them quick enough to prevent your units from being overwhelmed by weight of numbers since each of those heavy tanks have something like 4000 to 5000 health each don't remember the exact number just now I'd have to look it up again but i do remember that they are heavy body units on tracks with heavy cannons so they are basically the toughest units the new paradigm have now while that may not of been so much of an issue when the heavy cannon was underpowered with the balance changes making the heavy cannon nearly as powerful as lancers you are going to get crushed, if you try to take them head on with so few units.

now granted if you set up near point 3 and then wait for the new paradigm units from points 1 and 2 to converge then you need less units since you aren't trying to cover so much ground, but that presents it's own issues which is why i usually just set up 3 teams right by the spawn points so i don't have to do a lot of running around and i can just volley there tanks as they enter the map, which is the easiest and quickest way to do that mission, since tracked units are so bloody slow due to the fact that the engine upgrade do nothing because of the way they are implemented.

Talking of engine upgrades did anyone ever look in to the possibility of changing the way engine upgrade are implemented so that engine upgrade actually increase your units maximum speed, because at the moment they only increase the speed of your heaviest units and the speed increase is so miniscule that it make absolutely no appreciable difference.

also how goes the reimplementation of the old hold guard and peruse stances ?

One final thing where to you find the latest master these days ?, while i very much doubt I'll be able to run it, I do keep checking from time to time to see if the XP support has been sorted or not.
Forgon
Code contributor
Code contributor
Posts: 298
Joined: 07 Dec 2016, 22:23

Re: Need help developing 3.3.0 campaign

Post by Forgon »

Bethrezen wrote: 04 Sep 2019, 04:31 [...] also how goes the reimplementation of the old hold guard and peruse stances ?

One final thing where to you find the latest master these days ?, while i very much doubt I'll be able to run it, I do keep checking from time to time to see if the XP support has been sorted or not.
Welcome back!

The secondary orders (hold, pursue and guard) have been restored,
together with range orders. Check the ChangeLog and view pull requests
to see what else has been going on during your absence.

The README.md file explains where to find the latest developer builds.
User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 938
Joined: 26 Sep 2016, 19:56

Re: Need help developing 3.3.0 campaign

Post by Berserk Cyborg »

Bethrezen wrote: 04 Sep 2019, 04:31 you know that's kind of interesting, i wonder what specifically caused that, because as i understand it you can't change builders range like that since the range is hard coded, because I remember suggesting that the builders and the mobile repair units need a range increase but apparently Berserk Cyborg couldn't find a way to do it since the range is hard coded and can't be modded, well apparently that's not entirely true or this wouldn't happen, i know this is just a bug but I'm wondering if some further investigation might lead to a way to mod even hard coded values, obviously it would be a bit of a hack and the correct approach would be to un-hard code hard coded values so they can be changed by mods, but this might at least provide a temporary work around, until someone gets round to un hard coding those values.
It was fixed a few months ago. There isn't any distance checking when the repair action (among other ones) is done itself and instead relies on the "moving to repair" action to get the unit there, and then when it gets close enough while moving, switches to the actual repair action, stops the unit, and starts repairing the structure. If that made sense. Of course, I never tested telling trucks to repair something from so far away, while secondary holding, so the wrong action was being set somewhere.
Bethrezen wrote: 04 Sep 2019, 04:31 Talking of engine upgrades did anyone ever look in to the possibility of changing the way engine upgrade are implemented so that engine upgrade actually increase your units maximum speed, because at the moment they only increase the speed of your heaviest units and the speed increase is so miniscule that it make absolutely no appreciable difference.
As for engine upgrades, it's possible but very time consuming. The EB-Mod already does this (unique speed signatures for basically everything) and a ton of other cool things like merging multiplayer and campaign stats together. So tons of new bodies, propulsion, weapons, and the Mech borgs are available. And a special hyper aggressive AI that focuses on attacking and building defenses. I'm just going to use it a stepping stone, replacing camBalance, since it basically does everything we wanted to do anyway and more. I just have to get motivated enough to map out all the tech, per mission, and assign new tech arrays to the AI per mission and verify all research is available when it should be.
Bethrezen wrote: 04 Sep 2019, 04:31 also how goes the reimplementation of the old hold guard and peruse stances ?
They are working and available in the new 3.3.0 release. Also primary guard no longer gets overridden by an attack order so combat units and sensors don't automatically chase stuff anymore.
Bethrezen wrote: 04 Sep 2019, 04:31 One final thing where to you find the latest master these days ?, while i very much doubt I'll be able to run it, I do keep checking from time to time to see if the XP support has been sorted or not.
I don't see it happening soon or if at all. Why not dual boot a Linux distro? With a few commands you could build and run master builds with ease.
Bethrezen
Regular
Regular
Posts: 661
Joined: 25 Sep 2009, 02:05

Re: Need help developing 3.3.0 campaign

Post by Bethrezen »

Why not dual boot a Linux distro?
for a start trying to find compatible drivers is a pain in the backside, second I'm not a fan of the GUI KDE sucks and I've tried several others and I just can't find one that is usable, and being dyslexic doesn't really help either, unless the system works the same as windows i just can't use it, as it is it took me years to become proficient with a PC running windows, which is part of the reason i object to newer versions of windows because Microsoft can't leave well enough alone, and won't stop messing around with the UI, they keep moving things around changing how things work which renders the whole thing completely unusable because something that I'd be able to do in a matter of seconds otherwise becomes this massive chore because I cant figure out how to access the thing that I'm trying to access or do the thing that I'm trying to do, because they wont stop meddling.

I had the same problem in collage when i had to use the MACs i just couldn't use the dam things even trying to do simple things like copy and paste or accessing my flash drive so i could save my work proved to be a massive headache, on a PC something like that would take a matter of seconds trying to do it on the MACs I'd be messing round for 20 minutes just trying to figure out how to access the thing that i wanted to access and as a result i just couldn't get anything done, and unfortunately every time i have tried using linux i encountered the same trouble.

I've actually been keeping an eye on https://www.reactos.org

Ok..so what's ReactOS?
ReactOS is a free and open source operating system written from scratch. It's design is based on Windows in the same way Linux is based on Unix, however ReactOS is _not_ linux. ReactOS looks and feels like Windows, is able to your run Windows software and your Windows drivers, and is familiar for Windows users.
unfortunately its still in alpha and not ready for general day to day use just yet but they are making progress all the time, its a pretty cool and ambitious project because building an operating system is no easy task, but it should be good when its ready for general day to day use.

As for engine upgrades, it's possible but very time consuming.
how so because i would have though it would simply be a matter of changing up the formula a bit, something like

base speed = engine power / total weight x propulsion modifier
engine upgrade = base speed x upgrade value
actual speed = base speed + engine upgrade x terrain modifier

a very simple formula that isn't actually that different from how it works now but would actually make engine upgrades work as expected because the base speed is no longer a fixed value and is instead calculated based off of the body engine power the total weight of the vehicle and the propulsion modifier

so for example a viper body on wheels with a machine-gun turret and 1 engine upgrade

body 600 + wheels 1800 + turret 200 = total weight 2600

base speed = engine power 5000 / total weight 2600 x propulsion modifier 0.71 = 1.365384615 rounded to 2dp (1.37)
engine upgrade = (base speed 1.37 x 0.10 = 0.137) + base speed 1.37 = new top speed 1.507 rounded to 2dp (1.51)

actual speed on flat ground = 1.51 x 1 = 1.51
actual speed hills = 1.51 x 0.75 = 1.1325 rounded to 2dp (1.3)

so you see this works perfectly and isn't that dissimilar from how it works now, admittedly changing this isn't quiet as simple as just changing the formula and there would be one of two other things that would also need changing to but it shouldn't take that long maybe a couple of hours for someone who knows what there doing, unless I'm missing something ?!?!

The EB-Mod already does this (unique speed signatures for basically everything) and a ton of other cool things like merging multiplayer and campaign stats together. So tons of new bodies, propulsion, weapons, and the Mech borgs are available. And a special hyper aggressive AI that focuses on attacking and building defenses. I'm just going to use it a stepping stone, replacing camBalance, since it basically does everything we wanted to do anyway and more. I just have to get motivated enough to map out all the tech, per mission, and assign new tech arrays to the AI per mission and verify all research is available when it should be.
humm..... I'm not sure that would be such a good idea because the idea of the cam balance mod we where working on was simply to fix the broken balance and make all the weapons viable at each stage of the game, as well as making a judgment on things like mission timers and resources for insane difficulty. The EB-Mod sounds like it makes some pretty significant alterations to the base game, which as a general rule i don't agree with, because I'm of the opinion that we should avoid altering the base game to much, fixing bad implementation and things which are broken, is fine and fixing issues that arise from fixing badly implemented or broken things is also fine, but otherwise I'd advise against altering the base game to much.
Post Reply