Sonic Robo Blast 2 Public
Find a file
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
.circleci CircleCI: keep build cache with checksum of depend.dep 2017-03-24 09:12:00 -04:00
android SRB2 2.1 release 2014-03-15 13:11:35 -04:00
assets missing space for "proper" Debian formatting 2016-02-06 22:00:59 -05:00
bin debian: untested update for Debian packages 2016-02-06 12:31:44 -05:00
cmake/Modules Merge branch 'master' into next 2016-03-10 18:02:23 -05:00
debian readme.txt dupilcated, also incorrect 2016-12-14 15:07:48 -05:00
doc SRB2 2.1.12 release 2014-11-11 19:55:07 -05:00
extras SRB2 2.1 release 2014-03-15 13:11:35 -04:00
libs MSVC: Move x86/x64 settings into commons props 2016-05-22 21:55:55 -04:00
objs SRB2 2.1 release 2014-03-15 13:11:35 -04:00
src FuriousFox discovered a crash, realised I wasn't careful here. 2017-04-04 23:12:43 +01:00
tools remove NEED_FIXED_VECTOR and fix angelchk testcase 2015-08-21 21:27:20 -04:00
.gitattributes gitattributes: do not check whitespace for included libs 2016-05-18 10:38:29 -04:00
.gitignore MSVC: fixed up MSVC project 2016-05-21 23:53:04 -04:00
.travis.yml travis: cut down on osx builds 2016-08-18 19:38:21 -04:00
Android.mk SRB2 2.1 release 2014-03-15 13:11:35 -04:00
appveyor.yml appveyor: disable command output 2017-03-12 21:17:07 -04:00
CMakeLists.txt Update version number 2017-01-15 18:49:33 +00:00
comptime.bat comptime.bat: Put @echo off back in 2016-03-14 20:36:37 -05:00
comptime.mk SRB2 2.1 release 2014-03-15 13:11:35 -04:00
comptime.props MSVC: fixed up MSVC project 2016-05-21 23:53:04 -04:00
comptime.sh build: this script needs bash, not ash 2016-05-18 18:16:57 -04:00
cpdebug.mk Compile Win32 EXE with -gdwarf-2 2014-04-07 10:03:14 -04:00
Doxyfile SRB2 2.1 release 2014-03-15 13:11:35 -04:00
LICENSE SRB2 2.1 release 2014-03-15 13:11:35 -04:00
README.md README: add CircleCI's Status badge 2017-03-24 08:28:31 -04:00
srb2-vc9.sln SRB2 2.1 release 2014-03-15 13:11:35 -04:00
srb2-vc10.sln MSVC: fixedup SDL2 build 2016-05-18 20:01:50 -04:00
SRB2.cbp Updated SRB2.cbp to (presumably) handle lua_blockmaplib.c correctly 2017-01-16 15:43:27 +00:00
Srb2.dev change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
srb2.png add artwork for BPM 2016-02-06 17:36:21 -05:00
SRB2_common.props MSVC: Move x86/x64 settings into commons props 2016-05-22 21:55:55 -04:00
SRB2_Debug.props MSVC: fixed up MSVC project 2016-05-21 23:53:04 -04:00
SRB2_Release.props MSVC: Move x86/x64 settings into commons props 2016-05-22 21:55:55 -04:00

Sonic Robo Blast 2

Build status Build status CircleCI

Sonic Robo Blast 2 is a 3D Sonic the Hedgehog fangame based on a modified version of Doom Legacy.

Dependencies

  • NASM (x86 builds only)
  • SDL2 (Linux/OS X only)
  • SDL2-Mixer (Linux/OS X only)
  • libupnp (Linux/OS X only)
  • libgme (Linux/OS X only)

Warning: 64-bit builds are not netgame compatible with 32-bit builds. Use at your own risk.

Compiling

See SRB2 Wiki/Source code compiling

Disclaimer

Sonic Team Junior is in no way affiliated with SEGA or Sonic Team. We do not claim ownership of any of SEGA's intellectual property used in SRB2.