KTRose Source code release

New forum to discuss KTRose code

Moderators: osRose dev team, ospRose dev team, osiRose dev team, Moderators

Re: KTRose Source code release

Postby PurpleYouko on Wed Mar 19, 2014 2:42 pm

Exordium wrote:Can you reupload it kitty? because some files are missing. i dont know specifically but it has some missing files

1) Who is this "kitty"
2) What do you need? Client or server? The server is definitely complete. My entire (working) KTRose server is connected to the SVN and gets updated every week or two whenever I do anything with it. I most recently modified the logging functions on the common code. It was uploaded this morning.
I can't speak for the client since somebody else uploaded it in the first place. However I know several people who have downloaded it and made it work just fine exactly as it is.

I also finally had the time to look at that error posted by Tonnie earlier in the thread.
What I found was that this section of code is somewhat different than the head revision in my SVN.
There are only two places in the whole code base where a 0x753 packet was ever used.
First is in ingmcmds.cpp but it is commented out because it didn't work properly.
See below
  1.  
  2. bool CWorldServer::pakGMHeal( CPlayer* thisclient, int hpamount, int mpamount )
  3. {
  4.     //this one works with the modified trose. pak 0x7ec does not work with base 112 client
  5.     thisclient->Stats->HP = hpamount;
  6.     thisclient->Stats->MP = mpamount;
  7.     BEGINPACKET( pak, 0x7ec );
  8.     ADDWORD( pak, hpamount );
  9.     ADDWORD( pak, mpamount );
  10.     thisclient->client->SendPacket( &pak );
  11.  
  12.     //experimental heal command. Might not work but if it does then we are sorted.
  13.     //BEGINPACKET( pak, 0x7d5 );
  14.     //ADDDWORD   ( pak, thisclient->CharInfo->charid );
  15.     //ADDWORD    ( pak, thisclient->clientid );
  16.     //ADDWORD    ( pak, thisclient->Stats->MaxHP );
  17.     //ADDWORD    ( pak, thisclient->Stats->HP );
  18.     //ADDDWORD   ( pak, 0x01000000 );
  19.     //ADDDWORD   ( pak, 0x0000000f );
  20.     //ADDWORD    ( pak, 0x1388 );
  21.     // didn't work either
  22.  
  23.     //let's try this
  24.     //BEGINPACKET( pak, 0x753 );
  25.     //ADDWORD    ( pak, thisclient->clientid );         // USER ID
  26.     //ADDWORD    ( pak, thisclient->Stats->HP );            // CURRENT HP
  27.     //ADDWORD    ( pak, thisclient->Stats->MP );            // CURRENT MP
  28.     //well it kind of works. You get healed OK but with a pillar of light.
  29.     //works Ok here but we need a heal without effects for other places
  30.     //also resets the zone time lol. Apparently this is not a good plan
  31.  
  32.     //thisclient->client->SendPacket( &pak );
  33.     Log(MSG_INFO,"GM Heal used for HP %i MP %i",hpamount,mpamount);
  34.     SendPM(thisclient, "Set HP to %i and MP to %i",hpamount,mpamount);
  35.     return true;
  36. }


The second (and most likely the one where the issue is happening is in WorldPackets.cpp and definitely is related to respawning.
however the exact code is quite different to what is shown in tonnie's picture.
here is the way that section of code should look.
  1.  
  2. if( thisclient->Party->party )
  3.     {
  4.         BEGINPACKET( pak, 0x7d5 );
  5.         ADDDWORD   ( pak, thisclient->CharInfo->charid );
  6.         ADDWORD    ( pak, thisclient->clientid );
  7.         ADDWORD    ( pak, thisclient->GetMaxHP( ) );
  8.         ADDWORD    ( pak, thisclient->Stats->HP );
  9.         ADDDWORD   ( pak, 0x01000000 );
  10.         ADDDWORD   ( pak, 0x0000000f );
  11.         ADDWORD    ( pak, 0x1388 );
  12.         thisclient->Party->party->SendToMembers( &pak, thisclient );
  13.     }
  14.     BEGINPACKET( pak, 0x721 );
  15.     ADDWORD    ( pak, 0x0022 );
  16.     ADDWORD    ( pak, 0x0002 );
  17.     ADDWORD    ( pak, 0x0000 );
  18.     thisclient->client->SendPacket( &pak );
  19.  
  20.     RESETPACKET( pak, 0x753 );
  21.     ADDWORD    ( pak, thisclient->clientid );           // USER ID
  22.     ADDWORD    ( pak, thisclient->Stats->HP );      // CURRENT HP
  23.     ADDWORD    ( pak, thisclient->Stats->MP );      // CURRENT MP
  24.     ADDDWORD   ( pak, thisclient->CharInfo->Exp );              // CURRENT EXP
  25.     ADDDWORD   ( pak, 0x00000000 );                     // LVL EXP (UNSUSED)
  26.     // thanks to StrikeX to post this source
  27.         //[economy]
  28.         /*
  29.  

notice there is an entire 0x721 packet missed out from his source. (0x721 packet resets base stats prior to respawning)

there's not a whole lot I can do to help people with KTRose source when they aren't actually using it from my SVN. :?

Once again, the SVN for KTRose source is https://subversion.assembla.com/svn/ktrose-source/
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4692
Joined: Fri Aug 10, 2007 2:05 pm

Re: KTRose Source code release

Postby XxXshidoXxX on Tue Apr 01, 2014 1:55 am

KTRose server is connected to the SVN and gets updated every week or two whenever I do anything with it. I most recently modified the logging functions on the common code. It was uploaded this morning.


Do you have a Changelog by any chance ?
I'm a bit curious about the changes you've made since the last time i checked (Please don't force yourself to make one if you don't have one, i'll just check with the SVN tools )

If you're still working even just a bit on it i'm glad, you're really being a ray of light in the shadow of my nostalgia there, i'm just so sad we're not as numerous as we were some years ago...

~Fighting !
My collection ( Tools, clients sources...)
https://mega.nz/#F!AdcFnQDL!sKp3O9tWGGdWvLEj_EYfwA
osrose mobile project
viewtopic.php?f=34&t=5787
OsRose Mobile development + Titan Rose redesign
https://github.com/shid0x
XxXshidoXxX
osiRose dev
osiRose dev
 
Posts: 445
Joined: Mon Aug 27, 2007 11:44 am

Re: KTRose Source code release

Postby PurpleYouko on Tue Apr 01, 2014 2:22 pm

Nope sorry. I don't have a changelog.
Most of the changes have been little things like updating logging and fixing some minor stuff in AIP handling.

most of my rose dev time right now is taken up with figuring out the evo source (V137) and making it work with an osrose server (drop-rev somewhere between DR1 and DR2). Any improvements there also get transferred across to the KT source.
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4692
Joined: Fri Aug 10, 2007 2:05 pm

Re: KTRose Source code release

Postby XxXshidoXxX on Wed Apr 02, 2014 10:12 pm

PurpleYouko wrote:Nope sorry. I don't have a changelog.
Most of the changes have been little things like updating logging and fixing some minor stuff in AIP handling.

most of my rose dev time right now is taken up with figuring out the evo source (V137) and making it work with an osrose server (drop-rev somewhere between DR1 and DR2). Any improvements there also get transferred across to the KT source.


Oh dear me, so this actually got released ?
Too bad i'm not in the mood anymore, 5 years ago i would have spend day and night over it :mrgreen:

Is the source horribly written ? ( this would be my guess :p )
My collection ( Tools, clients sources...)
https://mega.nz/#F!AdcFnQDL!sKp3O9tWGGdWvLEj_EYfwA
osrose mobile project
viewtopic.php?f=34&t=5787
OsRose Mobile development + Titan Rose redesign
https://github.com/shid0x
XxXshidoXxX
osiRose dev
osiRose dev
 
Posts: 445
Joined: Mon Aug 27, 2007 11:44 am

Re: KTRose Source code release

Postby PurpleYouko on Thu Apr 03, 2014 2:23 pm

Some of it is pretty nasty.

it looks as if each different function was written by a different person and in many cases it's actually signed as such.

This results in rather extensive use of chaining function calls through private classes to get anything done.
For example to load an STB it calls an Open function which then calls a series of VFS configuration code, creates one of two different types of filesystem object (each of which has it's own file open function), calls one of those open functions and finally returns an empty filesystem structure and an open file
The it has to read the actual data so it calls a whole series of open and read functions in a nest that goes down about another 5 levels before finally giving us the actual data from the STB

It's kind of elegant in a perverse sort of way.
Just takes forever to trace what the hell it's doing when you first look at it.
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4692
Joined: Fri Aug 10, 2007 2:05 pm

Re: KTRose Source code release

Postby wolfwing on Fri Apr 04, 2014 12:16 pm

Yes it's shit.
wolfwing
Clown
Clown
 
Posts: 500
Joined: Tue Mar 03, 2009 9:50 am

Re: KTRose Source code release

Postby PurpleYouko on Tue Apr 15, 2014 7:17 pm

KTRose SVN has been updated to fix the death bug.
you can now die as much as you like without crashing the server so have fun with that :lol:

It seems to have modified the respawn positions though which is kind of strange. I need to go back in and check that in a bit but it's going to have to wait til another day
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4692
Joined: Fri Aug 10, 2007 2:05 pm

Re: KTRose Source code release

Postby XxXshidoXxX on Tue Apr 15, 2014 7:35 pm

PurpleYouko wrote:KTRose SVN has been updated to fix the death bug.
you can now die as much as you like without crashing the server so have fun with that :lol:

It seems to have modified the respawn positions though which is kind of strange. I need to go back in and check that in a bit but it's going to have to wait til another day


Well being able to die is sure a good thing :)
Nice finding purple !
My collection ( Tools, clients sources...)
https://mega.nz/#F!AdcFnQDL!sKp3O9tWGGdWvLEj_EYfwA
osrose mobile project
viewtopic.php?f=34&t=5787
OsRose Mobile development + Titan Rose redesign
https://github.com/shid0x
XxXshidoXxX
osiRose dev
osiRose dev
 
Posts: 445
Joined: Mon Aug 27, 2007 11:44 am

Re: KTRose Source code release

Postby PurpleYouko on Wed Apr 23, 2014 9:07 pm

Couple of new updates

1) Modified some code that was preventing NPCs from performing skills such as AOE buffs.
They can now use skills from AIP without a problem

2) Found a weird bug that was crashing the server when a TD mob was spawned. I say weird because this all worked fine back when I was running this source as an actual server.

Don't you just hate it when stuff that used to work flawlessly suddenly goes belly up without any obvious reason? :(
Meh!!! Stupid code.......

Well it all works now after having to code some special exceptions for using AIP number 999 anyway
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4692
Joined: Fri Aug 10, 2007 2:05 pm

Re: KTRose Source code release

Postby laetii on Fri Apr 25, 2014 12:46 pm

Yes, really a good work ! Buff bots can now be created correctly !

PurpleYouko , just think to update again your SVN sources to prevent the little mistake you left in "charfunctions" file =)

Thanks !!
laetii
Little soul
Little soul
 
Posts: 3
Joined: Tue Apr 22, 2014 11:22 am

PreviousNext

Return to KTRose Release

Who is online

Users browsing this forum: No registered users and 1 guest

cron