antiblock
Rodnia | Alpha & Omega

Karbust

Coordenador
  • Content Count

    2,677
  • Joined

  • Last visited

  • Days Won

    117

Posts posted by Karbust


  1. Esta é a query completa, só dares copy-past e dar run...

     

    -- ----------------------------
    -- Table structure for player.player & player.delete
    -- ----------------------------
    ALTER TABLE `player`
    ADD COLUMN `combat_zone_rank`  int(4) NOT NULL DEFAULT 0 AFTER `horse_skill_point`;
    ALTER TABLE `player`
    ADD COLUMN `combat_zone_points`  int(4) NOT NULL DEFAULT 0 AFTER `combat_zone_rank`;
    
    ALTER TABLE `player_deleted`
    ADD COLUMN `combat_zone_rank`  int(4) NOT NULL DEFAULT 0 AFTER `horse_skill_point`;
    ALTER TABLE `player_deleted`
    ADD COLUMN `combat_zone_points`  int(4) NOT NULL DEFAULT 0 AFTER `combat_zone_rank`;
    
    -- ----------------------------
    -- Table structure for combat_zone_ranking_general
    -- ----------------------------
    DROP TABLE IF EXISTS `combat_zone_ranking_general`;
    CREATE TABLE `combat_zone_ranking_general`  (
      `memberName` varchar(12) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL,
      `memberEmpire` tinyint(4) NOT NULL,
      `memberPoints` int(11) NOT NULL,
      PRIMARY KEY (`memberName`) USING BTREE
    ) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Compact;
    
    -- ----------------------------
    -- Table structure for combat_zone_ranking_weekly
    -- ----------------------------
    DROP TABLE IF EXISTS `combat_zone_ranking_weekly`;
    CREATE TABLE `combat_zone_ranking_weekly`  (
      `memberName` varchar(12) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL,
      `memberEmpire` tinyint(4) NOT NULL,
      `memberPoints` int(11) NOT NULL,
      PRIMARY KEY (`memberName`) USING BTREE
    ) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Compact;
    
    -- ----------------------------
    -- Table structure for combat_zone_skills_cache
    -- ----------------------------
    DROP TABLE IF EXISTS `combat_zone_skills_cache`;
    CREATE TABLE `combat_zone_skills_cache`  (
      `pid` int(11) NOT NULL,
      `skillLevel1` int(11) NOT NULL,
      `skillLevel2` int(11) NOT NULL,
      `skillLevel3` int(11) NOT NULL,
      `skillLevel4` int(11) NOT NULL,
      `skillLevel5` int(11) NOT NULL,
      `skillLevel6` int(11) NOT NULL,
      PRIMARY KEY (`pid`) USING BTREE
    ) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Compact;

     


  2. 4 horas atrás, CamarillaMt2 disse:

    Por config ficaria mais ou menos assim:

    minAddonDDS: -30

    maxAddonDDS: 30

    minAddonFKS: -30

    maxAddonFKS: 60

     

    Seria isso?

    e coloco em qual config?

    config99 ?

     

    Obrigado

     Sim é isso...

     

    Coloca em todos os configs... Menos nos channels que não são usados...


  3. Até me enganei, não é item_attribute, mas sim item_addon.cpp

     

    Isto é o conteúdo original:

    #include "stdafx.h"
    #include "constants.h"
    #include "utils.h"
    #include "item.h"
    #include "item_addon.h"
    
    extern int minAddonFKS;
    extern int maxAddonFKS;
    extern int minAddonDSS;
    extern int maxAddonDSS;
    
    CItemAddonManager::CItemAddonManager()
    {
    }
    
    CItemAddonManager::~CItemAddonManager()
    {
    }
    
    void CItemAddonManager::ApplyAddonTo(int iAddonType, LPITEM pItem)
    {
    	if (!pItem)
    	{
    		sys_err("ITEM pointer null");
    		return;
    	}
    
    	// TODO ÀÏ´Ü ÇϵåÄÚµùÀ¸·Î ÆòŸ ½ºÅ³ ¼öÄ¡ º¯°æ¸¸ °æ¿ì¸¸ Àû¿ë¹Þ°ÔÇÑ´Ù.
    
    	int iSkillBonus = MINMAX(-30, (int) (gauss_random(0, 5) + 0.5f), 30);
    	int iNormalHitBonus = 0;
    	if (abs(iSkillBonus) <= 20)
    		iNormalHitBonus = -2 * iSkillBonus + abs(number(-8, 8) + number(-8, 8)) + number(1, 4);
    	else
    		iNormalHitBonus = -2 * iSkillBonus + number(1, 5);
    
    	pItem->RemoveAttributeType(APPLY_SKILL_DAMAGE_BONUS);
    	pItem->RemoveAttributeType(APPLY_NORMAL_HIT_DAMAGE_BONUS);
    	pItem->AddAttribute(APPLY_NORMAL_HIT_DAMAGE_BONUS, iNormalHitBonus);
    	pItem->AddAttribute(APPLY_SKILL_DAMAGE_BONUS, iSkillBonus);
    }

    Isto é para configurar os valores:

    #include "stdafx.h"
    #include "constants.h"
    #include "utils.h"
    #include "item.h"
    #include "item_addon.h"
    
    extern int minAddonFKS;
    extern int maxAddonFKS;
    extern int minAddonDSS;
    extern int maxAddonDSS;
    
    CItemAddonManager::CItemAddonManager()
    {
    }
    
    CItemAddonManager::~CItemAddonManager()
    {
    }
    
    void CItemAddonManager::ApplyAddonTo(int iAddonType, LPITEM pItem)
    {
    	if (!pItem)
    	{
    		sys_err("ITEM pointer null");
    		return;
    	}
    
    	// TODO ÀÏ´Ü ÇϵåÄÚµùÀ¸·Î ÆòŸ ½ºÅ³ ¼öÄ¡ º¯°æ¸¸ °æ¿ì¸¸ Àû¿ë¹Þ°ÔÇÑ´Ù.
    
    	if (minAddonFKS>maxAddonFKS)
    	{
    		sys_err("item_addon: minAddonFKS [%d] is bigger than maxAddonFKS [%d]", minAddonFKS, maxAddonFKS);
    		int bufferFKS = minAddonFKS;
    		minAddonFKS = maxAddonFKS;
    		maxAddonFKS = bufferFKS;
    	}
    	
    	if(minAddonDSS==32767)
    		minAddonDSS = (minAddonFKS*2);
    		
    	if(maxAddonDSS==32767)
    		maxAddonDSS = (maxAddonFKS*2);
    
    	if (minAddonDSS>maxAddonDSS)
    	{
    		sys_err("item_addon: minAddonDSS [%d] is bigger than maxAddonDSS [%d]", minAddonDSS, maxAddonDSS);
    		int bufferDSS = minAddonDSS;
    		minAddonDSS = maxAddonDSS;
    		maxAddonDSS = bufferDSS;
    	}
    
    	int iSkillBonus = MINMAX(minAddonFKS, (int) (gauss_random(0, 5) + 0.5f), maxAddonFKS);
    	int iNormalHitBonus = 0;
    	if (abs(iSkillBonus) <= 20)
    		iNormalHitBonus = -2 * iSkillBonus + abs(number(-8, 8) + number(-8, 8)) + number(1, 4);
    	else
    		iNormalHitBonus = -2 * iSkillBonus + number(1, 5);
    
    	iNormalHitBonus = MINMAX(minAddonDSS, iNormalHitBonus, maxAddonDSS);
    
    	pItem->RemoveAttributeType(APPLY_SKILL_DAMAGE_BONUS);
    	pItem->RemoveAttributeType(APPLY_NORMAL_HIT_DAMAGE_BONUS);
    	pItem->AddAttribute(APPLY_NORMAL_HIT_DAMAGE_BONUS, iNormalHitBonus);
    	pItem->AddAttribute(APPLY_SKILL_DAMAGE_BONUS, iSkillBonus);
    }

    Se quiseres por config, cria a parte do minAddonDDS, maxAddonDDS, minAddonFKS e maxAddonFKS...

     

    Senão quiseres por config, muda mesmo aí.

     

    FKS = DM

    DDS = DH

     

    Este código não foi feito por mim, e não sei se funciona a 100%...

    Fonte: Vanilla Source


  4. 6 horas atrás, CamarillaMt2 disse:

    Mano, se não for abusar da sua boa vontade, sabes informar em que linha especificamente?

    Obrigado.

     

    Não é em nenhuma linha, é o ficheiro todo...

     

    Basta procurar na net que vai encontrar alguma coisa de certeza, eu nunca precisei de mudar, logo nunca editei o meu ficheiro...


  5. 35 minutos atrás, CamarillaMt2 disse:

    value0

    value5

    São o que?

     

    O 0 nas armas não é para nada, o 5 acho que tem a ver com o incremento do valor de ataque mágico, porque se reparares, o ataque mágico é igual de +0 a +9 no item_proto, mas ingame muda, deve-se ao value5


  6. 13 horas atrás, morfo2 disse:

    Apenas precisas de desinstalar/desactivar a tua gráfica integrada no gestor de hardware e reiniciar o PC.

    Fui testar a tua dica, desativando, depois disso o cs go nem abria, mesmo estanto configurado para abrir com a dedicada da nvidia...

     

    Depois voltei a ativar e funcionou tudo...


  7. Crias um ficheiro em python (podes correr no pc ou até no servidor, é indiferente, se for no pc tens de ter python instalado...) com este conteúdo:

    import struct
    import os
    print "Exemplo EterPackKey:\n"
    print "Linha 1: 45129401\n"
    print "Linha 2: 92367215\n"
    print "Linha 3: 681285731\n"
    print "Linha 4: 1710201\n"
    string=int(raw_input("Inserir os valores da linha 1: "))
    string2=int(raw_input("Inserir os valores da linha 2: "))
    string3=int(raw_input("Inserir os valores da linha 3: "))
    string4=int(raw_input("Inserir os valores da linha 4: "))
    
    
    lista=struct.pack("LLLL", string, string2, string3, string4).encode('hex')
    
    print "\nChave para compactador: \n"
    
    print (lista)
    
    print "\nForum.tlthings.net."
    def pause():
        programPause = raw_input("Pressiona <ENTER> para fechar...")
    pause()

    Os valores são os da source, isso vai-te dar a chave...

     

    Estão nesta zona:

    static DWORD s_adwEterPackKey[] =
    {
    	45129401,
    	92367215,
    	681285731,
    	1710201,
    };
    
    static DWORD s_adwEterPackSecurityKey[] =
    {
    	78952482,
    	527348324,
    	1632942,
    	486274726,
    };

    Tens de usar esse código duas vezes, uma para a LZO e outra para a XTEA, e os valores que tens de usar estão na tua source...

     

    No eternexus cuidado ao meteres as chaves, tens de as meter ao contrário, a última textbox é o início da chave...


  8. 6 horas atrás, SiLeNcE17 disse:

    Nem imaginam a felicidade com que abri este post, bons tempos do MyLastPvP. Numa versão mais antiga fui SiLeNcE ninja arco amarelo e na mais recente WhatFor Warrior Mental da HellThunder, bons tempos.
    Certamente que serei um jogador se este projeto for em frente!

    Grande abraço

    Isto já morreu...


  9. 6 minutos atrás, OrigensRessurreiçao disse:

    Para mim a Raim Vai ser sempre um Projeto onde se começar ...

     

    Diz me lá onde a "Raim" tem a source? A source só saiu para o game 40k (adaptável para o 34k se se desativar os extras)

     

    6 minutos atrás, OrigensRessurreiçao disse:

    entao ta vou sair pro mundo falando que a surce base que eu peguei e refiz sao melhores que a do martim "pois eu tbn mudei as estruturas os caminhos "

     

    Yeah yeah, faz isso, visto que "surce" é fixe...

     

    Aprende primeiro a falar de alguma coisa de útil e depois podes vir falar de "surces", tipo mudar as "estruturas os caminhos"

     

    Com 5 posts já andas a falar de mais e não dizes nada decente...

     

    Btw, ele chama-se martysama e não martim...

     

    BR sendo BR... (Nada contra BR's)


  10. 15 minutos atrás, OrigensRessurreiçao disse:

    Eu so vejo Ele usar a Akron como base tudo sendo que nao foi ele que modelou é facil trocar os caminhos refazer a estrutura de um projeto pronto e tem falar a incompatibilidade com muitas coisas "como eu disse e uma opniao minha mecho com isso a anos ."

     

    Vê-se mesmo que não sabes do que falas...

     

    Quando encontrares uma source tão completa quanto a dele, avisa o pessoal...

     

    Isso é dor de cotovelo só pode, falar sem saber do que se fala... Claro que usou como base alguma source, ou vais me dizer que tens capacidade para fazer a source toda de um jogo de raiz? Usou o leak de 2014 original da ymir, como todos usaram para começar a desenvolver, como é óbvio...


  11. 2 horas atrás, OrigensRessurreiçao disse:

    nao recomendo , opiniao minha nao gosto do trabalho dele . Contem alguns bugs indesejaveis a nova versao que eele vende e pior bucha ainda.

     

    Nunca usei a source do maty, mas do enorme feedback que vejo não contém nenhum bug, e os que possam aparecer ele corrige e dá update na source...