Tantra Server NODE.JS

Results 1 to 19 of 19
  1. #1
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts

    Tantra Server NODE.JS

    Hello Tantra Lover

    I wonder if it is possible to create a Tantra Server from scratch using NodeJS language.

    I want to develop it using NodeJS with MySQL as database backend.
    It will be opensource so anyone can enjoy it.

    If anyone here can provide me with a complete tantra source code, I would be appreciate it. Thanks


  2. #2
    تانترا اون لاين Lunatic is offline
    MemberRank
    Jan 2014 Join Date
    KoreaLocation
    420Posts

    Re: Tantra Server NODE.JS

    Quote Originally Posted by Jupri View Post
    Hello Tantra Lover

    I wonder if it is possible to create a Tantra Server from scratch using NodeJS language.

    I want to develop it using NodeJS with MySQL as database backend.
    It will be opensource so anyone can enjoy it.

    If anyone here can provide me with a complete tantra source code, I would be appreciate it. Thanks

    this ; https://www.mediafire.com/file/tofyo..._Code.rar/file

    OLD Source Code k3 version .| (c) to someone

  3. #3
    Member shardbytes is offline
    MemberRank
    Sep 2020 Join Date
    AlbayLocation
    79Posts

    Re: Tantra Server NODE.JS

    Thank you very much Lunatic still actively reaching us and assisting. Thank you.

  4. #4
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts

    Re: Tantra Server NODE.JS

    Hi Lunatic. Thank You for the link
    I will start from this.

    I wish I could have the source for more recent zoneserver, at least Kathana 4
    for now I will start from whatever I have.
    is this compatible with the maxi client v2.8.0.8 ?

    I learn that every zone need npcgener.txt
    Do you (or anyone) know where to get npcgener.txt for every zone for this version ?

  5. #5
    تانترا اون لاين Lunatic is offline
    MemberRank
    Jan 2014 Join Date
    KoreaLocation
    420Posts

    Re: Tantra Server NODE.JS

    Quote Originally Posted by Jupri View Post
    Hi Lunatic. Thank You for the link
    I will start from this.

    I wish I could have the source for more recent zoneserver, at least Kathana 4
    for now I will start from whatever I have.
    is this compatible with the maxi client v2.8.0.8 ?

    I learn that every zone need npcgener.txt
    Do you (or anyone) know where to get npcgener.txt for every zone for this version ?
    i don't know if that version was compatible with 2.8.0.8 version

    - - - Updated - - -

    Quote Originally Posted by Jupri View Post
    Hi Lunatic. Thank You for the link
    I will start from this.

    I wish I could have the source for more recent zoneserver, at least Kathana 4
    for now I will start from whatever I have.
    is this compatible with the maxi client v2.8.0.8 ?

    I learn that every zone need npcgener.txt
    Do you (or anyone) know where to get npcgener.txt for every zone for this version ?
    For NPCGener you can check this one https://forum.ragezone.com/f786/free-k6-version-6-9-a-940565/

  6. #6
    Account Upgraded | Title Enabled! master_unknown is offline
    MemberRank
    Oct 2004 Join Date
    https://discordLocation
    1,241Posts

    Re: Tantra Server NODE.JS

    Quote Originally Posted by Jupri View Post
    Hi Lunatic. Thank You for the link
    I will start from this.

    I wish I could have the source for more recent zoneserver, at least Kathana 4
    for now I will start from whatever I have.
    is this compatible with the maxi client v2.8.0.8 ?

    I learn that every zone need npcgener.txt
    Do you (or anyone) know where to get npcgener.txt for every zone for this version ?
    Since you are writing the server fresh, use a database to hold the information of all npcgener.txt in all zones.
    And once you have the base structure of your server, at this point its almost the same as emulating it, you upgrade your code to support higher client versions.

  7. #7
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts

    Re: Tantra Server NODE.JS

    Hi, master_unknown. Thanks for the advice. I will keep that in my mind.
    I am still figuring out the Logic behind npcgener.
    I am still searching source code for version kathana4
    I assuming that npcgener.txt will be the same for every kathana version, except for Mandara/New Mandara.

    - - - Updated - - -


  8. #8
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts

    Re: Tantra Server NODE.JS

    Finally its alive !!, even though all monster still dumb



    - - - Updated - - -

    Hello All

    I am notice some server disables dropping items and rupee, is there any reason why they do that ?

  9. #9
    تانترا اون لاين Lunatic is offline
    MemberRank
    Jan 2014 Join Date
    KoreaLocation
    420Posts

    Re: Tantra Server NODE.JS

    Quote Originally Posted by Jupri View Post
    Finally its alive !!, even though all monster still dumb



    - - - Updated - - -

    Hello All

    I am notice some server disables dropping items and rupee, is there any reason why they do that ?
    To avoid some dupe and other exploits

  10. #10
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts

    Re: Tantra Server NODE.JS

    Ooh, ok .. its make sense, although its little annoying. is it working ?

  11. #11
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts
    Hey Guys. Happy new year!

    I want to test my server for production. Any one know where to host a NodeJS server for free ?

    - - - Updated - - -

    Hey Guys. Happy new year!

    I want to test my server for production. Any one know where to host a NodeJS server for free ?

    - - - Updated - - -

    Hey Guys. Happy new year!<br><br>I want to test my server for production. Any one know where to host a NodeJS server for free ?&nbsp;&nbsp;

    - - - Updated - - -

    Hey Guys. Happy new year!<br><br>I want to test my server for production. Any one know where to host a NodeJS server for free ?&nbsp;&nbsp;

  12. #12
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts
    Hey Guys. Happy new year!I want to test my server for production. Any one know where to host a NodeJS server for free ?

  13. #13
    Account Upgraded | Title Enabled! GMDeveloper1 is online now
    MemberRank
    Mar 2013 Join Date
    331Posts
    You need vps? Or something?

  14. #14
    Enthusiast garys175 is offline
    MemberRank
    Oct 2012 Join Date
    28Posts
    can you share the struct of NotifyUpdateUIMsg ?

  15. #15
    Account Upgraded | Title Enabled! master_unknown is offline
    MemberRank
    Oct 2004 Join Date
    https://discordLocation
    1,241Posts
    There's a 2$/month Linux hosting in Virmach.

  16. #16
    Member shardbytes is offline
    MemberRank
    Sep 2020 Join Date
    AlbayLocation
    79Posts
    way to go jupri! inspiring indeed!

  17. #17
    Apprentice Jupri is offline
    MemberRank
    Sep 2021 Join Date
    12Posts
    Quote Originally Posted by garys175 View Post
    can you share the struct of NotifyUpdateUIMsg ?
    This is my best guest after inspecting the packets from katahana III server, comparing to original source. This is in javascript code but should understand.

    Code:
        /// SCP_RESP_UPDATE_UI : 0xB500
        S_SCP_RESP_UPDATE_UI : STRUCT( /// 172 bytes
            [SHORT,                 'snX'],          // 현재 x 좌표
            [SHORT,                 'snZ'],          // 현재 y 좌표
            
            [CHAR,                     'byteSpeed1'],            
            [BYTE,                     'byLevel'],      // 현 Level        
            [BYTE,                     'byCaste'],      // Caste 계급
            [BYTE,                     'byRangePlus'], // 원거리 공격 사거리 증가 수치, 보통은 0, 사거리 증가 스킬이 걸렸을 경우에는 0 초과 <===        
    
            [BYTE,                    'UNKNOWN_1'],
            [CHAR,                     'byteSpeed2'],        
            [BYTE,                    'UNKNOWN_2'],
            //[BYTE,                 'bySaveTPCost'], // TP cost 절약 수치 <===
            [BYTE,                     'byClass1'],     // 전직 단계
    
            [BYTE,                     'byClass2'],     // 세부 직업
            [BYTE,                     'byDummy1'],     //
            //[BYTE,                     'byDummy2'],     //
            [CHAR,                     'byteAS1'],    
            [CHAR,                     'byteSpeed3'],    
            //int iMoveSpeed ;   // 현 MoveSpeed
            //int iAttackSpeed ; // 현 일반 무기 기반 공격 속도, skill에는 적용이 안된다. <===
            [SHORT,                 'snAttackSpeedCorrect'], // 무기 기반 속도 증가 수치( 이 수치만큼을 더 빠르게) <===
            [SHORT,                 'snCastSpeedCorrect'], // 무기 기반이 아닌 skill 속도 증가 수치 <===
            [SHORT,                 'snDDup'],        // DD type skill의 공격력 up을 표기한다. <===
            [SHORT,                 'snKarma'],     //<===
            [INT,                     'iBramanPoint'], // 현 Braman point    
            [INT,                     'iPietyPoint'], // 현 신앙심 point <===
            [INT,                     'iTitle'],       // Title
            
            /**
            [INT,                     'iMaxPrana'],    // 최대 Prana
            [DWORD,                 'UNKNOWN_3'],
            [INT,                     'iPrana'],       // 현 Prana
            [DWORD,                 'UNKNOWN_4'],
            **/
            [INT64,                 'iMaxPrana'],    // 최대 Prana
            [INT64,                 'iPrana'],       // 현 Prana
            
            [S_CHAKRA,                'krgChakra', 2], // 0:base chakra, 1:changed chakra
            
            [SHORT,                 'snCPRemaining'],// 남은 Chakra Point
            [SHORT,                 'snSPRemaining'],// 남은 Skill Point
            [INT,                     'iHP'],          // 현 HP
            [INT,                     'iMaxHP'],       // 최대 HP
            [INT,                     'iHPRecovery'],  // HP회복량/초
            [INT,                     'iTP'],          // 현 TP
            [INT,                     'iMaxTP'],       // 최대 TP
            [INT,                     'iTPRecovery'],  // TP회복량/초
            [SHORT,                 'snAC'],         // AC
            [SHORT,                 'snAttackRate'], // Attack Rate
            [SHORT,                 'snDodgeRate'],  // Dodge Rate
            [SHORT,                 'snCasteSPRemaining'],    // <===
    
            [CHAR,                     'byteSpeedCorrection'],    
            [CHAR,                     'byteAS2'],    
            [CHAR,                     'byteSpeedParity'],    
            [CHAR,                     'byteAS3'],        
    
            [S_RESIST,                'kResist'],      // 저항
            [S_DAMAGE,               'kDamage'],        // damage
            [INT,                     'iGold'],       // 돈
            [INT,                     'iSkillIcon'], // bit vector, 관련된 스킬 ICON  <===
            
            [INT64,                    'iAffections'],
            //[DWORD,                    'iAffections', 2],  //__int64 <===
    
            [CHAR,                     'byteAS4'],    
            [CHAR,                     'byteParity'],
            [SHORT,                 'snDummy'],
    
            [DWORD,                    'UNKNOWN_5', 3]
        )

  18. #18
    Enthusiast garys175 is offline
    MemberRank
    Oct 2012 Join Date
    28Posts
    Quote Originally Posted by Jupri View Post
    This is my best guest after inspecting the packets from katahana III server, comparing to original source. This is in javascript code but should understand.

    Code:
        /// SCP_RESP_UPDATE_UI : 0xB500
        S_SCP_RESP_UPDATE_UI : STRUCT( /// 172 bytes
            [SHORT,                 'snX'],          // 현재 x 좌표
            [SHORT,                 'snZ'],          // 현재 y 좌표
            
            [CHAR,                     'byteSpeed1'],            
            [BYTE,                     'byLevel'],      // 현 Level        
            [BYTE,                     'byCaste'],      // Caste 계급
            [BYTE,                     'byRangePlus'], // 원거리 공격 사거리 증가 수치, 보통은 0, 사거리 증가 스킬이 걸렸을 경우에는 0 초과 <===        
    
            [BYTE,                    'UNKNOWN_1'],
            [CHAR,                     'byteSpeed2'],        
            [BYTE,                    'UNKNOWN_2'],
            //[BYTE,                 'bySaveTPCost'], // TP cost 절약 수치 <===
            [BYTE,                     'byClass1'],     // 전직 단계
    
            [BYTE,                     'byClass2'],     // 세부 직업
            [BYTE,                     'byDummy1'],     //
            //[BYTE,                     'byDummy2'],     //
            [CHAR,                     'byteAS1'],    
            [CHAR,                     'byteSpeed3'],    
            //int iMoveSpeed ;   // 현 MoveSpeed
            //int iAttackSpeed ; // 현 일반 무기 기반 공격 속도, skill에는 적용이 안된다. <===
            [SHORT,                 'snAttackSpeedCorrect'], // 무기 기반 속도 증가 수치( 이 수치만큼을 더 빠르게) <===
            [SHORT,                 'snCastSpeedCorrect'], // 무기 기반이 아닌 skill 속도 증가 수치 <===
            [SHORT,                 'snDDup'],        // DD type skill의 공격력 up을 표기한다. <===
            [SHORT,                 'snKarma'],     //<===
            [INT,                     'iBramanPoint'], // 현 Braman point    
            [INT,                     'iPietyPoint'], // 현 신앙심 point <===
            [INT,                     'iTitle'],       // Title
            
            /**
            [INT,                     'iMaxPrana'],    // 최대 Prana
            [DWORD,                 'UNKNOWN_3'],
            [INT,                     'iPrana'],       // 현 Prana
            [DWORD,                 'UNKNOWN_4'],
            **/
            [INT64,                 'iMaxPrana'],    // 최대 Prana
            [INT64,                 'iPrana'],       // 현 Prana
            
            [S_CHAKRA,                'krgChakra', 2], // 0:base chakra, 1:changed chakra
            
            [SHORT,                 'snCPRemaining'],// 남은 Chakra Point
            [SHORT,                 'snSPRemaining'],// 남은 Skill Point
            [INT,                     'iHP'],          // 현 HP
            [INT,                     'iMaxHP'],       // 최대 HP
            [INT,                     'iHPRecovery'],  // HP회복량/초
            [INT,                     'iTP'],          // 현 TP
            [INT,                     'iMaxTP'],       // 최대 TP
            [INT,                     'iTPRecovery'],  // TP회복량/초
            [SHORT,                 'snAC'],         // AC
            [SHORT,                 'snAttackRate'], // Attack Rate
            [SHORT,                 'snDodgeRate'],  // Dodge Rate
            [SHORT,                 'snCasteSPRemaining'],    // <===
    
            [CHAR,                     'byteSpeedCorrection'],    
            [CHAR,                     'byteAS2'],    
            [CHAR,                     'byteSpeedParity'],    
            [CHAR,                     'byteAS3'],        
    
            [S_RESIST,                'kResist'],      // 저항
            [S_DAMAGE,               'kDamage'],        // damage
            [INT,                     'iGold'],       // 돈
            [INT,                     'iSkillIcon'], // bit vector, 관련된 스킬 ICON  <===
            
            [INT64,                    'iAffections'],
            //[DWORD,                    'iAffections', 2],  //__int64 <===
    
            [CHAR,                     'byteAS4'],    
            [CHAR,                     'byteParity'],
            [SHORT,                 'snDummy'],
    
            [DWORD,                    'UNKNOWN_5', 3]
        )
    thanks but that doesn't help, that was the k3 but never mind i get my own with some sniffer

    some image for proof my words, still need work but goes well



  19. #19
    Novice applus is offline
    MemberRank
    Jun 2022 Join Date
    4Posts
    hi you have source code for tantra 6.9.0.6 version ?



Advertisement