Commit graph

2625 commits

Author SHA1 Message Date
Nevur
e125dedbe9 sdad 2017-05-01 18:33:41 +02:00
Nevur
f22b16aa17 Merge branch 'FileManagement' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement
# Conflicts:
#	src/w_wad.c
2017-05-01 18:32:57 +02:00
Nevur
8f2025ab5f dsa 2017-05-01 18:30:20 +02:00
Nevur
146c7485f5 Cleaned up a little bit of unused code. 2017-05-01 16:59:59 +02:00
Nevur
65b89f6c0f Oops. It should compile now. 2017-05-01 16:43:52 +02:00
Nevur
2c614f8f2c More work on PK3 handling.
-Moved the MD5 check for added files up so it avoids unnecessary work when you mess up and re-add a file.
-Using compression enum for compressed lumps now.
-Vastly improved central directory seeking algorithm, big files are read fine now. Thanks a lot JTE!
-Improved remaining central directory navigation algorithm, we know and expect what data is coming from now on, after all.
-TX_ textures and sounds are replaced, but textures crash the game on mapload, and sounds are simply mute when replaced. Might have to do something with caching, I don't know yet.
2017-05-01 16:37:32 +02:00
Nevur
448ceefe84 Little progress made. The code from everywhere still looks for the basic WAD structure of the lumps.
-Removed a redundant boolean related to texture loading in P_AddWadFile.
-Started working on handling PK3s differently, except that I'm not sure about what I'm doing.

I don't know what to do from now on for today, so I'll leave it here for now.
2017-04-30 20:05:26 +02:00
Nevur
376d2a2da3 Further work on PK3 support.
-PK3 files are now properly loaded as files.
-PK3 lumps are still being treated the same way as WAD files. It means they're dependant on markers, if that makes any sense in the context of a ZIP file (it doesn't). I haven't worked out this part yet but I obviously intend to do so.
-I don't know if the lumps' position address is correct, we'll figure out when I fix the thing from above.
2017-04-30 17:43:11 +02:00
Nevur
afba4b2abd Started to work towards PK3 support.
-Tweaked compression conditional to a switch-case format, looking towards adding several comrpession algorithms; haven't removed the previous "compressed" boolean yet.
-Added dynamically allocated name strings for lumps; haven't removed the previous name field.
-Added rudimentary PK3 central directory recognition; nothing is actually loaded in the end.
2017-04-30 14:49:33 +02:00
Monster Iestyn
5608c4b4e7 Merge branch 'public_next' 2017-04-26 16:17:29 +01:00
Monster Iestyn
72d52547fa Merge branch 'next' into public_next 2017-04-26 16:16:57 +01:00
Monster Iestyn
058ad4df88 Merge branch 'master' into next 2017-04-26 16:15:40 +01:00
Monster Iestyn
c16ae57f91 Merge branch 'addfile-directories-fix' into 'next'
Addfile directories fix

This is a fix for this bug: https://mb.srb2.org/showthread.php?t=42279

See merge request !166
2017-04-24 20:46:38 -04:00
Monster Iestyn
e03577d957 Merge branch 'falling-rocks-fix' into 'next'
Falling rocks fix

This fixes the rock spawners' rocks not being removed if they rolled down to the ground from a slope rather than bouncing (see https://mb.srb2.org/showthread.php?t=41963)

See merge request !162
2017-04-24 20:41:32 -04:00
Monster Iestyn
7658469c23 Merge branch 'drawfill-fix-2' into 'master'
DrawFill made not stupid

made it more consistent with other drawing functions; doesn't draw off of the sides, and doesn't ignore snapping or widths for reasons that don't make sense
(for instance: the green bar in MI's test script showed *above* the blue one in non-green resolutions in 2.1.17)

See merge request !173
2017-04-24 12:43:10 -04:00
Monster Iestyn
7f7c7c58ab Use less-than, not less-than-or-equals, since deststop is off-screen 2017-04-24 17:41:50 +01:00
Monster Iestyn
bbeb69c477 Merge branch 'polyobject-checksight-fix' into 'master'
Polyobject checksight fix

This branch fixes how polyobject lines apparently stop objects from "seeing" other objects behind them; the relevant code now checks the polyobject's top and bottom too! This is relevant for enemies trying to get you, Homing attack, Fang's gun, etc etc.

Can't say if it's perfect or not, but it's a definitely an improvement over what happened before, anyhow.

See merge request !86
2017-04-21 11:58:35 -04:00
Monster Iestyn
ed9dfaa617 Merge branch 'master' into polyobject-checksight-fix 2017-04-21 16:32:38 +01:00
Monster Iestyn
f77e107c1a Merge branch 'no-doubling-texture-heights-plz' into 'master'
No doubling texture heights plz

If you didn't know, apparently SRB2 was hardcoded to double the height of 64x64 textures created using TX_START/TX_END. This has frustrated some a lot. This branch removes this hack at last (there doesn't appear to be any visual issues resulting from removing it, anyway).

srb2win-nodoubletexheight.exe can be found in my FTP folder.

See merge request !85
2017-04-20 21:00:48 -04:00
Monster Iestyn
839dc6bcc1 Merge branch 'hud-drown-numbers-fix' into 'master'
First person HUD drown numbers fix

This branch fixes the following issues with the first person HUD when drowning:
* "0" turning into Sonic's drown sprite, since both sprites happen to be named DRWNA0
* SF_MACHINE's special drowning numbers from 3rd person not being used

See merge request !80
2017-04-20 16:20:00 -04:00
Monster Iestyn
3edbf0a085 Fixed P_CheckSight not considering polyobject top and bottom at all
This was actually kind of easier to do than I expected, though I can't tell if there's anything else I need to do or not
2017-04-19 22:19:46 +01:00
Monster Iestyn
f0256c41be Be gone ye old texture hack 2017-04-19 20:00:19 +01:00
Monster Iestyn
25015142b1 Merge branch 'mi-hardcode-stuff' into 'master'
MI hardcode stuff

A branch where I hardcode some of the various SOCs in patch.dta and some of our external files

Stuff hardcoded in this branch (so far)
* The contents of SOC_PITY from patch.dta
* The contents of SOC_XMAS from patch.dta
* The big gargoyle for DSZMaster-n1.wad

I've made a subfolder called "mi-hardcode" in my FTP folder for files you'll need for testing:
* srb2win-mihardcode.exe is an exe I compiled for this branch
* An edit of patch.dta with SOC_PITY and SOC_XMAS removed, this can be the new patch.dta once merged in

See merge request !84
2017-04-19 09:19:13 -04:00
Monster Iestyn
0f2c9c40a2 Hardcoded the big gargoyle 2017-04-18 20:38:13 +01:00
Monster Iestyn
941ab72204 Hardcode new/updated xmas scenery object type/state info 2017-04-18 18:32:52 +01:00
Monster Iestyn
0e358b3d9f Add new Pity shield orb state info, remove unused Pity states 2017-04-18 17:36:04 +01:00
Monster Iestyn
93efb3084e Merge branch 'mi-a-bit-of-cleanup' into 'master'
MI's unimportant code cleanup

Just removing a bunch of unused variables/function prototypes from the source code and similarly minor stuff, nothing here should change gameplay much (if at all).

See merge request !71
2017-04-17 14:43:50 -04:00
Monster Iestyn
798628eef1 Merge branch 'mi-minor-refactoring' into 'master'
MI minor refactoring

Just moving the locations of some consvar externs from d_netcmd.h to other header files in which I think they should REALLY belong. Ultimately this should not affect gameplay whatsoever, it's just code cleanup.

See merge request !81
2017-04-17 13:40:51 -04:00
Monster Iestyn
a0179aa29b Merge branch 'skybox-quake-fix' into 'master'
Skybox quake fix

Fixes earthquake effects not being properly scaled for skyboxes. If a skybox is 16x larger than life, then the quake is only 16th as strong, for instance. Also some skybox scaling code cleanup was done I guess.

Probably easier to see it in action than explain what I've done: I've put srb2win-skyboxquakefix.exe in my FTP folder for peeps to be able to test out this branch. Also there is luatest-startquake.lua, which produces a fairly strong (10*FRACUNIT intensity) 3-second quake on pressing the Custom 1 key.

See merge request !82
2017-04-15 17:58:04 -04:00
Monster Iestyn
7629a0710e Make sure quakes are scaled for skyboxes
While I was at it I also refactored most of the skybox view scaling code so it isn't needlessly duplicated
2017-04-15 20:21:54 +01:00
Monster Iestyn
181c8bd742 These convar externs aren't moving files, I'm just shifting them up to live with their relatives 2017-04-14 19:56:51 +01:00
Monster Iestyn
0921244ba4 Move analog consvars to g_game.h 2017-04-14 19:00:46 +01:00
Monster Iestyn
488c4071ba Moved screenshot/movie consvar externs to m_misc.h 2017-04-14 18:14:15 +01:00
Monster Iestyn
46c3c42eba cv_controlperkey probably belongs in g_input.h too 2017-04-14 18:02:35 +01:00
Monster Iestyn
887e7e0b7d Moved most of d_netcmd.h's 2P mouse consvar externs to the files with their 1P counterparts 2017-04-14 17:45:27 +01:00
Monster Iestyn
3696463aa8 Just to make toaster happy I'll do this :V 2017-04-14 17:16:09 +01:00
Monster Iestyn
180829e95c Rewrote first person HUD's drown numbers drawing 2017-04-13 22:09:03 +01:00
Monster Iestyn
63a16355da Merge branch 'inverted-plane-disp' into 'master'
Inverted plane displacement

If you don't know of the new linedef types 66, 67, 68 or how they work already, see !61's description.

This is basically a quickly-thrown together branch to support inverse plane displacement; just simply turn on Not Climbable on any of the plane displacement linedef types to enable this for any sectors tagged by them. This causes moving the control sector to move all tagged sector planes in the reverse direction.

I've provided srb2win-inverseplanedisp.exe and plane-disp-test2.wad in my folder on the FTP to test this branch.

See merge request !79
2017-04-13 14:00:42 -04:00
Inuyasha
5e4f960f3a fixed drawfill to be more consistent w/ other functions
doesn't draw off of the sides, and doesn't ignore snapping or widths for reasons that don't make sense
(for instance: the green bar in MI's test script showed *above* the blue one in non-green resolutions in 2.1.17)
2017-04-12 15:34:13 -07:00
Monster Iestyn
80637b336b Starting work, noclimb inverts direction (haven't tested if it actually works or not yet) 2017-04-11 22:33:04 +01:00
Rob
f2923284d8 Merge branch 'fixedpal' into 'master'
Fixing the reduced palette

Index number 254 remapped from a dark browny-orange to a dark blue. Otherwise unchanged; most of the assets we have currently created do not use the index for its previous purpose. It would be nice to get this merged quickly so that there is certainty about what we use going forward.

http://i.imgur.com/9xuQApq.png

root/toaster/fixedpal contains every necessary asset file, including the SLADE translation lump.

See merge request !77
2017-04-06 21:26:08 -04:00
toasterbabe
73ea33d3a1 Fixing the fuckup I made when creating the new palette. 2017-04-06 16:42:52 +01:00
Monster Iestyn
bfaf60ceef Merge branch 'public_next' 2017-04-05 21:05:57 +01:00
Monster Iestyn
586d2e1bde Merge branch 'next' into public_next 2017-04-05 21:05:33 +01:00
Rob
2c264d430b Merge branch 'charabilities_mk3' into 'master'
Charabilities MK3 - The third and probably not last branch of character stuff

Been too long since I've made a merge request. This isn't quite done, but I'd consider it... done ENOUGH that I want to work on something else, and keeping it seperate from master will just cause everyone hassle.

Abilities:
* CA_BOUNCE. Bounce on basically anything! Break bustable blocks downwards! Don't take damage from below, unless it's death pit damage, in which case eat shit! Averages to double the jumpheight of the player.
* CA_TWINSPIN can now break bustable blocks up and down in addition to breaking horizontally. Also, a spring boost.
* CA_HOVER now uses seperate states/frames, has dashmode support, and falls slowly whilst not moving very quickly.
* CA_SLOWFALL gets the CA_HOVER states/frames and dashmode support too.
* CA_HOMINGTHOK now targets Sea Egg fakes and egg guard shields, and uncurls when there's no target. It also shows a target icon.
* CA2_GUNSLINGER. Uses revitem as bullet. Autotargets within range/angle limitations on similar rules to homing attacks. Shows a target icon.
* CA2_MELEE can now break bustable blocks up and down in addition to breaking horizontally, and plays much more fluidly. Also, a spring boost.
* CA2_SPINDASH allows you to roll when landing on any surface when moving fast enough unless you have PF_THOKKED. Also, fixed you being able to roll forever.

Conversions:
* CA_DASHMODE -> SF_DASHMODE
* CA2_MULTIABILITY -> SF_MULTIABILITY
* player.jumping -> PF_STARTJUMP
* pw_ingoop -> CR_BRAKGOOP
* PF_NIGHTSMODE -> CR_NIGHTSMODE
* PF_SUPERREADY -> P_SuperReady()
* SPR2_SPIN -> SPR2_ROLL
* SPR2_DASH -> SPR2_SPIN
* SPR2_PEEL -> SPR2_DASH
* SPR2_SSTD, other super frames -> see below...

Others:
* Super sprites are now seperated from normal sprites via using S_SUPER lump in a skin, rather than being an explicitly named super version of the lump (which required a ton of effort from us to make super versions of all sprite2 names). Accessible via FF_SPR2SUPER.
* Unlockable skin stuff is now netcode synchronised. We won't be repeating 2.1's bullshit if we can help it!
* Host can't switch their skin if there's any restrictions applied, since that was unfair.
* Unique Attraction Shield sound instead of reusing S3nK Thundercoin sound.
* Character select menu code is defuckened.
* Fixed zoom tube camera distance being borq'd by a bug.
* Hudnames are now padded if they're less than 5 symbols long.
* Instead of jump damage when jumping being controlled directly by SF_NOJUMPDAMAGE, it now indirectly controls it via applying the flag PF_NOJUMPDAMAGE.
* SF_FASTEDGE. Does... a fast edge animation, really.
* Fixed some oversights with the SPR2isation of NiGHTS.
* P_SpawnLockOn(player_t player, mobj_t lockon, statenum_t state) function for Lua allowing the homing target visualisation stuff to be done locally without performing horrible, horrible hacks.
* Objects and sounds for the cork, which CA2_GUNSLINGER's main toter uses.

<root>/toaster/charabilities/ has the testing files outside of patch.dta, which is in master.
* srb2win_branch_charabilities.exe.
* player.dta - can't be used with master executables because of sprite2 renaming plus super stuff.
* socchar.wad - very simple WAD which helps test unlocks for the purpose of netplay.

Please let me know if you have a thunk.

See merge request !76
2017-04-04 19:07:50 -04:00
toasterbabe
89f518a8a3 FuriousFox discovered a crash, realised I wasn't careful here. 2017-04-04 23:12:43 +01:00
Monster Iestyn
81c3d6820e Merge branch 'commandline_skinselect' into 'next'
Command-line skin selecting fix

Fixed http://mb.srb2.org/showthread.php?t=42312.

Also, fixed being able to change your skin colour during credits/cutscenes in singleplayer.

See merge request !158
2017-04-04 16:49:55 -04:00
toasterbabe
6c923b26e7 woops forgot to push this 2017-04-04 21:29:44 +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
Rob
8fdbc5669c Merge branch 'level_select' into 'master'
Revamped Level Select (platter view)

Seriously revamped every level select instance in the game to use a more attractive and easier to navigate platter view, including:

* Game CLEAR! save (Title/Pause menus)
* Secrets Menu (including custom ones)
* Record Attack/NiGHTS Mode
* Server creation (Online/2P)
* MP Pause level select (Online/2P)

As a result, the layout of the last three above menus has been changed to varying degrees of difference.

Also, bonus feature: using level select (or MAP MAPxx without -force) in Co-op multiplayer won't reset your score, will keep any lives you have above the startinglives variable, and will not take away all your emeralds. The -force thing prevents both warping directly to special stages to rack up the emeralds AND ensures there IS a way to start a new game.

Check out <root>/!LatestSRB2Files/srb2win_branch_levelselect.exe with the latest patch.dta to see more.

Also, LF2_WIDEICON lets you do this. https://gfycat.com/MenacingClearAngora

See merge request !68
2017-04-04 12:23:18 -04:00