Windows the Computer

Windows the Computer KB2934207 (1.71)

Note: there's some things that I will revert or remove outright at some point if I will feel any better. Some of these still bug the hell outta me.​
May 10th, 2022 Edit: an updated build might be released that actually handles accidental Super transformations whilst attempting to DirectX Boost down.​
Holy moly, it's been a while. To be honest, I haven't been particularly well whilst developing this and, as the world events develop, I might as well release what I have done so far out here not just for allowing a public preview of 1.5, but to also have a public beta testing period and, in case things go bad on my end... well, at least there's gonna be a latest build that I could manage to handle out there.

There's a lot of stuff here... so--
  • This update requires SRB2 2.2.10 or higher.
  • The custom character art has been done by XG5#4941, being used both as CSS and in the intro.
  • Windows now has I/O capability - using registry, you can save/load client/server settings, although for the server settings, you need to be the host of the server.
    • This also happens automatically whenever you load the addon or exit the game with it loaded.
  • A lot of custom skincolors have been added, themed around Windows itself, as well as an animated one inspired by a Windows 95 remix.
  • Upon spawn, depending on the gamemode, File Toss will be disabled. This includes some custom gamemodes.
  • Interactivity with Speed Shoes, Invincibility and Super Ring monitors has been reworked from using A_SuperSneakers, A_Invincibility and A_RingBox function into a hook instead - indirectly being a buff as the effects of those now apply instantly!
    • The Growth mechanic now accounts the size for players being smaller whenever they spawn or hit the Speed Shoes if not under the effects of Growth.
  • XPerience Blasts now affect all damagable objects in the radius, be it enemies, monitors, bosses; latter may have some custom interactions.
    • If you're Hyper, though... all of them will go boom.
    • Comparing to 1.41b, the base radius is nerfed slightly for Super.
  • CrossMomentum integration with custom top speeds has been updated to work with the 1.3.x version, being able to work if it's loaded before or after Windows.
  • BattleMod and Ringslinger NEO have been given custom (albeit basic) integrations too.
  • Players can disable the forcing of a skincolor for Super while playing as Windows with xpsuper.
    • If you load CrossMomentum after Windows, this will not work when Hyper.
  • If you have RushChars v1.1 or higher loaded, you can use xpsol as an administrator or in single-player to allow Windows to utilize Sol Emeralds. Be careful, though, you will lose rings faster in this transformation.
    • You may experience some bugs if you spam transformations too fast - this includes the Custom3 use mentioned lower. Or if you load RushChars after Windows.
    • Windows can utilize the Jetski too.
  • Super/Hyper transformation requires the use of Custom3 together with Jump whilst jumping, but not having used the double jump or shield yet by default. This is done to prevent accidental transformations when using File Toss legacy bind or the downward thrust of DirectX Boost.
    • xpsuper is also responsible for this with different arguments.
    • This also implies Windows lacks the flag to go Super by default.
    • Edit: this does not work as intended sometimes when detransforming. Whoops...
  • Detransforming also requries using Custom3 and Jump at the same time, but this can be used at any point instead of needing to be jumping.
    • Works with both Super/Hyper or Blazing (Sol Emerald) forms - being in the latter will force the former transformation if you have all Chaos Emeralds and have 50 rings or more when used.
    • A second of delay is set before an another detransformation can take place.
    • Detransforming in stages that use Super forms will most likely end up in losing a life - don't do that...
  • The custom reward for collecting everything in the MP Special Stages has been removed.
  • windbg also is now a thing, being a bit more descriptive with the player variables used.
    • If it's enabled, it will list I/O activity in the log.
    • Does not require the player using it to have administrator rights.
  • Music has been added/changed compared to 1.41b.
  • Forgot to add this, but wintimer will show more detailed timers on cooldowns.
  • dxhud will let you shift the timers up a bit. Useful for the level packs that modify the hud, like MRCE.
    • Mentioning MRCE - because it has it's own physics, it will not play nicely with Windows's custom top speeds. Use this script to have Windows not be affected by the custom physics!
Whilst I plan to rework Windows from scratch at some point as of writing this post, I am not sure how things will develop IRL. Not sure if and when I will iron out everything but do reach out to me if you find a bug I didn't mention or comment in the Lua - you're free to scour the .pk3 to see if I have made a comment in there about it.

Least I can do is try to stay safe and lessen the burden on myself by releasing this out now as-is - as a Russian, I don't exactly feel too safe.:dramahog:
  • Cool!
Reactions: Pikden
  • Clearing a level should no longer induce console spam, having reverted a gamemode check back to a functional form. Please see 1.41 changelog for the rest of the changes.
  • This update should be named the same as 1.41's name, just with a mention of a fixed version.
  • Also fixing the update title for MB listing.
The update had gone live straight out of the box, which caught me off-guard and I removed the post thinking it was a bug. Reposting it now.​
I've been meaning to include some stuff originally with 1.4, however, I had no idea to implement those at the time. Now, however... I present to you an additional gameplay update.
launch.gif
  • Because SRB2 has such situations where a player is thrown over a large pit and since Windows was slower by default, players would need to grab Invincibility or Speed Shoes to have a better chance to clear the gap. This is now no longer required!​
    • If Windows is launched off of a slope, a swing or a spring, the air momentum is increased by 50% to more or less match Sonic's speed through the air if you are not Super until you land. If you are using DirectX Boost or are Super, the speed increase of those is used instead.​
    • Reminder that you can also use your double jump after those swings in most cases still.​
dxspring.gif
dxrollpower.gif
  • DirectX Boost buffed.​
    • Cooldowns changed - base cooldown reduced from 15 seconds to 10.
    • If you are under the effect of a normal DirectX Boost, any spring you touch will send you with a stronger force - down, up, left, right, you name it.
    • However, if you use DirectX Boost to enter the rolling state, any horizontal spring/booster you touch will be enhanced regardless if you are under the effect of a regular DirectX Boost or not.
      • Entering the rolling state if you're around or above the normal run speed will give you a slight boost of speed as well.
    • The speed increase on Rollout Rocks is increased further.
  • Slight code optimization for busting spikes.
    • The speed requirement if you are not Super/Hyper, do not have Invincibility and not rolling has been bumped up by 20%.
  • File Toss has been updated slightly for Super (& Hyper should CrossMomentum be present).
    • Projectile speed buffed by 33% if Super and 50% if Hyper.
    • Cooldown between subsequent File Toss shots is reduced if you're Super. If Hyper, you fire at the same rate as the ssd variable being set to 1, ignoring it.
  • 1.4 had an unused sound lying about. This has been removed.
  • When quitting the game from title screen, if the exiting graphic is shown, you will hear one of 5 sounds at random.
    • Which one plays depends on when you quit the game.
  • winver is available for use in console, which will show settings for the player's File Toss bind, whether the custom title card is enabled/disabled and if DirectX Boost is enabled/disabled.
    • Additionally, if game has been launched with -debug flag, it will also be mentioned.
    • The current SRB2 version will also be listed.
    • If, however, you run the command from a dedicated server console, it will not list player settings mentioned above.
  • The chance for the funny death is no longer hardcoded - funnydeathchance controls the chance instead.
    • Use values from 0 to 1 to set the chance, where 0 is 0% and 1 is 100%.
    • Admin/host only.
  • Minor nerf - prior to 1.41, pressing Jump at any time would remove the rolling flag. As of this update, this is no longer true, so watch your jumps and control accordingly!
  • Cool!
Reactions: supermayropros
Originally aimed to be 1.31, because of how much stuff was added, it didn't seem to fit to be such a minor update.

Functionally, the moveset is pretty much locked-in, I think, as I wanted to add vertical movement for DirectX Boost... which leads to--
dxjump.gif
dxfall.gif
  • DirectX Boost now behaves differently depending on if Jump or Spin are held when Custom2 is pressed, as well as having different cooldowns on such conditions:
    • If Jump is held, Windows will be thrusted upwards - can be activated in the air and on the ground, although you'd be likely to perform a normal jump anyway.
      • This can be used if you're in a pain state to have one shot at cancelling it, triggering the i-frames right away. The vertical momentum is puny as a result, though.
      • Can be used after a double jump, making Windows quite a vertical character, but using it before the 2nd jump cancels the ability to have it.
    • If Spin is held, additional conditions have to be met.
      • If you're grounded and are moving, you are set to be in a rolling state.
        • If Hyper, a tenth of your total speed is added to your current speed.
      • If you're grounded and are not moving, you will be thrusted forward in a rolling state.
        • Momentum depends if you're Hyper, Super or normal.
      • If you're not grounded, Windows will be thrusted downwards. If you are fast enough, you will end up going down as fast as you were moving horizontally.
        • Unless you're in goop, in which case the vertical momentum is set to an exact value.
    • If not, regular DirectX Boost will happen.
      • Vertical momentum is reset when used.
      • If you're Hyper, however, each boost will attempt to set your speed to 133% of your current speed... and since the 3 second timer stacks... it can last for a while if used enough.
    • Unique sounds play if you are Super or not whilst performing vertical moves too, like with normal DirectX Boost.
    • If you have Invincibility or Speed Shoes, the cooldown is twice as short. If Hyper... it sure is fast for spam.
    • Note: all of these moves will perform a slightly smaller XPerience Blast if you're Hyper.
dxrock.gif
  • On this note, horizontal DirectX Boost now works on Rollout Rocks too:
    • Being on one and moving about whilst under the effects of a DirectX Boost applies thrust to the rock in the direction you're going.
    • In addition, a DirectX Boost lasts approximately 33% longer as long as you remain on one.
  • XPerience Blast as Hyper has been locked down due to the actual chances of overloading both clients and server hosts, be it dedicated or not.
    • If one wants to reenable them, admins/hosts can use the pentium4 command to set it. Non-admin players can use pentium4check to check if it's enabled or not.
      • Appropriate values for pentium4 are:
        • Disabled: 0, no, safe
        • Enabled: 1, yes, ohgodno
      • These commands will not do anything if CrossMomentum is not present... aside from playing an error sound.
    • In netgames, other players will be notified if the XPerience Blasts as Hyper have been enabled with an alarm.
      • If the one performing this move was moving beyond a certain speed, other players will be thrown up depending on said player's speed.
    • Attempting to use it if disabled will throw an audible error... spamming it might bring some horrible flashbacks.
  • On that note, XPerience Blasts can now be performed in PvP gamemodes if Windows has both Speed Shoes and Invincibility active on them. Performing it will throw you back into a pain state and make you drop all flags and emeralds, if you have any.
  • In Single-Player, there have been minor additions. There's a bonus if you manage to clear out the stage of the spheres. See if you can do that in the 1st and 3rd MP stages.
  • Windows, by default, pops the bubbles as it does not need air. However, using winbubble and setting it to 0 will leave them alone for other players.
  • Funny deaths have been reworked to not cause a desync. Thanks, Lach!
  • File Toss can now be specifically set to either Ring Toss or Spin for activation with filetossbind command.
    • Without any values, it will merely say if you have it set to Spin or not. Appropriate values:
      • Spin: 0, spin, false
      • Ring Toss: 1, ringtoss, true, default
    • Can be set per player. Hopefully.
  • In addition, if the gamemode uses ringslinger or it's Tag, File Toss can only be used if you have locked onto something.
winintro.gif
  • Windows now has a custom title card! Use a custom one yourself? Can disable that with winintro.
    • On it's own, it will state if you have it enabled. Appropriate values:
      • Disabled: 0, disable, false
      • Enabled: 1, enable, true
    • Can be set per player.
    • Zone text will change depending on what zone (and act, if applicable) you're in.
    • In addition, depending on what stage you have entered, the text will be colored either yellow (for special stages) or red (for bosses).
  • Intermission has been updated as well:
    • A lot of conditions have been added to what text to show, be it a one-act zone and such.
    • Results screens have a different background.
  • If you beat the campaign as Windows and get to the credits with custom music enabled... you might hear a familiar tune. (MIDI version present.)
  • mariomode had a few additions, one of which is custom music for Growth and Invincibility.
    • Coins now actually work to reduce the cooldown of DirectX Boost like Rings do, as well as Blue Spheres in Special Stages!
  • Continue screen has had it's music track changed to be a shutdown sound of NT4. (MIDI version present.)
  • Super theme now has a MIDI alternative too, whilst the Hyper theme has been completely replaced with a module tracker song.
  • There is now an intro that is played similiarly to CrossMomentum.
  • winflash is now enabled by default this time, be aware!
  • Base sprites for character were trimmed from the Kart's Kartmaker canvas. Kazotsky Kick is left intact.
Whilst I am not going to delve into what happened that caused this to take this long, I hope you enjoy the update. Do report the bugs or mistakes if you find them. Thank you for enjoying the progress from a simple test of Kart sprites to a full-blown character, means a lot. :worry:

Belated Merry Christmas, as well!
This revision brings an update to the DirectX Boost, as well as adding .NET Framework to run those pesky applications to finally allow Windows into the Special Stages!
  • DirectX Boost now affects the thrustfactor part of the player instead, no longer pushing the player forward ever so slightly if they're standing still.
  • Token interactivity slightly changed for the Special Stage activities:
    • You will still collect the token and have to complete the stage to go to one, however, you will be playing the Multiplayer Special Stages instead of NiGHTS ones.
    • Continues can be obtained by collecting half of the total rings in those stages.
    • Of course, you can disable this and return the old "token-to-emerald" conversion with the TokenCompile variable.
    • Each token collected rewards the player with 10000 points.
  • In addition, Windows now carries the shields between each level - that includes the earlier mentioned Special Stages.
    • Be mindful of the shield with which you're leaving and entering a level.
    • Powered by KeepShield V3.
clear.png
  • When exiting a level as Windows, the screen will dim (unless it's a Special Stage, in which case it won't) and, once the intermission begins, you'll see Windows now has a unique(?) act clear layout.
    • A flashing logo will display on the bottom left, as well as a message that will change depending on which level you play and/or if you are using tokens to go a special stage. This also accounts for the one-act levels (ala Secret Levels) that will return you to the Title Screen.
    • For the curious ones, this is referencing this one-time bootscreen from Windows 95.
    • Logo will still do the animation if SRB2 is not the focused window.
  • Some of the custom music was optimized.
    • Invincibility and Speed Sneakers now (more or less) loop to go along the timer stacking, as well as taking up less space.
    • Super theme also weighs a bit less and has a better(?) looping point.
  • File Toss is can now be used both with the Spin and Ring Toss buttons.
    • If the gametype is Match, CTF or Tag or if ringslinger is enabled, you can only use File Toss if there's a target which has been locked on. Players might still get in the way of it if they're quick enough.
  • Invincibility slightly buffed, accelerating to the top speed a bit faster.
Replays from previous versions might not play correctly because of the changes, so be careful when watching a replay. This took me a while to do because of some life events, but, hey, we're here now. Tried to make sure there's no errors or oversights... yet some might show up anyway. :worry:
Surprise bug... for me to fix. I am terribly sorry.
  • Fixed XMomentum overriding the special top speeds in 1.21 because that was the update that swapped the main player hook type.
    • The code responsible for setting top speeds is now outside the player hook.
  • Token interactivity slightly optimized to take advantage of the "toucher" argument.
Patch inbound to fix XMomentum speed integration.​
Unlike Windows 95's OSR2.1, this is not exactly a minor update. What's next, a Second Edition?
  • DirectX Boost has been reworked to be free and have a shorter cooldown. You already have the hardware to use hardware acceleration to boost your performance... just do it sparingly to not overload the system.
    • The boost still lasts for 3 seconds and you'll also have after-images showing off behind you in addition to the smoke.
    • Cooldown is cut in half to 15 seconds. Collecting rings and ring monitors still remains in place, 0.25s and 2.5s respectively.
      • If you are Super, the cooldown becomes 5 seconds instead.
      • If you transform whilst your cooldown is above 5 seconds, it is lowered to 5 instead.
      • Now technically, the boost timer can stack.
  • Especially prominent in the second act of Deep Sea Zone, some paths would not be accessible due to the inability to perform Spin Dashes or bust through the floor or ceiling.
    • Windows will perform a forced Spin Dash in those areas that do need it. DirectX Boost will be useful to actually go through the opened door.
      windash.gif
    • Windows can now bust through breakable floors/ceilings as well with it's weight. You will still have to actually hit the floor/ceiling, though.
      winbust.gif
    • This doesn't still guarantee that all paths will be clearable, however - discretion is advised.
  • Spike busting requirements are slightly tweaked. The order of checks is:
    • If you're Super or have Invincibility (or, by extension, Growth).
    • If you are currently under the 3 second effect of DirectX Boost.
    • If your speed is above 35 FU/t.
      • If none are valid, no busting for you!
  • Growth timer now flashes accurately to how it does in Kart.
  • The rare special death has a 12.5% to appear instead and isn't restricted to just Windows!
    • funisdeath has now been introduced as a variable to disable it if admins/hosts see the need to do so.
  • Force Shield no longer has it's special ability by default, replaced by the protection from spikes.
    • This, too, is wonky, as it doesn't apply to vertical spikes, oddly enough.
    • Does protect from cacti in Arid Canyon. Not likely to protect from Cacee, though.
  • Wall busting also will not need the speed if you're Super, invincible or are under the effects of DirectX Boost.
  • XPerience Blast now consumes 5 rings instead of 10 if you're Super. Hyper's ring cost is not altered.
OSR2.1 / 1.21 is in the works, actually. Not an emergency patch.​
Further messing with Lua, I present an another update. Fingers crossed that I won't have to do an emergency patch again.
  • Remember having to install DirectX many times for some games? DirectX is here for you to take advantage of... and not as a renderer, but a booster.
    • For 15 rings, pressing Custom2 results in your top speed being boosted for 3 seconds. The top speed increase will depend on if you're Super/Hyper or not.
      • This will deduct the 15 rings only if you have 15 or more rings.
    • During said 3 seconds, you also will have a movement force applied to allow you to get up to speed easier if you suddenly lose all of it. It's 50% less effective when you're not on the ground, however, and also depends on if you're Super/Hyper or not.
      • You will also spawn player-colored smoke during the entire effect. By default, the color is Cerulean in single-player, however it will change if other colors are used (especially in Multiplayer).
    • The cooldown is 30 seconds between each use, however, collecting rings and breaking Ring Boxes will lower the cooldown by 0.25s and 2.5s respectively. If you die and respawn, the cooldown is reset.
    • The boost will be cancelled if you get hurt or die.
  • Growth will now check if you're actively are playing as Windows. If not, you're shrunk back down!
    • If the map has sections where you're shrunk or grown from the default value, this might cause issues. Not much else I can do about that other than to not have the feature, but that's no fun.
huddy.png
  • To track how much left before the next use of XPerience Blast, the newly added DirectX Boost or how much Growth time you have left, you can now look at the timers shown above the life icon on the default HUD. From bottom to top, they are as follows:​
    • The DirectX logo represents the DirectX Boost timer:
      • Hourglass - cooldown.
      • Greyscale logo - below 15 rings.
      • Colored logo - ready to use.
      • Will not show if DirectX Boost is disabled.
    • The shield represents the XPerience Blast timer:
      • Red - cooldown.
      • Green - ready, normal AoE attack.
      • Yellow (if XMomentum is present) - ready, dangerous AoE attack.
      • Will not show if not Super/Hyper!
    • The "Run" icon shows up if you currently able to burst through spikes. The conditions are listed lower in the update log.
    • Don't have the speed shoes/invincibility/shield icons? The Growth timer is now introduced.
      • Located in top right corner instead, the Growth icon and timer will be present. Former will flash always like it does in Kart, whilst the timer will only flash if you have less than 3 seconds left.
        • (Flash rate will depend if you are using stock or Uncapped builds of SRB2.)
      • Will not show if kartgrow is disabled.
  • Under certain conditions, Windows will plow through spikes:
    • If you are invincibile or Super/Hyper and the speed is above 24.
    • If your speed is over 35 regardless of powerups.
      • devmode 2 will be useful to measure your speed for these two.
    • If you are currently under the effect of a DirectX Boost if all also aren't valid.
  • Variables changes:
    • Addition(s):
      • DirectX (enabled by default) - handles whether the boost is available for use. Admin/host only!
    • Changes:
      • kartgrow is now enabled by default. Admins/hosts can change it back if one wishes to do so.
  • Other things:
    • Custom player initialization values are to be done when addon is loaded. Should prevent warnings about nil values.
    • Token interactivity has been more or less fleshed out by now. Might do an alternative for a possible future update, who knows.
      • If Windows collects the token with all emeralds, 50 rings are given to all players.
      • No more -1 tokens!.. at least, I hope.
    • The star formations during the ending have been neglected up to this point, despite being intended for the very first release. They're now present at long last!
    • Super and Hyper forms now have their skin color forced instead of having a flashing screen. Super retains the Sky color (as was used for the super color), whilst Hyper is now Azure to reference Microsoft Azure.
    • With XMomentum, if Hyper and the AoE attack is used, lives are no longer deducted from the player... doesn't change the fact that you should be careful with it, though!
    • Signpost now has an animated flag on top of it.
    • 10% of the time, dying might be a different.
Please let me know if you discover a bug or want to ask if some combination of things is intended or not.
Bug came outta nowhere related to the Token interactivity with Windows, despite a lotta testing. A condition wasn't defined for the token value to stay put when collected by Windows - this patch should fix that.

Sheesh... this might've given me a headache. As well as for the approving team because of my hasty nature. Sorry!
Edit: guess I foresaw a patch to be released. Look out for 1.11.​

Whoo boy, here we go. After finding out the original release had unintended issues, finally I am feeling confident enough in releasing this update. Here's hoping that I won't have to do a hotfix update!
  • "winflash" & "ssd" variables introduced.
    • "winflash" (disabled by default) - controls whether screen flashing happens at all. Takes priority over XMomentum's check - if both are enabled, the screen flashing will occur.
    • "ssd" (disabled by default) - controls the rate at which the files are shot at. If enabled, the cooldown between individual File Tosses is reduced. Admin/host only!
  • Enhanced compatibility with XMomentum. Windows will overwrite the normal speed if it's below it's own check, otherwise, the rest is handled by XMomentum.
  • The "XPerience Blast" has been moved to Custom1 and will no longer activate from every player that is using the skin. Cooldown is 5 seconds when Super, but a whole minute when Hyper.
    • Cooldown is set to 0 if you pick up an Armageddon Monitor.
    • When ready to use, a sound effect will play.
    • Hyper's range extension actually working this time! Although...
    • Because the Super/Hyper forms are considered overclocking... you might want to be careful with using this move when Hyper.
      • Performing this move when Super will have the same range, but the cost of 10 rings is also present.
      • Performing this move when Hyper, however... well, let's just say it's more than quadrupled than in the RTM version. Oh, and the cost skyrockets to 150 rings and 2 lives... There's more to it than just the cost, though, so be careful using it with other players in the map. I'm not just talking about the potential lagspike, either.
  • File Toss overhauled - now able to lock on and fire at targets on the move, as well as having the choice of manual aim. See a life monitor in the distance? Fire away!
    • Cooldown is usually half a second, but it is reduced whether you are Super/Hyper or the "ssd" variable is enabled. Or both?
    • Direct, manual hits can stun Super/Hyper players if you enabled Friendly Fire.
  • Additional skin replacement sounds added.
  • Token-to-emerald conversion improved. Checks against the emeralds directly and rewards those that aren't collected yet. Still going from first to last, however.
    • If all 7 emeralds are collected and Windows picks up a token, every player gets 50 rings.
  • Speed Shoes and Invincibility timers will stack on Windows. Applies to the Growth replication, too - if that's enabled, the speed shoes will give 12 seconds instead of 20.
Back
Top