Commit graph

227 commits

Author SHA1 Message Date
toaster
1142fddc71 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_plus_rain
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/g_game.c
#	src/p_floor.c
#	src/p_user.c
#	src/r_data.c
#	src/r_data.h
#	src/v_video.c
2018-10-14 21:52:05 +01:00
TehRealSalt
b2a9193e3b Merge branch 'master' into sweet-new-kicks 2018-10-10 13:43:05 -04:00
Monster Iestyn
afd62ec071 Merge branch 'master' into next 2018-10-09 22:55:55 +01:00
Sal
85430da37f Merge branch 'thinkerclean' into 'master'
Nuke a bunch of iteration things that have no purpose in SRB2Kart.

See merge request KartKrew/Kart!25
2018-10-07 23:14:53 -04:00
TehRealSalt
68a06a14c8 Rocket Sneakers appear beside you 2018-10-07 18:53:46 -04:00
toaster
2ad2cbcc0a Weather is already run client-side. What if we ran it render-side, for major performance gains? This commit will answer all your questions - and more! 2018-10-07 15:00:58 +01:00
toaster
5e8799a965 Nuke a bunch of iteration things that have no purpose in SRB2Kart. A full explanation of my reasoning and what it affects is as follows.
p_inter.c -
	Everything to do with setting states for starposts
		In SRB2Kart, starposts are invisble. We don't need to loop through all thinkers just to set their states when there's no visible effect of the state-setting. In addition, it has no consequences for gameplay - starposts have long been silent here, and all checking is done regarding their health, not their state.
	Remove extremely low-traffic conditionals (MT_FLINGEMERALD collision height extension, for example)
		These objects serve no functional purpose during regular SRB2Kart gameplay. Why should every other object have to pay an admittedly minor performance hit just for them?
	Disable all mechanisms of damaging bosses or enemies with the player's physical contact
		With the exception of Sapphire Coast, no MF_ENEMY objects exist in the entirety of the standard roster. In addition, the conditions for damaging the enemies were impossible to achieve, because they required vanilla SRB2 mechanics such as "jumping", "spindashing", or "super". Therefore, they can be safely commented out.
	Disable NiGHTS-related material (excepting bumper, hoop, and wing-emblem objects)
		NiGHTS is fundamentally incompatible with regular kart gameplay and I believe was already broken. Therefore, any mechanism which enters, aids, or abets it can be safely disabled.
	Comment out Tag mechanisms
		Tag is the only vanilla multiplayer gametype which has sufficient gameplay depth and complexity (HEYOOOOOOOOO) to require dedicated thinking in and of itself in order to manage. This thinking is irrelevant to Kart's functioning, and can be neutered easily.
d_clisrv.c
	Comment out Tag mechanisms
		See p_inter.c
d_netcmd.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		When investigating for references to NiGHTS material, I discovered that these remained untouched. In order to present a more coherent game, I have hidden the ones that serve no purpose for us.
	Comment out Tag mechanisms
		See p_inter.c
g_game.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable some team-related material
		Teams are not present in SRB2Kart at present. Obviously we'd want to reconsider for future, but it doesn't need to be run right now.
	Everything to do with setting states for starposts
		See p_inter.c
m_cheat.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		See d_netcmd.c
p_map.c
	Remove extremely low-traffic conditionals (MT_EGGSHIELD collision, for example)
		See p_inter.c
	Disable NiGHTS-related material
		See p_inter.c
p_mobj.c
	Disable P_EmeraldManager
		Power stones, despite their relevance in vanilla Match, are not in SRB2Kart's Battle. No management of nonexistent emeralds is required.
p_setup.c
	Everything to do with setting states for starposts
		See p_inter.c
p_spec.c
	Disable NiGHTS-related material
		See p_inter.c
	Everything to do with setting states for starposts
		See p_inter.c
p_telept.c
	Everything to do with setting states for starposts
		See p_inter.c
p_tick.c
	Disable some team-related material
		See g_game.c
	Disable P_EmeraldManager
		See p_mobj.c
	Do not run shields
		Shield objects are not run under the vanilla system; the Thunder Shield is a domain-specific recreation using a standard mobjthinker.
	Do not run special stages
		SRB2Kart does not have special stages.
	Comment out Tag mechanisms
		See p_inter.c
y_inter.c
	Disable some team-related material
		See g_game.c
p_user.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable 2d movement for players
		2D mode? In a kart racer? :nick:
2018-10-03 17:04:41 +01:00
toaster
3b5f195973 Spring *panels* now use sfx_kc2f again (but pogo spring *items* still do sfx_kpogos, in case you were worried). 2018-09-27 18:32:07 +01:00
toaster
880037c2e3 Revamp flat alignment to be consistent across all renderer functions except for the software slope renderer, which me and fickle tried our best at but couldn't get to work. (This is a backport of 2.2 code that slightly postdates the improved flat alignment Kart's had for a while.)
This fixes #11.
2018-09-27 18:11:43 +01:00
Sal
1d1705d4e7 Merge branch 'new-voices' into 'master'
New voices

See merge request KartKrew/Kart!15
2018-09-22 20:22:59 -04:00
TehRealSalt
2e0365645e Merge branch 'master' into this-is-a-sign 2018-09-22 17:58:35 -04:00
TehRealSalt
6a8fa59277 Merge branch 'master' into new-voices 2018-09-21 21:13:46 -04:00
TehRealSalt
fef5ec005f Different timings 2018-09-21 19:44:14 -04:00
TehRealSalt
932572abf8 Address review
- Reduced states
- Metal Sonic on sign roulette
- Landing sound
- New falling sound
2018-09-21 18:40:18 -04:00
toaster
9ab42d91cb Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore
# Conflicts:
#	src/info.c
#	src/m_menu.c
#	src/y_inter.c
2018-09-21 20:54:38 +01:00
mazmazz
4fa7a4ca37 musicplus-le-changemusic 2.2 -> 2.1 backport 2018-09-18 15:28:57 -04:00
mazmazz
32c48af258 MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
TehRealSalt
35bd542076 Bug fix 2018-09-13 23:49:24 -04:00
TehRealSalt
cf3b58f68d Delay falling, longer exit timer 2018-09-13 19:13:43 -04:00
TehRealSalt
3b1c1e9dbd This is a sign
Signpost with the face of the person in 1st falls down at a pre-determined location on race finish (or at the finishing player if none is found)
2018-09-13 17:42:34 -04:00
TehRealSalt
045d3bf91d Speed pads always play a boost voice clip
For the extra SA1 feel :P
2018-09-07 16:20:20 -04:00
TehRealSalt
79c49550c1 Move wall sector type to from Section1:14 to Section1:12
The SMK maps will probably need an update
2018-09-02 20:57:40 -04:00
TehRealSalt
1be9b16f3a Scale the speed of SA dash pads with higher scales
Also, added a define for GROWNEVERMISSES, which fixes every single jump with Grow but with feels terrible.
2018-08-31 00:05:46 -04:00
TehRealSalt
2e809548e4 separate var for dashpad cooldown
- no longer has weirdness with pw_flashing
- can now have an SA1-style effect for it
2018-08-30 22:27:18 -04:00
TehRealSalt
79eb4feb74 Lower capped spring pad max speed even harder, to properly fix BC3 2018-08-29 14:46:42 -04:00
TehRealSalt
9ff5e2d2e2 New voices
- Following Oni's proposal. This means taunts are split into 2 types for offensive items and boost, 2 less hurt sounds, and there's another clip for using invincibility item (or whatever other powerful items we want to apply it to later; maybe size-down?)
- Win/lose quotes are played at full volume for the person who said it.
- A new sound effect plays when you hit someone with voices disabled.
- Reduce amount of RNG being called from the vanilla P_Play[whatever]Sound functions
- Added our skin sound constants to the dehacked list.
- Unrelated: finish line sfx plays in splitscreen
2018-08-28 16:29:50 -04:00
TehRealSalt
8f790957f1 Last touches for smk maps
- different min/max on capped spring pads
- turn the normally almost-useless "non-ramp sector" type into "wall sector", which disables both stepup AND stepdown instead of just stepdown
2018-08-27 18:09:32 -04:00
toaster
a6f8b021b0 Encore mapload linedef executor (number 328), as requested by Oni. 2018-08-11 23:20:05 +01:00
toaster
7250501ed7 Merge branch 'sonicitems' into encore 2018-08-11 22:52:24 +01:00
TehRealSalt
6cdbb7c896 Flashing tics length depends on speed stat
Change to speed-weight when the bump buff gets added
2018-08-11 00:12:41 -04:00
toaster
eac0af999d More control over what stuff get Encore mapping applied to it, with sensible defaults so you don't have to do much to your map to get it to be supported!
* Objects!
	* Gone is the arcane, difficult-to-remember list of random flags. Say hello to MF_DONTENCOREMAP!
	* Alternatively, if the object has a skincolour applied to it, it isn't encoremapped either. (Useful for ghosts, for example.)
* Sectors!
	* The autodetecting of sneaker and spring panels is now much more intelligent, and only avoids remapping the plane(s) the effect is availible upon.
	* Sector special group 2 no. 15 is now "Invert Encore Remap". It inverts the above detection.
* Linedefs!
	* The "Transfer Line" linedef flag can now also be used to deny Encore remappings on linedef textures.
	* Right now it applies to every pixel drawn specifically belonging to that linedef, but if people decide it needs changing, we CAN make it apply to midtextures only (like linedef types 900-910).
2018-08-10 19:31:30 +01:00
TehRealSalt
b6807fc78f Lap start animation 2018-08-09 21:52:02 -04:00
TehRealSalt
2ef24d85e0 Chao's requests 2018-07-16 21:27:50 -04:00
toaster
8c1f17575f Mammoth commit!
* Deaths in record attack no longer put you into a glitchy singleplayer game-over state that we somehow both kept around and also broke since we branched Kart off of Vanilla..
* Fix non-standard mapscales making the Death Egg respawn octagons dissasemble themselves.
* Allow for MULTIPLE TIME EMBLEMS PER MAP, at least in the emblem UI on the timer. It shows all completed emblems plus the uncompleted emblem up to a total of three.
* Major tweaks to the First Person HUD.
	* I know this was your baby, Sal, and some of the changes may prove controversial - so I've put the ones that are likely to cause the most fuss inside an ifndef block, so that you can toggle it as you please with minimal code changes.
	* Dontdraw-ness, transparency, and colorization match the player's object!
	* Moves around on the screen with respect to the direction of the player object's motion, to make drifting look nicer!
	* Flashes the colour of your drift sparks.
* Did a WHOLE bunch of things with respect to music. I'm not sure how to describe this, so I'll go through step-by-step.
	* Countdowns now play the drowning music again.
	* Removed/disabled extraenous P_RestoreMusics.
	* Made map-ending music called by its own function, P_EndingMusic(player_t *player).
	* Made the ending music play on the LAST player crossing the finishing line in splitscreen, rather than first.
* Make dead players spinout and clip through the floor, at least until we add the new death anims.
* Fix prior pogo spring usage making dead players fall faster.
* Make the time over countdown use the kart font when not splitscreen with 3 or 4 players.
* Removed a weird bonus HWR_DrawCroppedPatch function signature in the hardware header.
2018-07-16 20:19:30 +01:00
TehRealSalt
d99d6db248 Sping panel tweaks
- Spring panels have a higher minimum forward speed, and you can no longer drop below that speed.
- New, separate type of spring panel that has a maximum speed cap, for small jumps.
- Unrelated: The SMK Donut Plains bushes now have much less thinker overhead.
- Unrelated: Fixed my earlier attempt at getting momentum redirect to work when you just hit the ground.
2018-07-13 20:45:18 -04:00
TehRealSalt
2a76f5edcf Sound & timer fixes
- Don't decrease spinout when boosting
- Don't increase banana dragging when in the air or if you're not moving (Not sure about this one, just thought that this would feel better than it always increasing once we add the visual effect)
- Play a sound for banana dragging
- Correct finish line sounds
2018-07-10 18:16:53 -04:00
TehRealSalt
80dc8927dd Battle finish music, fixed double-wanted bug 2018-07-02 17:57:22 -04:00
TehRealSalt
d4c5a92c7b WANTED 2018-07-01 04:36:09 -04:00
toaster
baa1024ffb Don't look at this commit too closely until after netgame, I want to surprise yalls!!
* Lots of menu changes!
	* Little arrows next to changeable cvars!
	* Show default value for sliders!
	* Pretty pretty pretty.
	* I don't know how to describe some of these changes.
* Effectively nuke MIDI music support!
* Skiddown at the start of a race is more interesting!
* Spinning in waterslides!
* Tiny bugfix in voting, plus a little celebration...
2018-06-30 23:18:13 +01:00
SeventhSentinel
20f7310b92 Final lap sound 2018-06-26 12:11:43 -04:00
SeventhSentinel
3dffafd1b1 Spinout type is now passed through K_SpinPlayer
This means we don't have to reset spinouttype's value immediately after using it, which means no more wipeout timer garbage.
2018-06-25 06:58:23 -04:00
SeventhSentinel
ceee74f7d6 Lakitu murder & countdown improvements
(I'm not SevenethSentienel! I just don't feel like logging out!)
2018-06-24 22:15:22 -04:00
TehRealSalt
0f8daffe2f Hundreds of tweaks
- SPB multiplier depending on 1st-2nd distance
- Removed the Battle-only k_poweritemtimer (hold over from when you could easily get invuln items all of the time), replaced it with a 2 invincibility item cap in ALL modes.
- Spinout is affected by boosters, *properly*
- Can no longer strafe while spinning out on speed bumps
- Messed with how other items interact with speed bumps, again.
- Old bounce code has been ported for non-players
- Fixed Karma players being able to do anything after the round has ended.
- Fixed sneaker and spinout timer weirdness
- Fixed Mines still being hold-use
- Fixed rubber-burn turn not working
- Removed redundant k_spinout and unused k_boosting variables
- Filled out the Color_Opposite table with Kart's new colors. Not really relevant right now (besides some extra Lua functionality) since nothing uses it, but will be nice for if we do the signpost from the sky idea.
2018-06-19 20:20:06 -04:00
TehRealSalt
b6314e1c1d Misc tweaks just about everywhere
- More Jawz states for later
- Jawz orbit their user in the right direction now.
- Banana trails made closer to each other
- wheels.lua hardcoded
- All held items take a double press, for consistency.
- Fixed Karma Items not being able to be collected by invincibility or hyudoro users
2018-06-18 00:42:53 -04:00
TehRealSalt
3d9f1a90e1 Merge branch 'master' into sonicitems 2018-06-07 19:39:45 -04:00
TehRealSalt
d00e29c7df P_RestoreMusic restores level exit music as well
Splitscreen fix
2018-06-05 02:41:55 -04:00
TehRealSalt
ec23771ef7 Merge remote-tracking branch 'srb2public/next' 2018-06-04 16:58:35 -04:00
TehRealSalt
2abe82869d Adjustin' to Oni's requests
Only 1st place finish sound is global, use signpost instead of starpost
2018-06-03 20:19:03 -04:00
TehRealSalt
681ee4fcfa Exit siren, disable constant forcing of Mario Mode sounds 2018-06-03 18:20:21 -04:00
Monster Iestyn
745be2c641 Stop Each Time trigger linedefs and object-carrying scrollers from doing anything with FOFs without FF_EXISTS 2018-05-21 20:02:30 +01:00