Having a tint Screen issue?

0 Members and 1 Guest are viewing this topic.

**
Rep: +0/-0Level 73
RMRK Junior
Now I may just be having a idiot moment, but I have in my game a "State of Gray" Status/situation, when this happen the screen goes grey and a bunch of other effects begin to happen, However!

  I use the Tint screen event, I use the "Normal" Preset, now I take the bottom "Grey" and turn it all the way to 255. Looks good in the preview! But once I test this in game, The screen instead of going grey or black and white, turns completely black, now am I missing something here? Or whats going on?

Any help is appreciated! Thanks!

***
Rep:
Level 56
Miiiiaf =^+^=
GIAW 14: ParticipantParticipant - GIAW 11
ANSWER:
Putting everything to 255 means you fully max out everything, which means in grey scale total blackness.

SOLLUTION:
Try using something between 50 and 200 for grey tints that will still keep your game pretty visible.

OTHER INFO:
When you create games, you'll meet the 255 thing a lot of times. When you play with opacities, tint screens, ... It is also a basic number for colours in computers.
When you use it a lot, you'll eventually learn what 0 and 255 do and why you would/shouldn't use them.
Also if you were to use a certain colour in your game, like I did with red: I'll never use Green and Blue on 0 and Red on 255, that'll burn your eyes out.

Just keep this in mind for tint and opacity: 0 is completely invisible and 255 is completely visible.

Ask if you want to know more...


As blonde as can be!!!
Doesn't mean I'm the dumb one...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Spoiler for supporting!:


***
You pie feeders!
Rep:
Level 67
Everyone... Actually Everyone hates me :)
2012 Biggest Drama Whore
What she said and also i have this one script that allows you to change the screen tint while in game manually with a small window but i'll get back to you on that i need to find it first.
Final Statement: I chowder5lock am a dipshit and MA is a pretty cool dude.

**
Rep: +0/-0Level 73
RMRK Junior
ANSWER:
Putting everything to 255 means you fully max out everything, which means in grey scale total blackness.

SOLLUTION:
Try using something between 50 and 200 for grey tints that will still keep your game pretty visible.

OTHER INFO:
When you create games, you'll meet the 255 thing a lot of times. When you play with opacities, tint screens, ... It is also a basic number for colours in computers.
When you use it a lot, you'll eventually learn what 0 and 255 do and why you would/shouldn't use them.
Also if you were to use a certain colour in your game, like I did with red: I'll never use Green and Blue on 0 and Red on 255, that'll burn your eyes out.

Just keep this in mind for tint and opacity: 0 is completely invisible and 255 is completely visible.

Ask if you want to know more...


 Alright well I tried playing with this like you suggested and it still, only fades to blackness: http://screensnapr.com/v/a4qCLl.jpg <-- the Grey is set to 200 here while the others are set to default of 0 :/  it only fades darker instead of actually changing colors.

*****
Rep:
Level 82
GIAW 14: 1st Place (Easy Mode)2013 Project of the Year2013 Best RPG Maker User (Programming)2013 Most Promising ProjectParticipant - GIAW 11Bronze - GIAW 10
Hmm, and you're absolutely certain that there are no other screen tinting actions going on, as well? No scripts you are using that might be helping to cause this issue?

The problem might be easier to diagnose if the game files were made available to rummage through, but I understand if you do not wish to do so.

UPDATED 05-29-14


IS YOUR PROJECT OPTIMIZED?
UPDATED 07/04/15 - v2.5

RPG MAKER TOOLBOX
UPDATED 07/04/15 - v1.5

***
You pie feeders!
Rep:
Level 67
Everyone... Actually Everyone hates me :)
2012 Biggest Drama Whore
ok 1 make sure fadeout is not in that section of your event if you need it at all second here:

Credit Grim
allows you to edit tones while game testing.

Code: [Select]
=begin
Ingame tone editor!
------------------------------------------------------
By Grim (http://blog.gri.im)
Funkywork - Biloucorp

Big thanks to Zeus81 for his precious help (on parameters and
for the 'v' :P) and to Hiino for this translation

Original idea by Siegfried, thanks!

Also thanks Magicalichigo and Nuki for their help :)

Overview
------------------------------------------------------
I am a big fan of screen toning in RM.
The problem is that I am never satisfied at the first try
so then I have to recompile the project several times...
With this script, you get (in test mode, only launched from
the editor) a test window for the tones in real time.
The key to hide/show the window is F3 by default, you can
change it in the Tint_Config module, simpy by editing the
KEY value.

I hope this script will be useful!

=end
#==============================================================================
# ** Tint_Config
#------------------------------------------------------------------------------
#  Configuration
#==============================================================================

module Tint_Config
#--------------------------------------------------------------------------
# * Key List
#--------------------------------------------------------------------------
F1 = 0x70
F2 = 0x71
F3 = 0x72
F4 = 0x73
F5 = 0x74
F6 = 0x75
F7 = 0x76
F8 = 0x77
F9 = 0x78
F10 = 0x79
F11 = 0x7A
F12 = 0x7B
#--------------------------------------------------------------------------
# * Key to enable the Tone Window
#--------------------------------------------------------------------------
KEY = F3
end

#==============================================================================
# ** Module GUI
#------------------------------------------------------------------------------
#  GUI Tools
#==============================================================================

module GUI
#--------------------------------------------------------------------------
# * Librairy
#--------------------------------------------------------------------------
FindWindowA = Win32API.new('user32', 'FindWindowA', 'pp', 'l')
GetPrivateProfileStringA = Win32API.new('kernel32', 'GetPrivateProfileStringA', 'pppplp', 'l')
GetWindowRect = Win32API.new('user32','GetWindowRect','lp','i')
ScreenToClient = Win32API.new('user32', 'ScreenToClient', 'lp', 'i')
GetAsyncKeyState = Win32API.new('user32', 'GetAsyncKeyState', 'i', 'i')
CreateWindowEx = Win32API.new("user32","CreateWindowEx",'lpplllllllll','l')
ShowWindow = Win32API.new('user32','ShowWindow','ll','l')
DestroyWindow = Win32API.new('user32','DestroyWindow','p','l')
MoveWindow = Win32API.new('user32','MoveWindow','liiiil','l')
SendMessage = Win32API.new('user32','SendMessage','llll','l')
SetWindowText = Win32API.new('user32','SetWindowText','pp','i')
#--------------------------------------------------------------------------
# * Styles
#--------------------------------------------------------------------------
WS_BORDER = 0x00800000
WS_POPUP = 0x80000000
WS_VISIBLE = 0x10000000
WS_SYSMENU = 0x00080000
WS_CLIPSIBLINGS = 0x04000000
WS_CAPTION = 0x00C00000
WS_TILED = 0x00000000
WS_DLGFRAME = 0x00400000
WS_CHILD = 0x40000000
WS_EX_WINDOW_EDGE = 0x00000100
WS_EX_APPWINDOW = 0x00040000
WS_EX_TOOLWINDOW = 0x00000080
TBS_AUTOTICKS = 1
TBS_ENABLESELRANGE = 32
TBS_NOTIFY  = 0x0001
TBM_SETRANGE = 1030
TBM_SETPOS = 1029
TBM_GETPOS = 1024
TBM_GETMAX = 1031
TRACKBAR_CLASS = "msctls_trackbar32"

#--------------------------------------------------------------------------
# * Singleton
#--------------------------------------------------------------------------
class << self
#--------------------------------------------------------------------------
# * get RGSS handle
#--------------------------------------------------------------------------
def handle
name = [].pack("x256")
GetPrivateProfileStringA.('Game', 'Title', '', name, 255, ".\\Game.ini")
name.delete!("\x00")
FindWindowA.('RGSS Player', name)
end
#--------------------------------------------------------------------------
# * get the window rect
#--------------------------------------------------------------------------
def window_rect
buffer = [0,0,0,0].pack('l4')
GetWindowRect.(handle, buffer)
return Rect.new(*buffer.unpack('l4'))
end
end

#==============================================================================
# ** Window_Track
#------------------------------------------------------------------------------
#  Window to change tone
#==============================================================================

class Window_Track
#--------------------------------------------------------------------------
# * Class Variable
#--------------------------------------------------------------------------
@@HWND = GUI.handle
#--------------------------------------------------------------------------
# * Public instance variables
#--------------------------------------------------------------------------
attr_reader :visibility
#--------------------------------------------------------------------------
# * Object initialize
#--------------------------------------------------------------------------
def initialize(r=0,v=0,b=0,g=-255)
@visibility = false
name = "Tone switcher"
@w, @h = 280, 200
@x, @y = GUI.window_rect.x-@w-16, GUI.window_rect.y
ex_style = WS_EX_WINDOW_EDGE|WS_EX_APPWINDOW|WS_EX_TOOLWINDOW
dw_style = WS_POPUP|WS_DLGFRAME|WS_TILED|WS_CAPTION
args = [ex_style, "static", name, dw_style, @x,@y,@w,@h, @@HWND, 0,0,0]
@window = CreateWindowEx.(*args)
args2 = [0, "static", "[R: #{r}] [G: #{v}] [B: #{b}] [Gr: #{g}]", WS_CHILD|WS_VISIBLE,10,150,260,40, @window, 0,0,0]
@text = CreateWindowEx.(*args2)
@red = UI_Slider.new("red", 10, 32, @window, r)
@green = UI_Slider.new("green", 10, 64, @window, v)
@blue = UI_Slider.new("blue", 10, 96, @window, b)
@gray = UI_Slider.new("gray", 10, 128, @window, g)
end
#--------------------------------------------------------------------------
# * Get value
#--------------------------------------------------------------------------
def get_value(sym)
return @red.get_value if sym == :red || sym == :r
return @green.get_value if sym == :green || sym == :g
return @blue.get_value if sym == :blue || sym == :b
return @gray.get_value
end
#--------------------------------------------------------------------------
# * Delete
#--------------------------------------------------------------------------
def delete
DestroyWindow.(@window)
end
#--------------------------------------------------------------------------
# * Display textbox
#--------------------------------------------------------------------------
def set_visibility(value, r=0, v=0, b=0, g=-255)
@visibility = !!value
flag = (value) ? 1 : 0
@red.set_value r
@green.set_value v
@blue.set_value b
@gray.set_value g
ShowWindow.(@window, flag)
set_text r, v, b, g
end
#--------------------------------------------------------------------------
# * set text
#--------------------------------------------------------------------------
def set_text(r, v, b, g)
SetWindowText.(@text, "[R: #{r}] [G: #{v}] [B: #{b}] [Gr: #{g}]")
end
end

#==============================================================================
# ** UI_Slider
#------------------------------------------------------------------------------
#  Slider of t
#==============================================================================

class UI_Slider
#--------------------------------------------------------------------------
# * Constructeur
#--------------------------------------------------------------------------
def initialize(name, x, y, hwnd, value)
@hwnd = hwnd
dw_style = WS_CHILD|WS_VISIBLE|TBS_NOTIFY
args = [0, TRACKBAR_CLASS, name, dw_style, x, y, 255, 32, @hwnd, 0,0,0]
@track = CreateWindowEx.(*args)
SendMessage.(@track, TBM_SETRANGE, 1, [-255, 255].pack('SS').unpack('L')[0])
SendMessage.(@track, TBM_SETPOS, 1, value)
end
#--------------------------------------------------------------------------
# * Get Value
#--------------------------------------------------------------------------
def get_value
return SendMessage.(@track, TBM_GETPOS, 0, 0)
end
#--------------------------------------------------------------------------
# * Set Value
#--------------------------------------------------------------------------
def set_value(val)
return SendMessage.(@track, TBM_SETPOS, 1, val)
end
end
end

#==============================================================================
# ** Module Input
#------------------------------------------------------------------------------
#  Add Palet Manager
#==============================================================================

module Input
#--------------------------------------------------------------------------
# * Class Variable
#--------------------------------------------------------------------------
@@window_Track = GUI::Window_Track.new
#--------------------------------------------------------------------------
# * Singleton
#--------------------------------------------------------------------------
class << self
#--------------------------------------------------------------------------
# * Alias
#--------------------------------------------------------------------------
alias tint_update update
#--------------------------------------------------------------------------
# * Input update
#--------------------------------------------------------------------------
def update
tint_update
if $TEST && SceneManager.scene.is_a?(Scene_Map)
t = $game_map.screen.tone
if GUI::GetAsyncKeyState.(Tint_Config::KEY)&0x01 == 1
@@window_Track.set_visibility(!@@window_Track.visibility, t.red, t.green, t.blue, t.gray)
end
r, v, b, g = @@window_Track.get_value(:r), @@window_Track.get_value(:g),@@window_Track.get_value(:b), @@window_Track.get_value(:gr)
r_check = t.red != r
g_check = t.green != v
b_check = t.green != b
gr_check = t.gray != g
if (r_check || g_check || b_check || gr_check) && @@window_Track.visibility
new_tone = Tone.new(r,v,b,g)
$game_map.screen.start_tone_change(new_tone, 0)
@@window_Track.set_text(r,v,b,g)
end
end
end
end
end
Final Statement: I chowder5lock am a dipshit and MA is a pretty cool dude.

**
Rep: +0/-0Level 73
RMRK Junior
Hmm, and you're absolutely certain that there are no other screen tinting actions going on, as well? No scripts you are using that might be helping to cause this issue?

The problem might be easier to diagnose if the game files were made available to rummage through, but I understand if you do not wish to do so.

You know what I think your right I do have a Lighting system script I have been using that might be what is affecting the tint, Ill comment it out and run the test again. Will post results.

EDIT: This was the issue but this lighting script plays a VERY important role in the game (It's a horror game) and removing it would cause more harm then good. Any other ideas for a work around or am I pretty much stuck?
« Last Edit: October 11, 2012, 11:02:08 PM by timedead »

*****
Rep:
Level 82
GIAW 14: 1st Place (Easy Mode)2013 Project of the Year2013 Best RPG Maker User (Programming)2013 Most Promising ProjectParticipant - GIAW 11Bronze - GIAW 10
I am not sure what lighting script that you are using, but if there is an option to do so, you might try temporarily disabling (or not using) the automatic lighting on that map just for the time that you are using the grey tinting.

UPDATED 05-29-14


IS YOUR PROJECT OPTIMIZED?
UPDATED 07/04/15 - v2.5

RPG MAKER TOOLBOX
UPDATED 07/04/15 - v1.5

**
Rep: +0/-0Level 73
RMRK Junior
I am not sure what lighting script that you are using, but if there is an option to do so, you might try temporarily disabling (or not using) the automatic lighting on that map just for the time that you are using the grey tinting.

I'm using the Khas  lighting script I will run through it to see if there's a way of disabling it for the map.