Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


+75
TheLordOctopus
Laukang
iceflux
helthor001
felippeon
Gumg
Soaresdk
nevermorec1
Soubi92
Veyrk
Sudn
XFallSeane
vvvmh
eluedes
KevinTuron
rushmima
KielHyre
urbios
whitespirits
Processinho
Kenshiro
LeonM²
Hayato_Katsuo
xKyan
mochorro
GallighanMaker
joaopaulo98
Darkio
HAWK
Tobi S2
Soul*Knight
snaker15
AvilaMan
Cenourinha404
Daniel Carvalho
jria
DragonicK
Azin
Felix Blayder
xurana321
Trpino
Duel
Valentine
matheus180
vinishow
Haseo
Zodiac322
Dumsol
Haizen
takub088
Manticora
thiagus
Komuro Takashi
NowaDraco
Swordsman
JuanCollin
Empoleon
gerrakina
Shiy
Labrador
StormAD
Lief
makergame2000
glauberzin
Kaitro
renan-vieira
Jonny
Kies
Caio Juan
Pablo Kawan
lucasrpg55
Satheios
Dingiswayo
Kincy
Paulo Soreto
79 participantes

    NetMaker

    Komuro Takashi
    Komuro Takashi
    Colaborador
    Colaborador


    Mensagens : 1047
    Créditos : 130

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Komuro Takashi Ter maio 24, 2016 3:22 pm

    Ja teve acesso Juan???


    _________________
    NetMaker   - Página 7 Takashi_komuro_by_minato8-d51g9o4

    Paga um café? Patreon
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : NetMaker   - Página 7 ZgLkiRU
    Mensagens : 5341
    Créditos : 1164

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Valentine Ter maio 24, 2016 5:30 pm

    @Komuro Takashi
    Eu já disponibilizei:
    Valentine escreveu:Boas notícias, pessoal.

    Acabei de concluir o ABS Diamond! Vocês podem baixá-lo clicando em um dos links abaixo:

    Download Mega
    Download 4shared
    Embora ainda esteja em fase de testes.

    Estou aberto a sugestões e críticas.
    Swordsman
    Swordsman
    Semi-Experiente
    Semi-Experiente


    Mensagens : 89
    Créditos : 13

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Swordsman Sex Jun 03, 2016 6:09 pm

    A animação do ataque do ABS está lenta e utiliza imagens. Seria mais legal se a animação de ataque do ABS fosse igual a do SAS, que desenha a animação de ataque pelo ícone. Isso está presente no Netplay Crystal também.

    Não vi grandes mudanças, não manjo de programação então não sei se você melhorou o código ou algo do tipo. Mas o que mais me incomodou foi esse negócio da animação de ataque, por imagem é muito mais dificil fazer o jogo e pela lentidão deixa o jogo um tanto broxante.
    JuanCollin
    JuanCollin
    Membro de Honra
    Membro de Honra


    Mensagens : 988
    Créditos : 98

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por JuanCollin Qua Jun 08, 2016 8:58 am

    Swordsman escreveu:A animação do ataque do ABS está lenta e utiliza imagens. Seria mais legal se a animação de ataque do ABS fosse igual a do SAS, que desenha a animação de ataque pelo ícone. Isso está presente no Netplay Crystal também.

    Não vi grandes mudanças, não manjo de programação então não sei se você melhorou o código ou algo do tipo. Mas o que mais me incomodou foi esse negócio da animação de ataque, por imagem é muito mais dificil fazer o jogo e pela lentidão deixa o jogo um tanto broxante.
    Animação de ataque por icone fica meio ridículo, por imagem abre um leque de possibilidades, se você quer ir pelo mais fácil e menos bem feito, fica difícil fazer um bom jogo. E em relação à animação, está lenta mesmo, mas creio que seja pois esta em fase de testes.
    E não leve à mal esse comentário, só minha opinião mesmo.
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : NetMaker   - Página 7 ZgLkiRU
    Mensagens : 5341
    Créditos : 1164

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Valentine Qua Jun 08, 2016 8:38 pm

    Como o Juan falou, animação por ícone é tosca, limitada.

    No que se refere à velocidade da animação, eu posso ver essa questão na próxima atualização do ABS.
    Dumsol
    Dumsol
    Iniciante
    Iniciante


    Mensagens : 36
    Créditos : 2

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Dumsol Sáb Jun 11, 2016 10:40 am

    Jà vi que vou levar uma surra para fazer as animações kkk...mas esta muito bom o Abs esta com um cheiro de Diamante
    Kies
    Kies
    Diva
    Diva


    Mensagens : 1154
    Créditos : 124

    Ficha do personagem
    Nível: 1
    Experiência:
    NetMaker   - Página 7 Left_bar_bleue0/0NetMaker   - Página 7 Empty_bar_bleue  (0/0)
    Vida:
    NetMaker   - Página 7 Left_bar_bleue30/30NetMaker   - Página 7 Empty_bar_bleue  (30/30)

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Kies Sáb Jun 11, 2016 6:40 pm

    Mais o que o juan falou é total verdade, nem sempre coisa fácil é melhor, e quem realmente que criar um jogo passar por tudo para fazer seu jogo ficar bom.
    AvilaMan
    AvilaMan
    Iniciante
    Iniciante


    Mensagens : 34
    Créditos : 3

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por AvilaMan Sáb Jun 11, 2016 10:58 pm

    Ola Valentine, eu queria fazer uma sugestão 
    Sera que você poderia adaptar o script de Mapa continuo no Diamond.
    Seria muito legal poder fazer com que o mundo do jogo pareca um mapa só.

    É acho que agora que você esta fazendo o netplay desde cero com seu próprio abs seria um pouco mais fácil adaptá-lo a funcionar.


    Aqui deixo o Script do cual estou falando:
    Código:
    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
    # Continuous Maps by Blizzard
    # Version: 1.2
    # Type: Custom Map System
    # Date: 14.12.2009
    # Date v1.2: 11.9.2010
    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
    #   
    #  This work is protected by the following license:
    # #----------------------------------------------------------------------------
    # #  
    # #  Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
    # #  ( http://creativecommons.org/licenses/by-nc-sa/3.0/ )
    # #  
    # #  You are free:
    # #  
    # #  to Share - to copy, distribute and transmit the work
    # #  to Remix - to adapt the work
    # #  
    # #  Under the following conditions:
    # #  
    # #  Attribution. You must attribute the work in the manner specified by the
    # #  author or licensor (but not in any way that suggests that they endorse you
    # #  or your use of the work).
    # #  
    # #  Noncommercial. You may not use this work for commercial purposes.
    # #  
    # #  Share alike. If you alter, transform, or build upon this work, you may
    # #  distribute the resulting work only under the same or similar license to
    # #  this one.
    # #  
    # #  - For any reuse or distribution, you must make clear to others the license
    # #    terms of this work. The best way to do this is with a link to this web
    # #    page.
    # #  
    # #  - Any of the above conditions can be waived if you get permission from the
    # #    copyright holder.
    # #  
    # #  - Nothing in this license impairs or restricts the author's moral rights.
    # #  
    # #----------------------------------------------------------------------------

    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=

    # Compatibility:

    #   95% compatible with SDK v1.x. 80% compatible with SDK 2.x. WILL corrupt old
    #   savegames. Compatible with Blizz-ABS. Not compatible with Intelligent
    #   Passability from Blizz-ABS, it's being turned off.


    # Features:

    #   - virtually creates one continuous map from any number of map fragments
    #   - easy to configure

    # new in v1.2:
    #   
    #   - lammer bug where transferring into a non-configured map would crash the
    #     game
    #   - lammer bug when teleporting into another set of maps would mess up
    #     everything


    # Instructions:

    # - Explanation:

    #   This Script will allow you to make the game simulate a continuous map using
    #   smaller maps. The system displays the current map and the neighbor maps.
    #   Walking over a map border will cause the new map to be loaded as main map
    #   and the neighbor maps will be changed.


    # Notes:

    #   - You may notice lag when walking over a map border.
    #   - Do not use too big maps as it increases loading time and the short moment
    #     of lag will become more and more visible. Due to the fact that map
    #     loading times in Blizz-ABS are increased, those moments will be longer if
    #     Blizz-ABS is being used.
    #   - Remember to connect ALL neighbor maps or you might experience bugs.


    # If you find any bugs, please report them here:
    # http://forum.chaos-project.com
    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=

    module CTMAPS
      
    #::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    # START Configuration
    #::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
      # define all neighbor maps here
      MAP_DATA = [
        # [MAP_ID1, MAP_ID2, X_OFFSET, Y_OFFSET]
        [5, 6, 0, -40], # connected map 1 and 2 where 2 has an X, Y offset of 25, 0
      ]
    #::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    # END Configuration
    #::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
      MAP_DATA.compact!
      MAPS = {}
      MAP_DATA.each {|data|
          MAPS[data[0]] = [] if MAPS[data[0]] == nil
          MAPS[data[0]] |= [data[1, 3]]
          MAPS[data[1]] = [] if MAPS[data[1]] == nil
          MAPS[data[1]] |= [[data[0], -data[2], -data[3]]]}
      MAP_DATA = nil
      $ctmaps = 1.2
      
    end


    #==============================================================================
    # Game_Temp
    #==============================================================================

    class Game_Temp
      
      attr_accessor :player_no_straighten
      
    end
      
    #==============================================================================
    # Game_Character
    #==============================================================================

    class Game_Character
      
      attr_accessor :x
      attr_accessor :y
      attr_accessor :real_x
      attr_accessor :real_y
      
      alias straighten_ctmaps_later straighten
      def straighten
        if $game_temp.player_no_straighten
          $game_temp.player_no_straighten = nil
          return
        end
        straighten_ctmaps_later
      end
      
      alias moveto_ctmaps_later moveto
      def moveto(x, y)
        ox, oy = $game_map.upper_left;
        moveto_ctmaps_later(x - ox, y - oy)
      end
      
    end

    if $BlizzABS
    #==============================================================================
    # module BlizzABS
    #==============================================================================

    module BlizzABS
      
      #============================================================================
      # BlizzABS::Controller
      #============================================================================

      class Controller
        
        alias center_ctmaps_later center
        def center(x, y, flag = false)
          ox, oy = $game_map.upper_left
          center_ctmaps_later(x - ox, y - oy, flag)
        end
        
      end
      
      #============================================================================
      # BlizzABS::Utility
      #============================================================================

      class Utility
        
        alias setup_passability_ctmaps_later setup_passability
        def setup_passability(map, override = false)
          setup_passability_ctmaps_later(map) if override
        end
        
      end
      
    end

    $BlizzABS = BlizzABS::Processor.new

    #==============================================================================
    # Map_Battler
    #==============================================================================

    class Map_Battler
      
      attr_writer :id
      attr_writer :SELF
      
      alias moveto_ctmaps_later moveto
      def moveto(x, y)
        ox, oy = $game_map.upper_left
        moveto_ctmaps_later(x - ox, y - oy)
      end
      
    end

    else
    #==============================================================================
    # Game_Player
    #==============================================================================

    class Game_Player
      
      alias center_ctmaps_later center
      def center(x, y)
        ox, oy = $game_map.upper_left
        center_ctmaps_later(x - ox, y - oy)
      end
      
    end

    end

    #==============================================================================
    # Game_Map
    #==============================================================================

    class Game_Map
      
      attr_reader :upper_left
      attr_reader :lower_right
      attr_reader :maps
        
      alias init_ctmaps_later initialize
      def initialize
        @maps = {}
        @events = {}
        init_ctmaps_later
      end
      
      alias setup_ctmaps_later setup
      def setup(map_id)
        last_maps = @maps
        last_map_id = @map_id
        @upper_left = [0, 0]
        @lower_right = [0, 0]
        events = @events
        setup_ctmaps_later(map_id)
        @maps = get_neighbor_maps
        if !@maps.has_key?(last_map_id)
          @events = {}
          last_maps = {}
          last_map_id = 0
        else
          @events = events
        end
        setup_continuous_map
        setup_continuous_events(last_maps, last_map_id)
        if $BlizzABS
          @virtual_passability = $BlizzABS.util.setup_passability(@map, true)
        end
      end
      
      def get_neighbor_maps
        maps = {}
        maps[@map_id] = [@map, 0, 0]
        @upper_left = [0, 0]
        @lower_right = [@map.width, @map.height]
        if CTMAPS::MAPS.has_key?(@map_id)
          CTMAPS::MAPS[@map_id].each {|data|
              id, x, y = data
              if @maps[id] != nil
                map = @maps[id][0]
              else
                map = load_data(sprintf('Data/Map%03d.rxdata', id))
              end
              maps[id] = [map, x, y]
              @upper_left[0] = x if @upper_left[0] > x
              @upper_left[1] = y if @upper_left[1] > y
              width, height = x + map.width, y + map.height
              @lower_right[0] = width if @lower_right[0] < width
              @lower_right[1] = height if @lower_right[1] < height}
          maps.each_value {|data|
              data[1] -= @upper_left[0]
              data[2] -= @upper_left[1]}
        end
        return maps
      end
      
      def setup_continuous_map
        width = @lower_right[0] - @upper_left[0]
        height = @lower_right[1] - @upper_left[1]
        data = Table.new(width, height, 3)
        @map = @map.clone
        @map.events = {}
        @maps.each_key {|id|
            map, ox, oy = @maps[id]
            if id == @map_id
              map.events.each_key {|i| @map.events[i] = map.events[i]}
            else
              map.events.each_key {|i| @map.events[id * 1000 + i] = map.events[i]}
            end
            (0...map.width).each {|x| (0...map.height).each {|y| (0...3).each {|z|
                data[x + ox, y + oy, z] = map.data[x, y, z]}}}}
        @map.width = width
        @map.height = height
        @map.data = data
      end
      
      def setup_continuous_events(last_maps, last_map_id)
        correct_event_positions(last_maps) if last_maps[@map_id] != nil
        delete_removed_events(last_maps, last_map_id)
        shift_events_from_last_map(last_maps, last_map_id) if last_map_id != 0
        shift_events_for_new_map
        add_new_events(last_maps)
      end
      
      def delete_removed_events(last_maps, last_map_id)
        keys = []
        @maps.each_key {|id|
            keys += @events.keys.find_all {|key|
                @events[key].real_x < 0 || @events[key].real_y < 0 ||
                @events[key].real_x >= (@lower_right[0] - @upper_left[0]) * 128 ||
                @events[key].real_y >= (@lower_right[1] - @upper_left[1]) * 128}}
        (keys | keys).each {|key| @events.delete(key)}
      end
      
      def shift_events_from_last_map(last_maps, last_map_id)
        @events.each_key {|key|
            if key < 1000
              @events[last_map_id * 1000 + key] = @events[key]
              if $BlizzABS && @events[key].is_a?(Map_Battler)
                @events[key].SELF = @events[key].id = last_map_id * 1000 + key
              end
              @events.delete(key)
            end}
      end
      
      def shift_events_for_new_map
        @events.each_key {|key|
            if key >= @map_id * 1000 && key < (@map_id + 1) * 1000
              @events[key % 1000] = @events[key]
              if $BlizzABS && @events[key].is_a?(Map_Battler)
                @events[key].SELF = @events[key].id = key % 1000
              end
              @events.delete(key)
            end}
      end
      
      def correct_event_positions(last_maps)
        pix = $BlizzABS.pixel if $BlizzABS
        sx = @maps[@map_id][1] - last_maps[@map_id][1]
        sy = @maps[@map_id][2] - last_maps[@map_id][2]
        @events.each_value {|event|
            if $BlizzABS && event.is_a?(Map_Battler)
              x, y = sx * pix, sy * pix
            else
              x, y = sx, sy
            end
            event.x += x
            event.y += y
            event.real_x += sx * 128
            event.real_y += sy * 128}
      end
      
      def add_new_events(last_maps = {})
        if last_maps[@map_id] == nil
          @maps[@map_id][0].events.each_key {|i|
              if @events[i] == nil
                @events[i] = Game_Event.new(@map_id, @maps[@map_id][0].events[i])
                $BlizzABS.check_event_name(i) if $BlizzABS
              end}
        end
        pix = $BlizzABS.pixel if $BlizzABS
        (@maps.keys - last_maps.keys - [@map_id]).each {|id|
            map, sx, sy = @maps[id]
            sx -= @maps[@map_id][1]
            sy -= @maps[@map_id][2]
            map.events.each_key {|i|
                if @events[id * 1000 + i] == nil
                  @events[id * 1000 + i] = event = Game_Event.new(id, map.events[i])
                  if $BlizzABS
                    $BlizzABS.check_event_name(id * 1000 + i)
                    if event.is_a?(Map_Battler)
                      x, y = sx * pix, sy * pix
                    else
                      x, y = sx, sy
                    end
                  else
                    x, y = sx, sy
                  end
                  event.x += x
                  event.y += y
                  event.real_x += sx * 128
                  event.real_y += sy * 128
                end}}
      end
      
      alias update_ctmaps_later update
      def update
        update_ctmaps_later
        return if $game_player.moving? || @maps.size <= 1
        map, x, y = @maps[@map_id]
        if $game_player.real_x < x * 128 || $game_player.real_y < y * 128 ||
            $game_player.real_x >= x * 128 + map.width * 128 ||
            $game_player.real_y >= y * 128 + map.height * 128
          (@maps.keys - [@map_id]).each {|id|
              map, x, y = @maps[id]
              if $game_player.real_x >= x * 128 && $game_player.real_y >= y * 128 &&
                  $game_player.real_x < x * 128 + map.width * 128 &&
                  $game_player.real_y < y * 128 + map.height * 128
                $game_temp.player_transferring = true
                $game_temp.player_no_straighten = true
                $game_temp.player_new_x = $game_player.real_x / 128 - x
                $game_temp.player_new_y = $game_player.real_y / 128 - y
                $game_temp.player_new_map_id = id
                $game_temp.player_new_direction = 0
                break
              end}
        end
      end
      
    end


    Espero não me mal interprete e uma simples opinião e sugestão para deixar o novo Diamond melhor ainda.


    _________________
    NetMaker   - Página 7 Firma10
    Dumsol
    Dumsol
    Iniciante
    Iniciante


    Mensagens : 36
    Créditos : 2

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Dumsol Dom Jun 12, 2016 10:08 am

    Boa ideia Buckzor...tinha até me esquecido disso. Val, eu não sei...mas tu poderia colocar um sistema de Pet totalmente seu e compatível com o NpD, sei que é um trabalhão mas como tu pretende fazer do Diamond tua obra prima deveria pensar na possibilidade de colocar!
    Kies
    Kies
    Diva
    Diva


    Mensagens : 1154
    Créditos : 124

    Ficha do personagem
    Nível: 1
    Experiência:
    NetMaker   - Página 7 Left_bar_bleue0/0NetMaker   - Página 7 Empty_bar_bleue  (0/0)
    Vida:
    NetMaker   - Página 7 Left_bar_bleue30/30NetMaker   - Página 7 Empty_bar_bleue  (30/30)

    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Kies Dom Jun 12, 2016 10:59 am

    Acho que o sistema de pet não é uma boa opção pois leva tempo fazer ele e quase nem sempre é utilizado pela galera, e como o valentine disse o Netplay Diamond vai ser com os sistemas necessários agora se ele for fazer seria muito legal estilo o do Wings MMORPG do Terabin que ficou perfeito, e não como o RD12 fez pq era um sistema bem limitado e chato.

    Conteúdo patrocinado


    NetMaker   - Página 7 Empty Re: NetMaker

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Sex Nov 01, 2024 4:36 pm