Author Topic: EXE patch ideas  (Read 7471 times)

0 Members and 1 Guest are viewing this topic.

Offline dino

EXE patch ideas
« on: June 03, 2017, 01:40:56 PM »
I'd like to start a topic that could contain suggestions / ideas for exe patches ( Ytzi's next patches in practice ).
I'd suggest to limit this thread to ideas that should be reasonably easy to implement given the chellange exe modders face ( assembler :/ ).

Below some of my suggestions:

AI factions
An option that automatically loads a faction from faction_ai.txt instead of faction.txt when faction is computer controlled.
Would make AI buffing with custom factions much less of a hassle

SMAC interface graphics
Make an option that use SMAC start movie and startmenu background also change start menu font color and ingame interface textures.
(I currently use SMAC textures renamed to SMAX variants ( added '_a' ) they work fine. It would make SMAC in SMAX engine conversion complete.

Option to adjust defensive structures defense bonus
Since AI can't into maneuvering in the field, I experiment with equalizing weapon and armor stats, but it makes bases with tachyon field too difficult to conquer for AI.

Option to disable stack splash damage when defender is destroyed in regular attack.
Again, since AI can't into maneuvering in the field,  human player can easily devastate its stack of any size, with a few times smaller stack of rovers.

AI disband or upgrade obsolete designs
Easy to conquer bases chock full of obsolete units eating into AI mineral output are scourge of the AIs. It could be limited to units with defensive plan.
Because obsolete offensive units exploring the map, gathering pods, planet pearls and making contact with other factions, or destroing terrain improvemnts, formers and crawlers are useful.

Along the same lines a routine that would prevent to build more units if unit support exceeds a certain percentage of base mineral output would help a great deal with proper development.

« Last Edit: June 03, 2017, 05:32:47 PM by dino »

Offline MercantileInterest

Re: EXE patch ideas
« Reply #1 on: June 07, 2017, 08:57:26 PM »
Yitzi hasn't been here for a while. He has given much to the cause. *salutes*

Offline gwillybj

Re: EXE patch ideas
« Reply #2 on: June 07, 2017, 09:27:16 PM »
Yitzi ;llap

I've been modifying my alphax.txt for years - all the way back to when I started playing in 2000. Yitzi's terranx.exe patches and alphax.txt additions have helped me in many ways. SMAX has become something I can't put down in favor of anything else. Sometimes I might play a few games of Space Empires IV, or get down to earth and play an all-out wargame in The Operational Art of War III, but SMAX always pulls me back.
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 Yitzi

Re: EXE patch ideas
« Reply #3 on: September 10, 2017, 02:02:24 AM »
Yitzi hasn't been here for a while. He has given much to the cause. *salutes*

Yeah, the job search has taken a lot of my energy, particularly when I wasn't sure what I wanted to do.  Now that I've decided against actuary and in favor of software engineering, I'll probably be getting back to at least some extent.

Online Buster's Uncle

  • In Buster's Orbit, I
  • Ascend
  • *
  • Posts: 49289
  • €570
  • 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: EXE patch ideas
« Reply #4 on: September 10, 2017, 02:51:48 AM »
[shrugs]  I've come to be quite fond of you just for you, independent of your monolithic value to the community.  I hope it works out that you can come around more.

Offline PvtHudson

Re: EXE patch ideas
« Reply #5 on: September 25, 2017, 10:37:48 AM »
An option that forbids planting forest in arid tile, as well as auto-spreading of forest into arid tile. Another level of the same option could kill off forest if tile beneath it becomes arid. Can make terraforming more diverse for those who used to forest "from sea to sea". Can also give a thrill to those who happen to planetfall at Upland Wastes, Uranium Flats, or Unity Wreckage. By the way: am I the only one who plays with 1-2-0 forests, and finds them still almost OP?
Another suggestion I saw somewhere on the forum: transfer "Prevent airdrops" function from Aerospace Complex to Tachyon Field. Loads off part of value from over-useful Aerospace Complex, and at the same time makes airdrop prevention map more observable.
become one with all the people

Offline PvtHudson

Re: EXE patch ideas
« Reply #6 on: October 04, 2017, 10:38:33 AM »
An option that lets everyone to decide for themselves: is Probe Team ability to provide circumvention of Zones of Control to regular units a bug or feature? I.e., when the option is set, regular unit trying to move to tile with friendly Probe Team (and without friendly regular units) is not exempted from ZoC check. Sorry if I missed that already has been implemented.
Also I'd like to once again raise the question of non-finishing airstrikes. I'm afraid, this feature as described in http://alphacentauri2.info/index.php?topic=17418.0 has been over-engineered and is therefore hard to implement. To me, it is quite sufficient in its original edit:
Attack by air unit cannot reduce land unit's health below 10% outdoor, 50% in base or bunker. Ideally, collateral damage to population from Nerve Gas Pods should still apply. Probe teams can be obliterated, inglourious basterds they are! And probably SAM land units must fight to the death.
become one with all the people

Offline PvtHudson

Re: EXE patch ideas
« Reply #7 on: November 13, 2017, 08:36:04 AM »
I wonder, how an option 'Treat use of natives against human units and, especially, bases, as atrocity' could change the game? Probably, good for roleplaying, but bad for gameplay. And not so easy to implement, as it involves changes to AI code.
become one with all the people

Offline bvanevery

  • Emperor of the Tanks
  • Thinker
  • *
  • Posts: 6370
  • €659
  • View Inventory
  • Send /Gift
  • Allows access to AC2's quiz & chess sections for 144 hours from time of use.  You can't do without Leadship  Must. have. caffeine. -Ahhhhh; good.  Premium environmentally-responsible coffee, grown with love and care by Gaian experts.  
  • Planning for the next 20 years of SMACX.
  • AC2 Hall Of Fame AC Text modder Author of at least one AAR
    • View Profile
    • Awards
Re: EXE patch ideas
« Reply #8 on: February 22, 2018, 04:58:21 PM »
Yeah, the job search has taken a lot of my energy, particularly when I wasn't sure what I wanted to do.  Now that I've decided against actuary and in favor of software engineering, I'll probably be getting back to at least some extent.

It is unfortunately the life cycle of any kind of volunteer software projects, whether open source coding or making content for games or patches or what have you.  You have time, until finally in Life you don't.  You get real world job pressure.  I guarantee you you're going to spend time on the real world job pressure, first and foremost before all else.  Then at some point a lot of people meet Significant Others.  That takes more time.  A fair number of people get married, many of those have children.  More time.

Fighting battles with ancient game binaries is frankly not a sustainable practice in such circumstances.  Even if you had the full source code, you can easily come to the point of saying, uuuh, all this tweaking and fiddling is not worth it.

Example: we've had FreeCiv for quite a long time.  The code was a mess, and I find myself reluctant to discover whether anything has changed in that regard.  Also the code is GPLed, which in practice makes it commercially worthless.  Which means pouring buckets of labor into it to make $0 is pretty much a non-starter, at least for someone who's been at Life long enough to know what careers require.

Past a certain point, pouring blood on the table for a game is only worth it, if one makes enough money to pay for a reasonable quality of life.  That's the reality.  When people are younger, they spend a lot more hours of their lives on their "enthusiasms".  Then eventually the harsh world makes them realize that they have to make money somehow.  Or else live homeless out of a car and forego a lot of things that other people have ready access to.  I've been doing the latter for 8 years now.  Even that gets old and frankly I wouldn't mind "graduating" from it now.  But I will only do it on my own terms, I'm not going back to "the traditional grind".

I would encourage you, as someone who has put a lot of time and energy into this genre of game, to think seriously about making a commercial effort of some kind.  I do believe this genre isn't "done yet" and that there are things SMAC started to achieve, that other games haven't.  That's why I'm still playing it almost 20 years later, warts and all.

For my part, in almost 20 years I've never come up with a solution for "various difficult SMAC-like problems".  If I had, I would have kicked that game out the door.  I may yet realize something I previously have not.  One thing I think has really held me up, is how much I basically hate the programming tools of the game industry.  They're primitive.  I've spent a lot of time working on better tools rather than better games, and honestly that hasn't proven to be any easier.

Offline bvanevery

  • Emperor of the Tanks
  • Thinker
  • *
  • Posts: 6370
  • €659
  • View Inventory
  • Send /Gift
  • Allows access to AC2's quiz & chess sections for 144 hours from time of use.  You can't do without Leadship  Must. have. caffeine. -Ahhhhh; good.  Premium environmentally-responsible coffee, grown with love and care by Gaian experts.  
  • Planning for the next 20 years of SMACX.
  • AC2 Hall Of Fame AC Text modder Author of at least one AAR
    • View Profile
    • Awards
Re: EXE patch ideas
« Reply #9 on: May 19, 2018, 07:07:31 PM »
Dino, I am doing preliminary investigation to decide how much work is or isn't involved with .exe AI modding.  I definitely have my own priorities, as a game designer, and a person conscious of real world career-killing time expenditures.  The main thing that concerns me right now, is how easy or difficult it is for random ASM programmers such as myself, to show up in this community, and actually get started with something useful for patching.  I have no decompilation and reverse-engineering experience.  That doesn't mean I can't learn, but I'd like it to be quick, not an effort months in the making.  The key infrastructure I think is needed, is a symbol table with function entry points, so that I can just get started recoding things instead of scratching my head where to even begin.  I am examining various archives, threads, and repositories to see what's already been done about such things to date.

AI factions
An option that automatically loads a faction from faction_ai.txt instead of faction.txt when faction is computer controlled.
Would make AI buffing with custom factions much less of a hassle

Although it's not a bad idea, strategically, I do not value this.  I just spent 1 man month working on my "AI Growth Mod", which is essentially a kind of AI buffing, based on some poster's previous experience with Explore settings.  It's at release 1.1, "stable", bugs and oversights fixed.  Some people have downloaded it; nobody has commented upon it.  I bet nobody's really tested it yet.  I haven't even had time to field test it for full games yet, only to ensure that opening games aren't completely stupid.  I think getting people to even try a mod, in an organized, packaged, promoted way, is a far more pressing problem than this kind of modding "convenience".  That is to say, you can make any "monster" faction you want, but if you can't get people to actually play it, it doesn't even matter.  You will have simply wasted all your hard work.  Until there is better modding deployment infrastructure in general, I don't see much point in this specific programmer-centric convenience.

Quote
SMAC interface graphics

To me this is cosmetic and not worth spending valuable, limited .exe modder resources on.  Of course, anybody who actually insists on doing anything in particular, will run with it and have whatever success they have.  For coordinated and sustained effort though, I would caution against thoughts like "gee I could spend my time that" unless it's really really important to you.  Typical life cycle is you throw your time into something that, you find it takes weeks instead of days for fully loaded development and debugging cost, you get bored, now you don't have energy to do something more important.

Quote
Option to adjust defensive structures defense bonus
Since AI can't into maneuvering in the field, I experiment with equalizing weapon and armor stats, but it makes bases with tachyon field too difficult to conquer for AI.

I'm surprised if you can't already solve this at the modding level by rebalancing weapon and armor stats.  Also alphax.txt already has this line:
Quote
25,      ; Combat % -> intrinsic base defense
which in Yitzi patch is annotated slightly differently:
Quote
25,      ; Combat % -> intrinsic base defense {-100 to 32767}
Does this solve your problem?  Anyways if it doesn't, I caution about spending a lot of work on such a thing.  AI can't really conquer any of my bases at all, let alone with a Tachyon field, a pretty late game concern.  There are bigger fish to fry in the AI competence dept.

Quote
Option to disable stack splash damage when defender is destroyed in regular attack.
Again, since AI can't into maneuvering in the field,  human player can easily devastate its stack of any size, with a few times smaller stack of rovers.

Freeciv had the option to change this and I've played both ways.  In the Freeciv case, it would then tend to move around with Stacks of Doom, like 30..50 units you can't do anything about except kill them all one by one.  Yes you have upgraded the challenge, but you've also required a lot more mouseclicks to play the game.  This isn't necessarily fun, and for a single player fighting an AI, I'm not personally convinced it's worth concentrating on such features.

Also there's the problem that when you change game behavior, the AI often doesn't know or understand the new behavior.  This can have unanticipated consequences.  Freeciv is an open source GPLed project so maybe someone wrote some code sometime to take advantage of the change in behavior.  SMAC is unlikely to get an update that will inform the AI of how to use the behavior.

Quote
AI disband or upgrade obsolete designs
Easy to conquer bases chock full of obsolete units eating into AI mineral output are scourge of the AIs. It could be limited to units with defensive plan.
Because obsolete offensive units exploring the map, gathering pods, planet pearls and making contact with other factions, or destroing terrain improvemnts, formers and crawlers are useful.
Along the same lines a routine that would prevent to build more units if unit support exceeds a certain percentage of base mineral output would help a great deal with proper development.

Building way too many defensive units and achieving "vapor lock", where a city can't build anything more, is the AI's biggest problem IMO.  I think you make a good suggestion here to do something with existing old units.  Sitting around doing nothing is incredibly wasteful.  I've also thought that the AI should throttle support to some minimum amount of minerals production.  I do this in my own play: I typically won't take on new support burdens if it would push my city below 5 minerals output.  This depends on the stage of the game I'm at, it's contextual.  I'm not sure how much assessment would be necessary to set a minimum minerals for any given city at any given time.  But if a city is down to No Minerals it's a problem, and the AI should be intervening in the production and support somehow.

So of your list, there's really only this 1 thing that I think really needs and deserves the work.  I don't know if you've actually worked on any of this since your original post 11.5 months ago.  If you have, we'd like to know what you actually did.  If you haven't, then please take my input seriously about deciding where to spend the time.  I see a pattern in the .exe modding archives of fixing things that aren't really all that important.  Anything like that burns time and concentration, meaning other things will not get done.

Offline PvtHudson

Re: EXE patch ideas
« Reply #10 on: August 13, 2018, 10:16:35 AM »
Why are airdrops to sea bases forbidden? If not declare this a bug outright, it should be at least option-controlled. Maybe 3-level option: forbid, allow to my and allied bases, allow to empty enemy bases.
become one with all the people

Offline bvanevery

  • Emperor of the Tanks
  • Thinker
  • *
  • Posts: 6370
  • €659
  • View Inventory
  • Send /Gift
  • Allows access to AC2's quiz & chess sections for 144 hours from time of use.  You can't do without Leadship  Must. have. caffeine. -Ahhhhh; good.  Premium environmentally-responsible coffee, grown with love and care by Gaian experts.  
  • Planning for the next 20 years of SMACX.
  • AC2 Hall Of Fame AC Text modder Author of at least one AAR
    • View Profile
    • Awards
Re: EXE patch ideas
« Reply #11 on: August 13, 2018, 03:15:10 PM »
Dropping into the sea is forbidden.  Whether there's a base is incidental.  I agree that the rule is arbitrary.  However I think a unit should be ocean capable if it's going to drop in the sea.  Otherwise it should be allowed, and the unit should drown.  In my mod, ships and air units can have drop pods.  An interesting tactic is to land on any coast and scoot into the water.  So, even if you can't do everything, you could play my mod.  Or just change the 2 bits in alphax.txt that control this.


Offline PvtHudson

Re: EXE patch ideas
« Reply #12 on: September 09, 2018, 07:40:56 AM »
Is there any workaround about annoying AI behavior when they ignore or decline your attempts to initiate diplomatic negotiations, even if you aren't warring? I had accrued whole lot of captured bases of all sizes, and no one of remaining AIs answers my ringing so that I could shove off this treasure/burden on them! A three-level option is begging for implementation: 1) as it is now; 2) don't ignore if not in vendetta; 3) don't ignore at all. Possibly split 3) in two about being atrocity victim.
become one with all the people

Offline bvanevery

  • Emperor of the Tanks
  • Thinker
  • *
  • Posts: 6370
  • €659
  • View Inventory
  • Send /Gift
  • Allows access to AC2's quiz & chess sections for 144 hours from time of use.  You can't do without Leadship  Must. have. caffeine. -Ahhhhh; good.  Premium environmentally-responsible coffee, grown with love and care by Gaian experts.  
  • Planning for the next 20 years of SMACX.
  • AC2 Hall Of Fame AC Text modder Author of at least one AAR
    • View Profile
    • Awards
Re: EXE patch ideas
« Reply #13 on: September 09, 2018, 10:00:42 PM »
Refusing to talk to you isn't a bug, it's by design.  It means they don't like you and don't want to deal with you.  They don't want you to initiate conversations that can have negative consequences for them, like you threatening them, or demanding money from them.  Imagine as if you're their landlord, their rent is late, and they'd rather not pay you.  Or you're some bum that wants to borrow money or beg techs from them, and they don't want to be chiseled.  Or you're the extreme opposite from their political party, they have no respect for you, and don't wish to give you the time of day.

Workaround: walk or a sail a probe team next to their base.  That usually gets their attention.  They'll suddenly start talking to you, often to sign a Truce or Treaty.  That way, if you do a probe team action on them after just signing that, they will have proof that you're untrustworthy and cause for a vendetta.  Assuming your probe team is nothing special and is detected.

Bringing any of your units in contact with any of their units, may also get a response, depending on circumstances.  This is often a good reason to avoid getting anywhere near an AI faction, say that you're on pins and needles with.  If it's not in your interest to have a war right now, why give them an excuse to open their mouths and start one?

« Last Edit: September 10, 2018, 12:40:39 AM by bvanevery »

Offline Dewbacca

Re: EXE patch ideas
« Reply #14 on: September 10, 2018, 06:36:14 PM »
I'd like to see a .txt file govern what pops from Unity/ Goody Pods.

Binary would be fine, even better would be a -1, 0, 1 option allowing various options to be off (-1), infrequent (0), or frequent (1).

I am so freaking sick of earthquakes and fungal blooms... or unity foils.
So tell me again, where are we going, and why are we in a handbasket?

 

* 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

Superior training and superior weaponry have, when taken together, a geometric effect on overall military strength. Well-trained, well-equipped troops can stand up to many more times their lesser brethren than linear arithmetic would seem to indicate.
~ Spartan Battle Manual

* 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: 47 - 1280KB. (show)
Queries used: 49.

[Show Queries]