A Few Suggestions

Play Now

Sanjian

Just a Mir2 Fan
Veteran
Apr 28, 2011
4,028
5
2,200
390
East Sussex
though i would give the server a go tonight and its been very enjoyable.

was awesome to see crystal(plus your work) handle well over 350 players so great job.

Here are my suggestions..

1. Please remove the ~ between stats and replace it with a -
4 - 5 looks a lot nicer...

2. Add in pete107's Run/Walking code like original euro when when you hit an object you walk round it instead of stop dead.

https://github.com/Suprcode/mir2/pull/268/files#diff-3d78b08a721ba384536a10b85b899f1fR9365

just dont include this secion,

Between lines

9529 and 9542 on the link above

otherwise players walk round mobs when clicking them and its irritating, other than that it is a spot on bit of code and i cant play without it >.<





3. I really like how your added items are green. its what i use on LOF but it would be nice to see the item glows on the floor...

if you take a look here:

ItemObject.cs Server Side and find this

Code:
        public ItemObject(MapObject dropper, UserItem item, Point manualpoint)
        {
            ExpireTime = Envir.Time + Settings.ItemTimeOut * Settings.Minute;

            Item = item;

            if (Item.IsAdded)
                NameColour = Color.LimeGreen;
            else
            {
                if (item.Info.Grade == ItemGrade.None)
                    NameColour = Color.White;
                if (item.Info.Grade == ItemGrade.Common)
                    NameColour = Color.White;
                if (item.Info.Grade == ItemGrade.Rare)
                    NameColour = Color.DeepSkyBlue;
                if (item.Info.Grade == ItemGrade.Legendary)
                    NameColour = Color.DarkOrange;
                if (item.Info.Grade == ItemGrade.Mythical)
                    NameColour = Color.Plum;
            }

            CurrentMap = dropper.CurrentMap;
            CurrentLocation = manualpoint;
        }

then take those colours and get the argb values

then in ItemObject Client Side look in here (This is taken directly from my client and your welcome to use it as you see fit)

Code:
        public void Load(S.ObjectItem info)
        {
            Name = info.Name;
            NameColour = info.NameColour;
            BodyLibrary = Libraries.LOFFloorItems;

            CurrentLocation = info.Location;
            MapLocation = info.Location;
            GameScene.Scene.MapControl.AddObject(this);
            DrawFrame = info.Image;

            Size = BodyLibrary.GetTrueSize(DrawFrame);

            DrawY = CurrentLocation.Y;

            if (NameColour == Color.FromArgb(255, 50, 205, 50)) // IsAdded
            {
                LightColour = Color.FromArgb(255, 50, 205, 50);
                Light = 3;
                Effects.Add(new Effect(Libraries.LOFDialog, 498, 10, 1200, (MapObject)this) { Light = -1, Repeat = true, Blend = true, Rate = 0.8F, Start = 498 }); // <-- Add effect frames
            }
            else if (NameColour == Color.FromArgb(255, 0, 191, 255)) // Rare
            {
                LightColour = Color.FromArgb(255, 0, 191, 255);
                Light = 3;
                Effects.Add(new Effect(Libraries.LOFDialog, 508, 10, 1200, (MapObject)this) { Light = -1, Repeat = true, Blend = true, Rate = 0.8F, Start = 508 }); // <-- Add effect frames
            }
            else if (NameColour == Color.FromArgb(255, 255, 140, 0)) // Legendary
            {
                LightColour = Color.FromArgb(255, 255, 140, 0);
                Light = 3;
                Effects.Add(new Effect(Libraries.LOFDialog, 518, 10, 1200, (MapObject)this) { Light = -1, Repeat = true, Blend = true, Rate = 0.8F, Start = 518 }); // <-- Add effect frames
            }
            else if (NameColour == Color.FromArgb(255, 221, 160, 221)) // Mythical
            {
                LightColour = Color.FromArgb(255, 221, 160, 221);
                Light = 3;
                Effects.Add(new Effect(Libraries.LOFDialog, 528, 10, 1200, (MapObject)this) {[COLOR=#ff0000] Light = -1, [/COLOR]Repeat = true, Blend = true, Rate = 0.8F, Start = 528 }); // <-- Add effect frames
            }
        }


i highlighted one in red to highlight that i use -1 so no light is drawn as it causes issues onscreen sometimes displaying a light in the top left corner of the map, but the glow looks alot sweeter without it.

there is a lib i released that you can find here

https://www.lomcn.org/forum/showthread.php?99729-Drop-Effect-Lib

i really think it would look good on your server :)


thats my suggestions for now, and well done on the server, so far so good :thumbsup:

---------- Post Merged at 01:09 AM ---------- Previous Post was at 01:06 AM ----------

Additional i forgot in my Client Side ItemObjects


Code:
        public override void Draw()
        {
            if (BodyLibrary != null)
                BodyLibrary.Draw(DrawFrame, DrawLocation, DrawColour);

            DrawBehindEffects(true);
        }


and


Code:
        public override void DrawBehindEffects(bool effectsEnabled)
        {
            for (int i = 0; i < Effects.Count; i++)
            {
                Effects[i].Draw();
            }
        }
 
Last edited: