- What permissions do you give others to modify and/or maintain your submission?
- Modify: YES - Maintain: YES - I give permission for my entire submission to be modified by others or used in their own work. I give permission for my entire submission to be maintained by others as well.
- I made sure my file(s) follow the Submissions Guidelines
- Yes
Uhhhh... Happy new years, or something.
Huge thanks to Fav for creating this trailer for me.
So... Yeah. I took WAY too long to finish this, especially given how all that was really needed to be done after the direct aired was about half an hour's worth of work on my end... But uh, it's here now! Yay...?
...My laziness aside, this mod basically just does what it says on the tin, it adds a day & night cycle to SRB2.
As of v2.0, @LJ Sonik has made some massive optimizations to the way the lighting system works, making this mod now viable for use in netgames, and usable on weaker computers!
Some levels, namely Greenflower 1 & 2 even have unique music that plays during the night!
There's one more feature within this mod though, as seen within the trailer...
Werehog compatibility!
When loaded alongside DrStephen's Werehog, Sonic will begin to to transform as the moon starts twinkling in the night sky... And when I say Sonic, I mean any Sonic! From Modern to Earless, they all work!Werehog compatibility!
Not sure where else to put this, but if you're running this mod on a server, you can disable werehog transformation with the console command "werehogtransform".
There's a few things within this mod that others are able to hook off of. Might as well explain those here just to make things simple for others.
Adding your sonic to the list of transformable skins:
To add your own sonic to the list of skins capable of turning into The Werehog, just add this bit of code somewhere within your character's scripts. For this example, the character in question is a "modern" sonic, who uses Roger Craig Smith voice lines upon turning back from the werehog. If you wish to use Ryan voice lines, simply replace "Roger" with "Ryan". If you wish to use jason, then don't set anything, as he's the default. Classic characters all use the same voice line, since I doubt anyone really would need their classic sonic to sound like any of the modern VAs, but if someone needs it changed, I could probably do an update at some point.
Day/Night Music in your map:
Add this block of code to your map's scripts, and replace the "GFZ" music with the respective file names of your map's songs. "musicshift" is the base music, aka what plays during day, and "musicinvert" is what plays at night.
Preventing time from having an effect on your map:
add "lua.spacemap = true" to your map's header. Main intended use is for, well... space maps, but it can be used for any, really.
Adding your sonic to the list of transformable skins:
To add your own sonic to the list of skins capable of turning into The Werehog, just add this bit of code somewhere within your character's scripts. For this example, the character in question is a "modern" sonic, who uses Roger Craig Smith voice lines upon turning back from the werehog. If you wish to use Ryan voice lines, simply replace "Roger" with "Ryan". If you wish to use jason, then don't set anything, as he's the default. Classic characters all use the same voice line, since I doubt anyone really would need their classic sonic to sound like any of the modern VAs, but if someone needs it changed, I could probably do an update at some point.
compat code:
if not classicskins
rawset(_G, "classicskins", {})
end
if not nonsonicsonics
rawset(_G, "nonsonicsonics", {})
end
if not werehogtransformvoice
rawset(_G, "werehogtransformvoice", {})
end
nonsonicsonics["myskin"] = true
classicskins["myskin"] = false
werehogtransformvoice["myskin"] = "roger"
Day/Night Music in your map:
Add this block of code to your map's scripts, and replace the "GFZ" music with the respective file names of your map's songs. "musicshift" is the base music, aka what plays during day, and "musicinvert" is what plays at night.
compat code:
if not musicshift or not musicinvert
rawset(_G, "musicshift", {})
rawset(_G, "musicinvert", {})
end
musicshift["GFZ1"] = "GFZ1N"
musicshift["GFZ2"] = "GFZ2N"
musicinvert["GFZ1N"] = "GFZ1"
musicinvert["GFZ2N"] = "GFZ2"
Preventing time from having an effect on your map:
add "lua.spacemap = true" to your map's header. Main intended use is for, well... space maps, but it can be used for any, really.
CREDITS:
Frostiikin: Programming, concept
LJ Sonic: Re-code and optimization of the lighting system
ZenithNeko: Music for Greenflower 1 and 2's night variants
BlueBlur: Character icons for transforming to and from the Werehog
Twins 'R Epic: Edited sky textures
Golden Shine: Code used to detect any and all sonics, taken from SMS.