Jump to content

My Fix Desert Turtle


TokiSan

Recommended Posts

  • VIP

The Desert Turtle presents several Problems:

1) He always teleports on you throughout the desert map, you have no way of escaping him.
2)Sometimes the animation freezes.
3) Can only be attacked by the Greatsword.


1) Its cause is to be found in the server sources:

On src_server/game/src/char_state.cpp:

//Search:

			if (GetRaceNum() == 2191 && number(1, 20) == 1 && get_dword_time() - m_pkMobInst->m_dwLastWarpTime > 1000)
			{
				
				float fx, fy;
				GetDeltaByDegree(victim->GetRotation(), 400, &fx, &fy);
				long new_x = victim->GetX() + (long)fx;
				long new_y = victim->GetY() + (long)fy;
				SetRotation(GetDegreeFromPositionXY(new_x, new_y, victim->GetX(), victim->GetY()));
				Show(victim->GetMapIndex(), new_x, new_y, 0, true);
				GotoState(m_stateBattle);
				m_dwStateDuration = 1;
				ResetMobSkillCooltime();
				m_pkMobInst->m_dwLastWarpTime = get_dword_time();
				return;
			}

//Replace with:

//			if (GetRaceNum() == 2191 && number(1, 20) == 1 && get_dword_time() - m_pkMobInst->m_dwLastWarpTime > 1000)
//			{
//			   
//			    float fx, fy;
//			    GetDeltaByDegree(victim->GetRotation(), 400, &fx, &fy);
//			    long new_x = victim->GetX() + (long)fx;
//			    long new_y = victim->GetY() + (long)fy;
//			    SetRotation(GetDegreeFromPositionXY(new_x, new_y, victim->GetX(), victim->GetY()));
//			    Show(victim->GetMapIndex(), new_x, new_y, 0, true);
//			    GotoState(m_stateBattle);
//			    m_dwStateDuration = 1;
//			    ResetMobSkillCooltime();
//			    m_pkMobInst->m_dwLastWarpTime = get_dword_time();
//			    return;
//			}

//Or insert in the function: "//"

 

2) The cause lies in motlist.txt. The GENERAL (BACK / FRONT) KNOCKDOWN is closely linked to the GENERAL STANDUP which in the case of the turtle is not present, hence the reason for which the animation stops:

motlist.txt:

 

On motlist.txt:

//Search:

GENERAL WAIT 00.msa 65
GENERAL WAIT1 00_1.msa 35
GENERAL RUN 03.msa 100
GENERAL NORMAL_ATTACK 20.msa 50
GENERAL NORMAL_ATTACK1 20_1.msa 50
GENERAL FRONT_DAMAGE 30.msa 100
GENERAL FRONT_DEAD 31.msa 100
GENERAL FRONT_KNOCKDOWN 32.msa 100
GENERAL BACK_DAMAGE 34.msa 100
GENERAL BACK_KNOCKDOWN 35.msa 100
GENERAL SPECIAL 24.msa 100
GENERAL SPECIAL1 25.msa 100

//Remove:

GENERAL BACK_KNOCKDOWN 35.msa 100
GENERAL FRONT_KNOCKDOWN 32.msa 100

//Like this:

GENERAL WAIT 00.msa 65
GENERAL WAIT1 00_1.msa 35
GENERAL RUN 03.msa 100
GENERAL NORMAL_ATTACK 20.msa 50
GENERAL NORMAL_ATTACK1 20_1.msa 50
GENERAL FRONT_DAMAGE 30.msa 100
GENERAL FRONT_DEAD 31.msa 100
GENERAL BACK_DAMAGE 34.msa 100
GENERAL SPECIAL 24.msa 100
GENERAL SPECIAL1 25.msa 100


3) This is the simplest problem: just go to db / mob_proto, look for vnum 2191 (Desert Turtle) and set to 0 or reduce the following values:

resist_sword
resist_dagger
resist_bell
resist_fan
resist_bow


As you can see the resist_twohand is already set to 0, which is why the damage could only be done by twohand.

  • Love 3
  • Think 2
Link to post
  • ASIKOO changed the title to My Fix Desert Turtle

Well, thank you but in this case it is not a bug it is a feature.

 

The mob was intended to teleport on you because it is supposed to go under the sand dunes to resurface on you. I think the animation bug is intended as well, to give the time to attack the turtle without her attacking you, as the mob was the hardest boss to kill at that time. Also, it was intended for warriors with two handed swords to kill the turtle, probably because they hit hard enough to break the shell of the turtle (supposition).

 

This feature was so great that it created the biggest bost fight at the time with whole guilds fighting the turtle. Also, before the implementation of ResistFist, people used to work around this by going polymorphed will full buff, wielding no weapon.

 

Thanks anyway, but I would just keep the turtle as it is!

Edited by Gurgarath (see edit history)
  • Love 1
  • Party 1
Link to post
  • VIP

yes, I knew this was going to create some "philosophical problem" about this monster.

 

They asked me to do those fixes (which for some are features) and I posted them.

 

For someone they can be fix, for others features.. I already knew this. However I wanted to share this content. 

  • Love 1
Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.