eukara / freehl Goto Github PK
View Code? Open in Web Editor NEWClean-room reimplementation of Half-Life: Deathmatch and Half-Life (Experimental) in QuakeC.
License: ISC License
Clean-room reimplementation of Half-Life: Deathmatch and Half-Life (Experimental) in QuakeC.
License: ISC License
Hi cool project!
Is the project somehow related to Godot Engine?
Sorry for asking it in issues (I don't use Matrix)
PS: asking it because I saw this link in a (inofficial) Godot digest
just wanted to say keep up the good work
really hope this gets finished since i would love to work ona LibreHL project for replacing the full game assets with libre BSD3 assets
I would like to request the addition of a software renderer for FreeHL in the future, as well as an Appimage binary for ease-of-use and better maintenance.
The first request may seem a tad strange, after all GPUs are prevalent nowadays especially if you are a serious gamer, however software rendering has numerous advantages (and disadvantages), though from my point of view its advantages prevail. Firstly I will admit that it's much slower than GPU graphics -- GPUs are designed to perform graphics-specific operations very quickly and, more importantly, they can process many pixels (and other elements) in parallel, while a CPU has to compute pixels sequentially one by one and that in addition to all other computations it is otherwise performing. This causes a much lower FPS count. For this reasons SW rendering is also normally of lower quality (lower resolution, nearest-neighbour texture filtering, ...) to allow workable FPS. Nevertheless thanks to the ginormous speeds of today's CPUs, simple fullscreen SW rendering can be pretty fast on PCs and achieve even above 120 FPS on older renderers found in Quake and Unreal; on slower CPUs (typically embedded hardware) SW rendering is usable normally at around 30 FPS if resolutions are kept small.
On the other hand SW rendering is more portable, as it can be written purely in a portable language such as C, is less bloated, and eliminates the dependency on GPUs so it will be supported almost anywhere as every computer has a CPU, while not all computers such as embedded devices have a GPU (or, if they have it, it may not be sufficient, supported or have a required driver. SW rendering may also be implemented in a simpler way and it may be easier to deal with as there is e.g. no need to write shaders in a special language, manage transfer of data between CPU and GPU or deal with parallel programming. SW rendering is the "KISS" approach (Keep It Simple Stupid)
This is what I understand from my research, and I feel it would be useful for the long-term health of this project. To ensure FreeHL is made as portable and flexible as possible.
I think it should be very easy, just downloading/compiling fteqcc and running make.
If you're interested, here is my recommended list of CI's:
Appveyor
GItlab CI
Github CI
Thanks.
Half-Life music tracks are no longer available on YouTube. You need to replace them with others or remove them from the Shareware installation script.
Is it normal for this error to happen?
sudo ./build_game.sh valve
cd client && make
make[1]: se entra en el directorio '/home/bondi/juegos/nucleico/valve/src/client'
fteqcc progs.src
Source file: progs.src
progs.src:1: warning: Unknown target 'fte_5768'. Ignored.
Outputfile: ../../csprogs.dat
************ ERROR ************
Couldn't open file src/shared/fteextensions.qc
Error in progs.src on line 10
make[1]: *** [Makefile:4: all] Error 1
make[1]: se sale del directorio '/home/bondi/juegos/nucleico/valve/src/client'
make: *** [Makefile:4: all] Error 2
Hello,
I think this project would benefit from a very short video in the README to show the progress of the project.
Best regards.
When trying to play either the German CD version or the English "Day One" Demo (installed via the launcher), the player will just fall through the train when starting a new game, resulting in an immediate death. It seems the player isn't moved together with the train.
What I did:
./fteqw-sdl2
Now I'm wondering: Am I missing something, or is this not implemented yet?
this is on Arch...
$ ./freehlded-bootstrap.sh
Cloning into 'REWise'...
remote: Enumerating objects: 44, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (43/43), done.
remote: Total 44 (delta 20), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (44/44), 49.22 KiB | 462.00 KiB/s, done.
Resolving deltas: 100% (20/20), done.
mv: cannot stat 'rewise': No such file or directory
i'm using the 02-07-2023 binaries and i noticed when i got to the weapons part of the training course, i had no crosshairs and the option in the advanced controls is always disabled when i restart the game
if i set crosshair "1" in the cfg, the setting is saved, but i still have no crosshairs
i'm noticing other settings are not always saved either
do you know what version of the ISO/game is the script looking for?
when i search the interwebs for the checksum in the script, the only result is this repo and "official" copy on archive org results in 'checksum mismatch'
Once the Half-Life original game is playable could support be added for opposing force and blue shift especially for the data discs versions?
maybe i don't have things in the right place???
current folder hierarchy is...
/source/cstrike/
/source/platform/
/source/valve/
/source/default.fmf
/source/fteqw64
$ ./fteqw64
Binary is located at "/storage/Downloads/FreeHL/valve/"
couldn't exec masters.lst
couldn't exec cvars.cfg
Couldn't load plugin ffmpeg
couldn't exec autoexec.cfg
Engine Version: FTE build Jan 15 2023
Setting fullscreen windowed OpenGL
Found monitor HDMI-A-0 1920x1080 0,0
GL_VENDOR: AMD
GL_RENDERER: AMD Radeon Vega 11 Graphics (raven, LLVM 15.0.7, DRM 3.42, 5.15.91-1-MANJARO)
GL_VERSION: 4.6 (Compatibility Profile) Mesa 22.3.4
Mesa detected, disabling the use of glsl's invariant keyword. This will result in z-fighting. Use '+set gl_blacklist_mesa_invariant 0' on the commandline to reenable it (but you will probably get glsl compilation errors from your driver).
Initiating OpenAL: OpenAL Soft.
AL_HRTF_STATUS: DISABLED.
OpenGL renderer initialized
------- Half-Life Initialized -------
==============================================================================
Copyright (c) 2016-2022 Marco Cawthorne <[email protected]>
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
==============================================================================
loaded font definition for fonts/fontcon.font
loaded font definition for fonts/menu_label.font
loaded font definition for fonts/menu_main.font
loaded font definition for fonts/menu_label_bold.font
loaded font definition for fonts/menu_header.font
Couldn't load plugin 2
--------- Initializing Server-Module ----------
--------- Initializing Plugins ----------
no plugins.txt found.
--------- Initializing SoundDef (SERVER) ----------
allocated 26624 bytes for soundDef
SoundDef initialized.
--------- Initializing PropDefs (SERVER) ----------
allocated 6656 bytes for prop data.
allocated 1024 bytes for breakmodels.
PropData initialized.
no soundDef found for sfx_impact.rock
sfx sample player/pl_snow1.wav does not exist!
sfx sample player/pl_snow2.wav does not exist!
sfx sample player/pl_snow3.wav does not exist!
sfx sample player/pl_snow4.wav does not exist!
sfx sample player/pl_sand1.wav does not exist!
sfx sample player/pl_sand2.wav does not exist!
sfx sample player/pl_sand3.wav does not exist!
sfx sample player/pl_sand4.wav does not exist!
--------- Initializing Server Entities ----------
--------- Initializing SentencesDef (SERVER) ----------
SentencesDef initialized with 1043 entries.
--------- Initializing World ----------
--------- Respawning Server Entities ----------
--------- Setting New Level Parameters ----------
client Player connected
Wrote /storage/Downloads/FreeHL/valve/valve/game.cfg
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.