Author Topic: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting  (Read 4579 times)

0 Members and 1 Guest are viewing this topic.

Offline Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49271
  • €440
  • View Inventory
  • Send /Gift
  • Because there are times when people just need a cute puppy  Soft kitty, warm kitty, little ball of fur  A WONDERFUL concept, Unity - & a 1-way trip that cost 400 trillion & 40 yrs.  
  • AC2 is my instrument, my heart, as I play my song.
  • Planet tales writer Smilie Artist Custom Faction Modder AC2 Wiki contributor Downloads Contributor
    • View Profile
    • My Custom Factions
    • Awards
Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« on: March 30, 2014, 05:34:25 AM »
After nearly 20 iterations in slightly over a year, Yitzi's .exe patch for Sid Meier's Alien Crossfire, the Alpha Centauri expansion, has become a must-have for many SMACers.

Yitzi said the project, incorporating previous patching from scient and kyrub, arose from a desire to better balance AC gameplay.
Quote from: Yitzi
The main purpose is that the game has certain imbalances and design flaws, and is good enough for them to be worth fixing; some can be fixed via modding the attached text files, particularly alphax.txt, but some can't, so I'm making it so that they can by adding new variables that can be modded.

It fixes some bugs and adds a lot of new modding options, and will add more in the future.
It's still technically in beta, so if you find a bug with it that isn't in previous patches just report it and it'll get fixed.

As for why to try my patch: It fixes some bugs, gives increased modding options if you're into that sort of thing, and unless you like playing with bugs there's really no downside.

He got involved for the same reasons all modders mod.
Quote from: Yitzi
I realized that what I wanted for SMAX wasn't going to happen without .exe modding, so I went to CGN to put in a request for Scient's patch when he resumed; Kilkakon invited me here, [AC2] and when I realized that Scient wasn't going to do it soon, I found out what program he used and started doing it myself.

For a changelog of the patch: http://alphacentauri2.info/wiki/New_alphax_variables_in_Yitzi%27s_patch

Plans for the future of Yitzi's patch are extensive.
Quote from: Yitzi
Currently I'm in the middle of reorganizing my personal documentation to make it easier to use; that documentation is important, as it means once I learn something about how the game works I can refer to it and don't have to go through the same process again.
After that, I plan to shift the internal storage of the alphax RULES variables, and possibly move them around a bit, in order to prepare for future variables added and still have natural groupings.  The last time I did that sort of thing was for 2.0, and because I was changing the size as well to make room for more it took several months.  This time will hopefully be substantially shorter.
After that comes patch 2.6, which was originally planned for base-to-base crawling but I've decided to have it be a bunch of miscellaneous things instead:
-Currently if the nearest base you own is producing any ecodamage, you cannot capture worms.  My earliest work was on the ecodamage formula, with the aim of making it a smoother curve, so if you use the settings that I think make for a better game it will be nearly impossible to avoid any ecodamage.  Therefore, I plan to make a "maximum ecodamage to not have any penalty to worm capture chance" and "ecodamage to completely prevent worm capture" variables, and there will be a percentage penalty to worm capture that scales linearly from one to the other.  (So if you picked 2 and 5, if the nearest base was producing 3 ecodamage your capture chance would be decreased by 1/3.)
-There is an old bug in which native spore launchers or artillery of the same faction might attack each other (I suspect it's the same bug for both, but am not sure); I intend to fix that in 2.6.
-I plan to change the simple on/off system for retooling costs into 10 categories for percentage penalties: From each of the four categories of production (units, facilities, satellites, projects) to another of the same category, and between each pair of categories (units to facilities and facilities to units will have the same percentage penalty.)
-I currently have five flags for various variant drone rules; I plan to add a six, allowing psych-boosting facilities to also increase Lal's bonus talents.  As the game progresses, Lal's bonus talents become less and less valuable because it takes less energy to produce 2 psych; this will help remedy that.
-Currently changing social engineering doesn't depend on your faction size; I plan to add a variable that, if nonzero, will cause the cost to be multiplied by your faction-wide population and then divided by that variable.  If zero, it will use the current system.
-Currently, a creche halves negative morale effects for units homed to that base, rounding the effect toward 0.  I plan to create the option to have it halve rounding away from 0 (so that -1 MORALE will have an effect even if you have creches everywhere), or to have no effect on homed units at all.
-I intend to add the ability to change the population cost of both colony pods (currently 1) and supply convoys ("crawlers") (currently 0).
-I intend to give the ability to set the GROWTH needed to pop boom, as well as the GROWTH granted by Cloning Vats instead of causing pop boom (if Cloning Vats grants enough GROWTH to cause pop boom no matter what penalties there are, it will cause pop boom, of course.)

For 2.7, I plan to deal with convoys, and in particular make base-to-base convoys viable.
-Firstly, I plan to make it possible to set the maximum amount convoyed.  It's currently at 1; if set higher, you'd be given a choice how much to transfer.
-I'm not sure, but I think that base-to-base convoys remove post-multiplier resources and grant pre-multiplier resources; this is of course a bug, and one that will be easily exploitable if base-to-base convoys are viable, so I plan to investigate, and if the bug exists fix it.
-If a base does not have enough resources, the first thing it sacrifices (before disbanding or, I think, starving) are convoys away from it.  However, if it's after the base being convoyed to in the listing of bases, I believe that this will cause the resource to be applied to both bases; this is a bug and I plan to fix it.
-I plan to give the option to limit how many convoys can benefit a particular base, as a numerator and denominator to be multiplied by the base's population; a denominator of 0 will mean that convoy use is unlimited.
-I plan to give the option of having a penalty (depending on EFFIC) to a base that convoys away most of its resources of a particular type; this will help discourage sending all your resources to a single base.

Then comes 3.1, in which I tackle resources and make the transcendence endgame more interesting:
-I plan to add a flag to give maglev+mine squares +1 minerals, +1 in rocky, and +1 with a mineral bonus or landmark, a flag to allow condensers to be treated like farms and enrichers for the purpose of combining enhancements in a single square (i.e. they can be combined with solar, mirror, or mine, but not forests, fungus, or boreholes), and a flag to cause monoliths to act as fungus where that would be better.
-I plan to allow you to change the production given by landmarks of each resource, by sea terraforming facilities (aquafarm etc.), by the tree farm and hybrid forest, and by the Manifold Harmonics for every value from +0 to +4 PLANET (more will count as +4).  I also plan to add the ability to set base energy from solar panels, in addition to 1 per elevation.
-I also plan to add the ability to set resources from Centauri Preserve and Temple of Planet, acting as tree farm/hybrid forest for fungus, but only acting as such after the Voice of Planet is built, with the owner of the VoP using a separate entry (so he can be given extra resources from them.)
-Speaking of the Voice of Planet, I plan to give more options as to how it affects ecodamage.  Rather than the current simple "doubles ecodamage but prevents worms", it will have a multiplier and divisor to ecodamage chance depending on your relations with whoever owns the Voice of Planet (with different entries for when you own it, when it has been destroyed, and when you have a pact, treaty, truce (or no relations), or vendetta. 
-However, "ecodamage" here does not mean a fungal pop, but rather affects the chance of contributing for global warming.  The chance of a fungal pop will equal some factor (which you can set as numerator/denominator) times the chance of global warming plus some constant value (which can be negative), plus some constant value (presumably negative) per PLANET rating.  The two chances will be linked, in that if the lower-probability event occurs it will be with the higher-probability one (so if it's 10 of ecodamage and 5 of pop, it'll be a 5% chance of ecodamage with pop, 5% of ecodamage without pop, and 90% of nothing.)  The probability of worms with the pop will be set similarly, but worms cannot occur without a pop even if it has a higher probability.
-Finally, once the VoP has been built, fungal blooms will begin to occur at a rate per turn set in alphax (modified by map size).  To not use this feature, the rate can be set to 0.  Fungal blooms will work similarly to fungal pops, but rather than occurring near a high-production base they can occur anywhere on the map other than a base or a square that currently has fungus, and will never come with worms or cause global warming.  This should help create the "Planet awakening" feel that defines the endgame story.

After that comes 3.2, with a bunch more miscellaneous additions:
-Probe teams will have several flags available: One causes infiltration to cost energy, and another does the same for techsteal (both with a cost proportional to distance from HQ, so you'll have to choose between targeting an outlying base with weak security and a high cost, or a central base or HQ with lower cost but that's harder to get at), another allows a probe team to subvert an entire stack of units (though at the cost of subverting them all individually), and another changes the effect of units in bases on mind control cost to just add the cost of subverting the unit.  There'll also be the option to set the duration of infiltration, though this will be modified by the target's PROBE rating; if it's not infinite, the Empath Guild will double the duration as well as infiltrating every faction when it is built, but will not grant permanent infiltration.
-A new facility, the Spaceport.  This will take over the satellite-related effects of the aerospace complex, and the aerospace complex can be set to either lose these effects, keep them, or keep them when built but lose them when gained from the Cloudbase Academy.
-Base population is capped at 99; I would like to raise that to at least 127, and maybe even 255.
-Currently there is no way to have multiple players in a PBEM game have different difficulty levels, or have an AI with harder-difficulty mechanics but lower-difficulty aggression.  I plan to change both of those.

After that comes 4.1, which adds a new way for convoys to work; rather than granting a certain amount per turn, they'll load up, make their way to the target base, and unload there, so a strong transportation network and security will be essential for effective use.

After that is somewhat fluid (actually, it's all somewhat fluid, especially since I consider incorporating user requests, but after 4.1 in particular), though I also plan to sometime fix the graphics bug that occurs when playing scenarios, and add new rules for how alien factions interact with the Voice of Planet and its effects on the Ascent to Transcendence and ecodamage.


The latest version of the patch can be dowloaded here:
http://alphacentauri2.info/index.php?action=downloads;sa=view;down=160  -Until the next update...


Offline gwillybj

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #1 on: March 30, 2014, 02:55:05 PM »
Simply put: invaluable.  :1st:
It makes this 15-year-old game new again. :salute:
Two possibilities exist: Either we are alone in the Universe or we are not. Both are equally terrifying. ― Arthur C. Clarke
I am on a mission to see how much coffee it takes to actually achieve time travel. :wave:

Offline Quota

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #2 on: March 30, 2014, 04:35:14 PM »
Agreed. The bugs and misc improvements fixed are very worthwhile by themselves, and the greatness of the approach taken to tweaking rules and fixing imbalances should be emphasized: rather than simply offering to change or "fix" hardcoded behavior with one option (or a few), such as some similar awesome projects do (for those who are into TES III, the Morrowind Code Patch is a good example), Yitzi's patch opts to make the gameplay changes/improvements entirely customizable, which is of course an exercise in foresight and flexibility. I do appreciate taking the extra mile.
Essentially, you can already fork out many variants of SMAX out of Yitzi's patch, by supplying different alphax.txt files, each being still the same game however still requiring different competitive strategies. And Yitzi didn't even finish all he'd planned yet...

Note that parts of your quotes are now outdated; from what I've gathered, Yitzi doesn't consider the present version 'beta' or risky to use, and some of the things quoted as planned for the future have already been implemented (like moving around alphax.txt value placements, I think).

Lastly, note that general bug/fixes are mostly outlined on this page: http://alphacentauri2.info/wiki/Yitzi%27s_patch .

Yitzi, as been said, you've arrived at the community before knowing how to go about creating this patch, and then learned (quite quickly, I presume) how to do so. How'd you do that? Did you find any useful resources on the subject?
How would I go about learning to do this sort of thing with this game or other games? Does it require a deep base to begin with (various highly developed skills), or would a moderate-to-advanced understanding of programming and a rudimentary understanding of assembly be enough? Of course, I doubt my knowledge of OOP and programming paradigms would be of much use in such a field...

Offline Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49271
  • €440
  • View Inventory
  • Send /Gift
  • Because there are times when people just need a cute puppy  Soft kitty, warm kitty, little ball of fur  A WONDERFUL concept, Unity - & a 1-way trip that cost 400 trillion & 40 yrs.  
  • AC2 is my instrument, my heart, as I play my song.
  • Planet tales writer Smilie Artist Custom Faction Modder AC2 Wiki contributor Downloads Contributor
    • View Profile
    • My Custom Factions
    • Awards
Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #3 on: March 30, 2014, 04:40:45 PM »
The quotes are all from Friday afternoon, not quite two days ago...

Offline Yitzi

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #4 on: March 30, 2014, 05:02:04 PM »
Note that parts of your quotes are now outdated; from what I've gathered, Yitzi doesn't consider the present version 'beta' or risky to use

I do consider the present version "beta"; I do what I can to try to avoid bugs, but they sometimes happen, and then are caught by beta testers (i.e. the people using the patch and posting here) so I can fix them.

Quote
and some of the things quoted as planned for the future have already been implemented (like moving around alphax.txt value placements, I think).

I moved them around once already; I plan to do so again.

Quote
Yitzi, as been said, you've arrived at the community before knowing how to go about creating this patch, and then learned (quite quickly, I presume) how to do so. How'd you do that? Did you find any useful resources on the subject?

Ollydbg, the Intel assembly reference guide, and that's it.

Quote
How would I go about learning to do this sort of thing with this game or other games? Does it require a deep base to begin with (various highly developed skills), or would a moderate-to-advanced understanding of programming and a rudimentary understanding of assembly be enough?

You need the ability to learn assembly, fairly good understanding of programming (not any particular language (this was my first serious programming project), but you do need to be able to think like a programmer), and strong analytical ability to reverse-engineer the code.  It doesn't need a deep base at all; as I said, this was my first serious programming project.

Offline Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49271
  • €440
  • View Inventory
  • Send /Gift
  • Because there are times when people just need a cute puppy  Soft kitty, warm kitty, little ball of fur  A WONDERFUL concept, Unity - & a 1-way trip that cost 400 trillion & 40 yrs.  
  • AC2 is my instrument, my heart, as I play my song.
  • Planet tales writer Smilie Artist Custom Faction Modder AC2 Wiki contributor Downloads Contributor
    • View Profile
    • My Custom Factions
    • Awards

Offline Yitzi

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #6 on: April 01, 2014, 09:42:19 PM »
There is no SMAC-only version, but I'm pretty sure SMAC can be imitated from SMAX just by changing alphax.txt to remove the new features.

Offline Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49271
  • €440
  • View Inventory
  • Send /Gift
  • Because there are times when people just need a cute puppy  Soft kitty, warm kitty, little ball of fur  A WONDERFUL concept, Unity - & a 1-way trip that cost 400 trillion & 40 yrs.  
  • AC2 is my instrument, my heart, as I play my song.
  • Planet tales writer Smilie Artist Custom Faction Modder AC2 Wiki contributor Downloads Contributor
    • View Profile
    • My Custom Factions
    • Awards
Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #7 on: April 01, 2014, 09:47:43 PM »
Ha.  My response was:
Quote from: Buster's Uncle
I believe Yitzi would take the position that Xfire is available from GOG for just five bucks, and you don't have to play the new factions, but the extra techs and SPs are useful - and SMAC-only would be an incredible amount of extra work for him.  I'll pass along that there was a request for a SMAC-only version, and he'll probably respond that he might consider it when he's completed the SMAX version.

Offline Yitzi

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #8 on: April 01, 2014, 09:57:29 PM »
Porting it over to SMAC would be a huge pain; it'd probably be easier just to add options for anything in SMAX that can't be set to be like SMAC.

Offline Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49271
  • €440
  • View Inventory
  • Send /Gift
  • Because there are times when people just need a cute puppy  Soft kitty, warm kitty, little ball of fur  A WONDERFUL concept, Unity - & a 1-way trip that cost 400 trillion & 40 yrs.  
  • AC2 is my instrument, my heart, as I play my song.
  • Planet tales writer Smilie Artist Custom Faction Modder AC2 Wiki contributor Downloads Contributor
    • View Profile
    • My Custom Factions
    • Awards
Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #9 on: April 01, 2014, 10:06:57 PM »
I believe Kahryl is coming from a simple position the he has SMAC.  You know how resistant us nerdz can be to change.

I'll pass along your response.  There's been a little action at CFC, too, if you feel like checking.

Offline Dio

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #10 on: April 01, 2014, 10:41:00 PM »
There is no SMAC-only version, but I'm pretty sure SMAC can be imitated from SMAX just by changing alphax.txt to remove the new features.

Unfortunately it would not be a perfect imitation because you cannot prevent the new native life from appearing.

Offline Yitzi

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #11 on: April 01, 2014, 10:42:21 PM »
There is no SMAC-only version, but I'm pretty sure SMAC can be imitated from SMAX just by changing alphax.txt to remove the new features.

Unfortunately it would not be a perfect imitation because you cannot prevent the new native life from appearing.

You can cause the new native life to be identical to the old, though.  Well, except for fungal towers...so once I start taking requests disabling fungal towers will be a possible request.

Offline Dio

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #12 on: April 02, 2014, 03:45:55 AM »
{Deleted}
« Last Edit: April 02, 2014, 04:04:42 AM by Dio »

Offline Yitzi

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #13 on: April 02, 2014, 04:01:26 AM »
It works fine for me.  If you attach a save, plus your alphax.txt, that might help figure out what's going on.

Offline Dio

Re: Yitzi's Unofficial SMAX Patch Up to v.2.5b -and Counting
« Reply #14 on: April 02, 2014, 04:04:14 AM »
Never mind. I figured it out.

 

* 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 chief aim of their constitution and government is that, whenever public needs permit, all citizens should be free, so far as possible, to withdraw their time and energy from the service of the body, and devote themselves to the freedom and culture of the mind. For that, they think, is the real happiness of life.
~Sir Thomas More ’Utopia’, Datalinks

* Select your theme

*
Templates: 5: index (default), 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 (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default).
Style sheets: 0: .
Files included: 45 - 1228KB. (show)
Queries used: 39.

[Show Queries]