Commit graph

1642 commits

Author SHA1 Message Date
toasterbabe
c3840ba01d Colour Cube Calibration Menu! (called "Advanced Color Settings" because No Fun Allowed...)
https://cdn.discordapp.com/attachments/237798387070664724/304343382073933824/aa.png

Also, a "Reset all" button for the Monitor toggle menu, a ton of new cvars to match up with the colour cube calibration, and a bunch of variable renames related to colour cube operations.
2017-04-19 22:24:28 +01:00
toasterbabe
83e16da83b Introducing the Colour Cube! https://cdn.discordapp.com/attachments/293238104096112641/304015171385294850/aa.png
Basically in preperation of supporting colourblindness modes I implemented the following link when loading palettes.
http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter24.html

This basically means I can do whatever the hell I want to the colour profile of incoming paletties, and nobody can stop me. Muahahahaha etc.

Also, I added a saturation feature to show off its full potential, converted gamma from a table to a factor of the calculation, tweaked some menus and made the default value of cvars show up on sliders. Because that's how I roll.
2017-04-18 23:21:10 +01:00
ZTsukei
cfdb127630 v1.3.04 - The Bouncy One
--------
Hardcoded Collide.lua.
Added player boolean array "Collide", used by Collide.lua.
Walls are now bouncy by default again, like they were in 1.09.
Buffed Orange Drift sparks, the boost now lasts 60 frames up from 40.
2017-04-17 13:20:52 -04:00
toasterbabe
3e29ee3f01 Closed captioning!
* Provides a helpful description for the hearing impaired, whether permanent, temporary or situational.
* Consvar "closedcaptioning", with on/off values available.
* Only works if sounds are on. This is frustrating. I will see what I can do to allow it to work with sounds off in future, but for now it's dependent in order to properly accept or decline sounds.
* Thanks to MI for making that wiki page a lot more comprehensive a few days ago.

* Weapon ring is now a seperate sfx_wepfir instead of doubling up on sfx_thok.

* Also, made V_StringWidth work with V_NOSCALESTART.
2017-04-17 01:09:47 +01:00
toasterbabe
85b71aa685 End to old match scoring toggle. 2017-04-14 20:51:25 +01:00
toasterbabe
174921c1e1 End to sudden death. 2017-04-14 20:46:48 +01:00
toasterbabe
8f9ee2da30 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch
# Conflicts:
#	src/dehacked.c
#	src/p_setup.c
#	src/r_things.c
2017-04-07 15:37:22 +01:00
Monster Iestyn
bfaf60ceef Merge branch 'public_next' 2017-04-05 21:05:57 +01:00
toasterbabe
3efa66d537 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/m_menu.c
2017-04-04 21:03:35 +01:00
toasterbabe
9fd09c07f3 <Rob> The host should not be able to switch their skin if skin switching is locked
<Rob> That is completely unfair
2017-03-19 17:18:41 +00:00
toasterbabe
1582aee909 No more switching characters in forcecharacter maps! 2017-03-19 13:48:54 +00:00
toasterbabe
842c27e78b Let's not use terms like this so plainly, right? 2017-03-18 14:20:42 +00:00
toasterbabe
096921cbbf Added a bit of a fun limitation.
* Made it so (player->availabilities & 1 << skinnum) is only true if skins[skinnum] DOES have an availability method, and always false otherwise.
* This means that setting your availabilities to INT32_MAX is no longer the equivalent of having gotten all skins.
* This means we can detect and kick cheat engine script kiddies who try to fool the server that they can use everything.
* This means availabilities of 0x00 is now valid, so make it all F's for an invalid not-in-game.
2017-03-18 13:03:29 +00:00
toasterbabe
87ba3411a4 * Fixes forceskin causing desynchronisations, baby! Checks only when attempting to send.
* Makes the forceskin print more consistent with the skin print.

* Disabled the printing of availabilities.
2017-03-18 00:41:40 +00:00
toasterbabe
0060caaf1a Fixed synchronisation of skin changes and forceskin.
There's an outstanding issue - you can set forceskin to whatever you want to as the host. This needs to be fixed, but I'm commiting my successes first.
2017-03-17 23:11:32 +00:00
toasterbabe
60a2e26569 First attempt at making skin availabilities netgame-synchronised. However, I am completely unable to test this right now, since I'm on uni internet which is super locked down; in order to have it not get tangled up with anything else, I'm committing it now in a potentially broken state so that it can be reverted at a later date if necessary. 2017-03-16 18:57:42 +00:00
Sryder
e122908cb1 renamed mphspeed console var to speedometer
has 4 options, off, Kilometers, miles, and fracunits
2017-03-13 02:44:31 +00:00
Sryder
0163548433 Buff gravity, slopes now throw you as nature intended
Springs have updated spring power
2017-03-10 21:26:16 +00:00
Sryder
d6568bbfb9 mph hud speed option 2017-03-09 20:29:17 +00:00
Monster Iestyn
b837d5b23d Fix teamchange/teamchange2 to block changing FROM spectator rather than changing TO spectator
This way they're consistent with Got_Teamchange, which is the cause of the "illegal team change" desyncs
2017-03-02 14:25:46 +00:00
ZTsukei
f1f78a2349 Reverting friction, but left a note for iceman's magic number.
Intermission timer is back down to 20 seconds unless something breaks with auto-transmissions again.
Also I remembered to enable Magnets this time. Super low odds on it though.
2017-02-27 18:16:53 -05:00
ZTsukei
5d0b9ef551 Friction updated. Added KARTSTUFF to lua. Added ->kartstuff to network syncing stuff (surprised it even worked before now???), also maybe items correctly reset at the end of level now. 2017-02-27 17:55:26 -05:00
Sryder
35b789d330 Fix random duplicate code from merge in hw_main.c and r_segs.c
Whitespace cleanup
2017-02-18 00:25:16 +00:00
Sryder
68d439a783 Merge branch 'upstream/next' into zarrotsu_vanillamerge
# Conflicts:
#	src/Makefile
#	src/doomdef.h
#	src/hardware/hw_main.c
#	src/p_mobj.c
#	src/p_user.c
#	src/r_segs.c
#	src/sdl/i_video.c
#	src/win32/win_sys.c
2017-02-17 20:14:55 +00:00
Monster Iestyn
84727f4205 Created W_OpenWadFile for opening WAD files with the path correction code.
This is used by Command_Addfile in the MD5 calculation code, so that it can search subfolders properly and allow addfile in netgames to treat them the same way as in SP
2017-02-16 21:55:17 +00:00
ZTsukei
b0b51f9a61 Some position code 2017-02-12 23:25:06 -05:00
ZTsukei
fadcd17022 Some accelcode changes to let CC's work. 2017-02-09 23:57:36 -05:00
ZTsukei
580f909c6c Added Accelcode, start boosting, reverted drifting, etc. 2017-02-07 17:19:58 -05:00
toasterbabe
d670189c89 * Fixed the Mode Attack cv_nextmap issue Salt found.
* Improved the defaulting system to work cross-gametype.
* Cleaned up the code. Less hacks!
2017-02-05 21:20:32 +00:00
toasterbabe
05ebc93f6c After discussion with Mystic and Rob, you now keep your lives, score and emerald count when changing maps in Co-op mode. Reset when you declare -force. 2017-02-01 21:31:35 +00:00
toasterbabe
a23da9ae43 * Level Platter system added to Record/NiGHTS Attack modes.
* Made quality-of-life improvement for starting the player off on the "right" map more reliable.
2017-01-28 13:13:03 +00:00
toasterbabe
d2d88a919b * Allowing for changing skins on command line startup again.
* Fixing an inconsistency with being able to change skin colours when you shouldn't be able to, much like the previous skin change issue that was fixed.
2017-01-26 12:47:47 +00:00
toasterbabe
0ddb8b0b33 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-01-20 13:54:42 +00:00
Monster Iestyn
1935a2ffa6 Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/doomdef.h
#	src/p_map.c
2017-01-19 16:54:47 +00:00
toasterbabe
299ba49161 Introducing skin patching! (Also, DELFILE is super dead.)
* Create a normal skin, but replace the S_SKIN lump with an almost empty one named P_SKIN.
* Provide "name = existing skin name as one of the first line (comments allowed)
* Reset individual spritenames back to zero sprite2s (or one for SPR2_STND to prevent complete removal) via "reset = SPR2_****" statements.
* No support for changing skin properties that are non-visual at the moment, but I don't really feel like it's wise to have those changable with patch alone. (Hello, tons of "modern Sonic" wadfiles which just change vanilla Sonic's ability to CA_HOMINGTHOK!)
* Sprites patch over.

To see an example in action, look at <root>/toaster/smilespatch.wad.
2017-01-17 00:16:23 +00:00
Monster Iestyn
c0fb3fce73 Merge branch 'master' into next 2017-01-14 19:23:31 +00:00
Louis-Antoine
e9cb6d0331 -Added a timeout for game state downloading to prevent definitive join freezes in some cases. The timeout has a minimum value of "jointimeout" and gets higher as the game state grows in size
-If the server tries to kick a joiner who is downloading the game state, they will get a timeout instead, because a regular kick would only happen once the game state has been downloaded
-Added a timeout for player ticcmd packets, again to prevent freezes to happen in some cases
-File/game state downloading is now faster, the speed is controlled by the "downloadspeed" cvar, in packets per tic
-The reason is now properly shown when the server refuses connection
-Changed the default values of "nettimeout" to 10 seconds (previously 15) and "maxsend" to 4 MB (previously 1)
-Added a "noticedownload" cvar that displays a message in the server console when someone is downloading a file
2017-01-13 20:53:52 +01:00
Monster Iestyn
12ae6bb22a Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/r_things.c
2017-01-07 15:03:59 +00:00
Monster Iestyn
be21588761 Merge branch 'master' into next 2017-01-03 16:06:50 +00:00
Monster Iestyn
0e6e52eabe Start mobjnums at 1 instead of 0, so that the first found mobj can be relinked as a target etc to other mobjs properly
This fixes Brak's electric barrier disappearing for joiners to ERZC. There seems to be some issues with the lava falls there too I've found, but the electric barrier actually stays around now at least
2017-01-01 17:03:13 +00:00
Louis-Antoine
d4f153d3ca Random changes in the netcode lol 2016-12-31 19:26:33 +01:00
Monster Iestyn
6ae2c24484 Merge branch 'public_next'
# Conflicts:
#	src/p_user.c
2016-12-14 18:53:00 +00:00
toasterbabe
31d569a15b No more changing skins when you're in singleplayer and manage to enter a hole in the gamestate defenses! 2016-10-29 18:12:41 +01:00
Monster Iestyn
0fb89c620d Merge branch 'master' into damage-control 2016-09-30 21:05:44 +01:00
ZTsukei
d631d0ef04 S_PLAY states, HUD stuff 2016-08-14 23:51:25 -04:00
ZTsukei
4112d44529 Some Color code, Kart powers 2016-08-11 21:42:16 -04:00
toasterbabe
c5f6ae8aaa Fixed forceskin to not always allow due to bad logic. 2016-07-14 13:24:57 +01:00
toasterbabe
2ee22fc40a Dedicated servers have all skins unlocked for the purpose of forceskin.
Meanwhile, a sneaky sneaky for hiding hidden characters further.
2016-07-13 20:14:07 +01:00
toasterbabe
80a3d79d4d Some hacks added to forceskin to:
* support hidden characters
* take the skin->name, not the number
* display the skin->name in the menu

Also, minor tweaks to other things.
2016-07-12 14:40:20 +01:00
toasterbabe
b5108afe16 Substantial re-engineering for the foundations of hidden characters.
R_SkinUnlock defines the circumstances under which a skin is available. For simplicty's sake, I've currently bound it to an S_SKIN variable so I can toggle it easily, but it WILL be replaced with a hook into the savegame system at some point.
* Currently has three tiers of unlock - freebie (forceskin or modeattacking via a loaded replay), Ringslinger Only, and SP/Coop and Ringslinger.
* I don't know anything about netcode so I basically decided to make R_SkinUnlock relevant only under local circumstances, try as hard as possible to stop bad skin info from getting sent to the server, and then admit defeat once the server has the information. If this is a bad choice, please discipline me and show me how to fix it.
* Character Select now checks for whether the character is hidden or not on menu load and does/undoes it based on that info, but will never touch one disabled via SOC. I also used this opportunity to optimise, checking for/filling out charsel pictures instead of doing it later. (It now also includes special casing for a select screen with zero characters!)
* Mode Attack now hides hidden characters in its character select based on SP rules.

Things that still need to be done:
* ForceSkin_OnChange. Is there a graceful way to handle this?
* No obvious skin name conflicts. Add a salt to the names of hidden skins, and then remove it when they're unhidden?
* The gap between Knuckles' skin number and the first custom character anybody adds will be way too obvious. A seperate hidden skin numbering system? Start at 32 and count up from there? There's a few ways...
2016-07-12 03:15:58 +01:00