The RPG Maker Resource Kit

RMRK RPG Maker Creation => XP => XP Scripts Database => Topic started by: game_guy on June 12, 2010, 11:49:31 PM

Title: [XP] Snapshot
Post by: game_guy on June 12, 2010, 11:49:31 PM
Snapshot
Authors: game_guy
Version: 1.0
Type: Picture Taking Script
Key Term: Misc Add-on

Introduction

Ever wanted to take screenies or snapshots ingame? While there are other methods of doing that, this one is by far the easiest. With a simple button press or script call, it'll take a screenshot of the game for you and save it in a folder.
Also useful for beta testing. Your testers can snapshot bugs or errors in mapping or stuff like that.

Features


Screenshots

Here's how well the pictures come out. No windows borders or anything.
Spoiler for:
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fi678.photobucket.com%2Falbums%2Fvv143%2FGameGuysProjects%2Fsnap_5.png&hash=989047e3ec5e91d214a8dbb929a4e855370e682b)

Demo

Download (http://decisive-games.com/ggp/scripts/Snapshot.exe)

Script

You'll also need the screenshot.dll (http://decisive-games.com/ggp/scripts/screenshot.dll) for this script to function correctly.
Spoiler for:
Code: [Select]
#===============================================================================
# Snapshot
# Author game_guy
# Version 1.0
#-------------------------------------------------------------------------------
# Intro:
# Ever wanted to take screenies or snapshots ingame? While there are other
# methods of doing that, this one is by far the easiest. With a simple button
# press or script call, it'll take a screenshot of the game for you and
# save it in a folder.
# Also useful for beta testing. Your testers can snapshot bugs or errors in
# mapping or stuff like that.
#
# Features:
# Take picture with button press or script call
# Customizable Button to press
#
# Instructions:
# Place screenshot.dll in your projects folder.
# Get the dll here if you need it
# http://decisive-games.com/ggp/scripts/screenshot.dll
# Make a folder in your projects folder called Snapshots
#
# Go down to the line where it says SnapShot_Key = Input::A
# You can change Input::A to any of the following
# Input::A - Usually the Shift Key
# Input::B - Usually the X or Escape key
# Input::C - Usually C, Enter, or Space
# Input::X - Usually the A Key
# Input::Y - Usually the S Key
# Input::Z - Usually the D Key
# Input::L - Usually the Q Key
# Input::R - Usually the W Key
# Input::SHIFT
# Input::CTRL
# Input::ALT
# Input::F5
# Input::F6
# Input::F7
# Input::F8
# Input::F9
#
# To take a snapshot with a script call use this
# GameGuy.snap thats it!
#
# Compatibility:
# Not tested with SDK. (Should work though)
# Will work with anything.
#
# Credits:
# game_guy ~ For making it
# Google ~ Searching up Win32Api tutorials
# Screenshot.dll ~ Whoever made this, made this script possible
#===============================================================================
module GameGuy
  SnapShot_Key = Input::A # Shift Key
  def self.snap
    snp = Win32API.new('screenshot.dll', 'Screenshot', %w(l l l l p l l), '')
    window = Win32API.new('user32', 'FindWindowA', %w(p p), 'l')
    ini = (Win32API.new 'kernel32', 'GetPrivateProfileStringA', %w(p p p p l p),
      'l')
    game_name = "\0" * 256
    ini.call('Game', 'Title', '', game_name, 255, '.\Game.ini')
    game_name.delete!('\0')
    win = window.call('RGSS Player', game_name)
    dir = Dir.new("Snapshots/")
    count = 0
    dir.entries.each {|i| count += 1}
    file_name = "Snapshots/snap_#{count}.png"
    snp.call(0, 0, 640, 480, file_name, win, 2)
  end
end
module Input
  class << self
    alias gg_update_input_snapshot_lat update
  end
  def self.update
    if Input.trigger?(GameGuy::SnapShot_Key)
      GameGuy.snap
    end
    gg_update_input_snapshot_lat
  end
end

Instructions

In the script. Its recommended to place this above main but below everything else. It shouldn't cause issues with anything.

Compatibility

Not tested with SDK. (Should work anyways)
Should work with everything.

Credits and Thanks


Author's Notes

Enjoy!
Title: Re: [XP] Snapshot
Post by: game_guy on June 17, 2010, 07:13:12 PM
Bump. Any comments?
Title: Re: [XP] Snapshot
Post by: modern algebra on June 17, 2010, 08:12:08 PM
I think it's pretty useful game_guy. I'm a little biased though since I made one for VX :P It is easier to do in VX though. Good work.
Title: Re: [XP] Snapshot
Post by: game_guy on June 18, 2010, 05:19:05 PM
Thanks :)
Title: Re: [XP] Snapshot
Post by: Kiriashi on June 29, 2010, 04:04:02 AM
Wow, great script man! Mind if I post this in my site's (http://"http://www.rmxpunlimited.net") script archive?

Thanks again!
Title: Re: [XP] Snapshot
Post by: game_guy on June 29, 2010, 07:40:12 PM
Go right ahead, all I ask is my name is listed and fix the link please. It says the url ir illegal as in not typed right.
Title: Re: [XP] Snapshot
Post by: Kiriashi on June 30, 2010, 09:32:34 PM
It's www.rmxpunlimited.net

Thanks!