Project 1999

Project 1999 (/forums/index.php)
-   Resolved Issues (/forums/forumdisplay.php?f=14)
-   -   Miscellaneous: Shrink Spell (/forums/showthread.php?t=210654)

Lord C 09-11-2015 03:31 PM

Shrink Spell
 
I admit I am not sure what is classic, but it is the greatest travesty in p99 that gnomes are unable to shrink.

I found this thread, it doesn't seem conclusive enough for me: http://www.project1999.com/forums/sh...t=shrink+gnome

I am not asking for much, just 10% smaller would be awesome. Or even less, I don't want to break the game or cause exploits.

I took a look at the eqemu git and found this in Server/mob.cpp line 2240:
https://github.com/EQEmu/Server/blob...7/zone/mob.cpp
Code:

void Mob::ChangeSize(float in_size = 0, bool bNoRestriction) {
        // Size Code
        if (!bNoRestriction)
        {
                if (this->IsClient() || this->petid != 0)
                        if (in_size < 3.0)
                                in_size = 3.0;


                        if (this->IsClient() || this->petid != 0)
                                if (in_size > 15.0)
                                        in_size = 15.0;
        }


        if (in_size < 1.0)
                in_size = 1.0;

        if (in_size > 255.0)
                in_size = 255.0;
        //End of Size Code
        this->size = in_size;
        SendAppearancePacket(AT_Size, (uint32) in_size);
}

I propose something like the following change to implement a new gnome shrink minimum:

Code:

void Mob::ChangeSize(float in_size = 0, bool bNoRestriction) {
        // Size Code
        if (!bNoRestriction)
        {
                if (this->IsClient() || this->petid != 0)
                        if (in_size < 3.0 && this->GetRace() != GNOME)
                                in_size = 3.0;
                        else if (in_size < 2.8 && this->GetRace() == GNOME)
                                in_size = 2.8;



                        if (this->IsClient() || this->petid != 0)
                                if (in_size > 15.0)
                                        in_size = 15.0;
        }


        if (in_size < 1.0)
                in_size = 1.0;

        if (in_size > 255.0)
                in_size = 255.0;
        //End of Size Code
        this->size = in_size;
        SendAppearancePacket(AT_Size, (uint32) in_size);
}

This is my first time looking at eqemu source and I do not have a setup to test this change.

If you are involved with p99 and you have any power, I implore you to at least test this out. This would be the best thing to happen to anything... EVER. I will do any coding jobs no one else wants if this happens. Though I am but humble casual scum, I can only pray my voice is heard. Please address this injustice.

Sincerely,
Lord C

Lord C 11-18-2015 06:43 PM

In honor of the close kinship between gnomes and leprechauns, a brief limerick:

There once was a gnome named Lord C
With a dream of becoming more wee
He drank a potion to shrink
But you'd be wrong to think
That it worked, he is stuck, at size 3

Sunderfury 09-26-2019 09:48 AM

While providing code is A+ effort, resolving due to lack of evidence


All times are GMT -4. The time now is 10:45 PM.

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