Uh oh
Moderator: Team Members
Forum rules
READ THE STICKY ON PROPER BUG SUBMISSION FORMAT BEFORE POSTING.
READ THE STICKY ON PROPER BUG SUBMISSION FORMAT BEFORE POSTING.
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Uh oh
Small issue. I am doing a few new quest, one involves sparrow hawks. The issue is the corpse does not drop to the ground, they are staying up in the upper axis, not dropping down.
Resident Dirty Hippy
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
Visually the body is at the same Y as where the mob died. Since these are birds, in the air, the body is in the air. This proposes a problem.
Resident Dirty Hippy
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
Hopefully this will help explain it. When the elevated spawn dies, it keeps the same Y axis. Could this be a thing with states? My memory of live is vague but didn't the birds dive during combat? If they are supposed to dive during combat maybe that is what brings them down on the Y axis. The more I think about that though, it probably would not work. As I notice the birds do dive if they have to come to you. I think we need something like a GetBestYAxis. I am not sure a solution to this but it does need to get fixed. I also know it is not just zone related to the one I am working on, Antonica. I set the same NPC up in South Qeynos and the problem persisted. Kind of thinking of it, this is somewhat similar to the "chest" problem I had before.
I searched the forums for quite a while and this thread does mention the y-offset a tad. But from what I know of these offsets they are random....right? So how does that help. If you set the y-offset to a value, you cannot always guarantee it will be above ground. Setting the hawk to ground level and the y-offset to something like 20, and killing the hawk..the body still stayed in the air.
I searched the forums for quite a while and this thread does mention the y-offset a tad. But from what I know of these offsets they are random....right? So how does that help. If you set the y-offset to a value, you cannot always guarantee it will be above ground. Setting the hawk to ground level and the y-offset to something like 20, and killing the hawk..the body still stayed in the air.
You do not have the required permissions to view the files attached to this post.
Resident Dirty Hippy
- xinux
- Team Member
- Posts: 680
- Joined: Wed Mar 10, 2010 11:10 am
- Location: Destroyer of Servers
Re: Uh oh
If i had to guess I would say setting the mobs initial_state from 49156 to say 16512 when it dies will probably bring it down to the ground.
EQ II - Build=1360 (Orig) - Build=1360 (DoF) - Build=2654 (KoS) - Build=3375 (Classic) - Build=3554 (EoF)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
Agreed, but what do we need to do it via script? That seems a bit kludgy. I agree that will work. Do you have a list of all of the states? The ones i have do not see complete.
Resident Dirty Hippy
- xinux
- Team Member
- Posts: 680
- Joined: Wed Mar 10, 2010 11:10 am
- Location: Destroyer of Servers
Re: Uh oh
I would do it in the code not via lua script personally. Jabantiz would know better since it has been years since I've looked at it along with the list of states.
EQ II - Build=1360 (Orig) - Build=1360 (DoF) - Build=2654 (KoS) - Build=3375 (Classic) - Build=3554 (EoF)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
Would it be messy to have a field in the database called "death state" and change the state in the function called up death? The various states are new to me, just experiencing them now.
Resident Dirty Hippy
- xinux
- Team Member
- Posts: 680
- Joined: Wed Mar 10, 2010 11:10 am
- Location: Destroyer of Servers
Re: Uh oh
To me that just seems abit much since this really only needs to be done with flying mobs unless you are seeing it in other situations.
EQ II - Build=1360 (Orig) - Build=1360 (DoF) - Build=2654 (KoS) - Build=3375 (Classic) - Build=3554 (EoF)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)
-
Jabantiz
- Lead Developer
- Posts: 2912
- Joined: Wed Jul 25, 2007 2:52 pm
- Location: California
Re: Uh oh
initial_states mostly come from packet collects, there is no list that I am aware of. You could add to the code to set the initial_State to 16512 for all spawns on death, don't think that would have an ill effect on others but not sure. There is also no way for the server to determine accurate locations as it does not have knowledge of the level geometry, best that could be done is guess based off of players current y but that will still result in odd behavior most of the time.
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
That worked guys. I am going to clean up my code a bit and I will post what I put in my SVN some time tomorrow.
Resident Dirty Hippy
- Gangrenous
- Posts: 812
- Joined: Sun Apr 24, 2016 6:54 am
- Characters: Dinsmoor
Re: Uh oh
Anywhere in a
in zoneserver.cpp, around line 3996 or so....
add
Code: Select all
if (dead->IsNPC() && !dead->IsPet()) {add
Code: Select all
dead->SetInitialState(16512, false); // This will make aerial npc's fall after deathResident Dirty Hippy
- Cynnar
- Project Leader
- Posts: 738
- Joined: Sat Sep 27, 2014 1:22 am
- EQ2Emu Server: Eq2emulator
- Characters: Vlash
Veinlash
Taragak
Cynnar
Who is online
Users browsing this forum: No registered users and 0 guests