Commit graph

1848 commits

Author SHA1 Message Date
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 45d373a2a2 Merge branch 'doubledecker-detons' into 'master'
No more double-decker Detons

Oversight of a tiny hack when working on the flickies branch meant detons released twin flickies when hitting stuff. As cute as that is, it's also pretty weird.

See merge request !62
2017-01-19 14:07:18 -05: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 e5cffa5237 Comment correction. 2017-01-17 14:48:15 +00:00
toasterbabe 5138255b94 The problem was triplefold!
* Value was getting populated even when it was irrelevant. That's fine, just move it after the valueless parsemode switch.
* Oh, it's struppr'd, of course it's going to compare badly with a lowercase string.
* ...oh, strncmp returns zero when it's equal, not true. Right.

<root>/toaster/smilespatch.wad and !LSF test exe updated on the FTP, btw.
2017-01-17 13:22:27 +00:00
toasterbabe 30b0d8af57 * Streamlined P_SKIN parser to have multiple internal "parsemodes" instead of redundant code.
* Instead of "reset = SPR2_ONE_\nreset = SPR2_TWO_", it is now possible to type "reset\nSPR2_ONE_\nSPR2_TWO_.
2017-01-17 12:55:49 +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
Alam Ed Arias a29ced725d Merge branch 'master' into next 2017-01-16 16:41:38 -05:00
Alam Ed Arias 628d1c4dab DD: Mingw 3.4.5 build fix 2017-01-16 16:40:16 -05:00
toasterbabe 19cd010091 Fixed a stupid bug involving jumping at spikes on FOFs in reverse gravity caused by my own incompetence/assumptions. 2017-01-16 17:52:06 +00:00
toasterbabe acf0d4ad5b Detons no longer release duplicate flickies when they hit walls.
(I COULD have hacked around the hack, but when a line tells you it's a hack and it makes things work by removing it, you remove it.)
2017-01-16 17:09:57 +00:00
Inuyasha 3169b538be Hey! If you change this, add 1 to the MODVERSION below!
Otherwise we can't force updates!
2017-01-15 16:34:30 -08:00
Monster Iestyn ba3f001a09 I dun goofed, THIS is why FuriousFox disappears like that 2017-01-15 22:24:38 +00:00
Monster Iestyn 4ac709141a Added LJSonic to credits, altered how my own name + nick is shown in credits 2017-01-15 19:23:25 +00:00
Monster Iestyn e59fb38802 Update version number 2017-01-15 18:49:33 +00:00
Monster Iestyn 691d368434 if this is what caused resynching to randomly turn some people spectators then welp 2017-01-15 18:36:38 +00:00
Monster Iestyn c0fb3fce73 Merge branch 'master' into next 2017-01-14 19:23:31 +00:00
Louis-Antoine 4a4f0ea7ee Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-14 19:26:31 +01:00
Louis-Antoine 8298ed3559 DEBUGMODE -> _DEBUG =) 2017-01-14 19:24:22 +01:00
Alam Arias 6611b01635 Merge branch 'master' into netcode-shit 2017-01-13 20:48:42 -05:00
Louis-Antoine b8b720088e Oh? a cookie on the ground
*takes the cookie*
2017-01-13 23:10:00 +01:00
Alam Ed Arias 94025ae947 Merge branch 'master' into lua-additions 2017-01-13 16:47:57 -05:00
Louis-Antoine 490778cdab Why does DD exist 2017-01-13 22:34:16 +01:00
Louis-Antoine da06b9417a Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-13 22:02:06 +01:00
Louis-Antoine 7cca60a027 Merge branch 'master' into netcode-shit 2017-01-13 21:48:24 +01:00
Louis-Antoine 005485cf9c Fixed a warning 2017-01-13 21:30:30 +01: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
Alam Ed Arias e7a1c81355 Merge branch 'cmake_nasm' into 'master'
CMake: Fix nasm Linux builds

When compiling under Linux with CMake and nasm/yasm enabled, the operation would fail during linking with undefined symbols related to the tmap files.
This commit adds support for passing flags to the assembler and passes ```-DLINUX``` in order to compile.

After this change, binaries are successfully compiled with either nasm or yasm on Linux systems.
Tested on Ubuntu.

See merge request !153
2017-01-12 17:21:05 -05:00
Alam Arias 456f5cf6e8 Merge branch 'next' into patch-1 2017-01-11 15:50:54 -05:00
Tasos Sahanidis 5216da13f0 Don't check if SRB2_ASM_FLAGS is defined and add docstring for the assembler 2017-01-11 21:52:14 +02:00
Monster Iestyn e727fea427 Merge branch 'master' into next 2017-01-11 19:40:51 +00:00
Monster Iestyn b1168b1728 Merge branch 'CMake-inline_ASM' into 'master'
CMake: split inline ASM code from vid_copy.s code

See merge request !151
2017-01-11 11:37:21 -05:00
frozenLake d865877ca2 Merge branch 'next' into patch-1 2017-01-11 10:49:37 -05:00
Tasos Sahanidis 0f52606953 Pass -DLINUX to n/yasm 2017-01-11 03:16:48 +02:00
frozenLake e3b94c04fd Added transmaps to non modifying lump list. 2017-01-08 18:13:46 -06:00
Monster Iestyn 3d07915be2 Merge branch 'vada_flickies' into 'master'
Hardcoded VAda Flickies

Many thanks to MI for his help, even if he has sinful opinions on what the collection of creatures should be called. ;P

* Flickies are now handled via A_FlickySpawn instead of hardcoded in P_KillMobj, so there can be mobjtypes with MF_ENEMY which don't create flickies, or other mechanisms which can much easier.
* Added map header "FlickyList" (aka "AnimalList") parameter, which can either be set to:
    * A species (eg: "Rabbit" or "Bluebird", amongst 17 currently supported types in dehacked.c table FLICKYTYPES - including the seed from Sonic CD, which isn't limited to 'soniccd on' in the console now)
    * Any valid mobjtype that isn't MT_NULL (eg: "MT_FLICKY_GHOST")
    * A comma-seperated list of either of the above, up to 64 entries long (eg: "Cow,MT_FLICKY_SPIDER,Chicken")
    * "All" - sets behind-the-scenes stuff to use every 'normal' type of flicky in FLICKYTYPES (a distinction which can be utilised to hide secret level flickies where they wouldn't be appropriate for the main game)
    * "Demo" - sets behind-the-scenes stuff to use the five flickies closest to the species used in the game's long history.
    * "None" - prevents any flickies from spawning.

"Demo" is functionally the default value if you don't include a FlickyList parameter in the header at all.

Of note, a bunch of functions are now created:
* A_FlickySpawn - spawns flicky.
* A_FlickyAim - aims for area near target, but not directly on them - turns around when hitting wall
* A_FlickyFly -  flies/swims around target (calls A_FlickyAim)
* A_FlickySoar - hacky alternate fly (calls A_FlickyAim)
* A_FlickyCoast - slowing down before going off again
* A_FlickyHop - fracunit-scale precision for A_BunnyHop
* A_FlickyFlounder - A_FlickyHop with randomisation
* A_FlickyCheck - State-setter for falling, or being on-ground
* A_FlickyHeightCheck - State-setter for falling, or being below a certain height relative to target
* A_FlickyFlutter - A_FlickyCheck, but with a slow fall/movement (calls A_FlickyCheck and A_FlickyAim)

I don't need to enumerate the object types and states that have been added, do I?

Oh yeah, I also made it so get_mobjtype's failure value was MT_NULL and prohibited SOC from editing the properties of it to compensate.

IN ADDITION: Killed "soniccd" console command, since it made things more complicated and honestly being able to specify Sonic CD seeds in the level header is a better option.

See merge request !60
2017-01-08 17:36:25 -05:00
Monster Iestyn 166c6746cd Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
Monster Iestyn 87dc33a78d Merge branch 'master' into next 2017-01-08 15:59:34 +00:00
Inuyasha cdc9bf3a60 Merge branch 'cb_update' into 'master'
Update Code::Block project

See merge request !145
2017-01-08 10:32:22 -05:00
Monster Iestyn 22020dda03 Merge branch 'savegame-hotfixes' into 'next'
Savegame hotfixes

Yes, this another netgame related fix! Named this "savegame hotfixes" rather than "ERCZ hotfix" or the like in advance of the fact we probably need a general branch for other $$$.sav fixes?

Anyway, fixes included in by this branch:
* ERCZ's lava falls now act as expected rather than being stuck in place for the map's duration, fixing all other known desynchronisation issues known in the map for the time being (yay)
* Changing sector tags in a map no longer causes joiners to netgames to have their SRB2 application stop responding etc
* Player names should no longer turn red in the console in gametypes outside of CTF/Team Match if a resynch occurs (not $$$.sav related, but it's related to netplay so I lumped it in anyway)

See merge request !150
2017-01-07 18:32:07 -05:00
Monster Iestyn ad30c41179 Fix egg guard shields being endlessly killed by lasers. Simply make sure they have health first before killing them! 2017-01-07 18:02:55 +00:00
Monster Iestyn 45fdfd9f37 Merge branch 'eggscalibur_fixes' into 'next'
One Eggscalibur fix

Use mobj->watertop instead of mobj->spawnpoint->z. CEZ3 is far from fixed in multiplayer, but this is still one less thing to worry about.

See merge request !148
2017-01-07 10:47:02 -05: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 cd0ec0881d Merge branch 'plane-fixes' into 'next'
Software plane rendering fixes/cleanup

This is mostly cleanup, with the exception that polyobject planes should now behave somewhat better than they do in 2.1 currently (translucent polyobj planes should now always be actually translucent regardless of where you view them from, for instance). I can't claim I've fixed their rendering once and for all though, there may still be bugs for all I know...

See merge request !136
2017-01-06 21:19:09 -05:00
Monster Iestyn c601a409e1 Merge branch 'texture-fixes' into 'next'
Some texture-related fixes

Bugs fixed in this branch:
* upper/lower/middle textures with non-existent texture ids being capable of crashing the game. For instance, RVZ1 has colormap codes on non-colormap linedefs, which causes them to wind up with invalid texture ids because of how the game tries to interpret lower/upper textures with "#" followed by characters on normal linedefs. Fortunately these "textures" are normally not visible anyway (since they're all in control sectors) unless they are swapped with in-level textures by some crazy Lua script of some sort...
* animated single-patch textures with holes displaying garbage on first viewing (see this thread: https://mb.srb2.org/showthread.php?t=42195)
* the heights of the lighting (shadows or colormapping) from water/translucent/shadowcasting/etc FOFs become messed up when displayed on repeated midtextures.

See merge request !144
2017-01-06 21:15:22 -05:00
Alam Ed Arias 0b572b6eee CMake: split inline AMS code from vid_copy.s code 2017-01-06 15:48:19 -05:00
Monster Iestyn 5e12f3497a Merge branch 'flat-changing-hotfix' into 'next'
Flat changing hotfix

This should fix how Lua scripts that change flats in levels, particularly to flats that don't already exist in the level, cause SRB2 to crash for anyone who joins a netgame afterwards. (I'm not sure if it's a consistent thing or not though)

Probably needs a good test to verify the issue is completely fixed before being merged in. Maybe there are other minor things I didn't account for in this fix? I don't know!

See merge request !141
2017-01-05 19:46:44 -05:00
Monster Iestyn f2a58a74ef Stupid me 2017-01-03 22:48:06 +00:00
Monster Iestyn 4d8ca41e65 Fix player colors mysteriously turning red if a resynch occurs outside of CTF/Team Match. Not technically a $$$.sav fix, but still netplay related of course
At least, I assume this is how it's happening for some, I haven't been able to get the full info since WHERE IS EVERYBODY?
2017-01-03 22:43:46 +00:00
Monster Iestyn b768c4b961 Sync sector tags and tag list variables properly
Dunno who thought it was a good idea to lump tag, nexttag and firsttag together in $$$.sav, but that meant changing sector tags caused SRB2 to stop responding since it lead to the tag lists being broken
2017-01-03 20:48:39 +00:00