PDA

View Full Version : Is this a cogging question?



DevoSolo
11-15-2000, 01:44 AM
Hey, I'm sure this has been asked a million times before... but I need to know if enemies can be placed in a multiplayer level for JK.
I looked at the Rbots Tut, and had trouble because the download is for Mots. Is the Tutorial at massassi on Rbots actually for Jedi knight?
I need an easier way to put enemies in my Multiplayer Jedi Knight match.

Any hints...
oh, and sorry if this has nothing to do with cog.

Jipe
11-15-2000, 04:23 AM
You mean enemies as in bots? Or enemies as in synced AI from the game (stormtroopers, commandoes, etc.).

Post this on the RBots forum if it's about bots http://forums.massassi.net/html/smile.gif There's a cog called Synced AI or something in the cogs section, it allows you to add enemies to MP and have them synced..

-Jipe

DevoSolo
11-15-2000, 05:26 PM
Well I got the AI in my level with the enemygenerator.cog found at massassi downloads, but now I need to figure out how to make my enemy walk along a path. Which cog(s) do I use in conjunction with the enemygenerator? How do you combine the path cog with the enemy cog?

Heres my script...

#This is a mod made by FantomJedi -- e-mail Fantom117A@aol.com
#
#The thing is the number of the ghost object where the enemy is spawned
#
#The template is the enemy you want to use
#
#The gen_num is how many total enemies you want before the cog stops respawning them
#
#The max_alive is how many enemies are alive at once
#
#Jedi Knight Cog Script
#
# 06_generator.cog
#
# Cribbed from generic generator, for use in last tower room
#
# [RD]
#
# (C) 1997 LucasArts Entertainment Co. All Rights Reserved
# ================================================== ======================================

symbols

message startup
message user0
message timer
message pulse
message killed mask=0xfff

thing generator_pos desc=generator_ghost

template enemy_tpl desc=enemy_to_generate

int initial_delay=1.0 local desc=initial_delay
int generate_delay=5.0 local desc=generate_delay
int min_dist=0.0 local desc=min_distance
int max_dist=1000.0 local desc=max_distance

float distance=1.0 local

cog squadmaker local

int enemy local
int cur_num=0 local
int cur_alive=0 local
int generate_num
int max_alive desc=max_alive

end

# ================================================== ======================================

code

startup:
// if initial_delay == -1 then the generator will be started by SendMessage
// user0 from another COG. Much like the WAKEUP message in DF...
if(initial_delay != -1) SetTimer(initial_delay);
Return;

# .................................................. ......................................

user0:
// FIXME!! remove next line when parsing bug is corrected
enemy = enemy;
// fall through on purpose

# .................................................. ......................................

timer:
SetPulse(generate_delay);
// fall through on purpose

# .................................................. ......................................

pulse:
if((cur_alive < max_alive))
{
distance = VectorDist(GetThingPos(generator_pos), GetThingPos(GetLocalPlayerThing()));
if((distance >= min_dist) && (distance <= max_dist))
{
if(IsThingVisible(generator_pos)==0)
{
enemy = CreateThing(enemy_tpl, generator_pos);
CaptureThing(enemy);

cur_num = cur_num + 1;
cur_alive = cur_alive + 1;

// If we have generated enough enemies, end the pulse
if(cur_num >= generate_num) SetPulse(0);
}
}
}
return;

# .................................................. ......................................

killed:
cur_alive = cur_alive - 1;
SendMessage(squadmaker, user0);
return;

end