Author Topic: SMAX - The Will to Power - mod  (Read 133763 times)

0 Members and 5 Guests are viewing this topic.

Re: SMAX The Will to Power mod
« Reply #75 on: December 25, 2019, 09:46:07 PM »
Exposed firepower multiplier.
Don't use version 28. I have to fix combat roll too.
« Last Edit: December 26, 2019, 05:27:24 PM by tnevolin »

Re: SMAX The Will to Power mod
« Reply #76 on: December 29, 2019, 07:41:47 PM »
Version 29.
  • Fixed combat roll! Finally.
  • Added more combat tweaking parameters.
  • Odds dialog now displays TRUE winning odds. Another great achievement.

Combat parameters

Ignore reactor power for HP = 1. This is recommended setting for this mod. It organically works with unit cost and unit strength. Changing this value is not recommended. You essentially fall back to vanilla reactor power multiplied unit HPs.

Firepower multiplier = 1. This is the default vanilla behavior. Raising this parameters effectively decreases number of rounds, thus decreasing stronger unit winning odds. Play with it and see how odds change in new odds display dialog!
:)

Firepower randomization = 0. Highly experimental feature in attempt to emulate vanilla random damage that otherwise would come in chunks of firepower. Not tested. Could break disengagement for damaged units.

Re: SMAX The Will to Power mod
« Reply #77 on: December 31, 2019, 06:17:21 AM »
Exposed repair rates.

Re: SMAX The Will to Power mod
« Reply #78 on: January 02, 2020, 03:58:26 AM »
Version 32.
Finalized alternative combat mechanics based on dino's excellent idea. All the pieces of the puzzle snapped into place. This being said I do not guarantee it works flawlessly. It still needs testing.
However, updated exactly calculated winning odds should have a great help in testing activity. Now they display an exact odds of winning an individual battle! Happy testing.

With this release out of doors I feel like major problems I was focusing recently are resolved.

Re: SMAX The Will to Power mod
« Reply #79 on: January 02, 2020, 04:12:29 AM »
Minor thing.
Do you like how odds are displayed before battle? I don't. Computer tries to find closest whole number ratio to represent it. However, it results in all kind of numbers thrown at me and it may be difficult to navigate among them. Yes, it is easy to understand 3:2 or 2:1 odds. What about 217:158 or 22:15? Are they better or worse? To understand them I actually needs to divide them with the calculator. And that is what I want to get rid of.
I've been thinking - would it be beneficial for player to convert all odds to common denominator for ease of comparison? The natural choice would be 10 as denominator or 12 or 16 or 20 or 25 or some other not too big number that is easy for people to comprehend. This way all odds will be expressed in same denominator and a numerator will show the battle success chance. The bigger the number the better. Player then can build their own decision strategy based on a single number only.
For example all above mentioned odds would turn into: 3:2 = 15:10,  2:1 = 20:10, 217:158 = 14:10, 22:15 = 15:10. Now it is absolutely clear which odds is better or similar!

Offline dino

Re: SMAX The Will to Power mod
« Reply #80 on: January 02, 2020, 09:45:57 AM »
If you want to make it really easy to read and accurate at the same time, just display as a percentage.
« Last Edit: January 02, 2020, 10:28:36 AM by dino »

Re: SMAX The Will to Power mod
« Reply #81 on: January 02, 2020, 02:42:39 PM »
You mean probability percentage? This is not the same as odds.
This requires changing the actual dialog text output format which is uncharted territory for me. I thought maybe I can get away with just tweaking two numbers instead.

Offline dino

Re: SMAX The Will to Power mod
« Reply #82 on: January 02, 2020, 03:39:44 PM »
If percentage is problematic for any reason and you think your time would be better spent on something else, then what you are proposing is already a nice improvement over vanilla presentation.

Re: SMAX The Will to Power mod
« Reply #83 on: January 02, 2020, 05:00:51 PM »
Calculating percentage is easy. I already have a code separated in DLL for odds calculation. I was just clarifying whether you meant probability percentage or odds percentage? Odds can be expressed in percentage as well since it is just a fraction.

I'll poke around a dialog to see if it is easy enough.

I also tried to play with denominator of 12 in my last release. Didn't like it. I think I prefer 10 or even 5 as I don't really care about ±10% or even ±20% difference in odds. I think other players too. The super precision vanilla offers is an overkill. It makes no bearing to check an exact value for every battle. I will also not get tired to reiterate that vanilla displayed odds super precision creates false sense of correctness while everybody knows the calculation itself is off by astronomical amount.
:)

Re: SMAX The Will to Power mod
« Reply #84 on: January 02, 2020, 08:07:08 PM »
Phew. It seems that all dialog texts are in Script.txt. Easy to alter.
:)

Re: SMAX The Will to Power mod
« Reply #85 on: January 03, 2020, 04:55:03 PM »
Version 33. Probability percentage in odds confirmation dialog.

I was playing this version for few hours and I am very satisfied. It seems that everything what annoyed me in vanilla went away. Is it just I am overexcited playing my own creation? Could be. Will play some more and try to confirm my feelings. Feel free to share your play feelings too.

Few notes on recently added key features.

alternative_combat_mechanics_loss_divider=2.0
Adjust winning probabilities. Value of 1.0 emulates vanilla 2:1 strength ratio wins battle with 14:1 odds. Value of 2.0 seems to relaxing it pretty significantly. Now 2:1 strength ratio wins battle with about 4:1 odds. It seems that values over 2.0 are not needed unless you want to relax odds skew even more. Feel free to play with it. This is float number and not integer so you have whole degree of freedom with it. It is easier to test now when odds confirmation dialog shows exact winning probability percentage!
 :D

collateral_damage_value=2
Collateral damage *10%. Dino recommended set it to 0. I am not yet convinced until he shares his play testing on this. But feel free to modify it.

repair_minimal=1
repair_fungus=1
repair_friendly=0
repair_airbase=0
repair_bunker=0
repair_base=0
repair_base_native=1
repair_base_facility=1
repair_nano_factory=1

Bunch of repair rate configuration values. Currently set to minimal 10% everywhere. Special SP for natives, base facilities and NF bump it by +10% each.

Re: SMAX The Will to Power mod
« Reply #86 on: January 04, 2020, 01:02:38 AM »
Some battle analysis to ponder for myself. Chart shows how round odds are converted to battle odds with different divisor value (1.0 = vanilla). Easy to see that even 3.0 divisor still emphasizes odds quite noticeably. Others do it even more.

Remember that we don't care about battle odds in large scale war when many units fight many units every turn. In this case only round odds and total damage matters. Especially now when I reduced repair rate. Removing collateral damage may help too. With reduced repair rate AI does not need to attack base with many units simultaneously. Multi unit attack still may work even if it spans few turns.

Battle odds matter only for isolated battles when victor is safely repaired afterwards. Like natives encounters. For them I'd like to set parameters so that 1.a) base psi attack is not skewed too much, 1.b) psi attack with morale boost is still not a sure kill, 2.a) worm attacking Trance unit in base is not skewed too much, 2.b) same against morale boosted unit with sensor is still not a sure kill either.
Base psi attack odds in a field are 3:2 up to 2:1 with some morale advantage. Base defense in base against worm attack is 1:1 down to 1:1.5 against high morale unit in presence of a sensor. So we have a range of odds somewhere up to 2:1 which should not be skewed drastically. Divider values 2.0 - 3.0 seem to satisfy these criteria. Value 2.0 has "almost sure kill" threshold somewhere at 3:1. Whereas 3.0 gives chances to weaker unit up to 4:1 odds ratio. I am personally inclined to the latter because it is smooth enough yet it guarantees win somewhere after 5:1 anyway. However, the choice is not that critical for me.

Specially for bvanevery and other guaranteed kill defenders, I can just implement some odds threshold granting it. Nobody would probably care about weaker unit chances above 5:1 odds advantage. Simple solution.
« Last Edit: January 06, 2020, 12:31:04 AM by tnevolin »

Bombardment mechanics
« Reply #87 on: January 05, 2020, 05:33:21 PM »
Max damage = (<attack strength> * <artillery damage numerator>) / (<defense strength> * <artillery damage denominator>), rounded down
Then it rolls for integer between 0 and max damage. That roll will be an artillery damage.

That formula produces 0 for all strong enough defenders above certain threshold. With vanilla 3/2 artillery multiplier 1.5 times stronger defender is completely immune to artillery fire. That is kind of ridiculous limitation since base bombardment is an artillery primary role. This multiplier should be at least 5 to ensure artillery cat hurt Caretakers defender behind TD in presence of sensor (3 * 1.25 * 1.25 = 4.6875). At the same time too large multiplier completely destroys weaker units. Like if we set multiplier to 5 then any 4 times stronger artillery (4:1 odds) delivers 10 damage on average - enough to do maximal possible artillery damage in one shot.

I don't like the above but don't know any nice way to modify it yet, though.
Maybe use some logarithmic scale for max damage: 1:8 odds delivers max 1 damage, 1:4 -> 2, ..., 8:1 -> 7?
Another option is to fix max damage to 1-2-3 and use random roll for odds to determine whether damage is at all to be delivered? This way attack/defense ratio defines how often bombardment hurts unit and even weakest artillery have a chance to hit target sometimes though rarely.

For time being I just set it to:
5,1      ; Numerator & Denominator for artillery fire damage

Offline dino

Re: SMAX The Will to Power mod
« Reply #88 on: January 05, 2020, 07:38:15 PM »
Maybe leave vanilla, except for "max damage" < 1, generate a random float (0-1), if it's smaller than "max damage" defender receive 1HP damage.
In your very extreme example, there would be 26% chance to deal 1HP damage.

I thought bonuses are additive ? Isn't it 1 + ( 2 + 0,25 + 0,25 ) = 3,5 ? In which case it'd be 33% chance for artillery hit.

***
In the previous post, aren't the axes on the graph mislabeled ? Shouldn't axis x be first round winning odds and y battle winning odds ?

I'm also excited to play your creation, so it's not only you...
Except you kept comming up with new stuff and I've kept postponing my playing, since I didn't want to burn my desire on unfinished product ;)
But since the last release, weeks of playing are guaranteed at some point and it's years since my last binge playing of SMAC.

Re: SMAX The Will to Power mod
« Reply #89 on: January 06, 2020, 01:27:18 AM »
Maybe leave vanilla, except for "max damage" < 1, generate a random float (0-1), if it's smaller than "max damage" defender receive 1HP damage.
In your very extreme example, there would be 26% chance to deal 1HP damage.

Unfortunately, it is all whole number operations. So "< 1" means "0". Theoretically I always can substitute whole code with my own custom function where I can do whatever I want. However, I usually like to try spot changing just some hex codes in ASM instruction to see if it fixes the problem.

Your solution seems logical. I'll see to implementing it if nothing simpler works.

I was thinking about similar but less sophisticated solution. We can add 1 on top of original calculations. This way max damage never fall below 1 and we get 50% chance of damage 1 (or 0) in worst case. Simple and acceptable enough. That creates a micro exploit, though. It is cheaper to build weakest artillery possible for base bombardment since it never gets less than 50% damage chance.

I thought bonuses are additive ? Isn't it 1 + ( 2 + 0,25 + 0,25 ) = 3,5 ? In which case it'd be 33% chance for artillery hit.

Some same type bonuses are. Different types usually not. You never guess until you read them on combat screen and verify with calculator. For example PD and TF bonuses are added to 1 (bare base multiplier) to compose a final base multiplier. So PD+TF = 1+1+1 = 3 multiplier. Faction ability and sensor are independent multipliers. I think. Never verified it, though.

In the previous post, aren't the axes on the graph mislabeled ? Shouldn't axis x be first round winning odds and y battle winning odds ?

Yep. Fixed.

I'm also excited to play your creation, so it's not only you...
Except you kept comming up with new stuff and I've kept postponing my playing, since I didn't want to burn my desire on unfinished product ;)
But since the last release, weeks of playing are guaranteed at some point and it's years since my last binge playing of SMAC.

What are you talking about?

All of my releases are finished and completely playable. I implement and test my ideas and then bundle them and release. They guarantee to deliver what is described in release notes. Of course, it could be not 100% bug free as there are a lot of shady use cases around. However, I try to not touch anything that has long spanning tentacles across the code to avoid unforeseen consequences. Anyway, if you find any bugs or whatever irregularity - let me know.
The fact that a lot of small game elements work together doesn't prevent modder from modifying just one of them at a time.
Don't let release frequency fool you. They are not in any way under cooked. Sometimes I spend weeks to resolve one single thing but with recent changes I was either lucky or just insanely good at cranking it.
:)

 

* User

Welcome, Guest. Please login or register.
Did you miss your activation email?


Login with username, password and session length

Select language:

* Community poll

SMAC v.4 SMAX v.2 (or previous versions)
-=-
24 (7%)
XP Compatibility patch
-=-
9 (2%)
Gog version for Windows
-=-
103 (32%)
Scient (unofficial) patch
-=-
40 (12%)
Kyrub's latest patch
-=-
14 (4%)
Yitzi's latest patch
-=-
89 (28%)
AC for Mac
-=-
3 (0%)
AC for Linux
-=-
6 (1%)
Gog version for Mac
-=-
10 (3%)
No patch
-=-
16 (5%)
Total Members Voted: 314
AC2 Wiki Logo
-click pic for wik-

* Random quote

The wicked have told me of things that delight them, but not such things as your law has to tell.
~Saint Augustine 'Confessions'

* Select your theme

*
Templates: 5: index (Alpha Centauri), PortaMx/Mainindex (default), PortaMx/Frames (default), Display (default), GenericControls (default).
Sub templates: 8: init, html_above, body_above, portamx_above, main, portamx_below, body_below, html_below.
Language files: 4: index+Modifications.english (Alpha Centauri), TopicRating/.english (Alpha Centauri), PortaMx/PortaMx.english (Alpha Centauri), OharaYTEmbed.english (Alpha Centauri).
Style sheets: 0: .
Files included: 47 - 1280KB. (show)
Queries used: 41.

[Show Queries]