Amazing new update, and it seems so much more intuitive.
MZ - [MZ & MV v1.9.7] Shora Lighting & Shadow System
● ARCHIVED · READ-ONLY
-
-
One add in ask that I would make if you do keep the % for the Advanced animation section:
Have the percentages be of the total size set by the radius of that light. Not the percentage of the original image size.
For example:
If i set the pulse to 50% while the radius was already set to 60. It should be pulsing between 30-60 radius. Just more user friendly and less math for us to figure out if this is possible to set up that way -
Have it the percentage of radius seem good. For example light with 60 radius and pulse factor of 20% will be between 48-72, like 80% original radius to 120% original radius. I will add it in the next update.One add in ask that I would make if you do keep the % for the Advanced animation section:
Have the percentages be of the total size set by the radius of that light. Not the percentage of the original image size.
For example:
If i set the pulse to 50% while the radius was already set to 60. It should be pulsing between 30-60 radius. Just more user friendly and less math for us to figure out if this is possible to set up that way -
Have it the percentage of radius seem good. For example light with 60 radius and pulse factor of 20% will be between 48-72, like 80% original radius to 120% original radius. I will add it in the next update.
This brought me more questions actually. For clarity, what exactly does pulse factor mean for your plugin as it relates to the radius of the light.
I guess what would be good would be a breakdown of the different terms you use in the plugin parameters (and then add that to the help or quick start guide?)
Also a tiny note:
says flick animation instead of pulse for the Pulse factor -
Update v.1.9.1 (6/6/2023):
Download from itch.io page: https://shoraaa.itch.io/shora-lighting-plugin
- Major optimization, mainly for MV version. Up from 2fps to ~50fps in 100 light 500 shadow benchmark.
Before:
After:
MZ FPS stay the same though.. Maybe it already good enough.
- Change the pulse factor defination. Now it is the difference of original light radius. For example: Light with original radius 60 with pulse factor 25% will have their radius ranging from 60 - 60*25% to 60 + 60*25%, which is 45 to 75.
- Add a way to temporary disable the plugin on specific map. Just add [lighting off] to the map notetags instead of using event.
- Fix some minor bugs.
P/s: My plugin/scripting commision is opened! If you have any interests, you can check it here! -
Change the pulse factor defination. Now it is the difference of original light radius. For example: Light with original radius 60 with pulse factor 25% will have their radius ranging from 60 - 60*25% to 60 + 60*25%, which is 45 to 75.
Hey, I would say for the pulse to name it a Pulse Range vs a % if this is the way its handled.
The percentage I was suggesting was more along the lines of:
Radius = 60
Pulse = 25%
This would mean the pulse should go from a range of 45(60*.25) -> 60
I like your way better. But "%" wouldn't be the accurate term in that scenario. Range would. (Technically "variance" would be best but Range is fine)
With this really intuitive update it would be great to be able to set the pulse for an individual event via comment (not sure if you can already) and/or plugin command in the set light parameters command -
I have it like that to make the old default setting (1) worked without any need to rechange. The factor 1 will make it to pulse between 99-101, instead of shrink to 1% like before :D. Thanks for the name change suggestion! I will change it in the next update :kaoluv:Hey, I would say for the pulse to name it a Pulse Range vs a % if this is the way its handled.
The percentage I was suggesting was more along the lines of:
Radius = 60
Pulse = 25%
This would mean the pulse should go from a range of 45(60*.25) -> 60
I like your way better. But "%" wouldn't be the accurate term in that scenario. Range would.
With this really intuitive update it would be great to be able to set the pulse for an individual event via comment (not sure if you can already) and/or plugin command in the set light parameters command -
Latest version is finally giving me stellar performance, awesome work Shora! Still some stutter, but likely related to all my other plugins and stuff going on. Any prospects for even more optimization in MV?
Also would there be a way to use Terrain Tags instead of region ids? -
More optimizations are definitely comming, for both version. MV will always be a little slower than MZ though, mainly because of engine improvement.Latest version is finally giving me stellar performance, awesome work Shora! Still some stutter, but likely related to all my other plugins and stuff going on. Any prospects for even more optimization in MV?
That.. is such a good suggestion! I never used terrain tags before, so I literally forgot it even existed. I'm playing around with it, and given the following terrain tags used:Also would there be a way to use Terrain Tags instead of region ids?
It already give a pretty good scene, without the need to use any region id!
There are some visual bugs that need to be fixed, but it already pretty promising. Thank for the suggestion! This will be pushed in the next update, that will retained both the old region id way and the newer, more automatic terrain tags way :kaoluv: -
This happens to me as well, way too often.I literally forgot it even existed
-
I think I found a bug: $shoraLayer.updateColorFilter is not a function
Spoiler
I'm trying to add plugin compatibility to my time plugin. What is the best way to control lighting? Through the $gameLighting.setMapAmbient function? -
Thank you for your report. It should be ```I think I found a bug: $shoraLayer.updateColorFilter is not a function
Spoiler
I'm trying to add plugin compatibility to my time plugin. What is the best way to control lighting? Through the $gameLighting.setMapAmbient function?
updateIntensityFilter``` but I forgot to change it. Fixed in next update.
You can use the $gameLighting.setMapAmbient function to manually create a simple time system, just remember to call it only once. If you want more control, you can directly set the $shoraLayer._ambient.tint value to your hex color. -
Heya, amazing plugin! Huge fan of the capabilities and workflow, and perhaps most importantly, the code is super readable. Fantastic work!
Out of curiosity - it seems unlikely as it seems it'd require a significant changes (and constant updates) to caster generation, but is there any possibility for consideration of light height as well as wall height? For example, when the player stands next to a cliff, their light doesn't reach the top, but if they climb it via ladder, the new reference height becomes the cliff's region. It feels like this kind of approach wouldn't work with terrain tags though, but perhaps a property on the light itself might be used instead to determine its height in the fake 3D space.
It seems this type of thing would tank performance pretty heavily, as you'd have to generate shadow casters individually for every layer of height, but maybe I'm misunderstanding how it functions so I figure I might as well ask. -
Thanks for the great plugin.
I wanted to create a flashlight on/off system and created a common event with the sample.
However, when I turn the light status OFF in the script, it never turns ON again.
I'm using the latest plugin and I've tried the demo but I'm getting the same problem. -
Hey, I'm having trouble figuring out all the ins and outs of your plugin. I want to have my game start out in the sort of basic rpg maker lighting mode (everything being lit) and then at a later point in the game have the light-source be attached to the player character (the sun has gone down/power's gone out). Is there a way for me to do this?
Also, I might be having a bug where I can't have multiple light sources at once. -
in the Plugin Manager (puzzle piece or F10), find and double-click -Shora Lighting-, then double-click the [Map: Default] setting, then double-click the [Default: Ambient] setting. Change the hex color code (default is #232323, pretty dark) to completely bright (#ffffff). Now your game should default to the normal lighting.
When you want it to be dark again, call a Plugin Command in an event. Find Shora Lighting and use "Set Map Ambient" to change the lighting back to a dark colour. -
Awesome, thank you so much! That totally worked!View attachment 269344
in the Plugin Manager (puzzle piece or F10), find and double-click -Shora Lighting-, then double-click the [Map: Default] setting, then double-click the [Default: Ambient] setting. Change the hex color code (default is #232323, pretty dark) to completely bright (#ffffff). Now your game should default to the normal lighting.
When you want it to be dark again, call a Plugin Command in an event. Find Shora Lighting and use "Set Map Ambient" to change the lighting back to a dark colour.
New problem, I can't get the Set Light Parameters to work right. Can't figure out if its a bug or operator error...
-
If you want the flashlight to work only when the player actually has the "Flashlight" item, it's even simpler than that! Make an item in the Database (mine is called Torch, since I'm Australian :p). Set it up to be a key item, and add the note [flashlight].
What this does is place the "flashlight" light on the player if they have this item in their inventory, and removes the light if they lose the item. To setup the "flashlight" settings, check the -ShoraLighting- plugin settings again, and look for a setting called [Lights: Custom]. In that setting there should be a light called flashlight that you can adjust the settings for. If the list of custom lights is empty, you can double-click empty space to make a new one (you will need to call it flashlight), or copy the ones from the -ShoraLighting- example project. -
Respectfully and professionally, I could kiss you on the mouth. You have solved all my problems.View attachment 269355If you want the flashlight to work only when the player actually has the "Flashlight" item, it's even simpler than that! Make an item in the Database (mine is called Torch, since I'm Australian :p). Set it up to be a key item, and add the note [flashlight].
What this does is place the "flashlight" light on the player if they have this item in their inventory, and removes the light if they lose the item. To setup the "flashlight" settings, check the -ShoraLighting- plugin settings again, and look for a setting called [Lights: Custom]. In that setting there should be a light called flashlight that you can adjust the settings for. If the list of custom lights is empty, you can double-click empty space to make a new one (you will need to call it flashlight), or copy the ones from the -ShoraLighting- example project. -
Fun new problem (less of a problem and more of a challenge):View attachment 269355If you want the flashlight to work only when the player actually has the "Flashlight" item, it's even simpler than that! Make an item in the Database (mine is called Torch, since I'm Australian :p). Set it up to be a key item, and add the note [flashlight].
What this does is place the "flashlight" light on the player if they have this item in their inventory, and removes the light if they lose the item. To setup the "flashlight" settings, check the -ShoraLighting- plugin settings again, and look for a setting called [Lights: Custom]. In that setting there should be a light called flashlight that you can adjust the settings for. If the list of custom lights is empty, you can double-click empty space to make a new one (you will need to call it flashlight), or copy the ones from the -ShoraLighting- example project.Do you know a work around/solution?