Author Topic: making faction specific techs  (Read 932 times)

0 Members and 1 Guest are viewing this topic.

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
making faction specific techs
« on: July 17, 2019, 01:30:07 AM »
It's possible for a specific faction to have a tech that nobody else has, and that won't be in the game if that faction isn't in the game.  Proof of concept is provided with Progenitor Psych. 

prereqs are None, FldMod
prereqs are None, FldMod

The general form is to set the 1st prereq of a tech to "None", and the 2nd prereq to any valid tech.  This will cause the tech to be displayed correctly in the Datalinks.  If you don't do it this way, for instance if you use a tech that's marked Deactivate like the "User Tech", you'll get a box called "Not Available" as a prereq in the Datalinks.  Aside from looking stupid, if the player clicks on that box, the game will crash.  So use the formula I came up with!

Alien factions start the game with Progenitor Psych and Field Modulation.  These techs can be renamed, and they can be made to provide different abilities.  However as long as these techs are in the game, the Aliens will get them at the start of the game.  This behavior is hardwired into the binary, and .txt modding can't change it.

So what is the play mechanical value of this?  Other factions have to get the tech from the faction(s) that start with it.  They could trade for it, or steal it, but they can't research it.  And if the owning factions aren't in the game, then the tech can't be had at all.  In the case of something like Progenitor Psych, that's a good thing, as factions won't be distracted by researching a pointless tech.  Assuming one moves Aquafarm to somewhere else like I did, then the only value of the tech is enabling communication with the Progenitors.

This tech could be used to provide predefined units that are faction specific.  It could also be used to restrict facilities on the basis of whether a faction is in the game or not, i.e. no Network Nodes unless the University is playing.  The advisability of any such decision, is left up to the creativity of modders.

I thought it might be good to make players not have to learn the stupid Progenitor Psych, as it waters down one's research in the early game.  That said, human players may want to communicate with Aliens, and now they'll have to work harder to do it.  We shall see whether that's ok, desirable, or malfeatured.

Ah shoot this might not work the way I said.  I forgot to actually test whether a human faction can research Progenitor Psych or not.  Drat.

Damn, doesn't work the way I thought it did.  With no Aliens in the game, the Pirates did in fact learn Progenitor Psych.  My formula doesn't show any dependencies in the Datalinks, but the Field Modulation dependency is nevertheless there.  Back to the drawing board.
« Last Edit: July 17, 2019, 02:48:29 AM by bvanevery »

Offline PvtHudson

Re: making faction specific techs
« Reply #1 on: July 19, 2019, 10:31:27 AM »
Correct way to alienate progenitor techs is described in http://alphacentauri2.info/index.php?topic=21039.0 (scroll to 'Alien tech:' in bold).
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: making faction specific techs
« Reply #2 on: July 19, 2019, 02:24:54 PM »
 Unfortunately the 'correct' way introduces a game crashing bug, as I reported earlier.  Here is an example of how to trigger it.  I made User Technology a prereq of Information Networks.  I did not change User Technology at all; it has prereqs of Disable and Disable.  When you hit F2, User Technology will be displayed as a prereq of Information Networks.  If you click on User Technology, say out of reasonable curiosity, you will see the following display:

clicking on NOT AVAILABLE crashes game
clicking on NOT AVAILABLE crashes game

NOT AVAILABLE is death.  If you want to 'correctly' alienate the techs from the tree, you have to tell your players not to click on this.  And if you don't think you can do that in the real world, then you'll have to deal with the consequences of your mod crashing the game.  Players might ask "What happened?" somewhere, or they might just shrug and uninstall your mod as a buggy piece of crap.  I don't want the latter scenario to happen, and a faction specific tech isn't enough of an advantage for me to take the risk as a modder.

Now, maybe if someone makes faction specific techs the whole point of their mod, then maybe one would be willing to put up with this game crasher.  That's a pretty hefty formal design exercise though, as any ability or facility made faction specific, isn't available in the game at all, if that faction isn't in the game.


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: making faction specific techs
« Reply #3 on: July 26, 2019, 05:00:24 AM »
I've realized it can be done in a non-buggy way.  It would have to be a late game tech, and a "leaf" dead end from some other tech.  Only the faction you want to have it, gets it at the start of the game.  This approach might have some skewing effects on some kind of tech cost mechanism though.  Like everyone else is working on Tier 1 techs and now you've got a Tier 10 tech, might change some cost formula somewhere, due to the average having such a high tech in it.  It may or may not be consequence free, but it wouldn't crash anything.

 

* 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

It is not uncommon to see patients undergo permanent psychological trauma in the presence of the Sphere, before the nerve stapler has even been strapped into position. Its effect on the general consciousness of the culture is profound: husbands have seen wives go inside, and mothers their children. Dr. Xynan left the surface of the sphere semitranslucent for a reason. You can hear them in there.. you can see them. It is a thing of terrible beauty.
~Baron Klim 'The Music of the Spheres'

* 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: 5: index+Modifications.english (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default), Aeva.english (default).
Style sheets: 0: .
Files included: 50 - 1568KB. (show)
Queries used: 36.

[Show Queries]