Home » MODDING HQ 1.13 » Flugente's Magika Workshop » New feature: easily placed extra civilians
New feature: easily placed extra civilians[message #344843] Sun, 03 April 2016 17:20 Go to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
At least in the stock 1.13 maps, sectors are very empty and devoid of civilians. They also don't have to say that much.
This is rather sad. Unfortunately, adding civilians to maps requires the use of the map editor. For someone not used to the editor, this is not a simple task.

For this reason, I've decided to add a new functionality that allows us to create civilians on any map we want much more easily. And while I am known to rant against the usage of LUA more than often (jsut ask the guy's in IRC ;) ), in this case, LUA scripts are the best place to do this (xml being to inflexible in this case).

There is now a new function used in Scripts/strategicmap.lua in HandleSectorTacticalEntry():
...
-- Flugente: if this sector has not yet been liberated by the player, there might be some civilian enemy personnel here
-- the idea is that these people are government employed, and won't stay around once you take the sector
-- parameters of CreateCivilian:
-- - tile where person should be created on the map
-- - civilian group they should belong to (see also CivGroupNames.xml)
-- - bodytype
-- - vest colour (-1 for random)
-- - pants colour (-1 for random)
-- - hair colour (-1 for random)
-- - skin colour (-1 for random)
-- - optional item 1 (-1 for nothing)
-- - optional item 2 (-1 for nothing)
-- - optional item 3 (-1 for nothing)
-- - optional item 4 (-1 for nothing)
	
if ( fHasEverBeenPlayerControlled == false ) then
	-- surface sectors
	if ( bSectorZ == 0 ) then
		-- central SAM
		if ( sSectorX == 8 and sSectorY == SectorY.MAP_ROW_I ) then
			CreateCivilian(16081, CivGroup.RADAR_TECHNICIAN_GROUP, Bodytype.MANCIV, Vest.GREYVEST, Pants.GREENPANTS, -1, -1, 210, 635, -1, -1)
			CreateCivilian(15443, CivGroup.RADAR_TECHNICIAN_GROUP, Bodytype.REGFEMALE, Vest.GREYVEST, Pants.GREENPANTS, -1, -1, 210, 635, -1, -1)
			CreateCivilian(10944, CivGroup.RADAR_TECHNICIAN_GROUP, Bodytype.REGMALE, Vest.GREYVEST, Pants.GREENPANTS, -1, -1, 210, 8, -1, -1)
		-- Drassen SAM
		elseif ( sSectorX == 15 and sSectorY == SectorY.MAP_ROW_D ) then
			CreateCivilian(11297, CivGroup.RADAR_TECHNICIAN_GROUP, Bodytype.MANCIV, Vest.GREYVEST, Pants.GREENPANTS, -1, -1, 210, 8, -1, -1)
...

This function allows creating a custom civilian with user-defined visuals and a few items. In my examples, I've used the idea I had here and added

  • http://i.imgur.com/BkqOotC.png
    radar technicians to SAM sites and airports
  • prison wardens to prisons (complete with gasmask, nightstick and handcuffs)
  • airport staff to airports
  • barrack staff to the Alma barracks
  • scientists to Orta
  • factory workers to factories
  • outspoken civilian supporters of the regime to Balime (you can't tell me they've all fled to Meduna)
  • http://i.imgur.com/GaDuVJg.png
    secretaries to places that seem like they'd have some.
This also includes dialogue. These new civilian groups so far don't do anything unusual (I nevertheless list them in the code, in case we later want special code for them).

In the above example, the civilians are only created when the player has never liberated this sector before - whether you use that is up to you.

This feature can be turned on and off via ALLOW_EXTRA_CIVILIANS in Ja2_Options.ini and is set to be off by default.

This is savegame compatible.

This has been added to the trunk in r8132 & GameDir r2311. Using the new exe without the new GameDir does not cause anything dangerous, for once. It just makes me sad.

[Updated on: Sun, 03 April 2016 17:26]




You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344844 is a reply to message #344843] Sun, 03 April 2016 17:59 Go to previous messageGo to next message
smeagol

 
Messages:2721
Registered:June 2008
Location: Bremen, Germany
Nice!


Re: New feature: easily placed extra civilians[message #344845 is a reply to message #344843] Sun, 03 April 2016 19:27 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Sometimes I hate you (J/K cheeky ). Just when I had settled on 8131 as the release to upgrade Arulco Revisited to, you come up with this extremely useful feature...

One question: when you write "won't stay around once you take the sector", that means that the civilians will disappear once the current sector is unloaded?



Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344847 is a reply to message #344845] Sun, 03 April 2016 19:45 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
This is purely because of
...
if ( fHasEverBeenPlayerControlled == false ) then
...

which is a new variable I added to the script. For these civilian types I added here, it seemed reasonable to only have them spawn if the player has never taken this sector. It would make no sense if prison wardens would still appear in the prison if the player has long taken it, no? In the above case, they will not spawn again if we take the sector.

You can, of course, use the functions without that particular check (or add any lua checks you like). HandleSectorTacticalEntry is called every time we enter a sector.

[Updated on: Sun, 03 April 2016 19:46]




You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344848 is a reply to message #344845] Sun, 03 April 2016 19:50 Go to previous messageGo to next message
edmortimer

 
Messages:1200
Registered:January 2015
Location: Home Free
Quote:
Sometimes I hate you (J/K cheeky ). Just when I had settled on 8131 as the release to upgrade Arulco Revisited to, you come up with this extremely useful feature...


It's futile to try and keep a mod at the newest feature release because of this. Stable releases may be a pain to get together, but modders need a stable platform to build on or they will be forever changing and re-changing their modifications to incorporate new features. Every time I figure it's safe to bring AV up to the newest release . . . a new, untested feature comes along that makes a major change.




Arulco Vacations Blog

Arulco Vacations Bears Pit Forum


Re: New feature: easily placed extra civilians[message #344849 is a reply to message #344848] Sun, 03 April 2016 22:04 Go to previous messageGo to next message
tais

 
Messages:808
Registered:February 2008
Location: NL
you dont HAVE to jump on the newest features once they're released..
even though they might be cool and all you should just keep your own schedule, it's not that often that something mod breaking is introduced
Just pick a version that you want the mod to work on and continue from there, all that could happen in newer versions is some red lines during startup.



IRC, pretty much the place to be! | Now also on Discord!


Re: New feature: easily placed extra civilians[message #344850 is a reply to message #344847] Sun, 03 April 2016 22:30 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Flugente wrote on Sun, 03 April 2016 18:45
This is purely because of
...
if ( fHasEverBeenPlayerControlled == false ) then
...

which is a new variable I added to the script. For these civilian types I added here, it seemed reasonable to only have them spawn if the player has never taken this sector. It would make no sense if prison wardens would still appear in the prison if the player has long taken it, no? In the above case, they will not spawn again if we take the sector.

You can, of course, use the functions without that particular check (or add any lua checks you like). HandleSectorTacticalEntry is called every time we enter a sector.


I haven't dug into spawning of civilians, so this might be a dumb question. If so, I apologize in advance. Is "spawning" of civilians

1) a unique occurrence per sector, happening exactly once when we first enter it. From then on, numbers, appearance, equipment etc. are stored, and when we reenter the sector, the same civs as before are there.
For example, when I get into a fight with 20 of KingPin's goons, kill 10 of them before I retreat, only those 10 I didn't kill are present when I reenter the sector

or

2) occurring whenever we enter a sector (subject to any hard-coded/scripted limits like ), and once we leave the sector, all civilians are forgotten, to be created anew from scratch when we reenter the sector? So in the example above, when I reenter the sector, there a 20 goons again.


After some thinking about the new possibilities this feature opens up, a couple of additional questions popped up in my head.


When setting civilians with the map editor, we can either select relative attribute levels (bad/poor/average/good/great) or - with detailed placement - select exact attributes. Would it be possible to add something like that to your feature?

Could you extend the tile value to a list of tiles, one of which is selected randomly? Just to enhance replayability...

Would it be possible to set a civgroup to hostile via script (something analogous to KingPin alarm, but without needing a trigger)?

Is it possible to query the game facts listed in quests.h via LUA?

Background to these questions: with the newly given possibility to place civilians dynamically, some consequences similar to those talked about here could be scripted. Some examples: once the player has taken over the first mine, Ricci Mining might decide to hire some guards to protect their remaining assets. When the Riccis at Balime are harmed, more direct measures could be taken. When the Chalice is stolen, Kingpin could place some of his gang at Yanni's hut to hedge his bets, when the Bloodcat quest is done, a PETA strike team might come calling...




Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344853 is a reply to message #344850] Sun, 03 April 2016 22:46 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
It's behaviour 2, actually. If you don't want these guys to respawn, you have to decide that by altering the lua script (like checking for a face etc.).

If you want random locations, you can simply choose one at random, the lua script can roll a dice:
from GameInit.lua:

function InitNPCs()

	-- Add the pilot at a random location!
	if is_networked == 0 then
		o = math.random(1, 4)
		if o == 1 then


Attribute levels are only really relevant for hostiles. Take a look at the same function in HandleSectorTacticalEntry(), a few lines above I use CreateArmedCivilain(..), which creates goons:
...
CreateArmedCivilain(CivGroup.BOUNTYHUNTER_CIV_GROUP, SoldierClass.SOLDIER_CLASS_ARMY, 			13032, hostile)
...

In this case, it is used to set up (possibly) hostile bounty hunters I added for a new quest where I tried to externalize as much of that quest as possible.

As for making a group hostile, that might already be in lua, not sure.

You can check game facts like this:
...
if ( (CheckFact( Facts.FACT_BOUNTYHUNTER_KILLED_1, 0 ) == true)  ) then
...

[Updated on: Sun, 03 April 2016 22:51]




You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344855 is a reply to message #344849] Sun, 03 April 2016 23:36 Go to previous messageGo to next message
edmortimer

 
Messages:1200
Registered:January 2015
Location: Home Free
Quote:
you dont HAVE to jump on the newest features once they're released..
even though they might be cool and all you should just keep your own schedule, it's not that often that something mod breaking is introduced
Just pick a version that you want the mod to work on and continue from there, all that could happen in newer versions is some red lines during startup.


Yes, I realize I don't have to jump to the newest features . . . unfortunately, not all that can happen is inconsequential error messages on startup -- though that is highly amateurish to have happen. There have been new executables since AV has started, and many XML tags have been moved about. While AV works on the early 2015 versions of 1.13, it doesn't work on newer versions. I'm not going to spend my time every other month re-working and playing catch-up. Just sayin'.

I love what Flugente is doing, but I am very grateful to Sevenfm for bringing a lot of the fixes to 7609, and for improving the AI tremendously in 7609.




Arulco Vacations Blog

Arulco Vacations Bears Pit Forum


Re: New feature: easily placed extra civilians[message #344856 is a reply to message #344853] Sun, 03 April 2016 23:56 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Extremely useful information re: spawning behaviour, random locations, attributes, creating armed civilians and and checking game facts. Thanks a lot!

Edit: since later edits don't show up as unread and tend not to be seen, I'll rather write an additional post

Flugente wrote on Sun, 03 April 2016 21:46

As for making a group hostile, that might already be in lua, not sure.


I looked a bit more deeply, and it seems like that's true

from ExplosionControl.lua:
SetCivGroupHostile( Group.KINGPIN_CIV_GROUP , Civ_status.CIV_GROUP_HOSTILE )
		
for iLoop = GetTacticalStatusFirstID(Team.CIV_TEAM),GetTacticalStatusLastID(Team.CIV_TEAM) do
	if ( CheckMercPtrsInSector (iLoop) == true and CheckMercPtrsInActive(iLoop) == true and CheckMercPtrsInCivilianGroup (iLoop) ==
           Group.KINGPIN_CIV_GROUP ) then
		for aimLoop=GetTacticalStatusFirstID(Team.OUR_TEAM),GetTacticalStatusLastID(Team.OUR_TEAM) do
			if ( CheckMercPtrsID1SeenID2(iLoop,aimLoop) == SEEN_CURRENTLY ) then
				MakeMercPtrsHostile( iLoop )
			end
		end	
	end	
end
 
if ( CheckCombatMode == false ) then
	EnterTeamCombatMode(Team.CIV_TEAM)
end	



[Updated on: Tue, 05 April 2016 09:51]




Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344871 is a reply to message #344853] Tue, 05 April 2016 09:53 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Flugente wrote on Sun, 03 April 2016 21:46

Attribute levels are only really relevant for hostiles. Take a look at the same function in HandleSectorTacticalEntry(), a few lines above I use CreateArmedCivilain(..), which creates goons:
...
CreateArmedCivilain(CivGroup.BOUNTYHUNTER_CIV_GROUP, SoldierClass.SOLDIER_CLASS_ARMY, 			13032, hostile)
...

In this case, it is used to set up (possibly) hostile bounty hunters I added for a new quest where I tried to externalize as much of that quest as possible.


After thinking about it a bit more, in my opinion it could be useful to combine elements of CreateArmedCivilain(..) and CreateCivilian(..). The one gives us control over equipment and attribute levels and hostility, but the other gives us much finer control over appearance and specific items.
I would love to be able to create a hostile armed civilian with red hair, pink skin, wearing blue pants and a red shirt that definitely carries an NVG and a sniper rifle, for example.

Don't think I'm ungrateful, it's just that any of your additions opens up so many more possibilities ;)



Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344872 is a reply to message #344871] Tue, 05 April 2016 14:07 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
Hmm. I guess I could expand both functions. Items are somewhat of a problem though - I currently create armed civilian as soldiers, which takes care of their equipment. Having custom items override that requires a lot of additional stuff (deleting preset items depending on what custom items are set,taking care of ammo, attachments, all this with regard to the progress values...).

Additionally, it seems to me that huge problem any modder would have with lua is that they cannot store any state variables. There are the games facts, which we access with CheckFact() and SetFact(), but these are hardcoded, and modders only know those that coders deemed intersting enough to put them into the script. Theoretically, a modder can store things (like whether they spawned someone somewhere) in there, but as you don't know without code knowledge wwhich facts exist and what they are used for, that's a recipe for disaster.

Perhaps it would be an idea to create, say, an array of 1000 integers that are solely used as a modder-administered 'memory' for lua purposes? That way, you could, say, remember whether you spawned, say, a custom armed civilian bounty hunter. You would then know whether to spawn him again or not somewhere...
...though the drawback is that currently, you have no way in lua to know whether a specific enemy dies (you also have no way to get the specific ID of someone). All requires additional code interfaces.

Hmpf.

I guess what I try to say is: I am aware that modders would like to be able to have better interaction with lua, but this requires a lot more work on the coding site of things, as you have to create interfaces for every function. Additionally, as we cannot debug lua, any stuff a modder does in there becomes so much harder to test and check for errors.



You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344874 is a reply to message #344872] Tue, 05 April 2016 17:02 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Thanks for looking into this.

- Items: I'm not sure how intelligent the AI actually is. When we just add an item w/o deleting preset stuff, would the AI make use of it? E.g., when an ArmedCivilain is equipped with an MP5 (from being created as a type of soldier) , and gets an additional G3 allocated via the same process as in CreateCivilian(), would the AI use the G3 if a target is outside MP5 range? Then we could just stuff up to 4 additional items into the civilians inventory. Of course the modder will have to take care of any needed ammo etc.

- state variables: all very true, and such an array as you mentioned would indeed be a valuable addition for a couple of mini-quests. I would flat-out refuse to store my own custom facts somewhere in "game-owned" variables, way to many ways to screw up the game... Though I could also write some state info to a text file via LUA, IIRC.
Not knowing if a certain civilian is dead/was already encountered/etc or not might indeed make some quest ideas impossible, but I still have a couple in mind I think I could do without. For example, accept that certain civilians spawn only once (controlled via your array idea), and the player gets just this one chance to kill^h^h^h^h interact with them. Or have one "trigger" named NPC, and as long as he lives, his henchmen re-spawn.

- debugging: that will indeed be a problem, creating false bug reports. At the moment I have no idea to get around that






Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344889 is a reply to message #344874] Tue, 05 April 2016 23:50 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
The AI would sometimes use it. It does check whether it has several guns which one to use (afaik), but this would not work on armour. Additionally, a modder might want to explicitly have an enemy use a specific item (like, say, the leader of a criminal gang using a custom-set golden desert eagle). Without controlling the entire inventory, this might not happen (so on, say, higher progress values, the enemy might get spawned with a MG3 and use that, which is reasonable gamewise but not what the modder intended).

If I recall, the trigger NPC issue was (still is?) used in many mods. Modders found out that all civs respawned in a map if all had been killed. That's why on a few maps where you are supposed to battle enemy civilians, there is a cow stashed away at the side lines - cows are on the civilian team, and nobody is likely to harm them. So only when you killed the cow did the enemies rise again ;)



You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344905 is a reply to message #344889] Wed, 06 April 2016 16:16 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Flugente wrote on Tue, 05 April 2016 22:50
The AI would sometimes use it. It does check whether it has several guns which one to use (afaik), but this would not work on armour. Additionally, a modder might want to explicitly have an enemy use a specific item (like, say, the leader of a criminal gang using a custom-set golden desert eagle). Without controlling the entire inventory, this might not happen (so on, say, higher progress values, the enemy might get spawned with a MG3 and use that, which is reasonable gamewise but not what the modder intended).


Well, controlling the entire inventory would be the luxury version, but also slight overkill, IMHO. I would be more than satisfied by CreateArmedCivilain(..) extended by appearance (hair, skin, dress) and possibility to add some items without replacing auto-generated ones, and on the other hand, CreateCivilian(..) extended by the hostility setting and maybe a relative skill level.

A modder-administered array of integers would be icing on the cake. My original idea of writing to/reading from an external text file via LUA creates a nightmare of synchronization if save/reload is taken into account.


Quote:
So only when you killed the cow did the enemies rise again ;)
So cows are responsible for holding back the zombie apocalypse? cheeky



Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344915 is a reply to message #344905] Thu, 07 April 2016 01:06 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
Yeah, I was wondering how your idea of external text files was going to work with savegames ;)

Yep, the cows are holding back the undead. Any civilian would do, but apparently, cows worked best. I assume this is because the average gamer is less likely to shoot a cow than kids/cripples in wheelchairs/women in miniskirts. suprised



You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #344924 is a reply to message #344915] Thu, 07 April 2016 14:44 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
Flugente wrote on Thu, 07 April 2016 00:06
Yeah, I was wondering how your idea of external text files was going to work with savegames ;)


Simple: Extreme Ironman mode. Saving is completely disabled ;)


Quote:
Yep, the cows are holding back the undead. Any civilian would do, but apparently, cows worked best. I assume this is because the average gamer is less likely to shoot a cow than kids/cripples in wheelchairs/women in miniskirts. suprised


Aren't we a happy, mentally healthy bunch of people?

Actually, I've found that placing a civilian inside a cliff -where available- works best. Even the worst serial killer type of gamer simply can't kill him.



Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #344930 is a reply to message #344924] Thu, 07 April 2016 19:34 Go to previous messageGo to next message
RunAwayScientist

 
Messages:85
Registered:September 2001
CVB wrote on Thu, 07 April 2016 11:44

Actually, I've found that placing a civilian inside a cliff -where available- works best. Even the worst serial killer type of gamer simply can't kill him.




Mortars. Lots of mortars. On-map mortar teams. Off-map mortar teams. No civy is safe. We're going to do the village, the whole freakin' village.

Re: New feature: easily placed extra civilians[message #344931 is a reply to message #344889] Thu, 07 April 2016 19:49 Go to previous messageGo to next message
Wil473

 
Messages:2861
Registered:September 2004
Location: Canada
Flugente wrote on Tue, 05 April 2016 15:50
If I recall, the trigger NPC issue was (still is?) used in many mods. Modders found out that all civs respawned in a map if all had been killed. That's why on a few maps where you are supposed to battle enemy civilians, there is a cow stashed away at the side lines - cows are on the civilian team, and nobody is likely to harm them. So only when you killed the cow did the enemies rise again ;)


Yup, a few of the old UC maps had to be edited solely for the purpose of adding a cow...



More weapon features and upgrade options, via (mis)use of v1.13 for vanilla Arulco, Dedrianna Lives! and Urban Chaos campaigns.


Re: New feature: easily placed extra civilians[message #345013 is a reply to message #344931] Mon, 11 April 2016 21:02 Go to previous messageGo to next message
CVB

 
Messages:129
Registered:September 2014
Location: Berlin
@Flugente: is it correct that the new groups (Secretaries, Radar technicians etc.) are not listed in CivGroupNames.xml?



Peace is a purely theoretical state of affairs whose existence we deduce because there have been intervals between wars.
J. Pournelle
Re: New feature: easily placed extra civilians[message #345014 is a reply to message #345013] Mon, 11 April 2016 21:13 Go to previous messageGo to next message
Flugente

 
Messages:3462
Registered:April 2009
Location: Germany
Eh? No, they have their own entries, just like all other groups.

Edit: Or should have, if I had committed them. And hadn't overwritten the changes later on in my xml-editor adventures. Hmpf.

Edit2: Proper file committed in GameDir r2313. For the record, these are the currently hardcoded civ groups:
NON_CIV_GROUP = 0,
REBEL_CIV_GROUP,
KINGPIN_CIV_GROUP,
SANMONA_ARMS_GROUP,
ANGELS_GROUP,
BEGGARS_CIV_GROUP,
TOURISTS_CIV_GROUP,
ALMA_MILITARY_CIV_GROUP,
DOCTORS_CIV_GROUP,
COUPLE1_CIV_GROUP,
HICKS_CIV_GROUP,
WARDEN_CIV_GROUP,
JUNKYARD_CIV_GROUP,
FACTORY_KIDS_GROUP,
QUEENS_CIV_GROUP,
UNNAMED_CIV_GROUP_15,
UNNAMED_CIV_GROUP_16,
UNNAMED_CIV_GROUP_17,
UNNAMED_CIV_GROUP_18,
UNNAMED_CIV_GROUP_19,
ASSASSIN_CIV_GROUP,	// Flugente: enemy assassins belong to this group
POW_PRISON_CIV_GROUP,	// Flugente: prisoners of war the player caught are in this group
UNNAMED_CIV_GROUP_22,
UNNAMED_CIV_GROUP_23,
VOLUNTEER_CIV_GROUP,	// Flugente: civilians that the player recruited
BOUNTYHUNTER_CIV_GROUP,	// Flugente: hostile bounty hunters
DOWNEDPILOT_CIV_GROUP,	// Flugente: downed pilots
SCIENTIST_GROUP,	// Flugente: enemy civilian personnel
RADAR_TECHNICIAN_GROUP,
AIRPORT_STAFF_GROUP,
BARRACK_STAFF_GROUP,
FACTORY_GROUP,
ADMINISTRATIVE_STAFF_GROUP,
LOYAL_CIV_GROUP,		// civil population deeply loyal to the queen
UNNAMED_CIV_GROUP_34,
UNNAMED_CIV_GROUP_35,
...
UNNAMED_CIV_GROUP_254,
NUM_CIV_GROUPS
There are a few holes in there (like UNNAMED_CIV_GROUP_22) which are mostly for civ groups in important mods. I think at some point I asked a few modders whether I should leave some open, which I did there, so they didn't have to reorder all civvies.

Nevertheless it is a very smart idea to not use groups near those I recently introduced, but to go for higher numbers. I never know when I add might add some more civ groups ;)

[Updated on: Mon, 11 April 2016 21:39]




You gotta wash your hands before picking up a baby. They can see the bacteria burning into their flesh.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: easily placed extra civilians[message #345527 is a reply to message #345014] Sun, 15 May 2016 20:17 Go to previous messageGo to next message
edmortimer

 
Messages:1200
Registered:January 2015
Location: Home Free
Marvelous!

EDIT: This was supposed to be for the new merchants (Marvelous!) . . . but somehow the forum put it here . . .

[Updated on: Sun, 15 May 2016 20:20]





Arulco Vacations Blog

Arulco Vacations Bears Pit Forum


Re: New feature: easily placed extra civilians[message #345528 is a reply to message #345527] Sun, 15 May 2016 21:35 Go to previous message
Slax

 
Messages:1449
Registered:July 2006
Location: People riding polar bears...
Wonderful indeed! Less need to wait for Mr. snack vendor to replenish his supplies.
Now I'm wondering if town influence/morale is going to come into play.

Town hates you =

Town's okay with you = Plain ol' inventory.

Town loves you = You get the good stuff.

Something like that.



1.13: Install JA2, unpack latest, play.
AIMNAS: Complete 1.13 installation, Download ZIP and unpack, play.

Previous Topic: New feature: dynamic dialogue
Next Topic: In-development feature: Individual militia
Goto Forum:
  


Current Time: Fri Apr 19 15:33:57 EEST 2019

Total time taken to generate the page: 0.02263 seconds