Page 1 of 1

FKmod 0.1.0-beta

Posted: 06 Dec 2019, 23:14
by Kreuvf
Warzone 2100 FKmod 0.1.0-beta

What is "FKmod"?
Warzone 2100 FKmod or just "FKmod" for short is a standalone version of Warzone 2100 (https://wz2100.net/) focussing on the multiplayer mode. In brief, expect the following:
  • Technology tree: new and simple, no complex or unexpected interdependencies anymore
  • Types: more pronounced rocks-paper-scissors system
  • Numbers: try to present all important numbers to the player
  • Realism: more realistic burn effect
  • Fixes for bugs in Vanilla Warzone 2100 (not (yet) upstreamed)
The single player content remains untouched, but due to technical changes to e.g. how burn damage works, single player is affected as well. Due to the revamped tech-tree none of the Vanilla stock AIs worked anymore, so we replaced it with our very basic FK AI. The AI lets you learn this new game, but be aware that it is in no way competitive.


Installation

Note: This release is aimed at tech-savvy users and developers. Please wait for the final release for packages/installers.

As this is a beta release we are not offering ready-made packages. Everything you need is contained in the FKmod repository. Use git to make a local clone.

In order to play you need two things:
  • FKmod-patched Warzone 2100
    • Use Git to check out Vanilla Warzone 2100 3.2.3.
    • Apply the FKmod patch to the game.
    • Compile.
  • FKmod data
    • Copy the "mp" directory inside the "jsondata" directory.
    • Paste it into the "data" directory of your FKmod-patched Warzone 2100 overwriting the old/default files.
That's it. :D


Your Feedback

We are still in beta. Although we think we thoroughly tested everything, surely there will crop up issues with people testing this mod other than its authors ^^ If you are testing the mod and encounter issues (especially crashes), please open new issues on GitHub. We will try to get back to your (general) feedback here as well.

Generally, please be patient, we cannot offer immediate support and Christmas season is coming as well ;)


Below we shamelessly re-used (even more of) our readme:
Gameplay

FKmod's multiplayer mode features an all-new technology tree using the existing models. We highly recommend to familiarize yourself with the tech-tree by trying to beat our basic FK AI. Nonetheless, we will introduce you to some of the distinguishing features of FKmod in this section.

Weapon Angles
A direct weapon may only shoot at its target if the barrel can be lifted/lowered enough for a hit. Many weapons have gotten the ability to hit unusual targets to allow AA sites in valleys to fire at tanks moving at the top of a nearby cliff. On the other hand, a cannon might not be able to hit the target, because the barrel cannot be lowered enough. This feature was part of the original game, but probably has gotten lost somewhere along the way. We put it back!

VTOL Altitude, VTOL Damage
With the reintroduction of weapon angles, VTOLs would be easy prey for almost any weapon. Therefore, we decided it is best for VTOLs to fly a bit higher to evade most attacks from non-AA weapons. Also, the triple damage resting VTOLs would receive has been removed. Oh, you did not know about that? That's exactly the reason we removed it: The game never told you about it, so we deemed this unfair.

Weaknesses & Strengths More Pronounced
FKmod's all new technology tree uses more pronounced weaknesses and strengths of weapon types against target types. Overall, there are way less weapons of the same effectiveness than in the Vanilla version. When you encounter two weapons with the same effectiveness, you can be sure that the weapons still differ enough to distinguish them. Let's have a look at the two anti-tank weapons for tanks, Railgun and Scourge Missile: Railguns do way more damage, but lack in range and need quite some time for reloading. While Scourge Missiles have a high range, they cannot make full use of it without external sensors. That way, both weapons have their uses.

Burn Damage
First off, a short explanation how burn damage works in Vanilla 3.2.x:
  • Units within the fire get damaged by the weapon's corresponding damage value.
  • After the main burn effect wears off or you leave the burning area, the unit will continue with a kind of "secondary burning". Damage and duration are hard-coded (15 damage per second for 10 seconds).
We found this to be a terrible design decision for several reasons:
  • This effect is not obvious to the player.
  • The effect is basically useless when units have bodypoints in the range of thousands and with thermal armour exceeding three digit numbers.
  • The effect cannot be changed by simple modding.
  • This effect is as unexpected as it is unrealistic.
So, we had to fix this. In FKmod, whenever a unit enters a burning area, it automatically catches fire and will continue to burn and accumulate damage for as long as the original fire burned, even when moved out of the fire! There is one caveat, though: The burn effect does stack, getting hit by multiple flamethrowers will each cause the full burn damage over time. Since changing this would have required to some more sophisticated internal changes, we decided to only do that if there are enough players enjoying FKmod. :)

In-game Values
One of the gripes we have with the vanilla version is the lack of numbers. What effect does an upgrade to power generators have? By what amount is armour increased? You get the picture. Therefore, in FKmod, we try to give you more information:
  • The research messages in the intelligence screen are finally useful!
    • Detailed information on research effects.
    • Semi-autogenerated at build time.
  • There is one caveat, though: When you are researching artifacts from other players, the "natural" order of upgrades might become disturbed and the values will be off. Nonetheless, upgrades are in percentages, so the exact order does not matter.
  • There might be some less informative, but rather jocular messages in there.
Speed
We drastically reduced construction and research speed. Combined with the less complex technology tree, you have more time to focus your resources on the "war" part of "Warzone 2100". In the vanilla version, especially on large maps, you could easily run into the problem that once your units arrive at your enemy they are terribly outdated.

Structures Simplified
HQ? Gone. Command Relay? Gone. Modules? Gone. Oil derricks? Still there.

The HQ allowed you to have the mini-map and to design units, but that was more of a bother and lacked deeper strategic value. The Command Relay was only good for producing commanders. Also, you only needed to have had this structure once per game and you could still build more commanders and use the commander menu. All structures that had modules always have their maximum number of modules from the beginning in FKmod, so no more building of a structure and then directly upgrading it.

Be aware that oil derricks are associated with a cost now, so that rogue-building them everywhere on the map will most likely not pay off.

Type Modifiers and Armour
You knew that most weapons are more damaging to some, less damaging to other targets, didn't you? Well, we have not changed that. But, we changed the way the damage gets calculated. In the vanilla version, the damage a unit receives is calculated like this (single kinetic damage):
  • Take current damage value of the weapon: 500.
  • Get the modifier for the target: 150%.
  • Consider modifier for damage: 500 * 150% = 750.
  • Get target kinetic armour: 200.
  • Reduce damage by armour: 750 - 200 = 550.
  • Reduce current bodypoints: ...
We found this to be quite counterintuitive: Armour should always be armour and reduce the damage accordingly. Only the damage that actually reaches the unit should get the modifier. In this case, it would look like this:
  • Take current damage value of the weapon: 500.
  • Get target kinetic armour: 200.
  • Reduce damage by armour: 500 - 200 = 300.
  • Get the modifier for the target: 150%.
  • Consider modifier for damage: 300 * 150% = 450.
  • Reduce current bodypoints: ...
As you can see, less damage for the unit. The effect gets more pronounced the closer the armour is to the damage. This means that increasing your armour can have a profound effect even when fighting against the wrong target.

Side note: In reality, different types of weapons really do tremendously different damage to different types of targets, but from a game balancing perspective that would likely kill most of the fun.

Research Simplified
While the technology tree is all new, we tried to keep it simple despite its size. Some points in random order:
  • Armour Research: One research for all units and both types of armour
  • Bodypoints Research: Armour isn't everything! Sometimes your units (or structures!) just need to take more hits before dying.
  • Body Research: Four bodies, one of them the basic default, the others available after just one other research topic each
  • Weapon Research
    • Subtree with all upgrades available
    • Each weapon has at least 5 upgrades of every type (damage, rate of fire, accuracy)
    • Each weapon has one focus upgrade type with 7 upgrades
    • Up to two special upgrades per weapon
      • Replacement of old weapons with new ones granting upgrades not achievable through normal research
      • Weapon angles, homing, flight speed, range (weapon range, splash damage range, incendiary range), more shots per salvo, partial/full fire while moving, penetration
  • Removed production speed upgrades, kicked out half-tracks
  • No more weird (= non-obvious) inter-dependencies
Also, the effect of a certain research is generally 10%: 10% higher rate of fire than before, 10% higher damage than before, 10% lower chance to miss than before, ... you get the picture. This means that the research gets gradually better relative to the initial value, so that e.g. a weapon will do 200 (no upgrades), 220, 242, 266, 293, 322, 354 and 390 damage or +20, +22, +24, +27, +29, +32, +35 damage.

Auto-Repair Always On
In the year 2100, if tank is still alive, if cyborg can survive, they may find ... auto-repair! :D

Yes, we did it, auto-repair is enabled by default. Why? Mostly for convenience. Repairing that 1 point of damage of your defense structure surely won't change the outcome should the enemy decide on a coordinated attack, but the structure will still give off smoke to signal its status. Now, you don't need to worry about pesky mini-damage anymore.

New Default Map
Tired of starting every skirmish on the four player map Rush? Then FKmod offers you the two player map Roughness instead. There are several reasons for the switch:
  • When self-compiling the game, you have a simple indicator if you are actually running FKmod.
  • It takes some time to get to your enemy which harmonizes with FKmod's overall speed (see above).
  • Scattered resources combined with FKmod's oil derrick costs add some more depth to resource management.
  • It is a two player map; even without big data we assume that most games are 1 on 1.
  • The map is pointsymmetric.
Maps Adapted to FKmod
All maps of the Vanilla 3.2.x line have been converted to use FKmod structures and units. This means that you can play all of the old maps and use them as native FKmod maps. The FKmod source code contains converter scripts, so that, theoretically, you could convert other maps and start them without getting errors and with structures and units intact.

New Default AI
FKmod is built for all-human matches. However, we are also shipping it with FK AI, a very basic AI to allow for some offline training and getting used to the mod. All other AIs have been disabled/removed, because they are not compatible with the mod and would give errors anyway.


Questions & Answers

How to tell whether I have FKmod or other versions of Warzone 2100?
The following points are indicators that you are indeed using FKmod:
  • Default map: Roughness-T1
  • Default AI: FK AI
  • AIs to choose: none other than FK AI
  • Structure Limits are only available for eight structures:
    • Cyborg Factory
    • Power Generator
    • Rearming Pad
    • Repair Facility
    • Research Facility
    • Tank Factory
    • VTOL Factory
  • Intelligence Display contains actually useful information :X

What does "FKmod" stand for?
The initials of the nicknames of the two principal authors are "F" for "Fingolfin" and "K" for "Kreuvf". Since we planned to make a mod, we put all our creativity in the name and "FKmod" was born.


What is this "Vanilla Warzone 2100" you are referring to?
The more or less "official" or "mainstream" version of Warzone 2100 distributed by the team at wz2100.net.

See also: https://en.wikipedia.org/w/index.php?ti ... =895110056


Which version of Warzone 2100 do I need to play FKmod?
None. Although it is called "FKmod", technically, it is not a mod, but rather a different version of Warzone 2100. Therefore, it is incompatible with any other version of Warzone 2100 out there. Also, neither do FKmod savegames work with Vanilla Warzone 2100 nor do Vanilla Warzone 2100 savegames work with FKmod.


What exactly is FKmod?
FKmod is a fork of Warzone 2100. Currently, it derives from Warzone 2100 3.2.3. FKmod is only compatible to itself, the lobby offered by wz2100.net does not work with FKmod. FKmod is purely meant for multiplayer games.


Will there be updates?
Nothing is planned. The further development of this mod likely depends heavily on fan reactions. If attention wanes shortly after the initial release, FKmod still served its purpose; the journey is the reward. Whether there will be an updated version based on Vanilla Warzone 2100 3.3.x is up to the impact we make with this.

This game is open source and as long as you adhere to the license, you may change/update the game to your liking. The only thing we are kindly asking you is to use a sufficiently different name, so that your new version can be found via internet search engines and we are spared bug reports for your version(s) of the game ;D

Re: FKmod 0.1.0-beta

Posted: 07 Dec 2019, 12:01
by Terminator
make a separate wz2100 installer for this mod. or you wont get muck feedback dude.
even I dont want to bother with this. however idea sounds interesting.

Re: FKmod 0.1.0-beta

Posted: 08 Dec 2019, 09:12
by JimmyJack
Installation:
This is over my head. I killed that part of my brain at a rock concert back in 78.

Com'on help an old man out.

https://portableapps.com/

Re: FKmod 0.1.0-beta

Posted: 08 Dec 2019, 11:56
by andrvaut
1) why everything is based on 3.2.3? in 3.3.0 there were a lot of bug fixes. From what I immediately recall: the work of mods, accelerated the transfer of maps and mods, fixed the transfer of units (desinks) and bug fixes not applying improvements.
Could do rebase to master or 3.3.0 before release.

2) why did not they offer at least part of the code changes to the main branch of the game. Breaking compatibility with inclusion through settings or mods ...
Then your work could be available to everyone.

3) Where is the binary for windows ?? How to watch this for ordinary players?

Re: FKmod 0.1.0-beta

Posted: 14 Dec 2019, 22:48
by Kreuvf
Thank you all for your feedback.
Terminator wrote: 07 Dec 2019, 12:01 make a separate wz2100 installer for this mod. or you wont get muck feedback dude.
JimmyJack wrote: 08 Dec 2019, 09:12 Installation:
This is over my head. I killed that part of my brain at a rock concert back in 78.
andrvaut wrote: 08 Dec 2019, 11:56 3) Where is the binary for windows ?? How to watch this for ordinary players?
Sorry for missing out this important piece of information. For this beta release we have not yet gotten around to preparing packages/installers. The final release will likely have packages/installers. I added this information to the original posting.
andrvaut wrote: 08 Dec 2019, 11:56 1) why everything is based on 3.2.3? in 3.3.0 there were a lot of bug fixes. From what I immediately recall: the work of mods, accelerated the transfer of maps and mods, fixed the transfer of units (desinks) and bug fixes not applying improvements.
Could do rebase to master or 3.3.0 before release.
When we just finished converting our patches to 3.2.3, 3.3.0 was right around the corner. We decided to stay at 3.2.3 as going to 3.3.0 would have taken too much time. If there is no/too little interest in the mod, we will definitely not upgrade everything to the new version.
andrvaut wrote: 08 Dec 2019, 11:56 2) why did not they offer at least part of the code changes to the main branch of the game. Breaking compatibility with inclusion through settings or mods ...
Your question suggests we have not done that. The latest change that also went into the main branch can be found in issue #522.

As the first (albeit bad) patch was not accepted into the main game already in December 2012, compatibility could not be achieved anymore. With later patches, even more profound changes were introduced completely killing compatibility.
andrvaut wrote: 08 Dec 2019, 11:56 Then your work could be available to everyone.
The work is automatically licensed under the main game's license, so it is available to everyone. Nothing is kept from the public, everyone might reuse our stuff (according to the license).