RC: Respawning AI in DM-maps for co-op

Started by RC-1266, October 21, 2012, 08:22:02 AM

Previous topic - Next topic

RC-1266

I've recently been thinking about starting to make a few RC-maps that can be played as co-operative in Deathmatch-mode again.

I've been experimenting with it before (coop_crater: https://www.youtube.com/watch?v=Lq4yzu_zt2c) but the main issue for me was not being able to find a way to make enemies move and respawn properly.

The only way of making enemies respawn that I'm familiar with, is creating droid dispensers.
However, when putting AI in deathmatch mode, I always set bValidEnemy to False to prevent all the AI from killing eachother (yet, it would count as a kill when you shot them).
This method has it's downsides though, since the enemies literally won't see eachother;
- when there's an enemy between you and another enemy, this first enemy will be shot because the other won't see him (and won't cease firing or side-step);
- when adding path nodes, the enemies will run into eachother and get stuck;
- as far as I know it can't be applied to AI spawning from droid dispensers (and as a result, they'll be too bothered killing eachother to notice you).

So my main questions are:
1. Are there alternative ways to make enemies not kill eachother in DM-maps than switching bValidEnemy to False?
-> Which is important to me because it would make it possible to let them move more freely and not kill eachother accidentally when they obstruct their line of fire.

2. Is there a way to switch bValidEnemy to False for AI spawning from dispensers?

3. What other ways are there to respawn enemies and what can I do to prevent these guys from killing eachother in Deathmatch mode?

frazscotland

#1
Hey rc not seen u for ages .Yes ive helped a mapper jb work this kind of thing out a bit for 1 maP  within his mappack.
It had clonetroopers spawning on rep side to assist and extra trandos spawning but it could as well have been slavers or trando heavies.
I worked out u can create your own new modded .u pakage which doesnt affect normal properties
u can make new pawn ai entries and in them they can have new weapons and even skins etc.
The pawns are controlled by the bot controllers so i suggest making new bot controller classes also in hidden in the bot controller classes u have drop downs for benign stimulus responses and also for HOSTILE stimulus responses. SR_Runtoward etc
another tip is in the new pawn classes u can link their animation sets to the MPSet which will make the ai more aggressive also.
Create a new  Gameclass also  a SUBCLASS of TD.  In that you can lock players into the clone side and the ai will technically be in the trando side.
u will have to create a new gameline which reflects the reference for the new .u and the gameclass .

Hope this helps a bit 8)
Im been working on this new wep expansion mod pakage for rc for a good while not got so much left to do. hers some links to show 75% of what ive done so far..
http://beta.xfire.com/video/57c9a7
http://beta.xfire.com/video/57af66
http://beta.xfire.com/videos/572ffb
http://beta.xfire.com/video/54781a
Maybe this also could help you i helped a small bit with this
http://www.lucasforums.com/showthread.php?t=209169
http://www.xfire.com/profile/maskerey/
XFIRE  FRAZSCOTLAND

RC-1266

#2
Wow thanks, that's enough to be busy with for quite a while ;D

But if I understand correctly, this only works in TD?

Edit: Only checked out the videos just now. There are some nice weapon mods in there! :O

frazscotland

wel for co-op crater is this what u did also for co-op game mode ?  a modded td ? well i guess u could also do a ai ctf /ass also if the bot controller is good enough !! as i said before when u make your own new gamemodes you can also make NEW player starts a subclass of the existing  mp commando and  trando and in the info game info and your new game mode in HIDDEN it has the VALIDPAWNCLASSES  ie in there u can have your new player classes
thanks man.
JB mappak has first really good ai ive seen yet. cos in the pawn class its animation set is linked to mp set
XFIRE  FRAZSCOTLAND

RC-1266

It was modded DM. I've never been looking into creating a TD co-op, since you need at least 2 players to play (and test) it.
I can see the advantages though; pawns won't attack eachother when they're in the same team in TD, but they will in DM since it's one big free for all.
(Like in Coop_Crater,) I always bypassed that by switching their bValidEnemy property to false so they won't consider eachother a valid enemy. This meant that they would shoot through eachother in order to attack players and getting stuck while walking into eachother, which is why I never placed path nodes in maps I released.

I don't really get how the geonosians were able to follow me in Coop_Crater, I can only assume that they were taking huge side-step leaps to get to me. When they bunch up in groups following, you might see some of them die although you didn't deal damage to them; I think that's because they're performing melee attacks regardless of the distance they're to you and they'll cut their (for them invisible) fellow geonosians.

I never actually modded something; I only made maps, placed a huge bunch of pawns in them and toyed around a bit in their individual properties to give them weapons and specific items.
So I don't really get what you mean with bot controllers, subclasses, gameclasses and gamelines :P

frazscotland

#5
Ok wel ill try help anyone i can.
You can make new parallel .u properties packages ,
when u boot up unreal and goto the actor classes browser
untik placeableclassesonly box.    Controller   AIController  scripted controller   CTBot
there listed are the bot controllers for all the AI    You can either make a subclass of  an existing or make a new one altogether.
Say for instance you want to make new trando bots that are more agressive 
Left clik to select trando merc bot   right clik NEW in Package name     RC1266    in NAME cell you can call it your new  trandobot name ie TB1266     then  OK then   Exit  and update the pakage. 
Every time u make a new addition remembering to have the pakage name as whatever you picked ie RC1266 as i said above.
In Hidden in the botclass you have HOSTILE STIMULUS RESPONSES you can alter
IN CTBOt you have REQUIREDSTATES you can alter

Ok so now u can make a new PAWN class
goto PAWN   CTPAWN  TRANDO    TRANDOMERC      LEFTCLIK select right clik NEW
PAKAGE    RC1266   then   whatever your new merc name is    ie TM1266
in HIDDEN in your new pawn class scroll down and change the CONTROLLERCLASS
to reference to your new botcontroller
In PAWN you can change MESHSETS  from    MeshAnimation'Clone.CloneCommandoSPSet'    to  MeshAnimation'Clone.MPSet'
You can also change the weaps and skins even   and ACCURACY

Ok to make new gamemode Scroll down to   INFO GAMEINFO   CTGAMEINFO   MPGAME   
There you can make  a subclass of any existing game mode
Say for instance you just want to make a new type of dm where the player health and shields are higher
You make a subclass of DM     1266  pakage   NEWDMGame
In HIDDEN at Bottom is VALIDPAWNCLASSES    thats where you have your new playerstarts entered !!!!!
Next goto   PAWN MPPAWN   Drop down for clone and trando
Left clik on  MPClone  make a new  player start    ie RC1266  pakage name   MPClone1266
do same for  MPTrando                                                          MPTrando1266
so u have 2 new player starts  in them you can edit health,shields, weapons   ,skins etc
go back to   
INFO GAMEINFO   CTGAMEINFO   MPGAME   1266  pakage   NEWDMGame     In HIDDEN at Bottom is VALIDPAWNCLASSES   
ie     RC1266 .MPClone1266
        RC1266 .MPTrando1266

Exit and update package  then goto your system folder look for the xgamelist
copy existing gameline and edit then paste bak as new entry
GameType=(GameName="rc1266 DM",ClassName="rc1266.NEWDMGame",MapPrefix="DM",Acronym="DM",MapListType="MPGame.MapListDeathMatch",
Screenshot="MapThumbnails.ShotDeathmatch",DecoTextName="XGames.Deathmatch",DefaultGoalScore=30,MinGoalS
core=10,DefaultTimeLimit=60,DefaultMaxLives=0,DefaultRemainingRounds=0,bTeamGame=0)


Hey Presto .. 8) ;D  Hope that helps
XFIRE  FRAZSCOTLAND

RC-1266

Thanks for the help, I really appreciate this :D

I'm stuck in the first part though;
- how do I update the package?
- where can I find it back? :P

frazscotland

Update the package u created ? ? u mean ?
wel sometimes with rc you have to watch what previous modding you have done as it could have saved to a different folder.
A basic omission we can all make is that your package is saved as normal in the PROPERTIES folder but  is named as such whatever you named your package as but remember to chek that it ends as such
e.g RC1266.u
8) it could be there but doesnt end as .u so it wont show up until you change this
XFIRE  FRAZSCOTLAND