adding a second barbarian player

Hmm, there's a saying we have in America (maybe just in the English language); when there's a will, there's a way.

I think you can get this done properly TJ. Do it!

EDIT: sorry I'm drunk, I didn't mean to sound commanding. I trust you know what to do in this situation, so just do whatever works out the best and I'll figure out a way to use it in my mod. Remember, all I really ever wanted was to spawn a pirate civ that would make my easy overseas expansion a little less easy. So as long as I can do that I will be happy, and I'm sure everyone else will be happy to. And if they aren't, well, :):):):) 'em.
 
Hmm, there's a saying we have in America (maybe just in the English language); when there's a will, there's a way.

I think you can get this done properly TJ. Do it!

EDIT: sorry I'm drunk, I didn't mean to sound commanding. I trust you know what to do in this situation, so just do whatever works out the best and I'll figure out a way to use it in my mod. Remember, all I really ever wanted was to spawn a pirate civ that would make my easy overseas expansion a little less easy. So as long as I can do that I will be happy, and I'm sure everyone else will be happy to. And if they aren't, well, :):):):) 'em.

I am not sure if this would be what you want - but maybe you could have a pirate civ that is at war with everyone, with SDK changes so that it spawns on the maps with one city in an island in grassland or plains terrain; a good amount of privateers would spawn at the start of the game in that city, with them respawning regularly as the game goes on, until the city is destroyed. The city itself would be reasonably well-guarded with a few land troops, so that it isn't easily destroyed. You could also put it so that more than one city would spawn in a given map (depending on map size?).
 
Remember, all I really ever wanted was to spawn a pirate civ that would make my easy overseas expansion a little less easy.

TheLopez did this a long time ago, it isn't a "Pirate Civ" per se, but it does ramp up the naval spawns for the barbarians. It was updated for 3.19 as a part of MongooseSDK, if you don't use a custom DLL and don't mind using all of the other stuff in it, that should work.
 
Hmm, there's a saying we have in America (maybe just in the English language); when there's a will, there's a way.

That saying is also known in germany ;).

I think you can get this done properly TJ. Do it!

I hope, that i can do it, but the barbarian mechanic seems to be strange :dunno:.

I think that is basically what The_J is doing.

:yup:



No progress today, my father has stolen my 3 hours of modding time with his chainsaw. How i hate this garden :mad:.
 
OMG, weird behaviour.
I've triggered 3 "barbarian civs". Attila was allied with barbar, Washington and De Gaulle were vassals.
Then i killed Attila, so the 2 civs were only vassals of the barbar.
But then, i've seen one AI, who made peace with De Gaulle :eek:.
I've contacted De Gaulle (there's a small bug in my modified scoreboard, so i can see him), and also made peace. That didn't result in peace with the barbarian civ, and also not in peace with Washington :dubious: :hammer2:.
I really wonder, what Firaxis has produced with the barbarian civ. Whatever it is, it's sure really dirty.
 
There are a couple dozen things about the Barbarians which are handled in the EXE as a MAX_CIV_PLAYERS+1 reference. It is quite a PITA, and if they do generate another patch after 3.19, I desperately hope that they clean it up to be a loop over the difference between MAX_CIV_PLAYERS and MAX_PLAYERS so that we can easily add additional Barbarian civilizations (or just move all exe references out to the DLL, but that is hoping a bit much possibly.
 
I don't know if this makes sense or not, because alas I am but a lowly graphics modder, but with mods that have "Minor States/Civs" how is that handled? And could that possibly be a solution to these issues?

I noticed a few had them, like RoM (I think) and RFC. So maybe there is something there that can be utilized?
 
There are a couple dozen things about the Barbarians which are handled in the EXE as a MAX_CIV_PLAYERS+1 reference.

D***, but thanks for the info.
I thought, that the other infos are maybe also in the SDK, but so...

I don't know if this makes sense or not, because alas I am but a lowly graphics modder, but with mods that have "Minor States/Civs" how is that handled? And could that possibly be a solution to these issues?

I noticed a few had them, like RoM (I think) and RFC. So maybe there is something there that can be utilized?

Good point, but sadly the minor status can't be set via python :sad:.
I've found nothing in the API, and after that i've directly looked in the SDK, but that's all hidden.
I guess, there's only a minor SDK modification needed, to make it accessible, but "minor" is very hard, if you can't do it.


But i've seen another command, in CyTeam:
VOID setPermanentWarPeace (TeamType eIndex, BOOL bNewValue)

I guess, this refers to the cannot change war/peace option. I've tested this option (i have never tried it out before), and it seems, that you can't talk to the partner, which you have war with.
I also got the information, that you only get half or the normal war weariness -> this could be a way to bypass the barbarian issue. Not completly (still the residue of ww and the espionage), but to 75% or so.
I don't have enough time today, and probably also not tomorrow, but on sunday i hope, that i can add it :).
 
Okay, works with some issues.
The "barbarian civs" can't contact the other civs, and i made some interface modifications, so that they don't show up in the scoreboard and in the foreign advisor.

Spoiler :

attachment.php

attachment.php




The issues:
- You'll immediatly have "contact" (war declaration) with the new "barbarian" civ, even if it shows up at the other end of the world, which you maybe even don't know.
- You'll get bonuses in diplomacy for fighting together in a war
- The "barb" civ shows up in the military and espionage advisor. I could get rid of the represenation, but that would be a disadvantage for the player. Instead i suggest, that you give a "barb" leader the barbarian skull button and add a "(barbarian)" after the name, so that the player understands, what's going on.

Spoiler :

attachment.php

attachment.php

attachment.php




And something, which has nothing to do with these mentioned things: My city placement algorithm will maybe spread the cities over the whole map, when the civ starts with more than 1 city. That shouldn't be a real problem for a "barb" civ, but for a normal one.


These are imho all minor problems (besides the last one), so i'll probably load it up into the database tomorrow (i want this to be finished).
 

Attachments

  • AttilaDeclaredWar.jpg
    AttilaDeclaredWar.jpg
    131.5 KB · Views: 158
  • ForeignAdvisor.jpg
    ForeignAdvisor.jpg
    89.6 KB · Views: 135
  • Issue1.jpg
    Issue1.jpg
    76.1 KB · Views: 145
  • Issue2.jpg
    Issue2.jpg
    83.1 KB · Views: 169
  • Issue3.jpg
    Issue3.jpg
    93.6 KB · Views: 135
So just a couple of questions/comments:

1) A spawned civ will, potentially, spawn cities across the entire map? This should be okay with me because I intended on using this for the Pirates and Natives. Which really wouldn't be too bad if they showed up everywhere. At least for those civs.

2) They automatically start at war all the time? I don't mind so much for the Barbarians but I was hoping to somehow spawn the natives at peace with everyone, and then the player determines if they want to attack them.

3) At least for my purposes I don't think the diplomatic bonus is too bad. For one it would be a mutual struggle against Pirates (at least in a civ-sense) and as far as the Natives go, it might be a universal concept of a sort of "white man's burden" in that the civs will think they are helping the Natives and thus any action against them would be seen as a good thing. Although in the real world imperialist powers did compete quite violently with one-another.

Despite this it looks pretty cool man. Great work, and thanks again.
 
1) Yes, that'll probably happen.
I'll maybe change this later, or make it optional.

2) Sorry, i was not clear enough.
Only the "barbarian" civs start with war.
If you understood this right, then i'm not sure, what you want.
You want a not diplomatic accessible player, with which you have peace, and you could maybe declare war, if you want, am i right?
I guess, that can't be done just with python.

3) Yes, it makes sense, so it's okay, but it was not intended in the beginning.
 
Sorry, i already wanted to put in in the database, but i found a small bug, and then didn't have the time to fix it (i have to drive 4-5 hours per day now, so i have some time problems with modding).
I hope, i can get it up tomorrow.
 
Back
Top Bottom