EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Bots (https://www.eqemulator.org/forums/forumdisplay.php?f=676)
-   -   More questions on Bots (https://www.eqemulator.org/forums/showthread.php?t=26484)

Angelox 10-23-2008 02:11 PM

Those makefile/ files I posted work for me, I just want to make sure it works for others too.
I think the bots are more intended for a 'play at home' version, alone or maybe a friend or two (even if I'm a 'bot addict' too. I'm trying to get a few more needed commands at least started (can always be changed for the better), such as pacify and evac. Things that when alone, I always think "Damn I wish I had that right now ..."

hayward6 10-23-2008 02:44 PM

Quote:

Originally Posted by AndMetal (Post 158907)
I think the logic is that, because not everyone is going to run bots (although they are quite awesome), it's better to use a preprocessor definition during compile than a rule, since it will decrease a lot of the required resources (memory/processor cycles) if you're not using it.

A good point. I feel this is one of the best things to happen to the project in a while! It's exactly what I wanted when I first learned about the emulator, but have no skills to work on it :)

Andrew80k 10-23-2008 02:56 PM

Quote:

Originally Posted by AndMetal (Post 158907)
I think the logic is that, because not everyone is going to run bots (although they are quite awesome), it's better to use a preprocessor definition during compile than a rule, since it will decrease a lot of the required resources (memory/processor cycles) if you're not using it.

Is this actually the case? I know the executable for the zone would be bigger, but I wouldn't think it would use much more resources unless you actually spawned BOTS. If you don't I would think that resource usage would be very similar to not having them compiled in. But that's a rough guess based on looking through the code a couple of times.

Angelox 10-23-2008 04:25 PM

Here's another problem I saw with the Bots;
When you have a good Bot group, mobs get real easy to kill - The game really gets unbalanced; lower end red-cons become easy to kill.
So, lets say you upped the exp to 2-3x , if you kill a Red, exp is like 10x! Even with normal exp, the reds are like 4x , which is ok if they are in a no-bot game (bigger challenge/ risk for a greater reward).
When I lowered the red con Exp to something more sane, then blues and lite blues gave little or no exp. If I had new players on the server that played alone (no bots) or just were starting out, I would get complaints about no exp.
So here's what I did, that may be an idea; Its a macro called 'CON_XP_SCALING', I never could get it to compile on windows with the macro, so I quoted it out and ran like that.
All the settings are changed in CON_XP_SCALING, and the original EQ settings in variables and rule_values are default.
The effect I got was fast exp on all cons, but nothing crazy for red/yellows. It may not seem to make any sense, but it works with whatever other scaling there is in the source and counters.

Code:

//#ifdef CON_XP_SCALING
                if (conlevel != 0xFF) {
                        switch (conlevel)
                        {
                        case CON_GREEN:
                                //Message(15,"This creature is trivial to you and offers no experience.");
                                return;
                        case CON_LIGHTBLUE:
                                        add_exp = add_exp * 175/100;
                                break;
                        case CON_BLUE:
                                //if (lvldiff >= 12)
                                //        add_exp = add_exp * 6/10;
                                //else if (lvldiff > 5)
                                        add_exp = add_exp * 250/100;
                                //else if (lvldiff > 3)
                                //        add_exp = add_exp * 9/10;
                                break;
                        case CON_WHITE:
                                        add_exp = add_exp * 175/100;
                                break;
                        case CON_YELLOW:
                                        add_exp = add_exp * 200/100;
                                break;
                        case CON_RED:
                                        add_exp = add_exp * 225/100;
                                break;
                        }
                        /*
                        if (otherlevel >= 65)
                        {
                                int add = add_exp*((otherlevel-49)*20/100);
                                add_exp += add_exp*((otherlevel-64))*2;
                                add_exp += add;
                        }
                        else if (otherlevel >= 50)
                        {
                                add_exp += add_exp*((otherlevel-49)*20/100);
                        }*/
                }
//#endif




Quote:

Originally Posted by Andrew80k (Post 158917)
Is this actually the case? I know the executable for the zone would be bigger, but I wouldn't think it would use much more resources unless you actually spawned BOTS. If you don't I would think that resource usage would be very similar to not having them compiled in. But that's a rough guess based on looking through the code a couple of times.


Congdar 10-23-2008 04:41 PM

Bots, like people.... when you have a full group, mobs are easier to kill. The group exp bonus applies and you get good exp. I don't think the bots make any difference in exp gains or mob difficulty than what you would get with a full group of actual players. The only differnce is, the bots go all out 100% where a player might conserve mana or the like.

If you can show in the code somewhere that exp gain is somehow increased due to bots that would be different than if you had actual players, or that somehow mobs become easier because of bots instead of players, then that would be the place to put in a fix.

Angelox 10-23-2008 04:57 PM

Well, for one , Bots don't make mistakes, PCs do -
When I first tried the bots, I got about 30 levels in a few hours. Might be just the way EQemu always has been, most people do not want low exp rates, so exp in general goes up much faster than it would as if I played on live.
When I played on live with full, experienced groups, killing a red was always a big challenge and many times proved disastrous. Not so with the bots.
All around, EQ Live is much harder than EqEmu. I don't like the way Exp drags on on live either. But I do like the game to last a little longer than a day or two; but that's just me.
I do have the fix in what I post at my site for many weeks now, and about a dozen people use it (it's that last 'fix' that still makes my version of the source custom).

hayward6 10-23-2008 05:29 PM

I'm hanging this up for a while... I source the released code from the bots thread and it simply doesn't work. I'll just stick with plain old 1129 untill this is either added or made easier, thanks everyone for your help.

Angelox 10-23-2008 06:04 PM

Quote:

Originally Posted by hayward6 (Post 158930)
I'm hanging this up for a while... I source the released code from the bots thread and it simply doesn't work. I'll just stick with plain old 1129 untill this is either added or made easier, thanks everyone for your help.

Hayward! you don't need to source anything - just go to the new EqEmu SVN
and download the latest source , and if you cant do the make file changes, what I posted here just unzip and overwrite in your zones directory. It will compile with the bots active.
If you stll have problems, post! we'll get you going. You know where the new EqEmu SVN is right?

hayward6 10-23-2008 06:08 PM

I'll have to look again later. When I run make it isn't finishing all the files... I have to go in and do zone by itself for one example, and others just dont work... I'll re download. My biggest issue is time, I cam,e home to do this and had some ideas... but after 5 minutes the wife and kids had other plans :)

Angelox 10-23-2008 06:22 PM

The way I have always compiled in Linux is I go into each directory and run 'make clean' , then 'make'. don't have to run 'make depend' anymore, it comes with the 'make clean' now (I guess someone fixed that).
So I go to /zone, then /world, etc.

hayward6 10-23-2008 06:37 PM

Quote:

Originally Posted by Angelox (Post 158934)
here just unzip and overwrite in your zones directory. It will compile with the bots active.
If you stll have problems, post! we'll get you going. You know where the new EqEmu SVN is right?

I need to rename the files though right?

hayward6 10-23-2008 06:43 PM

Quote:

Originally Posted by Angelox (Post 158934)
You know where the new EqEmu SVN is right?

I guess not... all I can find there are the binaries

Congdar 10-23-2008 07:12 PM

On my server I cranked the bonus exp down due to fast leveling with bots, but it is still higher than Live. I also added more experience loss on death to help balance it out. This code has a different way of mitigating the exp but what you said about ease... maybe a different solution than what either of us did is to make the npc's harder. Looking at the npc entries in the db, except for bosses it looks like theres a pattern to npc level and stats. Maybe Cavedude can tell us how to make it more difficult overall.

Since I spend more time coding bots than actually playing the emulator, do those that play in a full group of equal level players find the emulator reds super easy and do you level so fast that you feel you would reduce exp more to balance the game? Are the regular groupers on TGC 65 and max AA real quick? I use the peq database. I believe that the bots are no different than a group of equal level players. The bots have some advantages, but many disadvantages as well. Experience is calculated by the same code as a group of pc's as it is for a pc with a group of bots.

Angelox 10-23-2008 07:26 PM

Quote:

Originally Posted by hayward6 (Post 158941)
I guess not... all I can find there are the binaries

Are you using windows or Linux?

hayward6 10-23-2008 07:30 PM

Since switching to Linux on my server, I will never go back to Windows ;)


All times are GMT -4. The time now is 11:41 AM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.