Need help developing 3.3.0 campaign

Discuss the future of Warzone 2100 with us.
Forgon
Code contributor
Code contributor
Posts: 289
Joined: 07 Dec 2016, 22:23

Need help developing 3.3.0 campaign

Post by Forgon » 13 Feb 2019, 23:28

This thread is dedicated to developing the campaign based on the latest
developer builds (informally known as version master).
Feedback for the campaign in version 3.3.0 Beta 1 should be provided in
this thread.

The campaign has been tested extensively after its conversion to JavaScript
by Berserk Cyborg (also known as KJeff01 on GitHub), who is its main developer.

So far, discussions took place in the thread
Help needed testing
3.2.x Campaign games!
, but its length made the content difficult to grasp.
Therefore, this thread provides you a fresh start.
Nevertheless, you may have to read the old thread from time to time.

Currently, the main effort is to rebalance the campaign so that different
strategies (meaning different combinations of weapons) can be used to complete
it successfully. To this end, a mod called camBalance is used for testing.
The camBalance
branch in Berserk Cyborg's fork of our official repository
contains its
latest state. Occasionally, ZIP files (sometimes with the extension .wz) are
attached to posts in this thread to test specific changes.
You should download and apply them, and provide feedback after testing.

The main testers are alfred007 and Bethrezen, but you are free to join in.

Forgon
Code contributor
Code contributor
Posts: 289
Joined: 07 Dec 2016, 22:23

Re: Need help developing 3.3.0 campaign

Post by Forgon » 13 Feb 2019, 23:40

xNEXTx wrote:
01 Feb 2019, 10:32
In my opinion, the most important problem of balance in the company is the army limit of 100.
Having 100 units is not a problem to overcome any defense and enemy units.
When before still on PSone played and had 40 units this was difficult.
I agree that in case of 40 units did not make sense to build VTOL and cyborgs, but the game was interesting.
Now:
Built limit of 100 units the army and "was crushed by a crowd" of computer.
The game company was created for 40 units. Deviation from this limit leads to a broken balance.
40 it's a little army, but it's right for the company.
I have created ticket #4862 to limit the number of units to 40
for campaign difficulties "Hard" and "Insane".

My habit of playing with far fewer units than 100 to maximize unit experience is
probably common. As a result of my proposal, the Beta and Gamma campaigns would
become more challenging.
Players who need more units can play the campaign in "Easy" or "Medium" mode or
build defensive structures.

User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 825
Joined: 26 Sep 2016, 19:56

Re: Need help developing 3.3.0 campaign

Post by Berserk Cyborg » 14 Feb 2019, 23:42

Changes since last mod: Increased MG accuracy to 60% for the weapons, included script update for Alpha 11, made flamer projectile move faster, and simplified the rocket related research pathway in Alpha 6.

Mod goes up to Alpha 11 now.
camBalance.wz

User avatar
xNEXTx
Rookie
Rookie
Posts: 28
Joined: 10 Sep 2018, 22:07
Location: Russia

Re: Need help developing 3.3.0 campaign

Post by xNEXTx » 15 Feb 2019, 03:13

Forgon wrote:
13 Feb 2019, 23:40
I have created ticket #4862 to limit the number of units to 40
for campaign difficulties "Hard" and "Insane".
Now the game will really become difficult and tactical.

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 15 Feb 2019, 04:20

As I suggested in Ticket #4862 I modified rules.js and included it into the latest camBalance mod from Berserk Cyborg so that the unit limits are the following:

Easy: 100 units
Normal: 80 units
Hard: 60 units
Insane: 40 units


camBalance.wz
(177.62 KiB) Downloaded 66 times
Edit: To be fairer I also changed the accuracy of the Scavenger Machine Guns to 60.

Forgon
Code contributor
Code contributor
Posts: 289
Joined: 07 Dec 2016, 22:23

Re: Need help developing 3.3.0 campaign

Post by Forgon » 16 Feb 2019, 17:12

alfred007 wrote:
15 Feb 2019, 04:20
As I suggested in Ticket #4862 I modified rules.js and included it into the latest camBalance mod from Berserk Cyborg so that the unit limits are the following:

Easy: 100 units
Normal: 80 units
Hard: 60 units
Insane: 40 units



camBalance.wz

Edit: To be fairer I also changed the accuracy of the Scavenger Machine Guns to 60.
I propose the following unit limits instead:
  • Easy: 80 units
  • Medium: 60 units
  • Hard: 40 units
  • Insane: 40 units
In ticket #4682, you have mentioned that a unit limit of 40
could break the campaign in a few missions.
We should create a test case (probably a savegame) for each situation in which
unit limits might be broken as a first step to resolving these issues.

Besides, I would still prefer if Angel Missile and Archangel Missile behaved
like missiles in the campaign, rather than rockets (ticket #4850
contains a patch).
Berserk Cyborg thinks that this would disadvantage the AI opponent:
Berserk Cyborg wrote:
09 Jan 2019, 00:46
Forgon wrote:
08 Jan 2019, 21:59
Sure.
By the way, do you object to me pushing ticket #4850?
Its impact is insignificant and the new campaign balance currently being developed could take the change into account.
Mmm, At the end of the day, the proper way of dealing with those missiles is with a CB turret. It
would be poor tactics to rush into dangerous territory knowing (powerful) artillery is a constant
threat. I've done that myself, at times, and the price to pay is very steep and results in causalities.

But that is just with bot defenses. That change would tilt to the human player's favor and leave the dumb bot to be helpless against the human missile artillery. Where before its units could escape a volley, now they would have to endure them.

As a compromise, you could only change the archangel missile. By then the Nexus
base is already suffering from massive damage when the player gets it: archangel emplacements destroyed, a few
factories are destroyed, your VTOLs can get to the VTOL factories easier since a good chunk of the
vindicator sites protecting it are likely destroyed.

I prefer to keep campaign as it is right now for 3.3.0. Every campaign issue is trivial enough most won't notice them, well, except #3009. I suspect it is why the order of droids, when accessed from the transporter menu, changes from time to time when loading saves on offworld missions.
Could this problem be mitigated by a better balance?

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 17 Feb 2019, 18:10

Forgon wrote:I propose the following unit limits instead:

Easy: 80 units
Medium: 60 units
Hard: 40 units
Insane: 40 units
As I suggested in ticket #4862 I'm still of the opinion setting the unit limit for "Hard" to 50 units. Power output, enemy factory throttle and timer are getting tougher step by step from "Easy" to "Insane". Therefore it makes sense for me to have a step from "Hard" to "Insane" with the unit limit.

Forgon wrote:Besides, I would still prefer if Angel Missile and Archangel Missile behaved
like missiles in the campaign, rather than rockets (ticket #4850
contains a patch).
I agree with you. You get both missiles late in the game (Angel Missile in Gamma 07 and Archangel Missile in Gamma 09). I think in Gamma 08 it makes no relevant difference if the Angel Missile acts as a missile or a rocket. In Gamma 09 it could be a difference. I don't know how often these missiles are used by other players against units. I use it in Gamma 09 almost exclusively against enemy buildings. To compensate for the higher accuracy we could maybe increase reloadTime and/or decrease the base damage. The current base values before any upgrades are:

Angel Missile:
Damage: 150
ReloadTime: 450
numRounds: 6
longHit: 80

Archangel Missile:
Damage: 300
ReloadTime: 600
numRounds: 6
longHit: 80

As you can see the accuracy is only increased by 20 points if you assume an accuracy of 100% when they act as missiles. I think decreasing the damage by 20% should be enough. For implementation into 3.3.0, it's too soon in my eyes. Like the unit limit, we should test it before. Both changes can be then the update for 3.3.1 (or later if testing lasts longer).

Forgon
Code contributor
Code contributor
Posts: 289
Joined: 07 Dec 2016, 22:23

Re: Need help developing 3.3.0 campaign

Post by Forgon » 17 Feb 2019, 18:57

alfred007 wrote:
17 Feb 2019, 18:10
[...] For implementation into 3.3.0, it's too soon in my eyes. Like the unit limit, we should test it before. Both changes can be then the update for 3.3.1 (or later if testing lasts longer).
At the current pace of development, version 3.3.1 might be released in 10 years
or not at all.

We should not handicap ourselves in such ways.
What matters is that we tested our changes, not how much time has passed.

User avatar
WZ2100ModsFAn
Trained
Trained
Posts: 367
Joined: 15 Apr 2018, 17:25
Location: United States.

Re: Need help developing 3.3.0 campaign

Post by WZ2100ModsFAn » 17 Feb 2019, 19:28

xNEXTx wrote:
15 Feb 2019, 03:13
Forgon wrote:
13 Feb 2019, 23:40
I have created ticket #4862 to limit the number of units to 40
for campaign difficulties "Hard" and "Insane".
Now the game will really become difficult and tactical.
I'll agree with that one those new limits will be really hard...
Hope they get tested to make sure they are possible.
I use Ubuntu GamePack By UALinux for gaming. Best Ubuntu Distro for Warzone :D

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 17 Feb 2019, 20:57

WZ2100ModsFAn wrote: I'll agree with that one those new limits will be really hard...
Hope they get tested to make sure they are possible.
Of course, they are possible. During my testing to improve 3.2.x I always played insane difficulty and played the complete Alpha campaign with 32 combat units and from Beta 01 until Gamma 04 with 38 combat units. It will be a challenge to do that with a few fewer units. But instead using two commanders with each 16 units attached it's now necessary to attach only 14 units. And then you'll have 10 trucks. That should be enough. And for those levels where you need only one commander, it's more than enough. It will be necessary for me to adapt a few strategies but I like challenges. It will be now necessary for some players to think about their strategies instead of using a huge amount of units and just overrun the enemy. And those that don't like the limit can make a mod with the old rules.js. Simple as that.

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 18 Feb 2019, 21:39

I made a mod with Forgon's unit limit patch and started testing it. I found two issues so far:
1) On away missions, you can build more units than the limit allows. All in all, you can have 58 units despite the limit of 40.
2) In the Alpha/Beta transition level and in Beta 01 you can build only 39 units. I suppose the system is counting the transporter because in Beta 03 the limit is again working correctly. Edit: I made a fast test with a pre-away level and also there you can build only 39 units when the transporter shows up.

During Beta 01 no units are disappearing. If you bring in all 39 units you could build, the number of units is shortly exceeded. But you can't build any new ones. As I suggested in ticket #4862 you get the warning in Beta 01 that the fifth transport get attacked although no fifth transport has started. But that is only a problem with the logic. Also, the limit is shortly exceeded in Beta 03 after you brought in the rescued units from Beta 02. I didn't move further than Beta 03 so that I can't give any pieces of information about the Beta/Gamma transition at the moment.

I attach saves from the end of Alpha 12, Alpha/Beta transition, Beta 01 and the mod I made.
Attachments
unit limit test.zip
(223.28 KiB) Downloaded 59 times

User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 825
Joined: 26 Sep 2016, 19:56

Re: Need help developing 3.3.0 campaign

Post by Berserk Cyborg » 19 Feb 2019, 00:49

alfred007 wrote:
18 Feb 2019, 21:39
Also, the limit is shortly exceeded in Beta 03 after you brought in the rescued units from Beta 02.
This is a bug. Function donateObject() does not check the amount of regular units
on the home map... only what is on the current map. Fixing the limit check would ultimately lead to these extra units being destroyed when the campaign library handles this (camAbsorbPlayer() will automatically remove objects on donation fail). I would need to update missions that do donate units since some check to make sure at least one of them is alive.

We could also force object donation, however, players would have to potentially recycle or destroy several units to manufacture new units if the limits are exceeded... which would be a weird situation.

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 19 Feb 2019, 20:31

Berserk Cyborg wrote:
19 Feb 2019, 00:49
alfred007 wrote:
18 Feb 2019, 21:39
Also, the limit is shortly exceeded in Beta 03 after you brought in the rescued units from Beta 02.
This is a bug. Function donateObject() does not check the amount of regular units
on the home map... only what is on the current map. Fixing the limit check would ultimately lead to these extra units being destroyed when the campaign library handles this (camAbsorbPlayer() will automatically remove objects on donation fail). I would need to update missions that do donate units since some check to make sure at least one of them is alive.

We could also force object donation, however, players would have to potentially recycle or destroy several units to manufacture new units if the limits are exceeded... which would be a weird situation.
I think it's ok when the unit limit is shortly exceeded with donated units. You can't produce new units until you recycled enough units so that you have again space under the unit limit. I don't feel that's weird. The bigger problem in my eyes is that you can produce up to 58 units in away missions with a limit of 40.

User avatar
Berserk Cyborg
Code contributor
Code contributor
Posts: 825
Joined: 26 Sep 2016, 19:56

Re: Need help developing 3.3.0 campaign

Post by Berserk Cyborg » 19 Feb 2019, 23:08

alfred007 wrote:
19 Feb 2019, 20:31
The bigger problem in my eyes is that you can produce up to 58 units in away missions with a limit of 40.
Are you using the cheats "double up" or "biffer baker" before entering the away mission? Those cheats change the difficulty to Tough/Killer and the limit will stay 60 in your rules.js mod.

Edit:
I'll forego the donateObject() limit check. It would just complicate things.

User avatar
alfred007
Regular
Regular
Posts: 564
Joined: 31 Jul 2016, 06:25
Location: Stuttgart, Germany

Re: Need help developing 3.3.0 campaign

Post by alfred007 » 20 Feb 2019, 19:18

Berserk Cyborg wrote:Are you using the cheats "double up" or "biffer baker" before entering the away mission? Those cheats change the difficulty to Tough/Killer and the limit will stay 60 in your rules.js mod.
Not when I checked the unit limit. I used "biffer baker" to move faster forward to alpha 12 but before I tested the unit limit I quit the game and started it new because I know that the difficulty gets changed with this cheat. Just produce new units in my a few posts before attached save from alpha 12.

Edit: It looks as if the "biffer baker" cheat indeed caused this problem although I restarted the game. I started a new Alpha campaign and moved forward without using this cheat and now I couldn't produce more than 39 units on away missions. :oops:

But in all transport missions, you are still only able to produce 39 units. Only if you had 40 units from the level before you can hold this 40 units. But as soon as you recycle some of them the productions stops when you have 39 units. The system is counting the transporter as a normal unit.

Post Reply