From 0ae6d8048be76eb979dae22e39d9a68c746fffda Mon Sep 17 00:00:00 2001 From: Marco Hladik Date: Fri, 27 Aug 2021 12:31:07 +0200 Subject: [PATCH] build.cfg: if BUILD_ENGINEREVISION is 0, build latest. --- build.cfg | 2 +- build_engine.sh | 15 +++++++-- doc/about | 43 ++++++++++------------- doc/faq | 90 ------------------------------------------------- vmap | 2 +- 5 files changed, 33 insertions(+), 119 deletions(-) delete mode 100644 doc/faq diff --git a/build.cfg b/build.cfg index a5cfb3f0..694b9214 100755 --- a/build.cfg +++ b/build.cfg @@ -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 diff --git a/build_engine.sh b/build_engine.sh index e8409cac..161dd5ef 100755 --- a/build_engine.sh +++ b/build_engine.sh @@ -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 diff --git a/doc/about b/doc/about index a1dc8157..46044562 100644 --- a/doc/about +++ b/doc/about @@ -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. diff --git a/doc/faq b/doc/faq deleted file mode 100644 index 3b9e79a0..00000000 --- a/doc/faq +++ /dev/null @@ -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. diff --git a/vmap b/vmap index 44bc8214..31deb496 100755 --- a/vmap +++ b/vmap @@ -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