Author Topic: Estimating enemies  (Read 1471 times)

Quipp

  • Wayfarer
  • *
  • Posts: 4
    • View Profile
Estimating enemies
« on: May 22, 2006, 05:54:47 am »
Hello, I am pretty new, but every time i right-click somthing and read the bottom of the description it tells me that I try to estimate the strength of <name> but have no clue. What attribute must I train in order for me to do this? and what level must that attribute be?

Karyuu

  • Forum Legend
  • *
  • Posts: 9341
    • View Profile
Re: Estimating enemies
« Reply #1 on: May 22, 2006, 06:08:04 am »
Hiya Quipp, welcome to the community :}

Having a higher Intelligence stat will let you make better estimations of the strength of others. And if someone has a high charisma, it can boost how strong they appear to others. As for how high your Intelligence must be for you to begin to sense the strengths, aim for 50 and above.
Judge: Are you trying to show contempt for this court, Mr Smith?
Smith: No, My Lord. I am attempting to conceal it.

DaveG

  • Forum Addict
  • *
  • Posts: 2058
    • View Profile
Re: Estimating enemies
« Reply #2 on: May 22, 2006, 05:21:18 pm »
Getting past the 100 mark will improve your estimating skills even more.

::  PlaneShift Team Programmer  ::

Leritho

  • Traveller
  • *
  • Posts: 16
  • Jabber: mandavister@jabber.ccc.de
    • View Profile
Re: Estimating enemies
« Reply #3 on: May 22, 2006, 06:21:13 pm »
Hi,

since the starter seems to have aked a question which is alright to ask - I would like to know which characteristics do (or which don't) influence the strength others believe I have.

Bereror

  • Hydlaa Notable
  • *
  • Posts: 773
    • View Profile
    • Planeshift API
Re: Estimating enemies
« Reply #4 on: May 22, 2006, 06:43:34 pm »
since the starter seems to have aked a question which is alright to ask - I would like to know which characteristics do (or which don't) influence the strength others believe I have.

All your stats.
PlaneShift Sources
PlaneShift API
"Words never spoken
Are the strongest resounding"

Leritho

  • Traveller
  • *
  • Posts: 16
  • Jabber: mandavister@jabber.ccc.de
    • View Profile
Re: Estimating enemies
« Reply #5 on: May 22, 2006, 07:02:48 pm »
Just that I am  not mistaken here:

Lets say I become a freakin good chef, are the best singer in Yliakum and have plenty of other skill which do not influence my phisical strength or ability to fight at all, I could still be seen as  'impossible to defeat'? Is it a smart move than to train any other skill if I am a guy how is proud of his duell points?

How I see it, the best way would be than to train only strength, agility, endurance, light-amor and sword and therefore be seen as a medium character, but I would probalby always win in any duell where the other has about the same 'strength'.

So, does the strength-thing makes sence than at all or is it just confusing? With the concept of my guild - I shouldn't even complain here, but I still would like to have that indicator beeing more precise.

Herleva

  • Guest
Re: Estimating enemies
« Reply #6 on: May 22, 2006, 07:10:02 pm »
With "All your stats" Bereror means "All your stats", not your skills.
you can be lousy in all skills, when your stats are top you will appear strong.
(stats: agility, intelligence, charisma, endurance, strength, will)

Greetings

Herleva, Freelancer
« Last Edit: May 22, 2006, 07:11:45 pm by Herleva »

Quipp

  • Wayfarer
  • *
  • Posts: 4
    • View Profile
Re: Estimating enemies
« Reply #7 on: May 22, 2006, 09:23:24 pm »
Thanks for the info guys.

DaveG

  • Forum Addict
  • *
  • Posts: 2058
    • View Profile
Re: Estimating enemies
« Reply #8 on: May 22, 2006, 10:14:59 pm »
What it does, is grab the average of all 6 stats for you and the target, and takes the difference.  The description output is based on which bracket that difference falls into.

I'm lazy, so here's the code from src/server/usermanager.cpp
Code: [Select]
            if ( playerAttr->GetStat(PSITEMSTATS_STAT_INTELLIGENCE) < 50 )
                desc.AppendFmt( "\n\nYou try to evaluate the strength of %s, but you have no clue.", charName.GetData() );
            else
            {
                // Character's Strength assessment code below.
                char* StrengthGuessPhrases[] = {"won't require any effort to defeat",
                                                "is noticeably weaker than you",
                                                "won't pose much of a challenge",
                                                "is not quite as strong as you",
                                                "is about as strong as you",
                                                "is somewhat stronger than you",
                                                "will pose a challenge to defeat",
                                                "is signifigantly more powerful than you",
                                                "may be impossible to defeat" };
   
                bool smart = (playerAttr->GetStat(PSITEMSTATS_STAT_INTELLIGENCE) >= 100);

                int CharsLvl      = charData->GetCharLevel();
                int PlayersLvl    = client->GetCharacterData()->GetCharLevel();
                int LvlDifference = PlayersLvl - CharsLvl;
                int Phrase        = 0;

                if ( LvlDifference >= 50 )
                    Phrase = 0;
                else if ( LvlDifference > 30 )
                    Phrase = 1;
                else if ( LvlDifference > 15 && smart)
                    Phrase = 2;
                else if ( LvlDifference > 5 )
                    Phrase = 3;
                else if ( LvlDifference >= -5 && LvlDifference <= 5 )
                    Phrase = 4;
                else if ( LvlDifference >= -15 )
                    Phrase = 5;
                else if ( LvlDifference >= -30 && smart)
                    Phrase = 6;
                else if ( LvlDifference >= -45 )
                    Phrase = 7;
                else if ( LvlDifference < -50 )
                    Phrase = 8;

                // Enable for Debugging only
                // desc+="\n CharsLvl: "; desc+=CharsLvl; desc+=" | YourLvl: "; desc+=PlayersLvl; desc+="\n";

                desc.AppendFmt( "\n\nYou evaluate that %s %s.", charName.GetData(), StrengthGuessPhrases[Phrase] );
            }

The "level" is just from this, in src/server/bulkobjects/pscharacter.cpp
Code: [Select]
unsigned int psCharacter::GetCharLevel()
{
    return ( attributes.GetStat(PSITEMSTATS_STAT_STRENGTH) +
             attributes.GetStat(PSITEMSTATS_STAT_ENDURANCE) +
             attributes.GetStat(PSITEMSTATS_STAT_AGILITY) +
             attributes.GetStat(PSITEMSTATS_STAT_INTELLIGENCE) +
             attributes.GetStat(PSITEMSTATS_STAT_WILL) +
             attributes.GetStat(PSITEMSTATS_STAT_CHARISMA) ) / 6;
}

Welcome to the land of open-source.  :P
« Last Edit: May 22, 2006, 10:16:40 pm by DaveG »

::  PlaneShift Team Programmer  ::

Leritho

  • Traveller
  • *
  • Posts: 16
  • Jabber: mandavister@jabber.ccc.de
    • View Profile
Re: Estimating enemies
« Reply #9 on: May 22, 2006, 11:11:32 pm »
yes, thanks a lot!

* Leritho is very grateful for the information and bows several times...    :sorcerer:

*edit - add

there is a typo: signifigantly ->significantly

*2nd edit

I've made a suggestion for the identifying thing - that it would depend also on the difference of a combination of Charisma and Itelligence of both players in this post.
« Last Edit: May 22, 2006, 11:46:04 pm by Leritho »