build.cfg: if BUILD_ENGINEREVISION is 0, build latest.

This commit is contained in:
Marco Cawthorne 2021-08-27 12:31:07 +02:00
parent d08bc865d8
commit 0ae6d8048b
5 changed files with 33 additions and 119 deletions

View File

@ -25,7 +25,7 @@ BUILD_IQMTOOL=1
# Build the imgtool which analysis images and compresses them for GPUs
BUILD_IMGTOOL=1
# Specify which engine revision to build, these are considered 'stable'
# Specify which engine revision to build, these are considered 'stable'; 0 = latest
BUILD_ENGINEREVISION=5997
# Whether or not to run 'git pull' or 'svn up' before building a component

View File

@ -68,7 +68,13 @@ if [ -f "$FTE_MAKEFILE" ]; then
if [ "$BUILD_UPDATE" -eq 1 ]; then
printf "Engine is present, updating...\n"
cd ./src/engine/
svn -r $BUILD_ENGINEREVISION up
if [ "$BUILD_ENGINEREVISION" == 0 ]; then
svn up
else
svn -r $BUILD_ENGINEREVISION up
fi
cd ./engine
else
cd ./src/engine/engine
@ -76,7 +82,12 @@ if [ -f "$FTE_MAKEFILE" ]; then
else
printf "Engine is NOT present, cloning...\n"
cd ./src/
svn -r $BUILD_ENGINEREVISION checkout https://svn.code.sf.net/p/fteqw/code/trunk engine
if [ "$BUILD_ENGINEREVISION" == 0 ]; then
svn checkout https://svn.code.sf.net/p/fteqw/code/trunk engine
else
svn -r $BUILD_ENGINEREVISION checkout https://svn.code.sf.net/p/fteqw/code/trunk engine
fi
cd ./engine/engine
fi

View File

@ -1,21 +1,23 @@
About Nuclide
The Nuclide project produces a freely available game-logic component and
development platform on top of FTEQW.
Our goals is to create a modern research base for new advancements, features
as well as support games whose formats are supported by FTEQW but their code
isn't freely accessible.
development platform on top of FTEQW; which is the engine we use.
Our goals is to create a modern research base for new advancements, as well
as to have a stable base with a good API for games.
- Client-side predicted movement and inputs for things like weapons-systems
- Lots of well documented objects to use in level formats supported by FTEQW
- Reference implementations for a lot of features exlusive to FTEQW compared
to other idTech engines
- Designed to be familar to developers who're used to GoldSrc and Source engine
projects
1. Why might I want to use it?
Nuclide is for you when:
- You want to play one of our supported games on the platform/arch of your
choice.
- You want to develop a game using a lot of complex and well-tested objects
we have written for you.
- You want to make modifications for a game we support and have full control
over what you can do.
You want to develop a game using a lot of complex and well-tested objects
which might be tedious to implement on your own.
You want to run or make modifications for a game using Nuclide and need full
control over what you can do.
2. How free is Nuclide?
@ -25,17 +27,8 @@ instead uses a ISC-like license. This means you can use, copy, modify and
distribute the code and work resulting from it for any purpose.
Please read the very short 'license' document for details.
3. What is the release cycle?
3. What are the alternatives?
At the current moment, there is no strict release cycle as everthing is
still very early (albeit usable). I am aiming for a stable release cycle of
every 3-6 months once we leave Beta.
4. How can I support the project?
Currently, the only way to support the efforts of the one-man-team behind
this, is to use https://www.paypal.me/eukara/
It was only possible for Nuclide to get this far because of the contributions
of single individuals from the free-software community.
Thanks you so much, everyone who has contributed!
Implementing systems such as prediction, complex map objects and entities on
your own or licensing another engine such as Source that ships with its own
Source SDK Base.

90
doc/faq
View File

@ -1,90 +0,0 @@
NUCLIDE FREQUENTLY ASKED QUESTIONS
Q: Why does this project exist?
A: I wanted a free variant of the best version of Counter-Strike in 2016 as
as I was preparing to move away from x86 hardware and moving to other
operating systems that could never run Wine/Windows software.
So I decided to 'put my money where my mouth is' and write a small
game-logic re-implementation of CS. It grew from there.
In the end, I aim to support more mods. Including Half-Life.
A lot of the codebase I also use in my commercial game, The Wastes.
Due to the free license on this codebase, so can you.
Q: Can I help at this moment?
A: It depends. If you've got crashes etc. to report that are really bad
and not documented, feel free to report them. I know what needs doing and
it'll get done in time.
But then there's little things, like - getting the firing rate of a weapon
just right. I do not look at decompiled code. I do not look at leaked code.
if you can research the exact values of some low-hanging fruit like that,
feel free to tweak the values and send me a diff or tell me what needs to be
changed on IRC.
If a crash to console happens, it's most likely my bug. If the whole engine
comes crashing down, it's FTEQW's fault. Not mine.
FREECS SPECIFIC:
Q: It doesn't work with my Half-Life/Counter-Strike version.
A: This is designed for the disc version of Half-Life, released before Steam.
Supporting both is a bit annoying right now. I might add support for the
Steam UI one day. Just right now it's in an alpha-stage where yes, most DOES
work, the backend is constantly changing still and I can't afford to support
all these things at once.
Q: Why Counter-Strike 1.5? Not any earlier/later version?
A: The best and last free to distribute version, no shield, no gambling.
Q: Can I connect to 1.5 servers using FreeCS?
A: The protocol is different. While it would not be impossible to do, there
is no intention in doing so. 1.5 is a dead game server wise, the protocol
is complete garbage and we'd lose a bunch security benefits and fixes by
attempting to be compatible. It's pointless. I can crash a 1.5 server/client
within seconds - you want me to re-implement that too?...
Q: How about CS:S?
A: One thing at a time.
Q: What's it with support for 'valve', 'scihunt', 'tfc', 'rewolf', 'gearbox'?
A: Other mods. They do kinda keep the codebase in check too, since
there's a lot of shared code between them and they do help keep specifics
into their own source tree.
Q: [insert thing here] isn't 100% exact as in the original 1.5.
A: Sometimes bugs get fixed, sometimes very minor details get streamlined in
order to get more work done in other areas. FreeCS will most likely never
be done in that accuracy aspect, but it'll get better with time.
Feel free to contribute when it comes to low-hanging fruit like tweaking
variables! Trust me, plenty of people come and go and they seem to be really
distressed when a weapon damage is off by few hitpoints. I know.
Q: Why do this when you can just run a VM?
A: FreeCS isn't just making CS more portable. It also fixes bugs. It optimises
the netcode greatly. It's got much better lag compensation and client-side
player and weapon prediction than CS ever did. Yes, even the Steam version.
Q: I still don't get it - why not play CS on Steam?
A: This is clearly not intended for you, then!
Q: Will you make Nuclide's supported games available on Google Play?
A: No. If you can manually copy over the content (that I legally cannot and will
not ever distribute with the project) onto your internal phone/tablet memory
then you can also install FTEQW's official .apk - which may I remind you is
a completely different project entirely.
DEVELOPMENT:
Q: Is FTEQW a GoldSrc replacement?
A: No. It is not aiming to be anything like that. FTE has been around for
longer (in parts) than even GoldSrc has. It's just a QuakeWorld engine
that supports an whole lot of formats.
You can easily make very modern games with it too. It's not limited like
GoldSrc and Source in terms of rendering as it's fully accessible.
Q: X#sh3D? Why not use that instead of FTE QuakeWorld?
A: There are enough GPL violators around, I do not need to contribute to that
cesspool. 'From scratch' my a$$. Ironically, that project took code from
FTEQW going all the way back to the late 2000s. Do not support it.
Q: Make a wiki/discord/youtube/twitter/facebook etc. and spend time on
maintaining that, instead of working on the project, to build 'hype'.
A: I'm sure you are the first one to suggest such an idea... No thanks.

2
vmap
View File

@ -34,5 +34,5 @@ if [ "$VMAP_NOVIS" != "1" ]; then
fi
if [ "$VMAP_NOLIGHT" != "1" ]; then
"$SCRPATH"/bin/vmap -light -custinfoparms -fs_basepath "$SCRPATH" -v -fs_game platform -bounce 8 -samplesize 8 -threads $BUILD_PROC -shade -shadeangle 60 -patchshadows $*
"$SCRPATH"/bin/vmap -light -custinfoparms -fs_basepath "$SCRPATH" -v -dirty -fs_game platform -bounce 8 -samplesize 8 -threads $BUILD_PROC -shade -shadeangle 60 -patchshadows $*
fi