Alpha Centauri 2

Sid Meier's Alpha Centauri & Alien Crossfire => Modding => Bug/Patch Discussion => Topic started by: Dio on October 09, 2013, 07:05:08 PM

Title: Trade unit prototypes, trade world maps and give units to another player.
Post by: Dio on October 09, 2013, 07:05:08 PM
Some time ago I was looking in the code to see if the options to trade unit prototypes and world maps not only existed as a seperate option in the script.txt but also in the code. In addition, I found the give unit option in the script.txt file. So I found the  trade prototypes exactly under the label "PROTO". I was wondering if it is possible to add those as selectable options to the diplomatic proposal menu?
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 10, 2013, 09:14:13 PM
May be, but dealing with menus tends to be somewhat of a pain.  I also don't think allowing unit prototypes to be traded is such a good idea in terms of gameplay.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 14, 2013, 06:17:48 PM
Wow, that's interesting. In my opinion, trading prototypes would be in fact an excellent addition to the current, not-that-extensive-after-ll diplomacy. What is important is that it shouldn't be prone to probing, though (unless only as a risky mission).

I don't understand about the rest, as you can already trade world maps and give units as it is. Granted, the first one can't be done with AI unless in a specific situation when either party runs out of techs to sell, and the latter one requires the unit in question to be in the givee's territory. Can these conditions be changed in any way?

But yeah, I heard that changes to UI are troublesome and probably won't make top priority for anyone.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 14, 2013, 06:25:04 PM
Wow, that's interesting. In my opinion, trading prototypes would be in fact an excellent addition to the current, not-that-extensive-after-ll diplomacy. What is important is that it shouldn't be prone to probing, though (unless only as a risky mission).

The problem is that it allows you to get the full benefits of a tech without actually learning that tech (and thus slows you down.)

It'd also be pretty much impossible to have a separate "prototypes known" feature...

Quote
I don't understand about the rest, as you can already trade world maps and give units as it is. Granted, the first one can't be done with AI unless in a specific situation when either party runs out of techs to sell, and the latter one requires the unit in question to be in the givee's territory. Can these conditions be changed in any way?

Those could, but that would require dealing with menus.[/quote]
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 14, 2013, 06:39:02 PM
The problem is that it allows you to get the full benefits of a tech without actually learning that tech (and thus slows you down.)

If it is only tradable and never stealable, then any imbalance issues are the seller's headache. And I imagine it would invite certain sneak attacks, where the victim doesn't see it coming as you don't have the preqs (which the victim can see if she has the tech in question). Yeah, definitely a nice boost to diplomacy and to war-oriented factions. And as for imba, if that's your concern - you can already give away all your techs, all EC and the world map with one click if you want to. I don't believe the above would break anything here.

Quote
It'd also be pretty much impossible to have a separate "prototypes known" feature...

So then, there is not much to talk about in the first place, is it? How did they expect to work this option in without the proper design?
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Dio on October 14, 2013, 07:06:05 PM
The problem is that it allows you to get the full benefits of a tech without actually learning that tech (and thus slows you down.)

If it is only tradable and never stealable, then any imbalance issues are the seller's headache. And I imagine it would invite certain sneak attacks, where the victim doesn't see it coming as you don't have the preqs (which the victim can see if she has the tech in question). Yeah, definitely a nice boost to diplomacy and to war-oriented factions. And as for imba, if that's your concern - you can already give away all your techs, all EC and the world map with one click if you want to. I don't believe the above would break anything here.

Quote
It'd also be pretty much impossible to have a separate "prototypes known" feature...

So then, there is not much to talk about in the first place, is it? How did they expect to work this option in without the proper design?
Regarding the give units options and trade world map diplomacy options, there is no diplomatic option currently enabled that lets a non-AI ask a factions world map and it happens automatically when in a pact. As for giving units to an another faction, I am fairly certain that only AI controlled factions could give units to a another faction in single player.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 14, 2013, 07:39:41 PM
Regarding the give units options and trade world map diplomacy options, there is no diplomatic option currently enabled that lets a non-AI ask a factions world map and it happens automatically when in a pact. As for giving units to an another faction, I am fairly certain that only AI controlled factions could give units to a another faction in single player.

You certainly can give units to AI in single player, just move a unit into their territory and hit Ctrl+Shift+U. In the case of mind worms, you even get the choice to either transfer it or 'release it into the wild'.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 14, 2013, 07:49:16 PM
If it is only tradable and never stealable, then any imbalance issues are the seller's headache.

No, because there might be a third party.

Quote
So then, there is not much to talk about in the first place, is it? How did they expect to work this option in without the proper design?

Well, either I'm mistaken about the design (it's possible, I don't remember if I examined it thoroughly, or only for facilities), or the script.txt is from an earlier plan where it would be possible, that they ended up not making.  Dio, where in the code did you find whatever it is you found?
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 14, 2013, 08:01:52 PM
No, because there might be a third party.

As I said above, this simply doesn't happen in MP. People almost never trade not only D:AP, but even IA. World map is almost never on the table. I would think twice even before selling Doc:Flex, and just recently I refused to sell Doc:Mob to a player, fearing it would give him too much in terms of tactical advantage, and it's a freaking tier1 tech. So I'm sure trading prototypes would be a very rare deal requiring a lot of investment in mutual trust and with a potential to backfire against the seller if done without caution. Long story short - great fun, will make for a good story every now and then, but with no chance to become OP, or even that common in the first place. I say bring it on if you can.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 14, 2013, 08:12:20 PM
Addendum: it is worth remembering that there is no CO-OP victory in SMAC, which I think is the main reason why a full symbiosis almost never happens in MP. If anything, people should have more incentives to trade. For example, I'd welcome giving loans and stuff like that.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 14, 2013, 08:16:56 PM
As I said above, this simply doesn't happen in MP. People almost never trade not only D:AP, but even IA. World map is almost never on the table. I would think twice even before selling Doc:Flex, and just recently I refused to sell Doc:Mob to a player, fearing it would give him too much in terms of tactical advantage, and it's a freaking tier1 tech. So I'm sure trading prototypes would be a very rare deal requiring a lot of investment in mutual trust and with a potential to backfire against the seller if done without caution. Long story short - great fun, will make for a good story every now and then, but with no chance to become OP, or even that common in the first place. I say bring it on if you can.

Or they're in a pact and going for a cooperative victory...

Addendum: it is worth remembering that there is no CO-OP victory in SMAC.

What are you talking about?  One of the options is to enable cooperative victory, and I believe it is on by default.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Dio on October 14, 2013, 11:53:40 PM
@Yitzi, here are the of the addresses for the following options as far as I know:  trade prototype, trade world map and give unit (other than the referenced textstrings that say "sending trade map"). The address for trading prototypes is 0053A2D4. The addresses for trading world maps are as followed and labeled: Reject trademaps: 00545DCC and 054F5D, TradeMaps: 00545DEF and 0054F5F4. The addresses for giving units are catergorized by whether they are combat, defensive, native or simply a unit. The addresses are 004CF2VB8, 004CF2CE, 004CF2EB, 004CF34D and 004CF363.

P.S.: If you have a need for some more references, I can give them to you but I currently have my hands full with making art. This means I will be unable to help implement them in the near future but I thought it would be a good idea to bring these potential options to the attention of someone who is more qualified to deal with them.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 15, 2013, 03:14:11 AM
@Yitzi, here are the of the addresses for the following options as far as I know:  trade prototype, trade world map and give unit (other than the referenced textstrings that say "sending trade map"). The address for trading prototypes is 0053A2D4. The addresses for trading world maps are as followed and labeled: Reject trademaps: 00545DCC and 054F5D, TradeMaps: 00545DEF and 0054F5F4. The addresses for giving units are catergorized by whether they are combat, defensive, native or simply a unit. The addresses are 004CF2VB8, 004CF2CE, 004CF2EB, 004CF34D and 004CF363.

P.S.: If you have a need for some more references, I can give them to you but I currently have my hands full with making art. This means I will be unable to help implement them in the near future but I thought it would be a good idea to bring these potential options to the attention of someone who is more qualified to deal with them.

Yeah, it does seem that there's the possibility of sharing prototypes.

I realized what my mistake was: You said "unit prototypes" and I thought "the ability to use a feature you don't have the tech for yet".  This is really just giving the design and prototyping it; it doesn't let you use any features in other designs (unless you reverse-engineer, but I consider that an exploit.)

It probably could be implemented, but it would be a substantial job, so unless there's large demand for it it'll probably be delayed until after other things.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 15, 2013, 05:48:54 PM
What are you talking about?  One of the options is to enable cooperative victory, and I believe it is on by default.

Why do you need to ask? I'm talking, as always, about practice. I've never won or lost by coop, never accepted to win or lose by it, never heard anyone pondering it, offering it, losing to it, complaining about it, even as much as discussing it. 4-player games are the standard, some are 3-player; joint victory of 2 players under such conditions, in 99.9% cases, would be the lamest thing to do this side of cheating. Why, does your MP experience say otherwise?
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 15, 2013, 06:59:47 PM
Ah, I didn't realize you were talking about practice; "no co-op victory in SMAC" sounds like it is not possible, not like it's too difficult to get enough players in a game* to make it an interesting feature.  (Also, it would be less lame if it were, say, me and someone else who's not very good at the game teaming up against Earthmichael...in a good rankings system, co-ops would suffer an appropriate penalty to the rank gained by winning and would thereby have a cost and be less lame.)


*Because I presume that 7 players would be done if enough people could be gotten, and gotten to play the game through, to make it work; 7-player seems it'll be a far richer game than 4-player.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kataphraktoi on October 18, 2013, 03:53:07 PM
Is it even physically possible to win a multiplayer game? Recalling back to the old rule about not taking a players last base, but instead posting the pic proving you could take it, and then that player must destroy the base and save and exit on to the next player to continue the game. Because if you actually killed a player on your turn, it is or was impossible to continue playing.

Most games i recall ending when victory was clearly inevitable and the towel was thrown in by the remaining players. The only game i remember winning was actually BE2 pbem where i launched a orbital drop attack using the graviton theory technology(to avoid my opponent knowing i had constructed the orbital space elevator) and took 1\3 of his bases in a single turn this way...he never posted again in the thread or answered pms\emails so i guess i won  :P Although it doesnt count for much, as i replaced in.

In summary i would say some corny BS like winning and losing has no meaning and all that matters is the process of playing  ;lol
In order for a ELO(or any ranking system) to have much relevance, requires a fair number of results, and the glacial rate of PBEM makes finishing games rare


On the topic of trading prototypes, in the ACDG2 the drones swapped control of a plasma infantry unit for one turn to the hive to give them 3 defense ability, but maybe they were allied at that point and not trading.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 18, 2013, 04:27:24 PM
Is it even physically possible to win a multiplayer game? Recalling back to the old rule about not taking a players last base, but instead posting the pic proving you could take it, and then that player must destroy the base and save and exit on to the next player to continue the game. Because if you actually killed a player on your turn, it is or was impossible to continue playing.

If you can find me a link, perhaps I can investigate and see what's going on there and fix the bug...

Quote
to avoid my opponent knowing i had constructed the orbital space elevator

How could he not know you had the Space Elevator?  It's a project; who has it is publicly visible.

Quote
In summary i would say some corny BS like winning and losing has no meaning and all that matters is the process of playing

But if you're not playing to win, it's not really the same game.

Quote
In order for a ELO(or any ranking system) to have much relevance, requires a fair number of results, and the glacial rate of PBEM makes finishing games rare

I see no reason PBEM needs to be so slow...a 24-hour posting time with limited pre-arranged suspensions (for when you won't be able to do it for more than 24 hours in a row) would make it go at a halfway decent pace, and there's no rule that you can have only one game going at a time.

Also, ranking systems should be a decent approximation fairly quickly (especially if you can get a ranking advantage by taking a handicap), even if they'll take a long time to be really good.

Quote
On the topic of trading prototypes, in the ACDG2 the drones swapped control of a plasma infantry unit for one turn to the hive to give them 3 defense ability, but maybe they were allied at that point and not trading.

Yeah, you can always give a unit instead of giving a prototype.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kirov on October 18, 2013, 05:38:29 PM
My point about the COOP victory was only about diplomacy and trade. What I meant is that in SMAC, you don't get to see any perma-alliances along the lines of: "I give you everything I have, you give me everything you have, we roll the others over and call it a day". No, the absolute best-case scenario for you is "we share some resources to eliminate everyone else, then we fight it out between the two of us". This is actually completely different dynamics, as you may still get backstabbed by your partner at any moment. This in turn makes you cautious and prevents any "we fight as one" scenarios. You are wary with the stuff you trade away, especially of strategic importance, and the risk of any exchange becoming OP is driven down to zero, by the magic of your common sense.

If anything, SMAC players should be encouraged to talk, negotiate and trade more. Only in exceptional cases I see any intensive, vibrating, anything-can-happen diplomacy. Part of it is because players are busy with work and child rearing, but some of it is because in certain periods of game there's not that much interesting stuff to trade in. Hence, I fully support any additional diplomatic option, literally anything which gives you more chips at the table, as long as it's not game-breaking.

And if prototype trading can be considered OP and banned, then giving 5000 EC should be banned as well, and I don't see anyone voting for that. The entire point of proto trade is not to avoid higher tech costs, there is actually much more to that. In the MP game, after you contacted someone (and I assume you did before launching an assault), you can always check if they have the same techs you have. Click on the option 'Share techs' and those you both have are marked with '(already has)'. Again, this takes place even if you don't infiltrate that player. So let's say you play Zak and has Sparta as a neighbour. For you, it's enough to research AP and NLM (at much lower cost than Sparta) and watch when/if Sparta gets the same tech. Once they do get NLM, voila! High time to prototype yours and get ready for defence. But if you see that Sparta researched IndBase and then InfNet (you have both already, don't you?), then you can take a deep breath and relax. You're completely safe.

Now, just imagine that Sparta met somebody else and took the 4-1-2 prototype, soon pouring rovers in through the borders of an unsuspecting Zak... My God, yes, I'm all for that. Please make it an option, guys, or at least send it to somebody who knows how to implement it!!! The game can only benefit from that.

Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 18, 2013, 06:54:12 PM
Ok, it seems to be popular enough that I'll accept it as a vote-on for a later project.  It's not making the short list, though.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kataphraktoi on October 18, 2013, 07:27:31 PM
Quote
If you can find me a link, perhaps I can investigate and see what's going on there and fix the bug...

From every PBEM ever? It should be easy to verify from a 4 player pbem game that killing one of the other players then trying to continue, will eventually result in a turn being created to send to that deceased player, but he cannot play and continue the turn, being dead. Thats all from memory though.

Edit:I tried it out to see what would happen with a game i recently made for Kirov vs Tras PBEM. I recreated the scenario with a few changes, put mk3 ogres near player2s start position and played both as Kirov\Tras and added one of the AI as a third human. After playing a few turns forward, i advanced and destroyed the believers and got the usual eradication message, a score and map recap, and got kicked back to the main menu! And the third player, who could have been a human in a PBEM, would not be given a savegame to continue playing with because i simply wasnt presented with the choice to make a save game-as if i just won it all. Using scient patch.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Kataphraktoi on October 18, 2013, 07:50:53 PM
I was going to add on that i have never managed to kill a human in PBEM, but then i remembered this old game from apolyton where i killed 3 people in a 4 player game;Fast and Furious PBEM (http://apolyton.net/showthread.php/171219-PBEM-Fast-and-furious)
You can see the process we used in that game of posting a screenshot to prove the defeat of a human.
Title: Re: Trade unit prototypes, trade world maps and give units to another player.
Post by: Yitzi on October 18, 2013, 09:56:42 PM
It shouldn't be too hard to test and hunt down the bug and fix it; I probably won't do it in 2.4 (as I want to get that out sooner because it includes a very important bugfix), but it'll probably be done in 2.5.
Templates: 1: Printpage (default).
Sub templates: 4: init, print_above, main, print_below.
Language files: 4: index+Modifications.english (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default).
Style sheets: 0: .
Files included: 31 - 840KB. (show)
Queries used: 15.

[Show Queries]