HomeBlogTokyoSciFi-MOOForumPhotosGreen NekoContact
Início
Informações
Novidades
Galeria MOO
Como Conectar
RPG Online
Créditos
Links
Ajuda

Introdução ao MOO para Iniciantes por Bart

Baseado livremente no guia "The Cow Ate My Brain"
de Loyd Blankenship ("Mentor")

Todos que conectam no MOO ficam intrigados e mesmo fascinados pelas quase infinitas possibilidades oferecidas pelo sistema multi-usuário, mas também ficam um pouco chateados pela falta de ajuda que um iniciante tem. Para quem está iniciando no MOO entender o help do sistema é algo realmente complicado, por isso esse documento é para quem ainda não tem um mês de MOO e ainda não aprendeu o básico de MOO.

Eu pessoalmente quando entrei no MOO pela primeira vez já tinha alguma experiência de programação em Turbo Pascal, inclusive um básico de orientação a objetos, tendo inclusive tido feito um pequeno RPG gráfico, mas a maioria das pessoas que começam a usar o MOO não sabem programar, muito menos orientado a objetos, por isso esse help visa atender a quem não sabe programar ainda. Esse documento possuiu várias chamadas ao help do sistema do MOO, ou seja quando você for usar um comando novo use sempre help "comando", para ir acostumando-se ao help do sistema, pois depois de aprender a usa-lo você verá como ele é bastante completo.

O que é MOO?

Se está lendo isso você já deve ter conectado ao menos uma vez no MOO, bem o MOO possui uma dúzia de complexas definições e conceitos, mas resumindo ele pode ser descrito como uma realidade virtual multi-usuário baseada em texto. Ele é um programa que roda em máquinas Unix(em geral), o MOO original é o LambdaMOO, e foi desenvolvido por Pavel Curtis do Centro de Pesquisas da Xerox em Palo Alto, Califórnia, a partir de um programa básico de Stephen White da Universidade de Waterloo, ele está rodando desde 1990.

O Programa principal do MOO é chamado "server", ele lida com instruções como entrada/saída entre a Internet e o MOO, e com o que você digita, e só. O fonte do programa do server está disponível via FTP em parcftp.xerox.com, ele foi portado para um grande número de sistemas como Linux e Amiga Unix.

Outra função do server é compilar e rodar programas (chamados "verbs") escritos dentro do MOO em uma linguagem chamada MOO, que é uma mistura de C++ e LISP, essa linguagem é bem documentada, mas esse documento não é animador para usuários novatos.

Se o server é o coração do MOO, uma database gigante, chamada "core", é o cérebro, inicialmente vazia, ela define os objetos básicos como $thing(objeto genérico) e $prog(programador genérico, um player com capacidade de adicionar mais coisas no MOO). Quanto mais os players criam novas salas e objetos o "core" fica maior. A database inicial está disponível em moo.mud.org.

O que é Programação Orientada a Objeto?

Antes que você possa realmente entender como é a programação no MOO você deve compreender o conceito de OOP especialmente a idéia de objetos e hierarquia.

Números dos Objetos

TUDO no MOO é um objeto, players, salas, saídas, entradas, editores são objetos, e é claro, objetos são objetos. Cada objeto possui um "número de objeto". Por exemplo, a objeto genérico pode ser o #5.

Quando você está no MOO você pode substituir o número do objeto pelo seu nome e vice versa. Por exemplo vamos dizer que você deseja dar um objeto cadeira(#92) para Bahamut(#93), você pode usar give cadeira to bahamut, ou give #92 to #93. Os números de objetos são diferentes de MOO para MOO.

Existem alguns poucos tipos de objetos básicos definidos no MOO core, tudo o mais é uma cópia ou filho disso. Por exemplo existe uma classe chamada "$thing", e você deseja criar uma bola genérica, você posso criar uma bola filha de &thing (digitando @create $thing named Bola Genérica), então você pode criar um objeto Bola de Basquete filha da Bola Genérica (digitando @create Bola Genérica named Bola de Futebol, não esqueça que o MOO não aceita acentos, Bola Genérica é só um exemplo).

Examinando Objetos

Existem várias formas diferentes de você olhar para um objeto, o primeiro e mais simples é "look", se você digitar "look bola", você verá a descrição da bola.
A seguir vem @examine, ele mostra o a descrição verbos e propriedades do objeto.
Existe também o @show ele mostra o nome, número, nome e número do objeto pai, número do dono e uma lista de verbos e propriedades visíveis.
Finalmente existe o @dump, ele mostra uma lista de todas as coisas que o @show mostra, mas além disso mostra os programas de todos os verbos visíveis, se esse comando não funcionar peça a um Wizard a permissão para ser programador.