Qual erro?iLight escreveu:To com o piquenho prroblema do audio 117 que nao da para ficar de tela cheia
+142
steven459
offzinho
xurana321
CaJú
riegel
Kernel
raycostabrito
MokirShabat
Ioriyagami190
kamus9629
Acalantus
bazante
emii41so
jonatas_cg
StormAD
-JohnLennon-
LeonM²
psousa
ElKhadafo
Gumg
Snoopy
marcoabruneriZ
faeltwister
ahiraa
Sonart
Naziozeno
Blue
guideath
CaioAnselmo
Biehnandikki
shoves123
ramoncs13
darkfoligno
rushmima
kike669165
Nextt
Tankevil
KauaiÉMeuNomeDeVerdade
diohellfire
AllyssonRpg
Otávio Grunje
onigoetia
takub088
Geynecmi
EduKrowlley
Gabas
Minos
godzilamaker
folignooo
SunsetHill
Allan443211
Pingo de Leite
ezzcardoso
aeFly
Maximus0037
Lixølas
sufaiterevo
wesleykk
tknooz
Adanrox
4l3ff
IsraTwerknov
DragonicK
zgrise
RD12
GuLabonia
saask
iGhoul
OFWGKTA
StellaS2
Brayan96
yuri.dante
PlayDev
eek
TheJhow
Rayner
Aldimun
Shiy
Edsephiroth
Valentine
Mazxz123
iCoke~
Caio Juan
Zetto
Daniel Carvalho
lupptyr
babugue
koezyrs
Makisso
Crunchbird
eluedes
Pain Correndo
renatokamus
Aither
makergame2000
PoxaFiih
afcbb123
GVS3281
Kenshiro
Flares
Satheios
dpsdenes
Pain
Ps+
kinhoccs
Lief
-Luther
Haseo
Kincy
Dexter
admbaiakme
Paulo Soreto
GallighanMaker
luutr
Azel
Honinbou
sklokize
HarturPl4ys
Trpino
Kuroshi
sam-rtp-rgss
Ruan
wclear
driko
Dreew00
LightOfNyx
jiraya
Takkun
iJackboy
Profane ~
moon.sarito1
Soubi92
DevWithCoffee
snaker15
Fabrizio
whitespirits
Conjurador
Readerusama
Komuro Takashi
Kies
Manticora
Dooolly
146 participantes
VXA-OS - Crie seu MMO com RPG Maker
- Mensagem nº361
Re: VXA-OS - Crie seu MMO com RPG Maker
Brayan96- Novato
- Mensagens : 4
Créditos : 0
- Mensagem nº363
Re: VXA-OS - Crie seu MMO com RPG Maker
Olá, tenho problemas no painel do administrador, não posso teletransportar ou enviar itens, já que o painel só mostra uma seção da lista destes e não há nenhuma barra para selecionar os primeiros, como no caso do Eu tenho mapas numerados, alguém sabe como eu posso consertar isso, ou o Valentine planeja consertar isso em futuras atualizações?
iGhoul- Novato
- Mensagens : 24
Créditos : 2
- Mensagem nº364
Re: VXA-OS - Crie seu MMO com RPG Maker
mano o seu ta pegando tela cheia?Brayan96 escreveu:Olá, tenho problemas no painel do administrador, não posso teletransportar ou enviar itens, já que o painel só mostra uma seção da lista destes e não há nenhuma barra para selecionar os primeiros, como no caso do Eu tenho mapas numerados, alguém sabe como eu posso consertar isso, ou o Valentine planeja consertar isso em futuras atualizações?
Brayan96- Novato
- Mensagens : 4
Créditos : 0
- Mensagem nº365
Re: VXA-OS - Crie seu MMO com RPG Maker
[size=36]não, é apenas parte do jogo, o resto é minha mesa[/size]
- Mensagem nº366
Re: VXA-OS - Crie seu MMO com RPG Maker
Correções de bugs da versão 1.1.3:
Correção nas coordenadas das animações:
1) No script [VS] Sprite_Character do cliente, após def end_sprites adicione:Correção nas coordenadas das animações:
- Código:
def update_position
move_animation(@character.screen_x - x, @character.screen_y - y)
self.x = @character.screen_x
self.y = @character.screen_y
self.z = @character.screen_z
end
def move_animation(dx, dy)
if @animation && @animation.position != 3
@ani_ox += dx
@ani_oy += dy
@ani_sprites.each do |sprite|
sprite.x += dx
sprite.y += dy
end
end
end
Correção no registro de atividades do servidor:
1) No arquivo logger.rb da pasta Scripts do SERVIDOR, substitua:- Código:
type = type.integer? ? type == Constants::GROUP_ADMIN ? 'Admin' : 'Monitor' : type
- Código:
type = type.is_a?(Integer) ? type == Constants::GROUP_ADMIN ? 'Admin' : 'Monitor' : type
Correção na experiência do nível máximo:
1) No arquivo game_client.rb da pasta Scripts do SERVIDOR, substitua o def change_exp por:- Código:
def change_exp(exp)
return if @level == Configs::MAX_LEVEL && exp > @exp
$server.send_player_exp(self, exp - @exp)
@exp = [[exp, exp_for_level(Configs::MAX_LEVEL)].min, 0].max
level_up while !max_level? && @exp >= next_level_exp
level_down while @exp < current_level_exp
end
- Código:
def change_exp(exp, show)
@exp[@class_id] = [[exp, exp_for_level(Configs::MAX_LEVEL)].min, 0].max
last_level = @level
last_skills = skills
level_up while !max_level? && self.exp >= next_level_exp
level_down while self.exp < current_level_exp
display_level_up if show && @level > last_level
refresh
end
Correção no recebimento de dados:
1) Substitua o script [VS] Network do CLIENTE por este:- Código:
#==============================================================================
# ** Network
#------------------------------------------------------------------------------
# Esta classe lida com a rede.
#------------------------------------------------------------------------------
# Autor: Valentine
#==============================================================================
class Network
include Send_Data, Handle_Data
attr_reader :motd, :actors, :vip_time
def initialize
@group = Constants::GROUP_STANDARD
@in_game = false
@vip_time = nil
@socket = nil
@message = nil
@m_size = 0
@player_id = -1
@motd = ''
@actors = {}
end
def connect
@socket = SocketLib.new(Configs::HOST, Configs::PORT)
end
def disconnect
return unless connected?
@socket.close
@socket = nil
end
def connected?
@socket
end
def connection_lost?(status)
status == -1
end
def standard_group?
@group == Constants::GROUP_STANDARD
end
def vip?
@vip_time > Time.now
end
def server_online?
retry_count = 0
successful = false
while !successful && retry_count < 2
begin
connect
successful = true
rescue
retry_count += 1
end
end
successful
end
def update
# Se a conexão não foi fechada e há dados para ler
until !@socket || @socket.eof?
if @message
receive_message_gradually
else
receive_full_message
end
end
end
def receive_full_message
b_size = @socket.recv_non_block(2)
if connection_lost?(b_size) || b_size.size < 2
$alert_msg ||= Vocab::ConnectionFailed
DataManager.back_login
return
end
size = b_size.unpack('s')[0]
message = @socket.recv_non_block(size)
if message.size - 4 == size
handle_messages(message)
else
@message = message
@m_size = size
end
end
def receive_message_gradually
message = @socket.recv_non_block(@m_size - @message.size)
@message << message
if @message.size - 4 == @m_size
msgbox('Por favor, tire print deste erro e reporte-o à staff.\nErro: o pacote não chegou inteiro inicialmente, mas o problema já foi resolvido!')
handle_messages(@message)
@message = nil
end
end
end
Correção no envio de dados:
1) Substitua o script [VS] Send_Data do CLIENTE por este:- Código:
#==============================================================================
# ** Send_Data
#------------------------------------------------------------------------------
# Este módulo envia as mensagens para o servidor.
#------------------------------------------------------------------------------
# Autor: Valentine
#==============================================================================
module Send_Data
def send_login(user, pass)
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_LOGIN)
buffer.write_string(user)
buffer.write_string(VXAOS::md5(pass))
buffer.write_short(Configs::GAME_VERSION)
@socket.send(buffer.to_s)
end
def send_new_account(user, pass, email)
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_NEW_ACCOUNT)
buffer.write_string(user)
buffer.write_string(VXAOS::md5(pass))
buffer.write_string(email)
buffer.write_short(Configs::GAME_VERSION)
@socket.send(buffer.to_s)
end
def send_new_character(actor_id, name, character_index, class_id, sex, params, points)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_NEW_CHAR)
buffer.write_byte(actor_id)
buffer.write_string(name)
buffer.write_byte(character_index)
buffer.write_short(class_id)
buffer.write_byte(sex)
params.each { |param| buffer.write_byte(param) }
buffer.write_byte(points)
@socket.send(buffer.to_s)
end
def send_remove_character(actor_id, pass)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_REMOVE_CHAR)
buffer.write_byte(actor_id)
buffer.write_string(VXAOS::md5(pass))
@socket.send(buffer.to_s)
end
def send_use_character(actor_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_USE_CHAR)
buffer.write_byte(actor_id)
@socket.send(buffer.to_s)
end
def check_ping
return unless @socket
$ping_start = Time.now
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_PING)
@socket.send(buffer.to_s)
end
def send_player_movement(direction)
# Se o jogador foi desconectado, mas ainda não saiu
#da cena do mapa e tentou andar no momento imeditamente
#posterior ao encerramento da conexão
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_PLAYER_MOVE)
buffer.write_byte(direction)
@socket.send(buffer.to_s)
end
def send_chat_message(message, talk_type, player_name = '')
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CHAT_MSG)
buffer.write_string(message)
buffer.write_byte(talk_type)
buffer.write_string(player_name)
@socket.send(buffer.to_s)
end
def send_player_attack
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_PLAYER_ATTACK)
@socket.send(buffer.to_s)
end
def send_use_item(item_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_USE_ITEM)
buffer.write_short(item_id)
@socket.send(buffer.to_s)
end
def send_use_skill(skill_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_USE_SKILL)
buffer.write_short(skill_id)
@socket.send(buffer.to_s)
end
def send_change_hotbar(id, type, item_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CHANGE_HOTBAR)
buffer.write_byte(id)
buffer.write_byte(type)
buffer.write_short(item_id)
@socket.send(buffer.to_s)
end
def send_use_hotbar(id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_USE_HOTBAR)
buffer.write_byte(id)
@socket.send(buffer.to_s)
end
def send_target(target_id, type)
# Se o alvo está sendo selecionado após
#chamar a cena do login
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_TARGET)
buffer.write_byte(type)
buffer.write_short(target_id)
@socket.send(buffer.to_s)
end
def send_add_drop(item_id, kind, amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_ADD_DROP)
buffer.write_short(item_id)
buffer.write_byte(kind)
buffer.write_short(amount)
@socket.send(buffer.to_s)
end
def send_remove_drop(drop_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_REMOVE_DROP)
buffer.write_byte(drop_id)
@socket.send(buffer.to_s)
end
def send_add_param(param_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_PLAYER_PARAM)
buffer.write_byte(param_id)
@socket.send(buffer.to_s)
end
def send_player_equip(item_id, slot_id)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_PLAYER_EQUIP)
buffer.write_byte(slot_id)
buffer.write_short(item_id)
@socket.send(buffer.to_s)
end
def send_open_friends
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_OPEN_FRIENDS)
@socket.send(buffer.to_s)
end
def send_remove_friend(index)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_REMOVE_FRIEND)
buffer.write_byte(index)
@socket.send(buffer.to_s)
end
def send_leave_party
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_LEAVE_PARTY)
@socket.send(buffer.to_s)
end
def send_choice(index)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CHOICE)
buffer.write_byte(index)
@socket.send(buffer.to_s)
end
def send_bank_item(item_id, kind, amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_BANK_ITEM)
buffer.write_short(item_id)
buffer.write_byte(kind)
buffer.write_short(amount)
@socket.send(buffer.to_s)
end
def send_bank_gold(amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_BANK_GOLD)
buffer.write_int(amount)
@socket.send(buffer.to_s)
end
def send_close_bank
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CLOSE_BANK)
@socket.send(buffer.to_s)
end
def send_close_shop
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CLOSE_SHOP)
@socket.send(buffer.to_s)
end
def send_buy_item(index, amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_BUY_ITEM)
buffer.write_byte(index)
buffer.write_short(amount)
@socket.send(buffer.to_s)
end
def send_sell_item(item_id, kind, amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_SELL_ITEM)
buffer.write_short(item_id)
buffer.write_byte(kind)
buffer.write_short(amount)
@socket.send(buffer.to_s)
end
def send_choice_telepot(index)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CHOICE_TELEPORT)
buffer.write_byte(index)
@socket.send(buffer.to_s)
end
def send_request(type, player_id = -1)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_REQUEST)
buffer.write_byte(type)
buffer.write_short(player_id)
@socket.send(buffer.to_s)
end
def send_accept_request
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_ACCEPT_REQUEST)
@socket.send(buffer.to_s)
end
def send_decline_request
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_DECLINE_REQUEST)
@socket.send(buffer.to_s)
end
def send_trade_item(item_id, kind, amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_TRADE_ITEM)
buffer.write_short(item_id)
buffer.write_byte(kind)
buffer.write_short(amount)
@socket.send(buffer.to_s)
end
def send_trade_gold(amount)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_TRADE_GOLD)
buffer.write_int(amount)
@socket.send(buffer.to_s)
end
def send_close_trade
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_CLOSE_TRADE)
@socket.send(buffer.to_s)
end
def send_admin_command(command, str1, str2 = 0, str3 = 0, str4 = 0)
return unless @socket
buffer = Buffer_Writer.new
buffer.write_byte(Constants::PACKET_ADMIN_COMMAND)
buffer.write_byte(command)
buffer.write_string(str1)
buffer.write_int(str2)
buffer.write_int(str3)
buffer.write_short(str4)
@socket.send(buffer.to_s)
end
end
Em breve atualizarei o link de download para incluir estas correções.
- Mensagem nº367
Re: VXA-OS - Crie seu MMO com RPG Maker
Versão 1.1.4 disponível.
LOG:
-Bônus de ouro, experiência e drop também admitem números decimais;
-Tempo mínimo para falar novamente no bate-papo global adicionado;
-Erro ao enviar mensagens para o servidor corrigido;
-Erro nas coordenadas das animações corrigido;
-Erro ao receber dados do servidor corrigido;
-Erros no log corrigidos.
LOG:
-Bônus de ouro, experiência e drop também admitem números decimais;
-Tempo mínimo para falar novamente no bate-papo global adicionado;
-Erro ao enviar mensagens para o servidor corrigido;
-Erro nas coordenadas das animações corrigido;
-Erro ao receber dados do servidor corrigido;
-Erros no log corrigidos.
Última edição por Valentine em Qui Mar 19, 2020 9:17 am, editado 1 vez(es)
saask- Novato
- Mensagens : 22
Créditos : 3
- Mensagem nº368
Re: VXA-OS - Crie seu MMO com RPG Maker
Uma duvida, o Projeto esta muito bom, mais gostaria de saber se vai ter algum tipo de proteção para nossos ressources, no caso como maioria dos jogos ainda vao estar em beta nao tem tanta importancia mais caso o jogo fique muito bom e atinja uma grande parte de players muitos vao poder ter acesso a nossos ressources e scripts, vai ter algo desse tipo uma segurança para os arquivos ?
- Mensagem nº369
Re: VXA-OS - Crie seu MMO com RPG Maker
Já tem vários programas na internet que protegem os recursos.saask escreveu:Uma duvida, o Projeto esta muito bom, mais gostaria de saber se vai ter algum tipo de proteção para nossos ressources, no caso como maioria dos jogos ainda vao estar em beta nao tem tanta importancia mais caso o jogo fique muito bom e atinja uma grande parte de players muitos vao poder ter acesso a nossos ressources e scripts, vai ter algo desse tipo uma segurança para os arquivos ?
GuLabonia- Novato
- Mensagens : 9
Créditos : 0
- Mensagem nº370
Re: VXA-OS - Crie seu MMO com RPG Maker
Mano, não tô conseguindo nem abrir o Game.exe, baixei a versão que você diz e, quando vou abrir, já dá erro de Cursor... Aonde vou nos arquivos pra corrigir?