Jump to content

WeedHex

Premium
  • Posts

    1547
  • Joined

  • Last visited

  • Days Won

    33
  • Feedback

    0%

Everything posted by WeedHex

  1. Item 1991 isn't in item_proto. What are you waiting for?
  2. Ehhhm sorry I'm not LUA addict ahaha. I did with c++ an other way (based on what I need to check) because happened some guys exploit the begin_other_pc_block in some server. (With change channel and shits like that) Of course if is only for level you can check it again in the dungeon and kick him out, but better to be careful in big servers about these things. PS. WTF only I see my messages x2?
  3. if party.is_party() and party.is_leader() then ... local errLev = false local errMemb = {} local pids = {party.get_member_pids()} for i, pid in next, pids, nil do -->>>>>>>>>>>>> q.begin_other_pc_block(pid) if pc.get_level() < DUNGEON_LEVEL then errLev = true table.insert(errMemb, pc.get_name()) end q.end_other_pc_block() --<<<<<<<<<<<<< end if errLev then lorem... return end end Try like this example for LUA, the commonest. I made a safest function for it. The example above is not 100% safe.
  4. Check msa file of the mount (server/client side) about MotionDuration & Accumulation
  5. Remove from quest_list (file where are names of quest to compile). Btw you are using old things.
  6. It was a question sorry... Are you sure about what you're doing? Maybe it's an SDK problem if you build this source for the first time. Did you verify the directory in filters?
  7. You should show us the item_proto from server and client. Be sure that the 'size' field is correct.
  8. Hmmm, it's not properly a bug. It's happening because you are not making any movement in the victim. Anyway thanks to this thread, after some check, I figured out that may be this the problem: File ActorInstanceSync.cpp: Replace the function void CActorInstance::__Push(int x, int y) { const D3DXVECTOR3& c_rv3Src=GetPosition(); const D3DXVECTOR3 c_v3Dst=D3DXVECTOR3(x, -y, c_rv3Src.z); const D3DXVECTOR3 c_v3Delta=c_v3Dst-c_rv3Src; const auto LoopValue = 100; const D3DXVECTOR3 inc = c_v3Delta / LoopValue; D3DXVECTOR3 v3Movement(0.0f, 0.0f, 0.0f); IPhysicsWorld* pWorld = IPhysicsWorld::GetPhysicsWorld(); if (!pWorld) return; for (int i = 0; i < LoopValue; ++i) { if (pWorld->isPhysicalCollision(c_rv3Src + v3Movement)) { ResetBlendingPosition(); return; } v3Movement += inc; } SetBlendingPosition(c_v3Dst); if (IsResistFallen()) return; if (!IsUsingSkill()) { const int len = sqrt(c_v3Delta.x*c_v3Delta.x+c_v3Delta.y*c_v3Delta.y); if (len > 150.0f) { InterceptOnceMotion(CRaceMotionData::NAME_DAMAGE_FLYING); PushOnceMotion(CRaceMotionData::NAME_STAND_UP); } } } Yep, as you can see I just moved the order of execution of a statement. I leave the theory to you.
  9. After some work of refactor etc. I noticed that the "E" letter became strange like this screen: [Hidden Content] Have you ever seen this? ò.O I was thinking maybe encoding file error? Cython? Or?
  10. case EVENT_TYPE_WINDOW_SIZE: { int iWidth = atoi(GetArgument("width", ScriptCommand.argList)); int iHeight = atoi(GetArgument("height", ScriptCommand.argList)); PyCallClassMemberFunc(pEventSet->poEventHandler, "OnSize", Py_BuildValue("(ii)", iWidth, iHeight)); break; } uiquest.py def OnSize(self, width, height): self.board.SetSize(width, height) self.SetCenterPosition() Passing 2 arguments by default. If you extended it, be careful everywhere!
  11. This system has also problems with the guild's skills.
  12. MAP_ALLOW broken PS. I hope you didn't post real password etc. in config...
  13. m_dwMainActorEmpire = 0; //What about this? Is this line right? Shit to rewrite... You should have bool CPythonNetworkStream::RecvMainCharacter2_EMPIRE() bool CPythonNetworkStream::RecvMainCharacter3_BGM() bool CPythonNetworkStream::RecvMainCharacter4_BGM_VOL() Where m_dwMainActorEmpire = mainChrPacket.byEmpire; There assignment is ok because m_dwMainActorEmpire is a protected member of the class. This happened probably because in past they split the packet's members in more than 1 packet for some reason (Just my first opinion after read your thread).
  14. With a bit of wine. I didn't resist sorry! Drag new files (from right directory) into the right Visual Studio project. It will add automatically the filters. You can also click in the project and select "Add exist file".
×
×
  • 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.