1. Caro Visitante, por que não gastar alguns segundos e criar uma Conta no Fórum Valinor? Desta forma, além de não ver este aviso novamente, poderá participar de nossa comunidade, inserir suas opiniões e sugestões, fazendo parte deste que é um maiores Fóruns de Discussão do Brasil! Aproveite e cadastre-se já!

Dismiss Notice
Visitante, junte-se ao Grupo de Discussão da Valinor no Telegram! Basta clicar AQUI. No WhatsApp é AQUI. Estes grupos tem como objetivo principal discutir, conversar e tirar dúvidas sobre as obras de J. R. R. Tolkien (sejam os livros ou obras derivadas como os filmes)

RPG "arena" via mIRC (precisa-se de programador)

Tópico em 'RPG' iniciado por Steve Perry, 12 Nov 2002.

  1. Steve Perry

    Steve Perry Usuário

    OBS.: Caso vc encontre Master acentuado (Máster), é culpa do Word ok? lol

    Comecei a me envolver com RPG via Internet em 97, jogando Ultima Online. Em 99 mudei para o Everquest, só parando de jogar nesse ano (2002) a aproximadamente uns 2 meses atrás.

    Mas também jogo outros estilos de games bem próximos, como a série Heroes of Might and Magic, Baldurs Gate I e II, e os mais recentes Neverwinter Nights e Dungeon Siege.

    Mas sempre tive vontade de criar um sistema pra ser jogado via mIRC, meio que baseado em todos esses games, mas com um estilo arena, ou seja, de combates diretos, como se os jogadores fossem gladiadores.

    Já entrei em alguns canais de mIRC com sistemas baseados no desenho Dragon Ball Z, mas achei uma coisa muito superficial. Nesse sistema, cada jogador narra sua seqüência de golpes, cabendo ao Game Máster definir quem venceu o combate, baseado nas narrações. Isso poder gerar dúvidas e reclamações, mais ou menos quando um árbitro de futebol apita um penalty duvidoso. Claro, em um combate de um jogador super poderoso contra um jogador iniciante, apenas um espirro do primeiro derrubaria o segundo. Mas e quando dois jogadores com níveis de poder bem próximos se degladiam? Onde fica aquela mínima diferença de dano definida em números que pode definir um combate?

    Desde a muito tempo, venho pensando num sistema que fosse prático e ao mesmo tempo viciante. Uma forma de deixar o jogador viciado e querendo jogar mais e mais, é um sistema de combate baseado em níveis ou levels como geralmente costumamos falar. Essa é uma das receitas de sucesso do EQ (Everquest): A partir de um determinado level, seu personagem tem acesso a um determinado poder, e assim por diante. Entaum pensei em criar um sistema de classes e levels, com ganho de habilidades e spells progressivos, baseados em sua classe. Além disso, um sistema que permitisse aos jogadores usarem diferentes armas, armaduras e itens especiais e especificas para suas classes, como acontece nos RPGs tradicionais.

    Mas como colocar tudo isso em um ambiente, digamos, limitado, como o mIRC? A chave pra isso é a programação. É ai que a coisa complica pra mim, pois manjo muito pouco de programação. Irei detalhar um pouco mais, para que se alguém que gosta de RPG como eu, e manja de programação, possa entender um pouco mais. Lembrando que os dados que irei usar são simplesmente ilustrativos, nada oficial.

    O jogador deve escolher uma raça e uma classe. Cada raça é ligada a classes específicas, pra evitar um Ogro paladino por exemplo. Vamos supor que o jogador escolher ser um Dark Elf Shadow Knight. Cada combinação de classe/raça possui atributos iniciais previamente definidos. Para facilitar a compreensão, vamos definir apenas 3 tipos de atributos:

    Força: Determina a potencia com que os golpes são desferidos.
    Agilidade: Determina a capacidade de se esquivar de golpes.
    Inteligência: Determina a quantidade de mana.

    Vamos supor que a combinação Dark Elf Warrior tenha os seguintes atributos: 110 de força, 95 de Agilidade, 60 de Inteligência e com 120 pontos de vida (HP) . Logicamente o jogador inicia sua vida de gladiador no level 1.

    Analisaremos agora o seu adversário, um outro jogador, que escolheu ser um Human Ranger com atributos 90 de força, 110 de agilidade, 65 de inteligência e 100 pontos de vida.

    Cada jogador deve fazer também um download de um programinha que mostra todos os golpes, spells disponíveis, atributos e inventario (vazio no inicio, logicamente) de cada jogador, baseado em seus level. Esse programa tem um user e senha, e após o mesmo logar no mesmo, o programa irá buscar do jogador na base de dados principal do sistema, trazendo entaum todas as suas informações, mas APENAS para consulta e ajuda na realização do combate.

    Já o programa do GM, tem acesso a todos os atributos e inventários de todos os jogadores, podendo fazer atualizações em seus inventários, dar pontos de experiência, enfim, alterar dessa forma a base de dados principal do sistema.

    Ambos os adversários entram em um canal próprio para duelos, e o GM (Game Master), após carregar em seu programa todos os dados atualizados dos participantes da luta, inicia entaum o combate.

    O sistema que pensei, seria por turnos, entaum após ser definido de alguma forma ainda a ser pensada, quem inicia o combate, o jogador A rapidamente declara qual golpe irá usar. Essa declaração de golpe provavelmente será por meio de siglas, como por exempo, GN será a sigla para golpe normal, e assim por diante. Como teremos muitos spells e golpes diferentes para diferentes levels, varias siglas serão criadas.

    A partir do momento que o jogador definiu o golpe, o GM usara seu programa para calcular rapidamente o dano final sofrido pelo jogador B que esta recebendo o golpe. Nota-se que para ser um jogo dinâmico e interessante, quanto mais rápido esse calculo for efetuado, mais divertido sera o combate. Por isso o programa do GM e dos jogadores é a peça chave para o sucesso desse sistema. O programa do Jogador, apenas mostra uma faixa de dano mínimo e máximo para cada golpe disponível, mas quem realmente define o quanto foi o golpe, é o programa do GM, pois existe logicamente o elemento de sorte, o lado randomico do jogo. Mas após ser descoberto o dano, temos que levar em conta os elementos que fazem diminuir esse dano, como nível de proteção do oponente (ac), a diferença de level entre ambos, o atributo agilidade, enfim, uma formula matemática que calcule todos esses elementos em uma questão de milésimos de segundo, gerando entaum um numero final para que o GM coloque no chat do mIRC. Pode parecer algo cansativo após ler tudo isso, mas simulando de uma forma simples, seria algo mais ou menos assim:

    <GM> Round 1
    <ShadowK> GN
    <GM> ShadowK causou 15 pontos de dano em [email protected]
    <GM> ShadowK (HP: 120 Mana:0) [email protected] (HP: 85 Mana:0)
    <[email protected]> GN
    <GM> [email protected] causou 18 pontos de dano em ShadowK
    <GM> ShadowK (HP: 102 Mana:0) [email protected] (HP: 85 Mana:0)
    <GN> Round 2 (e assim continua....)

    A sequência entaum seria bem dinâmica, tendo pausas eventuais logicamente para que o jogador pense em qual dos golpes ou spells disponiveis utilizar, criando dessa forma sua propria estratégia.

    Quando um dos gladiadores morre, o outro é considerado vencedor, ganhando experiência, e dessa forma, poder ir aumentando de level e ganhando novas habilidades e/ou spells, dependendo de sua classe. O interessante desse sistema é que o GM é o responsável pelo envio dessa experiência para o banco de dados. Caso o Jogador queira conferir se realmente ganhou mais experiência (em outras palavras, se o GM fez seu trabalho direitinho), é só ele clicar no refresh para verificar se os dados foram realmente alterados.

    Mas agora pensem nas inúmeras possibilidades que esse sistema pode permitir! Qual limite Maximo de level??? 50? 60? 100? 200?? Imaginem combates épicos entre dois poderosos wizards!! Ou um Paladino duelando um Shadow Knight, o eterno conflito entre o bem e o mal!

    Outra parte muito interessante é a criação dos diversos itens, para que os jogadores possam sempre procurarem melhorar seus equipamentos, conseguindo dessa forma mais força, agilidade ou inteligência.

    Para se adquirir esses itens, penso em três formas: Uma é comprando de um vendedor. Este poderia ser totalmente automatizado, através do site oficial do sistema, ou até mesmo um GM. Logicamente os itens disponíveis nesse tipo de compra seriam muito limitados. Outra forma seria o comercio entre os próprios jogadores. Para que essa forma seja realmente efetiva, é necessário um esquema realmente automatizado de atualização de banco de dados, a prova de fraude. E a forma que acho a mais maravilhosa de todas, e onde estaum os melhores itens, em sua maioria no drop (naum podem ser vendidos ou negociados, ou seja, ficara sempre com o jogador). Seriam as quests ou confrontos diretos com NPCs controlados por GMs. Exemplificarei uma quest:

    Digamos que para um jogador conseguir um item muito especial, ele deve completar uma quest composta por 3 etapas. Deve trazer as 3 partes de uma mapa (superior, do meio e a inferior), que estaum em poder de 3 NPCs distintos. Entaum o jogador devera derrotar os 3 NPCs controlados por GMs para que após coletar as 3 partes, entregue todas para o NPC que deu a quest, para finalmente receber o poderoso item, que pode ser desde uma espada com maravilhosos atributos, até uma Breastplate formidável. Enfim, após o sistema estar rodando perfeitamente bem, o céu é o limite.

    Isso foi apenas uma breve exposição do meu projeto, sem entrar em detalhes, até mesmo porque preciso achar alguém que saiba programar tudo isso, para daí começar a testar formulas, classes, raças, spells, itens, etc...

    Caso vc se encaixe nesse perfil (manje bastante de programação e curte esse tipo de RPG) e tenha interesse em participar desse projeto comigo, entre em contato comigo pelo email
    Este conteúdo é limitado a Usuários. Por favor, cadastre-se para poder ver o conteúdo e participar (não demora e não possui custos)
    ou pelo icq 7102395.

    Abraços e obrigado pela atenção!

    Steve Perry / Demuloc / Marcelo Arnas
     

Compartilhar