Navegación

    UniversoJuegos
    • Registrarse
    • Conectarse
    • Buscar
    • Recientes
    • Etiquetas
    • Popular
    • Usuarios
    • Grupos
    • Buscar
    1. Inicio
    2. Freyader

    Freyader (@Freyader)

    1
    Reputación
    19
    Mensajes
    615
    Visitas
    0
    Seguidores
    0
    Siguiendo
    • Perfil
    • Siguiendo
    • Seguidores
    • Temas
    • Mensajes
    • Mejor valorados
    • Grupos

    Information about Freyader

    Registrado
    Última vez conectado

    Mejores publicaciones hechas por Freyader

    Este usuario no ha publicado nada aún.

    Latest posts made by Freyader

    • Metin2 Krater Corrupción (Pruebas)

      Lo del dopador automático en parte es cierto, de echo aun se puede utilizar solo que no deja comprar automáticamente por la vendedora que pusieron, en ese tiempo tuve 3 item con bonus perfectos y algún usuario (que no se quien fue) me acuso a los GM y me banearon, al parecer fui el único que lo hizo, respecto al yang también estaba el bugyang donde comprabas mas barato de lo que vendías y así me hice millonario, la ultima vez que entre después de la actualización y todo todavía se podía utilizar el bugyang. Todo esto no fue el primer día, como mínimo la primera semana.

      publicado en Servidores
    • [SFML] Sprites y texturas

      Sprites y texturas

      Vocabulario

      La mayoría (si no todos) ya están familiarizados con estos dos objetos muy comunes, por ello los definiremos muy brevemente.

      Una textura es una imagen. La llamamos textura por tiene un rol específico: está asignada a una entidad 2D.

      Un sprite no es nada mas que un rectángulo con textura.

      La explicación ha sido bastante corta, pero si aun no entiendes realmente lo que es un sprite y una textura, puedes encontrar información bastante detallada en internet.

      Cargando una textura

      Entonces, antes de crear cualquier sprite, necesitaremos tener una textura válida. La clase que integra una textura al programa en SFML, se llama, sopresivamente sf::Texture.
      La forma mas común de cargar una textura es desde un archivo en el disco duro, esto se hace mediante la función loadFromFile.
      sf::Texture texture;
      if (!texture.loadFromFile("image.png"))
      {
      // error...
      }

      La función loadFromFile a veces falla sin razon alguna. Primero, comprueba el mensaje de error que se muestra en el compilador. Si el mensaje es incapaz de abrir archivo (unable to open file), asegúrate que la imagen a cargar este en la misma carpeta en donde se crea tu ejecutable.

      La función de carga desde archivo tiene un argumento opcional, que puede ser usado si quieres cargar una pequeña parte de la imagen.
      //Carga un rectángulo de 32x32 que comienza en (10, 10)
      if (!texture.loadFromFile("image.png", sf::IntRect(10, 10, 32, 32)))
      {
      // error...
      }

      La clase sf::IntRect es utilidad simple que representa a un rectángulo. Este constructor toma las coordenadas partiendo en la esquina superior izquierda, y el tamaño del rectángulo.

      Adicionalmente, una textura posee dos propiedades que cambian la forma en que es renderizada.

      La primera propiedad permite suavisar la textura. Suavizar una textura hace que los pixeles de ella sean menos visibles (viéndose un poco mas borrosa), que en caso de que esté escalada puede ser importante.
      texture.setSmooth(true);

      Cuando el suavizado interpola los pixeles adyancentes en la textura, puede que se den resultados no deseados mostrando pixeles fuera de la textura. Esto puede suceder cuando tu sprite se encuentra en coordenadas no enteras.

      La segunda propiedad permite que se repita una textura dentro de un sprite.
      texture.setRepeated(true);

      Esto solo funciona si tu sprite está configurado para mostrar un rectángulo que sea mucho mayor que la textura. De otra manera, esta propiedad no tendria efecto.

      ¿Puedo crear mi sprite?

      Si, ahora puedes crear tu sprite.
      sf::Sprite sprite;
      sprite.setTexture(texture);

      Y finalmente dibujarlo.
      //Dentro del game loop, entre window.clear() y window.display()
      window.draw(sprite);

      Si no quieres que tu sprite muestre la textura completa, puedes configurar un rectángulo que será el que se mostrará dentro del sprite.
      sprite.setTextureRect(sf::IntRect(10, 10, 32, 32));

      También puedes cambiar el color de un sprite. El color que se establece es multiplicado por el color de la textura. También puede ser usado para cambiar la transparencia del sprite.
      sprite.setColor(sf::Color(0, 255, 0)); //Verde
      sprite.setColor(sf::Color(255, 255, 255, 128)); //Mitad transparente

      Todos estos sprites utilizan la misma textura, pero con un color diferente:

      Los sprites también pueden ser transformados: ellos tienen una posición, una orientación y una escala.
      //Posición
      sprite.setPosition(sf::Vector2f(10, 50)); //Posición absoluta
      sprite.move(sf::Vector2f(5, 10)); //Desplazamiento con respecto a la posición actual
      //Rotación
      sprite.setRotation(90); //Ángulo absoluto
      sprite.rotate(15); //Desplazamiento con respecto al ángulo actual
      //Escala
      sprite.setScale(sf::Vector2f(0.5f, 2.f)); //Factor absoluto de escala
      sprite.scale(sf::Vector2f(1.5f, 3.f)); //Factor relativo a la escala actual

      Por defecto, el punto origen para estas tres transformaciones es la esquina superior izquierda del sprite. Si quieres ajustar el punto de origen a otro distinto (por ejemplo el centro del sprite u otra esquina), puedes utilizar la función setOrigin.
      sprite.setOrigin(sf::Vector2f(25, 25));

      Todas las funciones de transformación son comunes para todas las entidades de SFML, esto está explicado en un tutorial separado: Transformando Entidades.

      publicado en Programación
    • [SFML] Dibujando cosas en 2D

      Dibujando cosas en 2D

      Introducción

      Como has aprendido en los tutoriales anteriores, el módulo de ventanas de SFML provee una manera fácil de abrir y trabajar con ventanas, pero no ayuda a dibujar algo sobre ellas. Afortunadamente, SFML provee un módulo de gráficos que te ayudará a crear entidades en 2D.

      La ventana de dibujo

      Para dibujar entidades utilizando el módulo de gráficos, debes utilzar una clase especializada en ventanas: sf::RenderWindow. Esta clase deriva de sf::Window, y hereda todas sus funciones. Todo lo que has aprendido acerca de sf::Window (creación, manejo de eventos, controlar el framerate, etc.) es aplicable a sf::RenderWindow.

      Además de eso sf::RenderWindow añade funciones de alto nivel para ayudar a crear cosas más facilmente. En este tutorial, nos centraremos en dos de esas funciones: clear y draw. Son tan simples como su nombre lo indica: clear, limpia toda la ventana con el color elegido, y draw, dibuja algún objeto en pantalla.

      Esto es un típico game loop utilizando RenderWindow:
      #include

      int main()
      {
      //Crea la ventana
      sf::RenderWindow window(sf::VideoMode(800, 600), "My window");
      //Game loop
      while (window.isOpen())
      {
      //Comprueba si se desencadenó algún evento
      sf::Event event;
      while (window.pollEvent(event))
      {
      //Si se requiere, cierra la ventana
      if (event.type == sf::Event::Closed)
      window.close();
      }
      //Limpia la ventana con color negro
      window.clear(sf::Color::Black);
      //Dibuja algo aquí
      // window.draw(...);
      //Actualiza la ventana
      window.display();
      }
      return 0;
      }

      Es obligación llamar a la función clear antes de dibujar algo, de otra manera quedarán pixeles sin definir del cuadro anterior. La única excepción es cuando cubres la pantalla por completo con un dibujo, de esa forma no quedarán pixeles sin definir; en este caso de igual forma puedes llamar a la función clear (aunque no será una diferencia muy notoria).

      Llamas a la función display también es obligación, esta función toma lo que se dibujó desde la última llamada a la función display y lo muestra en la ventana. De echo, las cosas al ser dibujadas, no son dibujadas directamente en la ventana, estas van a un buffer oculto. Este buffer es copiado a la ventana cuando llamas a la función display (se conoce como double-buffering).

      Este ciclo de funciones (clear-draw-display) es la única manera óptima de dibujar algo. No intentes de utilizar otras estrategias, como mantener pixeles del cuadro anterior, borrar pixeles, o dibujar una vez y llamando a la función display varias veces. Solo obtendrás resultados extraños debido al double-buffering.
      Chipset modernos de gráficos están echos realmente para repetir este ciclo donde todo se actualiza completamente en cada iteración del game loop. No te asusten por ejemplo si dibujas 1000 sprites 60 veces por segundo, estas muy debajo de los millones de triángulos que un equipo común puede soportar.

      ¿Que puedo dibujar ahora?

      Ahora que tienes el game loop completo, estas listo para dibujar, veamos que y como puedes dibujar algo en tu ventana.

      SFML provee de cuatro entidades dibujables: tres de ellas están listas para ser usadar (sprites, textos, formas), la última es el bloque constructor que te ayudará a crear tus propias entidades dibujables (vertex arrays).

      Aunque comparten algunas propiedades en común, estas entidades tienen propiedades específicas y por ello merecen ser tratadas cada una por separado en otro tutorial.

      publicado en Programación
    • Busco grafista para desarrollar juego

      Hola, pues eso estoy buscando a un grafista que pueda ayudarme con el desarrollo de un videojuego de tragamonedas básicamente es hacer el fondo, algunos contornos y las imágenes que se mostrarán en el juego.

      Dejo una impresión de pantalla.

      No quito la posibilidad de ofrecer algo en cambio.

      publicado en Talleres
    • [SFML] Abriendo y trabajando con una ventana

      Abriendo y trabajando con una ventana

      Introducción

      Este tutorial solo describe como abrir y trabajar con una ventana. Dibujar cosas esta fuera de este módulo. De igual manera leer este tutorial es de vital importancia para generar cualquier aplicación.

      Abriendo una ventana

      Las ventanas son definidas por la clase sf::Window. Una ventana puede ser creada y abierta directamente en la construcción:
      #include
      int main()
      {
      sf::Window window(sf::VideoMode(800, 600), "My window");
      ...
      return 0;
      }

      El primer argumento, VideoMode, define el tamaño de la ventana (el tamaño interno, sin la barra de título y los bordes). Aqui, hemos creado una ventana de 800x600 pixeles.

      El segundo argumento es simplemente el nombre de la ventana.

      Además este constructor acepta un tercer argumento opcional: el estilo, que nos dará a escoger la decoración y las características que buscas:
      sf::Style::None : Sin decoración (útil para pantallas de inicio); este estilo no puede ser combinado con otros
      sf::Style::Titlebar : La ventana posee una barra de título
      sf::Style::Resize : La ventana puede ser cambiada de tamaño y posee un botón de maximizar
      sf::Style::Close : La ventana tiene un botón de cerrar
      sf::Style::Fullscreen : La ventana se muestra en modo pantalla completa; este estilo no puede ser combinado con otros
      sf::Style::Default : El estilo por defecto (Titlebar, Resize y Close)
      Si buscas crear la ventana despues de la instancia de construcción de sf::Window, o recrearla con un modo diferente de video o con otro título, puedes usar la función create que toma exactamente los mismos argumentos:
      #include
      int main()
      {
      sf::Window window;
      window.create(sf::VideoMode(800, 600), "My window");
      ...
      return 0;
      }

      Trayendo la ventana a la vida

      Si tratas de ejecutar el código de arriba sin colocar nada en el lugar de "...", dificilmente podrás ver algo. Primero, por que el programa termina inmediatamente. Segundo, por que no existe hay control de eventos, con lo que incluso añadiendo un bucle se verá una ventana muerta, incapaz de moverse o siquiera de cambiar tamaño.

      Vamos a añadir un poco de código para que este programa sea mas interesante:
      #include

      int main()
      {
      sf::Window window(sf::VideoMode(800, 600), "My window");
      //Bucle de aplicación
      while (window.isOpen())
      {
      //Revisa si algun evento de sf::Window se ha activado
      sf::Event event;
      while (window.pollEvent(event))
      {
      //Si se solicita cerrar la ventana, esta se cierra
      if (event.type == sf::Event::Closed)
      window.close();
      }
      }
      return 0;
      }

      El código de arriba puede abrir una ventana, la termina cuando el usuario la cierra. Veamos como funciona en detalle.

      Primero, hemos agregado un loop que se asegura que la aplicación se actualice hasta que la ventana se cierre. La mayoría (no todos) de los programas en SFML tienen este tipo de loop, a veces son llamados main loop o game loop.

      Luego lo primera que hacemos dentro de nuestro game loop es ver si algún evento ha sido desencadenado. Noten que utilizamos un bucle while para que todos los eventos se procesen, en caso de que hubiera alguno pendiente. La función pollEvent devuelve true si un evento está pendiente, o false si no hay eventos pendientes.

      Siempre que exista un evento desencadenado, debemos comprobar el tipo de evento (cerrar ventana, tecla pulsada, mouse en movimiento, joystick conectado) y reaccionar si esque estamos interesados en dicho evento. En este caso, solo nos preocupamos por el evento Event::Closed, que se desencadena cuando el usuario quiere cerrar la ventana. En este punto, la ventana esta aún abierta y tenemos que cerrarla de forma explícita con la función close. Esto permite hacer algo antes de que la ventana sea cerrada, como guardar el estado actual de la aplicacion, o mostrar un mensaje.

      Despues que la ventana ha sido cerrada, el programa sale del game loop y termina.

      Hasta ahora, probablemente te has dado cuenta que no hemos hablado acerca de dibujar algo en la ventana. Esto no es trabajo del modulo window, tendrás que saltar al modulo de gráficos si quieres dibujar algo como un sprite, textos o formas.

      Por lo tanto, no esperes ver algo interesante en esta ventana: lo mas probable es que veas un color uniforme (negro o blanco).

      Jugando con la ventana

      Por supuesto, SFML te deja jugar un poco con la ventana creada. Existen operaciones basicas con la ventana, como cambiar el tamaño, la posicion, el título o el ícono.
      // Cambia la posición de la ventana.
      window.setPosition(sf::Vector2i(10, 50));
      // Cambia el tamaño de la ventana
      window.setSize(sf::Vector2u(640, 480));
      // Cambia el título de la ventana
      window.setTitle("SFML window");
      // Obtiene el tamaño de la ventana
      sf::Vector2u size = window.getSize();
      unsigned int width = size.x;
      unsigned int height = size.y;
      ...

      Controlando el framerate

      A veces, cuando la aplicación se ejecuta, puedes notar defectos visuales como lagrimeos. La razón es que la frecuencia de actualización de tu aplicación no está sincronizada con la frecuencia vertical del monitos, y como resultado, la parte inferior de la trama se mezcla con la siguiente.
      La solución a este problema es activar la sincronización vertical utilizando la función setVerticalSyncEnabled:
      // Activa la sincronización, después de crear la ventana.
      window.setVerticalSyncEnabled(true);

      Después de llamar esta función, tu aplicación correrá a la misma frecuencia del monitor, aproximadamente 60 cuadros por segundo.

      publicado en Programación
    • Necesito un cliente normal

      Hola, una vez empecé a hacer una guía de cómo modificar el cliente, editar efectos, armas y demás. Ahora, quiero hacer algo parecido pero as sofisticado, quiero modificar el corazón del cliente, quiero agregar personajes, agregar clases, agregar una nueva raza.

      El motivo del Metin2 que quiero hacer es hacer algo parecido a los juegos de Naruto que han salido últimamente y que son bastante usados.

      Para ello necesito un cliente que no haya tenido modificación alguna, uno normal, con armaduras normales, con todo como corresponde.

      ¿Alguien sabe de alguno que pueda descargar?

      publicado en Cliente
    • Metin2u RENOVADO 24/7

      Esta mas vacio xD igual me quedo aqui

      publicado en Dedicados
    • Editar .mde

      @Anghios said:

      Puedes editarlo con cualquier archivo de texto, pero te recomiendo que uses Notepad++

      Baja el Notepad++ y arrastra el archivo .mse dentro de él.

      ^^

      No es un archivo .mse es uno .mde esta en ymir work\effect\etc\levelup_1\e.mde por lo que pude investigar da efectos al parecer en 3D pero no se como abrirlos

      publicado en Ayuda
    • Editar .mde

      Alguien tiene alguna idea de como abrir, ver, crear o editar un archivo .mde (Mesh file) ??

      desde ya muchas gracias

      publicado en Ayuda
    • Editar Cliente (EPK)

      @Gabiiiii said:

      Bastante buena, la seguiré de cerca...

      Gracias si me demoro es por cosa del turno que tengo en el trabajo _xD_

      publicado en Creación de Guías