Author Topic: Unknown Bots  (Read 5864 times)

0 Members and 1 Guest are viewing this topic.

Hersh

  • Elvin Legion
  • *****
  • Posts: 413
  • Reputation: +0/-0
Unknown Bots
« on: July 18, 2003 09:12 pm CDT »
I was wondering if anyone on Particles could help me with a little problem.
I want to know to make 3 bots spawn around a player for every 2 minutes he spends in unkown zone. I've looked through Spawn.cs and zone.cs and still havent figured out anything.
Also is it possible to make the bots lvl be the same as the players?

Right now all I have is a basic idea of what I think it needs.
Zonecheck to see if the player has stayed in unkown
The x y z of the player for telling the bots where to spawn.
The the index number for the bots [60] (already made one for this)
And some code I've yet to learn

Hersh

Edit: No thanks Vort, I wanna start with every 2 minutes, I'll see how it goes and change it if it needs to be longer.
« Last Edit: July 18, 2003 10:47 pm CDT by Hersh »

I kissed a drunk girl on the lips.
This post, by its very length, defends itself against the risk of being read.

Vorter_X_

  • Centurian Lord
  • ********
  • Posts: 2,693
  • Reputation: +2/-0
(No subject)
« Reply #1 on: July 18, 2003 10:31 pm CDT »
how bout 20 min cus 2 min someone could be walking to jaten or something else or could be mining

how bout if they show no signs of life like no speech or movement
« Last Edit: December 31, 1969 06:00 pm CST by Vorter_X_ »

UnderGod

  • Centurian Lord
  • ********
  • Posts: 2,691
  • Reputation: +0/-0
(No subject)
« Reply #2 on: July 18, 2003 11:31 pm CDT »
Vorter you dumbass..

THat is the whole purpose.. to spawn bots to attack the players.

It would have lag on the server if you were to do this.. Imagine if 4-5 people were in unknown at the same time.

What would happen if you were to make a quest?

I COULD help you a bit, but you are going to get screwed in the long run if you do this.
« Last Edit: December 31, 1969 06:00 pm CST by UnderGod »
"The right man in the wrong place can make all the difference in the world"

Hersh

  • Elvin Legion
  • *****
  • Posts: 413
  • Reputation: +0/-0
(No subject)
« Reply #3 on: July 19, 2003 01:29 am CDT »
Hmm, good point on the lag, I was caught up in the idea I didn't think about it..

Well, what about an admin command that could turn the unkown bots function on and off.  #Marauders 1/0

Then if I want to run a quest all I do is turn it off and #wipeout to kill of the remaining bots.

The thing is, I'm going to remake rpgmap1 with towns and dungeons closer together and ditch the transport spells. (I might have telelos) But I don't want long boring trips to the next town (nothing against OW).

Hersh
« Last Edit: December 31, 1969 06:00 pm CST by Hersh »

I kissed a drunk girl on the lips.
This post, by its very length, defends itself against the risk of being read.

UnderGod

  • Centurian Lord
  • ********
  • Posts: 2,691
  • Reputation: +0/-0
(No subject)
« Reply #4 on: July 19, 2003 01:44 am CDT »
Well...

I don't reccomend doing that with the map, but you can do what you want.

What about people just running away from the bots? then the bots just run wherever and lag the server?
« Last Edit: December 31, 1969 06:00 pm CST by UnderGod »
"The right man in the wrong place can make all the difference in the world"

Vorter_X_

  • Centurian Lord
  • ********
  • Posts: 2,693
  • Reputation: +2/-0
(No subject)
« Reply #5 on: July 19, 2003 01:51 am CDT »
#follow
« Last Edit: December 31, 1969 06:00 pm CST by Vorter_X_ »

UnderGod

  • Centurian Lord
  • ********
  • Posts: 2,691
  • Reputation: +0/-0
(No subject)
« Reply #6 on: July 19, 2003 02:18 am CDT »
I'm not going to even try on that one vorter..

No #follow won't work.
« Last Edit: December 31, 1969 06:00 pm CST by UnderGod »
"The right man in the wrong place can make all the difference in the world"

Hersh

  • Elvin Legion
  • *****
  • Posts: 413
  • Reputation: +0/-0
(No subject)
« Reply #7 on: July 19, 2003 03:35 am CDT »
(Vorters funny, but I don't think he realizes I'm changing scripts.vol not making a quest script)

Well, I like how rpgmap1 is set up, where there is wide open area just across a hill from another wide open area. Map5 has that too, but not as close.
As for players runnning away from bots and bots being left there could be a easy way to rig that so its not as bad and a hard way.

Easy: Make a quest script for the server that has a list of #kill TravellingMarauder0 -50 and then schedule that every 15 minutes. But that would enterrupt players fighting them...Though I don't thing it would be as annoying as the lagg.

Hard:Write a code that kills an bot not in a zone that runs every 15 minutes. Also interrupts players, but I can't think of another way. (Would have to be turned off for quests though, Or making a large Questing Zone...)

P.S. - Remember the code that zone checks and kills all the bots in a zone, if there were no players in the zone? Would the zonecheck include unkown?

Thanks for the consideration, this is looking like a lot of work now. :shock:  

Hersh
« Last Edit: December 31, 1969 06:00 pm CST by Hersh »

I kissed a drunk girl on the lips.
This post, by its very length, defends itself against the risk of being read.

UnderGod

  • Centurian Lord
  • ********
  • Posts: 2,691
  • Reputation: +0/-0
(No subject)
« Reply #8 on: July 19, 2003 05:07 am CDT »
It doesn't kill all the bots in a empty zone, it just doesn't spawm them if no one is in the zone.
« Last Edit: December 31, 1969 06:00 pm CST by UnderGod »
"The right man in the wrong place can make all the difference in the world"

Hersh

  • Elvin Legion
  • *****
  • Posts: 413
  • Reputation: +0/-0
(No subject)
« Reply #9 on: July 19, 2003 08:14 pm CDT »
I think it kills all the bots on a zonecheck
but when I added Zone::Clearout(); to the end of function
DoZoneCheck(%w, %d)   no bots spawned? Sorry if I seem kind of dense.

I think Susan wrote this..
Code: [Select]
code:--------------------------------------------------------------------------------
function Zone::Clearout()
{
   for(%i = 0;%i <= $numZones;%i++)
   {

      %Z = $Zone::FolderID[%i];
      %bl = Zone::getPlayerList(%z, 3);
      %pl = Zone::getPlayerList(%z, 2);
      if(%pl == "" && $Zone::Type[%i] == "DUNGEON")
      {
         for(%b = 0; Zone::getPlayerList(%z, 3) != -1; %b++)
         {
            %id = GetWord(%bl, %b);
            if(%id == -1)
               break;
            storeData(%id, "noDropLootbagFlag", True);
            Player::Kill(%id);
         }
      }
   }
}
--------------------------------------------------------------------------------


Hersh
« Last Edit: December 31, 1969 06:00 pm CST by Hersh »

I kissed a drunk girl on the lips.
This post, by its very length, defends itself against the risk of being read.

UnderGod

  • Centurian Lord
  • ********
  • Posts: 2,691
  • Reputation: +0/-0
(No subject)
« Reply #10 on: July 20, 2003 06:16 pm CDT »
Yeah thats what that would do.

Let me see if I can crack something up for you..

It could take a bit.
« Last Edit: December 31, 1969 06:00 pm CST by UnderGod »
"The right man in the wrong place can make all the difference in the world"

Hersh

  • Elvin Legion
  • *****
  • Posts: 413
  • Reputation: +0/-0
(No subject)
« Reply #11 on: July 20, 2003 06:44 pm CDT »
Well thanks to an unfortunate cannibalism of tribes and my own ignorance to back up all of my work I lost the most recent version of my map. I didnt lose too much just enough to make fixing it tedious. But, atleast now I have more motivation to make it better. Anyways don't feel rushed or anything.  :wink:

Edit I just saw something funny, Player::blowUp(Player or Client)
Heh #if {Player::blowUp(2049)} , I have to start using that more often.

 
Hersh
« Last Edit: December 31, 1969 06:00 pm CST by Hersh »

I kissed a drunk girl on the lips.
This post, by its very length, defends itself against the risk of being read.