[C] DooM ARENA! (Launcher)

Sub-fórum especial para usuários que querem discutir/aprender programação, como as linguagens C/C++/C#, Java, HTML, e por aí vai...
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

[C] DooM ARENA! (Launcher)

Mensagem por Fabio914 »

Doom ARENA

Hoje a tarde eu não estava com nada melhor pra fazer então eu desenvolvi um pequeno launcher para DOS que , assim como o ZDL , executa wads em modos offline e online. Ele é um programinha muito util pra quem deseja jogar online com GZDoom e ZDoom e tem dificuldades com isso.

Ele não possui interface de usuário , tudo o que você tem a fazer é editar o arquivo gen.txt de forma que fique com as configurações que você quer rodar.

Alem disso esse é um programinha bem levinho também , é só 23kb!

Download
download

Source Code

Código: Selecionar todos

#include <stdio>
#include <stdlib>

// DOOM ARENA!

int main()
{
    char sp[20]; // source port
    char players[10]; //numero de jogadores | offline é 1 e 2 ou mais para online
    char host[10];
    char mode[10]; //deathmatch é 1 , coop/sp é 0
    char srvip[50];
    char iwad[20]; //iwad
    char pwad01[20]; //pwad
    char pwad02[20];
    char warp[20]; //warp

    char fvar[50];
    char svar[50];
    int i=0;





    printf("Doom ARENA Launcher! v.0.1\nBy Fabio914\n");
    FILE *fp;
    fp = fopen("gen.txt","r");
    if (fp == NULL){
        printf("Error : Error while reading file!\n\n");
        exit(2);
    }

while(fscanf(fp,"%s %s",fvar,svar)!=EOF){
    if(strcmp(fvar,"sourceport")==0){
        strcpy(sp,svar);
        i++;
    }
    else if(strcmp(fvar,"players")==0){
        strcpy(players,svar);
        i++;
    }
     else if(strcmp(fvar,"host")==0){
        strcpy(host,svar);
        i++;
    }
    else if(strcmp(fvar,"serverip")==0){
        strcpy(srvip,svar);
        i++;
    }
    else if(strcmp(fvar,"mode")==0){
        strcpy(mode,svar);
        i++;
    }
    else if(strcmp(fvar,"iwad")==0){
        strcpy(iwad,svar);
        i++;
    }
    else if(strcmp(fvar,"pwad01")==0){
        strcpy(pwad01,svar);
        i++;
    }
    else if(strcmp(fvar,"pwad02")==0){
        strcpy(pwad02,svar);
        i++;
    }
    else if(strcmp(fvar,"warp")==0){
        strcpy(warp,svar);
        i++;
    }
    else if (i == 9){
        break;
    }
}

    fclose(fp);

    //Escrevendo BAT
    FILE *fd;
    fd = fopen("run_me.bat","w");
    printf("\nStatus : Generating BAT");

    fprintf(fd,"%s",sp);
    fprintf(fd," -iwad %s",iwad);
    fprintf(fd," -file %s -file %s",pwad01,pwad02);
    if (strcmp(players,"2")==0 || strcmp(players,"3")==0 || strcmp(players,"4")==0){
        if (strcmp(host,"0")==0)
        fprintf(fd," -join %s",srvip);
        else if (strcmp(host,"1")==0)
        fprintf(fd," -host %s",players);
    }
    if(strcmp(mode,"1")==0)
    fprintf(fd," -deathmatch -nomonsters");

    if(strcmp(warp,"none")!=0)
    fprintf(fd," -warp %s",warp);

    fclose(fd);

    printf("\nStatus : BAT generated!");
    system("run_me.bat");
    printf("\nStatus : Finished!");

    exit(1);


}
Este programa pode ser facilmente portado para Linux , basta mudar o arquivo gerado de run_me.bat para run_me.sh e mudar na função system , o run_me.bat para .\run_me.sh .

Talvez eu ainda faça versões futuras com mais recursos , mas por enquanto é isso ai...

Aproveitem :wink:

EDIT: Como esse programa gera um BAT , você pode renomear esse bat para usa-lo de atalho para rodar aquele wad especifico naquele modo de jogo especifico , diferente do ZDL que apenas executa uma vez e depois você tem que criar um atalho ou bat manualmente para poder executar o jogo sem o ZDL.
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Rico
Mensagens: 2354
Registrado em: Dom Set 10, 2006 11:49 am
Answers: 0
18
Localização: Atrás do DU0
Contato:

Mensagem por Rico »

AEEEEE
Agora vamos melhorar po, um launcher eh brasileiro =D
[xfire]p0br3[/xfire]
Futuro PC:

CPU: AMD Athlon x2 64Bits 7750 2.7GHz Black Edition
MoBo: Asus M2 ou M3.
VGA: XFX Geforce 9800 GTX 512MB ou 1GB/256Bits
HD: Seagate 1TB
PSU: ATX 600w REAIS
RAM: 4GB Ram DDR2 Kingstone @800MHz [2x2Gb]
Avatar do usuário
DU0
Mensagens: 6690
Registrado em: Sáb Abr 01, 2006 6:59 am
Answers: 0
19
Localização: Deimos Lab.
Contato:

Mensagem por DU0 »

HAUEHUAEHUAHEUAEHUAEH

Imaginem o Fabio, 13:30 da tarde... Liga a tv, tá passando pokémon... ae entra no orkut, da uma navegada pelas comus, relaxa, põe as mãos atrás da nuca, olha pro dia nublado na rua pela janela, olha pra cima, boceja e diz: "Ai, ai... vo faze um launcher pra zDoom... :| "

^^

*baixando*
Jogando atualmente:
Xbox 360: Ninja Gaiden Black
Xbox One: Need for Speed: Hot Pursuit, Yakuza 3
PlayStation 2: Fatal Frame 3: The Tormented
PlayStation 3: RE: The Darkside Chronicles, RE: The Umbrella Chronicles
Nintendo Switch: Phantasy Star, SIFU
Rico
Mensagens: 2354
Registrado em: Dom Set 10, 2006 11:49 am
Answers: 0
18
Localização: Atrás do DU0
Contato:

Mensagem por Rico »

Hahahahahahaha!
[xfire]p0br3[/xfire]
Futuro PC:

CPU: AMD Athlon x2 64Bits 7750 2.7GHz Black Edition
MoBo: Asus M2 ou M3.
VGA: XFX Geforce 9800 GTX 512MB ou 1GB/256Bits
HD: Seagate 1TB
PSU: ATX 600w REAIS
RAM: 4GB Ram DDR2 Kingstone @800MHz [2x2Gb]
Mauricio Rocks
Mensagens: 779
Registrado em: Sex Jan 05, 2007 3:55 am
Answers: 0
18

Mensagem por Mauricio Rocks »

DU0 escreveu:Imaginem o Fabio, 13:30 da tarde... Liga a tv, tá passando pokémon... ae entra no orkut, da uma navegada pelas comus, relaxa, põe as mãos atrás da nuca, olha pro dia nublado na rua pela janela, olha pra cima, boceja e diz: "Ai, ai... vo faze um launcher pra zDoom... :| "
uehauheuahuehauhe! DU0, o hud e o reload do Dark Base foram feitos dessa maneira.. a única diferença eh q os dias não estavam nublados.. mas eh akela ne, sem nada na tv, sem muié pra sair... resolvi fazr um hud e reload ^^

Se é que não notaram, o DB não ia ter essas coisas.. eh soh olhar o nome do topico ^^
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Mensagem por Fabio914 »

Hehe! Eu e o R1c0 acabamos de fazer o primeiro teste desse launcher , e ele rodou legal , conseguimos configurar rápidamente um jogo multiplayer e começamos a jogar direto!

Screenshot
Imagem

EDIT: Não consegui upar a imagem de nós jogando no GZDoom então o R1c0 upo esta de nós jogando no ZDoom.

Arquivos gen usados
por mim:

Código: Selecionar todos

sourceport gzdoom.exe
players 2
host 0
serverip 201.75.242.136
mode 1
iwad doom2.wad
pwad01 dwango5.wad
pwad02 none
warp 01
pelo R1c0

Código: Selecionar todos

sourceport gzdoom.exe
players 2
host 1
serverip none
mode 1
iwad doom2.wad
pwad01 dwango5.wad
pwad02 none
warp 01
E com este teste eu percebi que algumas coisas cruciais estavam faltando , que no caso são:

- Fraglimit
- Liberação para cheats pelo administrador (no caso R1c0) para possibilitar warp de mapas.
Editado pela última vez por Fabio914 em Dom Mar 30, 2008 10:22 pm, em um total de 1 vez.
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Rico
Mensagens: 2354
Registrado em: Dom Set 10, 2006 11:49 am
Answers: 0
18
Localização: Atrás do DU0
Contato:

Mensagem por Rico »

:o
Mas falar verdura, estava ótimo, não houve muitos lags por eu ser o srver ainda, estava gostoso de jogar, e perfeito =D
[xfire]p0br3[/xfire]
Futuro PC:

CPU: AMD Athlon x2 64Bits 7750 2.7GHz Black Edition
MoBo: Asus M2 ou M3.
VGA: XFX Geforce 9800 GTX 512MB ou 1GB/256Bits
HD: Seagate 1TB
PSU: ATX 600w REAIS
RAM: 4GB Ram DDR2 Kingstone @800MHz [2x2Gb]
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Mensagem por Fabio914 »

Aew , ai vai uma screen de eu e o Mauricio jogando...

Imagem

EDIT: Sapphire + D3onGZD weapons

EDIT 2:

Fechamos o sapphire em + ou - 20 min quase nem deu lag (soh em alguns momentos). Ai vai mais screens:

Imagem
Screenshot depois de matar o Spider-Mastermind mutante do final...

Imagem

Imagem

Imagem
Editado pela última vez por Fabio914 em Sáb Abr 05, 2008 8:19 pm, em um total de 1 vez.
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Mauricio Rocks
Mensagens: 779
Registrado em: Sex Jan 05, 2007 3:55 am
Answers: 0
18

Mensagem por Mauricio Rocks »

Another shot (1 de health lol)

Imagem
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Mensagem por Fabio914 »

E ai vai uma shot de eu e o Rico jogando 102 (o 101 fica muito bugado no GZDoom novo):

Imagem

EDIT:

Na proxima versão teremos:

- Fraglimit
- Dificuldade
- Cheats ativados
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD