QuakeSpasm-Spiked (aka: QSS) Readme!

reason to be:
	this is an attempt to fix some of the deficiencies (as I see them) in quakespasm, while trying not to change how it feels to the user.
	improvements are there for people to use if they wish/need to do so, but nothing will be forced upon you. it will still look and feel just as clunky for the end user, depending on the mods they use.
	the result should allow mods to do lots of new stuff, without breaking anything.
	that's the idea, anyway.

license:
	engine parts are subject to the GPLv2 or later (license included in subdir). Other parts may be subject to their own licenses.

overview of changes:
	mappers can now have access to various particle effects, either emitted from entities or surfaces themselves, even without any qc changes.
	modders now have access to MANY more qc extensions. ssqc itself is significantly less limited, and clientside support for things is also a fair bit too.
	server admins can now easily advertise their server, without having to jump through all sorts of hoops.
	players are no longer crippled by vanilla's networking, no longer need to use external server browsers, NAT support should be much better, angles will have more precision on public servers, etc etc. Plus all of the above.

	for a more complete list of changes including some erata, see the changelog file.
	for the complete changes, see the included diffs. :)

	my changes are not intended to change the look+feel of quakespasm, but rather to remove limitations holding back modders and fix some stupid networking things that have always annoyed me about netquake.
	if there are any obvious differences from QuakeSpasm, then its because of one of the following:
		qss is able to load pk3 files, so you may suddenly get replacement textures appearing if eg you QRP textures installed (there is a gl_load24bit cvar that you can set to 0 which may 'fix' this).
		mods/configs might query/use QC extensions that actually exist in QSS but not vanilla QuakeSpasm.
		protocol changes, if used, allow for more precision / lower bandwidth, but may prevent other engines from playing demos recorded with QSS.
		or I fucked up and introduced a bug...
	that's not to say that there arn't subtle changes too, but any of those that are (imho) likely to actually be undesirable to anyone can be disabled.

windows (installing):
	just extract the individual files from either the win32 or win64 directory into your quake directory.
	(you may need to overwrite existing dlls especially if switching archetecture. the included dlls are from vanilla quakespasm so should be mutually compatible with an equivelent version of vanilla quakespasm)
	use like it was your original quakespasm version. except better, and with a different executable name.

	the other directories and files are not necessary for end-users, and are described in other sections of this crappy readme.

linux:
	no linux binaries are included, but you should be able to compile from source.
	cd quakespasm/Quake && make -j4 && ./quakespasm -basedir /usr/games/quake/
	or something, I'm sure you can figure it out.

macos (sucks to be you):
	I can't support macs. Pester ericw.

subdir 'e1m1_effects' (baker's example mod):
	this subdir contains baker's particle example mod (fixed up a little to avoid hacks thanks to improvements from r5).
	To use, Copy this subdir into your quake directory, load it as a normal mod, and pick e1m1 only. Other maps don't have extra effects.
	Note that this 'mod' has absolutely no QC changes, and can thus be merged into ANY existing mod, making it a good example for people who like making maps for other people's mods (or even vanilla).

subdir 'quakespasm' (sourcecode):
	this subdir contains the source code for quakespasm. only useful if you need documentation or you need to compile your own (or fork it or port parts to some other engine).
	contents of this subdir are GPLed.

subdir 'id1' (particle examples):
	merge the included id1 directory with your own.

	r_particledesc "weather classic"
	standard skies will now rain or snow.

	r_particledesc "high"
	you'll now get fte's my (Spike's) attempt at 'high quality' particles.
	(there's no real textures used by it, but it also tries to avoid going crazy)
	(combine with 'weather' if you want weather effects)

	r_particledesc "haze"
	you'll get purplehaze's various particle effects. they're a little more demanding than high, but also higher detail.

subdir 'smc' (SMC mod fixups):
	this mod has a whole lot of alternative file formats, and a load of dp-specific expectations that will never be supported, but its configurable, so it should be possible to get a somewhat playable version of smc to run, if only as a demo of what can actually be done with a couple of extra extensions.
	to run, merge the included smc directory into your existing one. you'll need to overwrite files.

running Arcane Dimensions:
	AD does not yet have support for QSS's specific quirks, hopefully these will be added with ad1.5, or something.
	With older versions, you'll still benefit from better networking, but single player will not otherwise be different.

compiling:
	included source files do not contain system-specific build dependancies, so you'll want to check out a version of standard quakespasm and overwrite it with the files contained in this archive, if you want a full set of the source.
	you should then be able to cross-compile as normal.
	updated project files are NOT provided, so if you're not using makefiles then be sure to add pr_ext.c r_part_fte.c and fs_zip.c to your project.
	you'll also likely want to add USE_ZLIB to your preprocessor defines, and include zlib, although if you're using just the provided makefiles then this has already been done for you.
	the 'spiked' branding was achieved via the 'make' commandline rather than as a part of the actual source. this was to keep it out of the diffs/source for cleaner diffs.