História
Conheça um pouco da história do jogo.

Imagens
Fotos do InterTruco.

Matérias
Leia algumas matérias sobre o jogo (Segurança, funcionamento interno...).

Inteligência Artificial
Saiba mais sobre o Módulo de Inteligência Artificial.

Servidor Proxy / Firewall
Nova opção para conexão em servidores Proxy / Firewall

Servidor InterTruco
Saiba mais sobre o nosso Servidor InterTruco na LNCB


História do InterTruco
(Artigo escrito por Éric Fleming Bonilha)

Em mais ou menos novembro de 1999, já nas férias escolares, eu e o Eduardo (Outro criador do jogo) tivemos a idéia de fazer um jogo de truco bem simples, apenas para nós jogarmos via rede ou via internet. Inicialmente era para ser um jogo simples, sem nada de opções, apenas para uma pequena diversão e para saber se agente conseguiria fazer um joguinho de truco, no mesmo dia que agente teve a idéia assim que eu cheguei em casa do trabalho, começei a pensar em como seria o jogo e como eu nunca tinha visto nenhum jogo assim parecido, pensei numa tela verde (Como os jogos horríveis do windows), com 3 cartas em cima, 3 em baixo e a vira... apenas isso... e pra ser sincero, ficou uma verdadeira bosta, não tinha nem chat e nem nada e todas as poucas opções do jogo, estavam no menu (Em cima, menu normal). A tela estava realmente bem feia, afinal eu num tinha nenhuma noção de como fazer a interface do jogo, o nome que eu tinha dado era TrucoNet.

No dia seguinte o Eduardo me disse que o primo dele disse pra ele que já existia um jogo de truco pra internet e que era muito bom, mas ele tinha esquecido o nome, e quando ele me disse isso eu já pensei "Filhos da P... já fizeram um jogo de truco pra net", então eu começei a procurar e encontrei o tal jogo, que por coincidência se chamava TrucoNet também e assim que abri o jogo eu me humilhei, porque estava muito melhor que a pobre interface que eu tinha feito, ele era repleto de opções e desenhos, e muita coisa, mas nós não desistimos e falamos para nós mesmos que iriamos fazer um jogo melhor do que aquele (Sendo que era pra ser um jogo só para nós).

Começei a fazer uma interface totalmente parecida com a do TrucoNet (pois eu tinha gostado daquela hehe), até que ficou boa, mostrei pro Eduardo e ele também gostou, pronto, a Interface já estava pronta, faltava a parte mais difícil, a programação (E na época eu ainda estava iniciando no Delphi, não sabia muita coisa, muito menos comunicação com cliente / servidor), então confesso que no início foi um verdadeiro desafio dar os primeiros passos.

Passei as férias toda fazendo a programação e lembro que tinha determinadas horas que a programação se complicava tanto que eu pensava em desistir, aparecia situações que eu pensava "Como eu vou fazer isso??? Num tenho a mínima idéia de como começar!!!", mas não desisti, continuei fazendo a programação. Inicialmente fizemos o servidor um módulo a parte, ou seja, tinham 2 arquivos executáveis, o do jogo (Cliente) e o servidor, esse foi o meu pior erro!!!
Lembro que quando eu estava fazendo a comunicação cliente / servidor apareceu um problema na comunicação interna q eu pensei "Ja era!", as vezes quando o cliente ou o servidor enviava 2 informações ao mesmo tempo, elas se juntavam, formando apenas uma, sendo assim, ferrava tudo, e eu pensei que era bug dos componentes de comunicação que eu estava usando e peguei um monte de componente novo que não adiantou droga nenhuma, continuava o mesmo problema, então eu achei um carinha na net que me ajudou com esse problema, ele disse para eu separar as mensagens com caracteres como "|", fiz isso, deu certo! Fiquei tão feliz hehe. Tudo bem, esse era o problema maior e já estava resolvido!

Depois desses problemas continuei fazendo o jogo, até chegar em uma versão quase final, onde o jogo já realizava todas as funções esperadas!!! Então começou a fase de testes, passamos dias testando e jogando, estava tudo certo, mas tinhamos jogado apenas por rede local, portanto, a comunicação estava normal, rapidinha, quando começou os testes na net foi um desastre, por não ser rápida as mensagens demoravam para chegar, então o jogo se confundia pois ele ja estava em uma outra parte quando recebia informação de uma parte anterior. Foi um saco pra corrigir isso, tive que rever todo o código fonte e fazer rotinas de sincronização para os 2 jogos ficarem na mesma tela ao mesmo tempo (lembra-se quando eu disse que fazer o servidor um módulo a parte foi meu maior erro? Então, era por isso que deu todos esses erros). Tudo bem, consegui consertar e os testes pela net estavam funcionando, o jogo estava redondo, funcionando tudo, ele era apenas um pouco lento pela net.

Como o jogo tinha ficado muito bom (pelo menos agente achava que estava), resolvemos divulgá-lo, fizemos a primeira home page (Que ainda está no ar, junto com o InterTruco 1.0 em www.geocities.com/intertruco), e eu tinha gostado tanto que até imprimi o código fonte em papel e mandei encadernar (Tenho até hoje, deu mais de 300 folhas), então comecei a divulgar o jogo no canal #truconet na BrasIRC (Nesse canal eram disputadas partidas pela LNCB utilizando o truconet), e confesso que eu realmente enchia o saco, mandava um monte de mensagens com propaganda do jogo, quando o pessoal começou a pegar o jogo nós ficamos muuuito feliz, pois tinha gente jogando o jogo que agente tinha feito, era uma coisa mágica saber que estavam utilizando ele, mas ai começaram as críticas, muita gente não gostou do jogo, da interface q da velocidade bem podre dele, mas mesmo assim eu continuava divulgando e no meu terceiro dia enchendo o saco do pessoal, um carinha chegou pra mim e disse pra eu falar com o dono do canal pra tentar fazer do InterTruco o jogo oficial do truconet e começar a divulgá-lo mais, no outro dia eu falei com o FlitZ que era o dono do canal e ele concordou em fazer esta parceria, então colocou o jogo como oficial do canal, ficamos muito feliz, mas mesmo assim ainda continuavam utilizar o TrucoNet e aquilo me roia por dentro (pois ainda tinha gente que jogava com o outro hehe), então o FlitZ falou pra eu fazer uma parceria um pouco maior e colocar o nome do #Truconet e da LNCB no jogo, eu fiz isso, então lancei o InterTruco LNCB v1.1 que ficou sendo o jogo oficial para jogos da liga (Pelo menos no canal), nessa versão eu coloquei um menu chamado LNCB com as opções da LNCB para serem acessadas pelo próprio jogo. Ele estava ficando cada vez melhor, e na 1.1 ele tinha apenas algumas modificações que o deixou um pouco mais rápido, mas como o servidor continuava externo, ele ainda era lento.

Cada vez mais pessoas começou a usar ele, principalmente depois que descobriram que tinha o cheat do TrucoNet (Grande vilão do jogo), e eles cheat possibilitava você ver as cartas do adversário e jogar uma carta que você não possuia, então eu resolvi fazer a v1.2 do jogo pois tinha cada vez mais pessoas usando ele, mas como eu queria fazer uma versão bem rápida tive que fazer o servidor integrado com o jogo, mas para fazer isso eu tive que reescrever todo o jogo, no início eu peguei somente a interface, e começei do 0 novamente, mas como eu ja estava ficando mais experiente, fiz as coisas um pouco mais certas desta vez, passei muito tempo fazendo, acho que passou de 1 mes fazendo essa nova versão que prometia muito, pois era muito rápida.

Durante o desenvolvimento da v1.2 do jogo começou o boato de que tinha cheat para a v1.1 do jogo, eu fiquei muito ferrado e comecei a pensar em algum meio de bloquear o cheat, como eu não sabia como funcionava o tal cheat a principio eu fiz um sistema falho que apenas trocava passwords, mas como o cheat era uma ponte de comunicação, isso não adiantaria em nada, então o único modo foi fazer um sistema de criptografia.

Finalmente estava pronto o primeiro teste do jogo, o InterTruco 1.2 Beta A, lançei como teste e o pessoal gostou muito, disse que era o melhor e que era muito rápido, mais rápido até que o truconet, e o melhor, era protegido contra cheats, então bastante gente começou a pegar o Beta A, mas tinha muitos bugs, então eu lancei o Beta B (No 1.2 Beta A já tinha a opção de tirar foto da tela, o que ajudaria muito os staffs a controlar as pessoas que roubavam), ele era ainda melhor e com menos bugs e depois de um tempo, finalmente estava pronto o InterTruco 1.2 Final, lançei a versão, mas depois de ter lançado ainda tinha bugs, então eu corrigi e mandei no mesmo dia (mas ja tinha pessoas que tinham pegado o outro Final), no outro dia eu ainda mandei de novo mais uma versão do Final, e no outro ainda mais uma, ou seja, exitem 3 versões finais do 1.2, mas isso ninguém sabe, pelo menos não sabia até agora.

Depois que lançei essa versão, recebi muitos elogios pelo jogo, pois estava muito bom, ainda tinha pessoas que não gostavam, mas como era o jogo oficial, tinham que aceitar jogar com ele, pois o TrucoNet foi proibido porque tinha cheat, e o InterTruco 1.2 não tinha.

Depois de um tempo com essa versão no ar, recebi um e-mail de ninguém mais, ninguém menos que o dono da LNCB, dizendo que ele viu o jogo e gostou da integração que tinha com a LNCB (Os menus que linkavam na página) e no e-mail ele dizia que gostaria de fazer uma parceria com agente e aumentar a integração do jogo com a LNCB, com autenticação e notificação automática, várias idéias... Então começamos a nos falar e fizemos a parceria, então eu comecei a desenvolver o que seria a v1.3 do jogo com todas as intergrações que iria ajudar muito os jogos pela liga.

Para fazer a tal versão 1.3 do jogo, eu utilizei todo o código da 1.2, ou seja, não tive muito trabalho pois já estava tudo pronto e não tinha bugs na programação da 1.2, mas eu tinha mudado a InterFace, ela estava mais futurista e mais bunita (Tirei a idéia do trojan horse Sub Seven), então como ela estava totalmente diferente da 1.2 resolvemos mudar de 1.3 para 2.0.0.

Terminamos a versão, estava muito boa e bem integrada com a LNCB pois tinha autenticação e notificação automática, e tinha o recurso de histórico da partida que substituiu eficientemente as fotos que eram tiradas da tela, o histórico iria servir para ajudar os staffs no seu trabalho, pois o arquivo é bem pequeno e rápido de enviar.

Para testar a v2.0.0 eu fiz uma "Equipe de Teste" que testou o jogo durante alguns dias, todos adoraram o jogo, e falaram que estava muito bom e a interface muito legal também, estava bem diferente, mas mesmo com todos os testes realizado ainda não tinham sidos detectados alguns bugs, mas até ai, eu ja tinha lançado a 2.0.0, foi meio dificil explicar para todos o conceito de "Cadastro de Jogadores", mas a maioria entendeu e ajudou quem não sabia usar.

Estava tudo OK, o jogo tinha alguns bugs ainda, mas nada para se preocupar, então eu fiquei mais tranquilo e comecei a fazer a v2.0.1 que iria possuir o recurso de "Jogadores Disponíveis" (Atual Servidor de IPs, 24hs na net), estava tudo indo muito bem, eu ja estava quase no fim da v2.0.1, então, numa grande e bela noite, resolvi trocar o meu HD primário (C: que tinha 4gb), mas todos os meus dados importantes ficavam na HD secundária (D: que tem 2gb), inclusive todos os códigos fontes de todas as versões do jogo, tudo bem, eu troquei o HD por um de 40GB (meu atual), instalei tudo certo, instalei novamente o windows e tudo ok, no dia que eu instalei funcionou tudo perfeito, tudo, então no dia seguinte, liguei o computador, entrei no windows, abri o windows explorer e começei a explorar a minha HD D:, foi então que começou a acontecer algumas coisas estranhas, começaram a sumir pastas e embaralhar tudo, reiniciei o pc em modo DOS e entrei no D, quando eu dei um dir tomei um grande susto, pois todas as pastas estavam estragadas, com os nomes tudo embaralhados, ai eu pensei "PUTA MERDA!!! FUDEU TUDO!!! PERDI TUDO!!!!", começei a entrar em desespero, passei o NORTON DISK DOCTOR e ele conseguiu arrumar várias pastas e recuperar vários arquivos, mas eu perdi mais ou menos 1/3 das informações que eu tinha, inclusive TODOS OS CÓDIGOS FONTES DE TODAS AS VERSÕES DO JOGO, eu fiquei muito ferrado com isso pois todo meu trabalho de mais de 1 ano tinha ido pras pica e não iria mais dar para fazer o jogo, então eu pensei em desistir, e ia desistir do projeto do jogo, pensei em começar a v3 da estaca 0 e era isso que eu ia fazer, mas por sorte eu tinha um código fonte da v2.0.0 do jogo em backup, mas era um código bem antigo, apesar de ter boa parte, não tinha tudo, e reescrever seria muito trabalhoso, então resolvi desistir do jogo por um tempo.

Durante esse tempo que eu tinha desistido, um cara chamado Filipe Oliveira João (FOJ no canal) não parava de me encher o saco, dizendo para eu passar o código fonte do jogo que ele também era programador e queria me ajudar a fazer, eu resisti por mais de 2 semanas, mas ele não parava de encher o saco, e ele vinha cheio de propostas, como se fosse um profissional, então um dia ele veio com uma proposta de fazer um jogo compatível, seria o FOJTruco, e ele iria divulgar o jogo e que eu num tinha nada a perder, e ele conseguiu me convencer que eu não tinha nada a perder, e como eu fui muito inteligente, passei o código fonte backup antigo que eu tinha para ele, então ele ficou elogiando, dizendo que eu era um genio, que o código estava perfeito, bla bla bla bla bla, queria me contratar pra trabalhar pra ele (Esse foi um grande rolo que quase gerou processo contra ele, por ele ter envolvido o site www.emcontrar.com.br, mas eu não vou entrar em detalhes desse episódio), dias depois esse tal FOJ começou a ganhar todas as partidas misteriosamente, ou seja, ele tinha feito o cheat do jogo, por mais protegido que o jogo fosse, como ele tinha o código fonte, foi fácil de fazer o cheat, mas foi por burrice minha que tinha feito uma extrutura interna meio falha que mandava as cartas dos 2 jogadores para os 2 jogos, ou seja, internamente o jogo sabia a carta do outro jogador, então foi muito fácil dele fazer o cheat com o código, pois nele tinha todo o sistema de criptografia. Ele negou até a morte que tinha feito o cheat, foi então que ele começou a ameaçar espalhar o cheat se não dessem pra ele OP no canal e staff na LNCB, e eu me vi num mato sem cachorro pois eu não podia fazer nada porque não possuía o ultimo código fonte do jogo, então eu disse "É o fim do InterTruco", o FlitZ até veio pedir pra mim tentar fazer alguma coisa urgente, pois o FOJ como era muito profissional iria espalhar o cheat, mas até então eu era amigo do FOJ, e conversava com ele, e ele confessou pra mim que fez o cheat, começei a discutir com ele e ele disse que não iria espalhar, mas como eu não confiava nele tinha que fazer algo bem rápido antes que ele espalhasse, então num ato desesperado começei a reconstruir o código fonte do 2.0.0, mas eu tinha apenas 1 semana para conseguir reescrever tudo e sem bugs, passei noites em claro e o fim de semana todo fazendo, mas beleza, consegui fazer o 2.0.1 e quando eu vi que estava pronto, senti um alívio muito grande, pois além de tudo, eu tinha conseguido reescrever o código e ainda nessa versão eu coloquei banners de propaganda para tentar ganhar algum dinheiro e fiz ela como uma versão shareware, lancei o jogo mas no dia seguinte tinha um monte de mensagem no fórum reclamando que o jogo estava cheio de bug e que não dava para jogar, e tinha gente reclamandos que era shareware e que tinha banner, ou seja, essa foi a pior versão que já tinha sido desenvolvida, todos sem excessão reclamaram. Então eu tirei ela do ar, e mais umas 2 semanas eu tinha conseguido fazer a v2.0.2 e finalmente não tinha bugs, nem cheat, mas continuava shareware e com banners.

O pessoal começou a usar o jogo, alguns reclamavam da banner, outros reclamavam que era shareware, mas não tinha muitos bugs (Ainda tinha), então consegui um tempo para fazer a 2.1.0, então como tinha mais tempo, eu e o dono da LNCB conseguimos integrar ainda mais o jogo com ela, criando o servidor de IPs e alguns recursos a mais, o servidor de IPs iria ser a revolução dessa versão e além do servidor de IPs ainda tinha o histórico de IDs que era outra revolução, muito útil. Apesar de tudo, ainda tinha gente que achava que tinha cheat para o jogo, então além de mudar o sistema de criptografia eu mudei a extrutura interna dele, agora apenas as cartas do jogador são enviadas a ele, internamente o jogo não sabe a carta do outro, ou seja, é impossível fazer um cheat para se ver a carta do adversário.

Então lançamos a v2.1.0 com todas essas inovações e a extrutura interna modificada, agora o jogo estava totalmente protejido contra cheats, ainda no dia seguinte eu lançei a 2.1.1, ela era a mesma coisa da 2.1.0, mas não tinha banner, inclusive eram compatíveis, mas mesmo com tudo as proteções o FOJ insistia em dizer que tinha cheat para a nova versão e lógico que todos acreditaram nele né, afinal ele tinha feito o cheat da v2.0.0 (Porque possuia o código fonte), e não entrava na cabeça do povo que não dava para fazer cheat, mas mesmo assim eles afirmavam que tinha e tinha e tinha, mas nunca ninguém viu, então começei a escrever no fórum explicando que não dava pra fazer cheat por isso, isso e aquilo, alguns me apoiaram e entendeu que não dava para fazer, mas outros ainda não acreditavam, então eu fiz uma matéria sobre cheat e coloquei na página, mas poucas pessoas leram e mesmo lendo ainda desconfiavam que tinha cheat, e foi nessa época que um jogador (que eu ñ lembro o nome agora) conseguiu ganhar 60 partidas, pra que, todo mundo começou a falar que tinha cheat e que ele usava, joguei contra ele e perdi, mas ele era bom e só jogava com pato, por isso que ganhou as 60 consecutivas, enquato ele estava ganhando todo mundo falava que tinha cheat e ninguém mais acreditou em mim e não adiantava falar que ninguém ouvia, isso até ele perder, então o pessoal começou a sussegar um pouco. Mas mesmo assim o jogo ainda possuia um defeito na rotina de embaralhar (Que tem desde a v1.0), ela dava muita carta para um jogador e nada para o outro, ou seja, um sempre tinha sorte e sempre saía com cartas boas, mas isso era um bug, que foi corrigido na v2.2.0 do jogo.

Agora lançada a v2.2.0 com muitos bugs corrigidos e muita coisa nova, muita mesmo, como diferentes estilos de jogo (Paulista, Capixaba, Mineiro, Indio, Escuro, Baralho Limpo, Manilha Velha) e muitos recursos a mais, espero poder descansar um pouco e pensar melhor na versão 3 que terá muita coisa nova, inclusive jogos em 3d e espero também que a 2.2.0 seja a última do InterTruco 2.

Copyright 2001 - InterTruco 2. Todos os direitos reservados.
e-mail: suporte@intertruco.com.br
LNCB: www.lncb.com.br