RPG Maker

Welcome Guest ( Log In | Register )


Join the Guild Wars 2 Forum Community!

  Games Resources RPG Maker VX RPG Maker XP Scripts Tutorials Downloads

2 Pages V   1 2 >  
Reply to this topicStart new topic
> Download & Upload files with Rgss, RM is now able to download file with http and ftp protocols
berka
post Mar 22 2009, 01:47 PM
Post #1


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




Upload & Download Files with Rgss
Version: 2.1
By: Berka


Introduction
Now, your crazy project is able to download and upload files on ftp or http servers.

Features
  • No external files/libs, only Apis
  • Fast transfers
  • ProgressBars...
  • Ftp and http support


Screenshots


Demo
RMVX
RMXP

Script
The Net module:
CODE
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#                   Download & Upload Files with RGSS
#  par berka                      v 2.1                  rgss 2
#                         [url="http://www.rpgmakervx-fr.com  "]http://www.rpgmakervx-fr.com  [/url]                                    
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# thanks to: [url="http://www.66rpg.com"]http://www.66rpg.com[/url] for documentation on wininet
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# ! do not use ftp which contains privates data
# ! this scripts need ftp account information !
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# Ftp :
#    �–� receive :
#          Net::Ftp.download("dir_on_ftp/file.zip","./Graphics")
#    �–� send :
#          Net::Ftp.upload("./Graphics/file.zip","§dir_on_ftp/file.zip")
#    �–� make directory :
#          Net::Ftp.mkdir("/dir_on_ftp")
# Http :
#    �–� receive :
#          Net::Http.download("url","./Graphics")
#    �–� total octets downloaded :
#          Net::HTTP.dloaded
#    �–� size of file :
#          Net::HTTP.size("test.zip")
#    �–� % dl progress :
#          Net::HTTP.progress("test.zip")
#    �–� transfer time:
#          Net::HTTP.temps("test.zip")
#    �–� list files :
#          Net::HTTP.transfers
#    �–� file loaded? :
#          Net::HTTP.loaded?("test.zip")
#    �–� octets transfered :
#          Net::HTTP.transfered
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
module Berka
  module NetError
    ErrConIn="Unable to connect to Internet"
    ErrConFtp="Unable to connect to Ftp"
    ErrConHttp="Unable to connect to the Server"
    ErrNoFFtpIn="The file to be download doesn't exist"
    ErrNoFFtpEx="The file to be upload doesn't exist"
    ErrTranHttp="Http Download is failed"
    ErrDownFtp="Ftp Download is failed"
    ErrUpFtp="Ftp Upload is failed"
    ErrNoFile="No file to be download"
    ErrMkdir="Unable to create a new directory"
  end
end
include Berka::NetError
module Net
  W='wininet'
  SPC=Win32API.new('kernel32','SetPriorityClass','pi','i').call(-1,128)
  IOA=Win32API.new(W,'InternetOpenA','plppl','l').call('',0,'','',0)
  IC=Win32API.new(W,'InternetConnectA','lplpplll','l')
  print(ErrConIn)if IOA==0
  module FTP
    FSCD=Win32API.new(W,'FtpSetCurrentDirectoryA','lp','l')
    FGF=Win32API.new(W,'FtpGetFileA','lppllll','l')
    FPF=Win32API.new(W,'FtpPutFile','lppll','l')
    FCD=Win32API.new(W,'FtpCreateDirectoryA','lp','l')
    module_function
    def init
      #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
      ftp="ftp.server.com"        #
      port=21                      #  Modify !
      identifiant="user"            #
      motdepasse="password"      #
      #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
      @fb=IC.call(IOA,ftp,port,identifiant,motdepasse,1,0,0)
      ftp,port,identifiant,motdepasse=[nil]*4 # clear ftp ids !
      (print(ErrConFtp))if @fb==0
    end
    def download(ext,int='./')
      init if @fb.nil?  
      c=ext.split('/').pop
      if FSCD.call(@fb,ext.gsub(c,''))!=0
        print(ErrDownFtp)if FGF.call(@fb,c,"#{int}/#{c}",0,32,2,0)==0
      else
        print(ErrNoFFtpIn)
      end
    end
    def mkdir(rep)
      init if @fb.nil?
      print(ErrMkdir)if FCD.call(@fb,rep)==0
    end
    def upload(int,ext)
      init if @fb.nil?
      if FSCD.call(@fb,ext)&&File.exist?(int)
        print(ErrUpFtp)if FPF.call(@fb,int,ext,2,0)==0
      else
        print(ErrNoFFtpEx)
      end
    end
  end
  #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  module HTTP
    IOU=Win32API.new(W,'InternetOpenUrl','lppllp','l')
    IRF=Win32API.new(W,'InternetReadFile','lpip','l')
    ICH=Win32API.new(W,'InternetCloseHandle','l','l')
    HQI=Win32API.new(W,'HttpQueryInfo','llppp','i')
    module_function
    def sizeloaded(i=0);@read[i];end
    def transfered;@dloaded;end
    def transfers;@dls;end
    def progress(i=0);(@read[i].to_f/@size[i]*100);end
    def loaded?(i=0);@read[i]>=@size[i];end
    def temps(i=0);@tps[i];end
    def size(i=0);@size[i];end
    def download(url,int='./')
      @dloaded||=0;@dls||={};@i||=-1;@size||={};@read||={};@tps={}
      a=url.split('/');serv,root,fich=a[2],a[3..a.size].join('/'),a[-1]
      print(ErrNoFile)if fich.nil?
      @dls[fich]=Thread.start(url,int){|url,int|txt='';t=Time.now
      ErrConHttp if(e=IC.call(IOA,serv,80,'','',3,1,0))==0  
      f=IOU.call(IOA,url,nil,0,0,0)
      HQI.call(f,5,k="\0"*1024,[k.size-1].pack('l'),nil)
      @read[fich],@size[fich]=0,k.delete!("\0").to_i
      loop do
        buf,n=' '*1024,0
        r=IRF.call(f,buf,1024,o=[n].pack('i!'))
        n=o.unpack('i!')[0]
        break if r&&n==0
        @read[fich]=(txt<<buf[0,n]).size
      end
      (File.open(int+fich,'wb')<<txt).close
      @dloaded+=@read[fich]
      ICH.call(f)
      @tps[fich]=Time.now-t
      sleep(0.001)}
    end
  end
end

Scene Example:
CODE
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#                    Download & Upload Files with RGSS
#  par berka                      v 2.1                     rgss 2
#                          www.rpgmakervx-fr.com                                          
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#            EXAMPLES !
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
class Window_Barre<Window_Base
  Col1=Color.new(255,0,0)
  Col2=Color.new(0,255,0)
  def initialize
    super(100,50,344,316)
    @dls=Net::HTTP.transfers
    refresh
  end
  def refresh
    i=0
    self.contents.clear
    self.contents.font.size=22
    self.contents.draw_text(-16,0,self.width,WLH,"Http: Downloads",1)
    self.contents.font.size=20
    @dls.each_key{|file|
    self.contents.draw_text(0,56*(i+=1),200,WLH,"--> #{file}")
    self.contents.fill_rect(131,56*i+25,152,10,Color.new(0,0,0,150))
    self.contents.font.size=14
    rat="#{Net::HTTP.sizeloaded(file)/1024}/#{Net::HTTP.size(file)/1024} ko"
    self.contents.draw_text(132,56*i+32,150,WLH,rat,1)
    s=Net::HTTP.temps(file)
    self.contents.draw_text(20,56*i+20,self.width,WLH,"OK:#{s} secs")if Net::HTTP.loaded?(file)
    pr=Net::HTTP.progress(file)/100
    self.contents.draw_text(272,56*i,self.width,WLH,"#{(pr*100).to_i}%")rescue nil
    self.contents.gradient_fill_rect(132,56*i+26,pr*150,8,Col1,Col2)
    self.contents.font.size=20}
  end
end
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
class Download<Scene_Base
  def start
    super
    @fond=Spriteset_Map.new
    Net::HTTP.download('http://download59.mediafire.com/313lzxpdytpg/gyok0vgmm2m/hero+creator.zip')
    Net::HTTP.download('http://www.google.fr/intl/fr_fr/images/logo.gif')
    Net::HTTP.download('http://www.rpgrevolution.com/forums/banner3.gif')
    Net::HTTP.download('http://i42.servimg.com/u/f42/12/32/03/86/bannie11.jpg')
    @barre=Window_Barre.new
  end
  def terminate
    super
    @barre.dispose
    @fond.dispose
  end
  def update
    super
    @barre.refresh
  end
end

def telecharger
  Net::HTTP.download('http://download59.mediafire.com/313lzxpdytpg/gyok0vgmm2m/hero+creator.zip')
  Net::HTTP.download('http://www.google.fr/intl/fr_fr/images/logo.gif')
  Net::HTTP.download('http://www.rpgrevolution.com/forums/banner3.gif')
  Net::HTTP.download('http://i42.servimg.com/u/f42/12/32/03/86/bannie11.jpg')
end

The Net module
CODE
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#                   Download & Upload Files with RGSS
#  par berka                      v 2.1                  rgss 1
#                         [url="http://www.rpgmakervx-fr.com&nbsp;&nbsp;"]http://www.rpgmakervx-fr.com&nbsp;&nbsp;[/url]                                    
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# thanks to: [url="http://www.66rpg.com"]http://www.66rpg.com[/url] for documentation on wininet
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# ! do not use ftp which contains privates data
# ! this scripts need ftp account information !
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# Ftp :
#    �–� receive :
#          Net::Ftp.download("dir_on_ftp/file.zip","./Graphics")
#    �–� send :
#          Net::Ftp.upload("./Graphics/file.zip","§dir_on_ftp/file.zip")
#    �–� make directory :
#          Net::Ftp.mkdir("/dir_on_ftp")
# Http :
#    �–� receive :
#          Net::Http.download("url","./Graphics")
#    �–� total octets downloaded :
#          Net::HTTP.dloaded
#    �–� size of file :
#          Net::HTTP.size("test.zip")
#    �–� % dl progress :
#          Net::HTTP.progress("test.zip")
#    �–� transfer time:
#          Net::HTTP.temps("test.zip")
#    �–� list files :
#          Net::HTTP.transfers
#    �–� file loaded? :
#          Net::HTTP.loaded?("test.zip")
#    �–� octets transfered :
#          Net::HTTP.transfered
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
module Berka
  module NetError
    ErrConIn="Unable to connect to Internet"
    ErrConFtp="Unable to connect to Ftp"
    ErrConHttp="Unable to connect to the Server"
    ErrNoFFtpIn="The file to be download doesn't exist"
    ErrNoFFtpEx="The file to be upload doesn't exist"
    ErrTranHttp="Http Download is failed"
    ErrDownFtp="Ftp Download is failed"
    ErrUpFtp="Ftp Upload is failed"
    ErrNoFile="No file to be download"
    ErrMkdir="Unable to create a new directory"
  end
end
module Net
  W='wininet'
  SPC=Win32API.new('kernel32','SetPriorityClass','pi','i').call(-1,128)
  IOA=Win32API.new(W,'InternetOpenA','plppl','l').call('',0,'','',0)
  IC=Win32API.new(W,'InternetConnectA','lplpplll','l')
  print(Berka::NetErrorErr::ConIn)if IOA==0
  module FTP
    FSCD=Win32API.new(W,'FtpSetCurrentDirectoryA','lp','l')
    FGF=Win32API.new(W,'FtpGetFileA','lppllll','l')
    FPF=Win32API.new(W,'FtpPutFile','lppll','l')
    FCD=Win32API.new(W,'FtpCreateDirectoryA','lp','l')
    module_function    
    def init
      #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
      ftp="ftp.server.com"          #
      port=21                      #  A modifier !
      identifiant="user"            #
      motdepasse="password"        #
      #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
      @fb=IC.call(IOA,ftp,port,identifiant,motdepasse,1,0,0)
      ftp,port,identifiant,motdepasse=[nil]*4 # efface les ids par s�curit�
      (print(Berka::NetError::ErrConFtp))if @fb==0
    end
    def download(ext,int='./')
      init if @fb.nil?    
      c=ext.split('/').pop
      if FSCD.call(@fb,ext.gsub(c,''))!=0
        print(Berka::NetErrorErr::ErrDownFtp)if FGF.call(@fb,c,"#{int}/#{c}",0,32,2,0)==0
      else
        print(Berka::NetErrorErr::ErrNoFFtpIn)
      end
    end
    def mkdir(rep)
      init if @fb.nil?
      print(Berka::NetErrorErr::ErrMkdir)if FCD.call(@fb,rep)==0
    end
    def upload(int,ext)
      init if @fb.nil?
      if FSCD.call(@fb,ext)&&File.exist?(int)
        print(Berka::NetErrorErr::ErrUpFtp)if FPF.call(@fb,int,ext,2,0)==0
      else
        print(Berka::NetErrorErr::ErrNoFFtpEx)
      end
    end
  end
  #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  module HTTP
    IOU=Win32API.new(W,'InternetOpenUrl','lppllp','l')
    IRF=Win32API.new(W,'InternetReadFile','lpip','l')
    ICH=Win32API.new(W,'InternetCloseHandle','l','l')
    HQI=Win32API.new(W,'HttpQueryInfo','llppp','i')
    module_function
    def sizeloaded(i='');@read[i];end
    def transfered;@dloaded;end
    def transfers;@dls;end
    def progress(i='');(@read[i].to_f/@size[i]*100);end
    def loaded?(i='');@read[i]>=@size[i]rescue nil;end
    def temps(i='');@tps[i]if loaded?(i);end
    def size(i='');@size[i];end
    def download(url,int='./')
      @dloaded||=0;@dls||={};@i||=-1;@size||={};@read||={};@tps={}
      a=url.split('/');serv,root,fich=a[2],a[3..a.size].join('/'),a[-1]
      print(Berka::NetErrorErr::ErrNoFile)if fich.nil?
      @dls[fich]=Thread.start(url,int){|url,int|txt='';t=Time.now
      Berka::NetErrorErr::ErrConHttp if(e=IC.call(IOA,serv,80,'','',3,1,0))==0  
      f=IOU.call(IOA,url,nil,0,0,0)
      HQI.call(f,5,k="\0"*1024,[k.size-1].pack('l'),nil)
      @read[fich],@size[fich]=0,k.delete!("\0").to_i
      loop do
        buf,n=' '*1024,0
        r=IRF.call(f,buf,1024,o=[n].pack('i!'))
        n=o.unpack('i!')[0]
        break if r&&n==0
        txt << buf[0,n]
        @read[fich]=txt.size
      end
      (File.open(int+fich,'wb')<<txt).close
      @dloaded+=@read[fich]
      ICH.call(f);sleep(0.01)
      @tps[fich]=Time.now-t}
    end
  end
end

The Scene Example:
CODE
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#                    T�l�chargement de fichiers en Rgss
#  par berka                      v 2.1                     rgss 1
#                          www.rpgmakervx-fr.com                                          
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#            EXEMPLES !
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
class Window_Barre<Window_Base
  def initialize
    super(100,50,440,380)
    self.contents=Bitmap.new(width-32,height-32)
    self.contents.font.name=$fontface
    self.contents.font.size=$fontsize
    # on initialise un tableau de t�l�chargement
    @dls=Net::HTTP.transfers
    refresh
  end
  def refresh
    i=0
    self.contents.clear
    self.contents.font.size=22
    self.contents.draw_text(-16,0,self.width,24,"Http: Gestionnaire de t�l�chargement",1)
    self.contents.font.size=20
    # pour chaque t�l�chargement
    @dls.each_key{|file|
    self.contents.draw_text(0,56*(i+=1),200,24,"--> #{file}")
    self.contents.fill_rect(131,56*i+25,202,10,Color.new(0,0,0,150))
    self.contents.font.size=14
    # on r�cupere le pourcentage du t�l�chargement
    pr=Net::HTTP.progress(file)/100
    # on �crit le rapport: octets t�l�charg�s / taille totale
    rat="#{Net::HTTP.sizeloaded(file)/1024}/#{Net::HTTP.size(file)/1024} ko"
    self.contents.draw_text(132,56*i+32,150,24,rat,1)
    # on r�cup�re le temps de t�l�chargement du fichier
    s=Net::HTTP.temps(file)
    # on l'�crit
    self.contents.draw_text(20,56*i+20,self.width,24,"Fait en #{s} secs")
    # on �crit le pourcentage de progression
    self.contents.draw_text(342,56*i+26,self.width,24,"#{(pr*100).to_i}%")rescue nil
    # et on trace la barre
    self.contents.fill_rect(132,56*i+26,pr*200,8,Color.new(0,255,0))
    self.contents.font.size=20}
  end
end
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
class Scene_Download
  def main
    @fond=Spriteset_Map.new
    # chargement des fichiers
    Net::HTTP.download('http://download59.mediafire.com/313lzxpdytpg/gyok0vgmm2m/hero+creator.zip')
    Net::HTTP.download('http://www.google.fr/intl/fr_fr/images/logo.gif')
    Net::HTTP.download('http://www.rpgrevolution.com/forums/banner3.gif')
    Net::HTTP.download('http://i42.servimg.com/u/f42/12/32/03/86/bannie11.jpg')
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    @barre=Window_Barre.new
    Graphics.transition
    loop do
      Input.update
      Graphics.update
      update
      break if $scene != self
    end
    Graphics.freeze
    @fond.dispose
    @barre.dispose
  end
  def update
    @barre.refresh
    $scene=Scene_Map.new if Input.trigger?(Input::B)
  end
end


Instructions
QUOTE
Ftp :
receive : Net::Ftp.download("file_on_ftp","./Graphics")
send : Net::Ftp.upload("file_in_project","dir_on_ftp")
Http :
receive : Net::Http.download("url","./Graphics")

The downloaded file has the same name of the original

FAQ
Paste this script above main

Compatibility
No Problem I think !

Credits and Thanks
Msdn, my best friend ^^
http://www.66rpg.com for parts of scripts !

Author's Notes
next feature:
evaluate the size of the file: done.
evaluate if the file exists: done.

Terms and Conditions
Free for using, but I need credits. Do not post this script anywhere without my permission !

enjoy,
berka

This post has been edited by berka: Mar 28 2009, 03:18 AM


__________________________
Go to the top of the page
 
+Quote Post
   
SuperMega
post Mar 22 2009, 02:08 PM
Post #2


System.out.println("Learning Java!");
Group Icon

Group: Revolutionary
Posts: 682
Type: Developer
RM Skill: Skilled




That's a fairly interesting idea. I might just have to try it out. Good job!


__________________________


Translated Scripts:
Diagonal Movement (Eight Direction) and Smooth Jumping
Attack Party, Heal Enemies
Display Party Status On Map (DQ Style)
Display Maps Under Maps
Save Screen Customization
Subtitled Menus

If you want to suggest a translation for something, PM me, and I'll take a look. I AM TRYING TO GIVE AWAY LOCKERZ.com INVITES, SO PLEASE LET ME KNOW IF YOU WANT ONE.
Currently Working on 2 RPG Maker VX Projects. They are very unique, and have a different kind of style then the usual RPGs. So don't think of them as just another RPG. Did that sound rude? :D Not sure if I want them to go public yet, but we'll see how it goes.
Need a script translated? Come talk to me, and I'll see what I can do.
Go to the top of the page
 
+Quote Post
   
berka
post Mar 22 2009, 02:13 PM
Post #3


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




thanks !
berka


__________________________
Go to the top of the page
 
+Quote Post
   
onidsouza
post Mar 22 2009, 03:14 PM
Post #4


Level 26
Group Icon

Group: Revolutionary
Posts: 586
Type: Developer
RM Skill: Advanced




Nice script berka! btw,
I am trying to connect my game in the internet, can you show me a tutorial, a demo, that tell's me how to use ruby and internet togeter? All my ruby books don't tell (i have a lot!), i can can't find anything usefull for me.
You still keep surprising everyone!


__________________________
Enjoy all the sanity you have...
it's not good when the system takes it from you...

Go to the top of the page
 
+Quote Post
   
woratana
post Mar 22 2009, 05:42 PM
Post #5


Looking for scripter to hire? PM me *O*
Group Icon

Group: +Gold Member
Posts: 1,038
Type: Scripter
RM Skill: Undisclosed




Sweet ^^/ This will be useful for the system with online function.


__________________________
Check out my NEW blog!!!



MVP (Most Valuable Poster) Award 2008


Go to the top of the page
 
+Quote Post
   
Midnight Assassi...
post Mar 22 2009, 06:40 PM
Post #6


On Leave. Will Be Back In 10 Weeks.
Group Icon

Group: Banned
Posts: 310
Type: Artist
RM Skill: Skilled




Wow... great script! This is good for games that act like an XBOX 360, Wii or PS3 game. So with an internet connection, you can get more out of the game!

So, to upload a file from my Photobucket (HTTP Server) to the Graphics/System folder called 'Book', would I type in the following?
CODE
receive : Net::Http.download("http://i616.photobucket.com/albums/tt248/MidnightAssassin/Book.png","./Graphics/System")

Then I could use that image in my game, is that right?

Just one thing... could you upload a demo? This will make it easier to understand and use.


__________________________
I'm currently on leave at the moment. If you see me lurking, don't expect a post too soon. I will be back in about 9-11 weeks at the very most. If you see my 'Revolutionary' badge replaced with a 'Banned' badge, don't be too surprised...
While I'm gone, you can still comment on my games. I'll probably answer out of force of habit!






BANNED FOR TRYING TO HACK THE SITE - The Admin Team
Go to the top of the page
 
+Quote Post
   
AmIMeYet
post Mar 23 2009, 07:16 AM
Post #7


new av & (dynamic) sig!
Group Icon

Group: Revolutionary
Posts: 149
Type: Scripter
RM Skill: Undisclosed




How did I not see WinINet when I tried this?! .. MSDN can be so complex wacko.gif

Great job!

Just a thought: Can you add support for POST-data?
"lpOptional [in] " should be the place to put that in, but I don't know what the exact format is.
I know, I know, you can always use get ( url?var=abc), but POST can be more secure (and fun!) I guess...

Also, how about 'temp' support? .. could be usefull..

And this script should be great for version-control.. happy.gif


__________________________

>>Latest EventScripter news: Conditional Branches fully working! Currently working on a documentation site. Topic: EventScripter
>>Portals (yes, in RPG Maker VX!)
>>Working with Sojabird on his Scriptology; I also invented Scriptuzzle.. Try one; make one!
[Show/Hide] USEFULL script snippets:
[Show/Hide] Do require's in VX:
CODE
$LOAD_PATH << Dir.getwd #You only need to call this once
Kernel.require("includable.rb") #replace includable.rb with the name of the file you want to load
[Show/Hide] Invert Dash enabling:
CODE
#=============================================================================#
# # #                            ANTI DASH HACK                           # # #
# # #                              By AmIMeYet                            # # #
# # #                           please credit me                          # # #
#=============================================================================#
class Game_Player < Game_Character
  def dash?
    return false if @move_route_forcing
    return false if in_vehicle?
    return true if Input.press?(Input::A) and $game_map.disable_dash?
  end
end

This snippet basically inverts the dashing.. allowing you to dash only when 'disable dashing' is checked.
This way, normal maps disable dashing, but the ones you set to disable actually allow dashing..

It should be placed where you normally place the scripts ('above main', in the materials section of the scripts window)..
Go to the top of the page
 
+Quote Post
   
berka
post Mar 23 2009, 08:41 AM
Post #8


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




Thanks guys !

Sorry my example is quite bad:
the command is:

CODE
Net::HTTP.download("http://www.site.com/file.zip")


I've not tried to have interractions with *.php files

I gonna think about it !

berka

This post has been edited by berka: Mar 23 2009, 08:43 AM


__________________________
Go to the top of the page
 
+Quote Post
   
Midnight Assassi...
post Mar 24 2009, 10:21 PM
Post #9


On Leave. Will Be Back In 10 Weeks.
Group Icon

Group: Banned
Posts: 310
Type: Artist
RM Skill: Skilled




So.. you cannot download files to certain folders? That blows... Great job anyway!

I found a problem. The downloading works fine, yet when I go to open the file from Explorer, it has a size of 0kb. I've tried PNG, ZIP, PHP, HTML, JS and many other formats - they all end up with an empty file in Explorer.
Eg: Downloaded Image.png => Went to explorer and found Image.png => Image.png has a size of 0kb.


__________________________
I'm currently on leave at the moment. If you see me lurking, don't expect a post too soon. I will be back in about 9-11 weeks at the very most. If you see my 'Revolutionary' badge replaced with a 'Banned' badge, don't be too surprised...
While I'm gone, you can still comment on my games. I'll probably answer out of force of habit!






BANNED FOR TRYING TO HACK THE SITE - The Admin Team
Go to the top of the page
 
+Quote Post
   
berka
post Mar 25 2009, 05:38 AM
Post #10


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




I'm programming a new version:
harder but better, faster, stronger ^^
(2.5Mo => 10 secs)
be patient !

berka

This post has been edited by berka: Mar 25 2009, 05:49 AM


__________________________
Go to the top of the page
 
+Quote Post
   
berka
post Mar 26 2009, 01:51 PM
Post #11


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




New version released !
have fun !
berka


__________________________
Go to the top of the page
 
+Quote Post
   
berka
post Mar 27 2009, 06:48 AM
Post #12


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




XP version released !

berka


__________________________
Go to the top of the page
 
+Quote Post
   
avatarfanatic280
post Mar 29 2009, 06:15 PM
Post #13


Level 2
Group Icon

Group: Members
Posts: 19
Type: None
RM Skill: Beginner




I tried both versions of the demo- I had to change the configuration settings in the RMXP one, and they both crash. I really want to get this working, it looks AWESOME!

The XP one crashed right off the bat, but the VX one made it until I actually tried to talk to the guy that launches the download.

It might be Vista, because the security stuff in it will shoot down ANYTHING, but it doesn't give me the oh-so-innocent little 'we killed this harmless program because it is made by our competitor- ER... it was a security threat. Right. Security threat.' thing. (Sorry, I break out in insanity every once in a while... biggrin.gif )

My idea is to have it download updates to a game? Would that be possible, because it would be really cool. The other ideas are pretty awesome, too... Looking around at all the stuff you can do with RMVX, you could probably build an OS... Oooh, what a fun idea, until you think about it for a moment.

Sorry, getting off topic. I can't get it to work! Help!

--EDIT--
Got it to work, I have no idea what the problem was. I think it was Vista... Well, whatever, it works!

This post has been edited by avatarfanatic280: May 5 2009, 06:31 PM


__________________________
Umm, nothing much right now...
Go to the top of the page
 
+Quote Post
   
berka
post Mar 30 2009, 08:25 AM
Post #14


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




I'm using vista too !
did you put the last Rgss dll in your project directory ?

berka


__________________________
Go to the top of the page
 
+Quote Post
   
masterx
post May 1 2009, 04:48 PM
Post #15


Level 1
Group Icon

Group: Members
Posts: 9
Type: None
RM Skill: Undisclosed




cool but I need to find a way to put it to use


__________________________
Go to the top of the page
 
+Quote Post
   
avatarfanatic280
post May 5 2009, 06:32 PM
Post #16


Level 2
Group Icon

Group: Members
Posts: 19
Type: None
RM Skill: Beginner




Quick question- can I just go to Event > Script and punch in that Net:: whatever file thing?

--EDIT--
Tried that, I'm getting an error message.

The EXACTLY COPIED error message:

QUOTE
ArgumentError occured while running script.

wrong number of arguments(0 for 1)]


Exact same punctuation.
Here's the code I used:
CODE
Net::HTTP.download ("http://I'm hiding this web address." "./")




This post has been edited by avatarfanatic280: May 5 2009, 07:02 PM


__________________________
Umm, nothing much right now...
Go to the top of the page
 
+Quote Post
   
Omegas7
post May 7 2009, 07:13 PM
Post #17


I'm back.
Group Icon

Group: Revolutionary
Posts: 917
Type: Scripter
RM Skill: Skilled




Awesome script, and in the right time!!! Thanks a lot.


__________________________
Go to the top of the page
 
+Quote Post
   
berka
post May 8 2009, 12:39 AM
Post #18


Level 7
Group Icon

Group: Revolutionary
Posts: 104
Type: Scripter
RM Skill: Advanced




QUOTE (avatarfanatic280 @ May 6 2009, 04:32 AM) *
Quick question- can I just go to Event > Script and punch in that Net:: whatever file thing?

--EDIT--
Tried that, I'm getting an error message.

The EXACTLY COPIED error message:

QUOTE
ArgumentError occured while running script.

wrong number of arguments(0 for 1)]


Exact same punctuation.
Here's the code I used:
CODE
Net::HTTP.download ("http://I'm hiding this web address." "./")



You have forgotten the "," :
CODE
Net::HTTP.download ("http://I'm hiding this web address.", "./")


__________________________
Go to the top of the page
 
+Quote Post
   
acrox999
post May 17 2009, 06:15 AM
Post #19


Level 1
Group Icon

Group: Members
Posts: 12
Type: Developer
RM Skill: Intermediate




Nice script Berka. I hope I can see more great scripts from you. smile.gif
Go to the top of the page
 
+Quote Post
   
darkcloud7867
post Mar 24 2010, 11:49 AM
Post #20



Group Icon

Group: Members
Posts: 1
Type: None
RM Skill: Undisclosed




hi this is my first post so hiiiiiiiii , ok straight to my issue. i got everything working including the download function but ......... how do i close the window after the download is complete. it just stays there permanently. thanks
Go to the top of the page
 
+Quote Post
   

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version Time is now: 2nd September 2010 - 11:56 AM
RPG RPG Revolution is an Privacy Policy and Legal
eXTReMe Tracker