Jump to content

wouter2004

Advanced members
  • Content Count

    29
  • Joined

  • Last visited

Community Reputation

3 Neutral

1 Follower

About wouter2004

  • Rank
    Cabin Boy

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. SynLook is already there in almost all faiy.lua functions, but nothing was changed on server side. When I compile the clean CO client from this forum, the fairy level is incorrect (becomes 0). When I use the precompiled CO executables, the fairy level is correctly shown. The only thing which I changed was the client executable in the system folder. Update I found the fix, the sourcecode was wrong after all: //nLevel= pGrid.GetAttr(ITEMATTR_VAL_STR) + pGrid.GetAttr(ITEMATTR_VAL_AGI) + pGrid.GetAttr(ITEMATTR_VAL_DEX) + pGrid.GetAttr(ITEMATTR_VAL_CON) + pGrid.GetAttr(ITEMATTR_VAL_STA); int nLevel= pGrid.GetInstAttr(ITEMATTR_VAL_STR) + pGrid.GetInstAttr(ITEMATTR_VAL_AGI) + pGrid.GetInstAttr(ITEMATTR_VAL_DEX) + pGrid.GetInstAttr(ITEMATTR_VAL_CON) + pGrid.GetInstAttr(ITEMATTR_VAL_STA);
  2. The strange thing is, when I downloaded the precompiled co client files, the glitch was fixed and I didn’t change the lua files on the server. I think it’s iteminfo related perhaps the pInfo is NULL. but I will look at the files you mentioned, perhaps I have an old version.
  3. When compiling the Corsair client code, I noticed that the fairy level in the form top left corner is incorrect. (see screenshot below) I noticed that the UIStartForm.ccp file, in void CStartMgr::RefreshPet the "int nLevel" is incorrectly calculated. When I change the value into "int nLevel = 100" it changes the value, but the following code does not work. CItemRecord* pInfo = GetItemRecordInfo( ID ); if(pInfo){ int nLevel = pGrid.GetAttr(ITEMATTR_VAL_STR) + pGrid.GetAttr(ITEMATTR_VAL_AGI) + pGrid.GetAttr(ITEMATTR_VAL_DEX) + pGrid.GetAttr(ITEMATTR_VAL_CON) + pGrid.GetAttr(ITEMATTR_VAL_STA); Does anyone know how to fix this? Thanks in advance!
  4. Here is fix for the mount animation which you can put in the client. I dont ask money for code, here to help
  5. Fixed the mount animation in the client, swings still dont work To get animated mounts update the following the the Character.ccp void CCharacter::FrameMove(DWORD dwTimeParam) { CSceneNode::FrameMove(dwTimeParam); if( !_isArrive ) { if( _IsMoveTimeType ) { static float dis; static D3DXVECTOR2 vTmp; dis = (float)( CGameApp::GetCurTick() - _dwStartTime ) * _fMoveSpeed; if( dis>_fMoveLen ) { setPos( (int)_vMoveEnd.x, (int)_vMoveEnd.y ); ++ if(pMount) ++ pMount->CCharacterModel::PlayPose(POSE_WAITING, PLAY_LOOP_SMOOTH, -1, 30, 1); // wouter _isArrive = true; } else { ++ if(pMount) ++ pMount->CCharacterModel::PlayPose(POSE_RUN, PLAY_LOOP_SMOOTH, -1, 30, 1); // wouter vTmp = _vMoveStart + _vMoveDir * dis; setPos( (int)vTmp.x, (int)vTmp.y ); } } else if( GetChaState()->IsTrue(enumChaStateMove) ) { // ????????ProgressRate(??????j???????)------------------------------------------------------------------------------ if( _nTurnCnt>1 ) _fStepProgressRate = _fStepProgressRate + _fStep * CWaitMoveState::GetMoveRate() / (float)_nTurnCnt; else _fStepProgressRate = _fStepProgressRate + _fStep * CWaitMoveState::GetMoveRate(); _CalPos(_fStepProgressRate); if(_fStepProgressRate >= 1.0f) { ++ if(pMount) ++ pMount->CCharacterModel::PlayPose(POSE_WAITING, PLAY_LOOP_SMOOTH, -1, 30, 1); // wouter _isArrive = true; } else if( _isStopMove ) { ++ if(pMount) ++ pMount->CCharacterModel::PlayPose(POSE_WAITING, PLAY_LOOP_SMOOTH, -1, 30, 1); // wouter _isArrive = true; } else { ++ if(pMount) ++ pMount->CCharacterModel::PlayPose(POSE_RUN, PLAY_LOOP_SMOOTH, -1, 30, 1); // wouter } } }
  6. I am wondering if someone has a fix for the fairy level in the HUD top left corner. I noticed that the nLevel in the UIStartForm.ccp in "void CStartMgr::RefreshPet" the nLevel is not properly calculated. When I put in a fixed value like 100, then I see this in game, but the calculation in the HUD does not work, while it works in the inventory. Please help. Thanks in advance!
  7. Sorry I didn't know there was a more advanced version of the mounts in game. I made some client tweaks, but on only in the Character.ccp, which means others will not see the different mount poses (walking and waiting). For this you need to code the CharacterModel.ccp
  8. It is already for free on these forums, right? I simply copied the code for the character.ccp and made the changes in the iteminfodb. Is this what you mean?
  9. Hi everyone, My friends and I are running a CO client and server and I was wondering where in the client source code I can extend the camera range. We have already increased the resolution to 1400x900 and the FPS to 60, with the desired effect. However the camera remains an ugly issue. PS> I know that the CameraConf.lua can be used to extend the range and change the camera angle, but I want to get rid of the ugly blue borders and extend the view range. Help would be much appreciated
  10. many thanks this will help a lot. using the counter and multiplying with the GetItemStackSize, will indeed with the right results
  11. Hi everyone I have successfully compiled the code and it works fine for me, but for some reason mounting to a swing gives me a dump. Is there a reason for this? 10-02 23:43:04SC_CharacterActionAccess Violation The thread attempted to read from or write to a virtual address for which it does not have the appropriate access xxxx\src\intel\strncpy.asm(157) : Game.exe at strncpy() xxxx\client\src\character.cpp(1104) : Game.exe at CCharacter::setName() xxxx\client\src\character.cpp(1733) : Game.exe at CCharacter::UpdataItem() xxxx\client\src\character.cpp(1553) : Game.exe at CCharacter::UpdataFace() xxxx\client\src\netprotocol.cpp(1535) : Game.exe at NetChangeChaPart() xxxx\client\src\packetcmd_sc.cpp(1118) : Game.exe at SC_CharacterAction()
  12. Sorry for bumping up this old topic, but I need some help with this script. The script only return 1 count, while I have 8 gems with level 1 stacked in one inventory slot. Most likely the script below expect that each gem has their own inventory slot. Is there a function to check the level of stacked items? Also when I have more than 8 gems in one slot, for example 12 times a level 1 gem, the script removes 8 and converts all remaining gems into level 4. function HasStone(character, stoneID, stoneLv, stoneCount) local amount = CheckBagItem(character,stoneID) if amount < stoneCount then return LUA_FALSE end local bagSize = GetKbCap(character) local count = 0 for i=1, bagSize do local gem =GetChaItem(character, 2, i) if gem ~= nil then local id =GetItemID(gem) if id == stoneID then local lv = Get_StoneLv(gem) if lv == stoneLv then count = count + 1 end end if count >= stoneCount then return LUA_TRUE end end end return LUA_FALSE end I have now reversed the script and changed it into a check for the exact amount and exact level. Quick and dirty, but this new version works. function HasStone(character, stoneID, stoneLv, stoneCount) local amount = CheckBagItem(character,stoneID) if amount ~= stoneCount then SystemNotice(character,"You need exactly "..stoneCount.." gems in your inventory. Amount = "..amount) return LUA_FALSE end local bagSize = GetKbCap(character) for i=0, bagSize do local gem =GetChaItem(character, 2, i) if gem ~= nil then local id =GetItemID(gem) if id == stoneID then local lv = Get_StoneLv(gem) if lv ~= stoneLv then SystemNotice(character,"Found gem level = "..lv) SystemNotice(character,"Remove the high level gems from your inventory") return LUA_FALSE end end end end SystemNotice(character,"Succesful! "..amount.." gems of level "..stoneLv.." detected.") return LUA_TRUE end If anyone has a better solution for the stacked items, level check I am open for suggestions.
  13. Hi everyone, My friends and I play on a private CO server and we want to extend the item list with new items of Winter Island. I created a new iteminfo.txt with all the items (starting from 5901 till 6808), which I extracted from the iteminfo.txt of PKO. On server side it works fine, on client side I get these strange glitches, like statbonus attributes in common drops etc. When I just extract the iteminfo.bin from CO with the Deguix Decompiler, I also get these strange unicode characters in the text file. Before I can change the iteminfo.txt back into a iteminfo.bin, I have to manually correct all these unicode characters. See example below. Question 1: is there a clean way to extract the iteminfo.bin file with the Deguix Decompiler, without the unicode characters? --> I tried version 1 and 2 already, which seems to be the only compatible version with CO "decompile_bin(iteminfo, 2, ......" --> no matter what version I try, the unicode characters keeps reoccuring in the resulting iteminfo.txt file. Question 2: is there someone who has a clean version of the iteminfo.bin, compatible with the CO client, which contains the items 5901 till 6808 for winter island? Help is much appreciated! Thanks in advance.
  14. Thanks great initiative! I was wondering can you make an overview of bug fixes and tweaks? I have already made some changes in the source code myself and want to know if this is covered. However the random disconnnect issues, remains super annoying. I really hope someone can find the reason for this. anyway thanks
  15. Can you please elaborate? Are you talking about recompiling the "Server\source\Common\Server\sdk\Lib\LIBDBC.lib" like: "Server\source\Common>call devenv Server/sdk/Proj/LIBDBC.sln /build release"
×
×
  • Create New...