Clean-room reimplementation of Half-Life: Deathmatch and Half-Life (Experimental) in QuakeC.

Overview

FreeHL

Clean-room reimplementation of Half-Life: Deathmatch and Half-Life (Experimental).

Similar to FreeCS, this aims to recreate the feeling of the original game. It's designed to work with the content from the CD version of the game. Currently I do not aim to support the Steam version.

Netplay improvements, such as prediction of both player physics and weapon-logic are present.

This is 100% original code, feel free to audit however you wish. No proprietary SDKs have been looked at or taken apart, unlike similar projects.

The engine you want to use to run this is FTEQW (https://www.fteqw.org), which is a project unrelated to this. It just happens to support the file-formats FreeHL needs.

Preview 1 Preview 2 Preview 3 Preview 4

Building

Clone the repository into the Nuclide-SDK:

git clone REPOURL valve

then either run Nuclide's ./build_game.sh shell script, or issue 'make' inside ./valve/src!

Obviously make sure that Nuclide has fteqw and fteqcc set-up for building and that you have some proficiency in QuakeC.

Community

Join us on #freecs via irc.freenode.net and chat.

License

ISC License

Copyright (c) 2016-2021 Marco Hladik [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.

Comments
  • Question: is the project Godot related?

    Question: is the project Godot related?

    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

    opened by me2beats 2
  • Music tracks not available

    Music tracks not available

    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.

    opened by Unargent 1
  • ayy not a issue report

    ayy not a issue report

    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

    opened by MissLav 1
  • Add autobuilds with artifacts

    Add autobuilds with artifacts

    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.

    opened by tyabus 0
  • New game: Falling through the train

    New game: Falling through the train

    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:

    • Install Half-Life (using an old Windows installation for testing purposes) and update to version 1.1.1.0
    • Copy the game directory to a Linux machine
    • Extract http://fteqw.org/dl/fteqw-sdl2-linux64.zip into the game directory
    • Extract https://github.com/eukara/freehl/releases/download/04-18-2021/valve-04-18-2021.zip and copy the contents of the valve-04-18-2021 directory into the game directory.
    • Start the game with ./fteqw-sdl2

    Now I'm wondering: Am I missing something, or is this not implemented yet?

    opened by laenion 1
Releases(08-29-2021)
Owner
ANSI C and QuakeC programmer. I like bringing games to OpenBSD and other architectures. Video-game preservationist.
null
A tool to render half life's collision hulls

Overview This is a tool that computes and renders the collision hulls of GoldSrc maps (BSP version 30), such as Half-Life 1 and Opposing Force maps. T

Cristhian Grundmann 3 Mar 17, 2022
Building Escape is a simple room escape game made with Unreal Engine 4.27 and C++.

Building-Escape Building Escape is a simple room escape game made with Unreal Engine and C++. The main purpose of the game is to find a way to escape

Christine Coomans 2 Dec 13, 2021
A randomizer for Silent Hill 4: The Room, for the GOG version of the game

A randomizer for Silent Hill 4: The Room, for the GOG version of the game. This does not work for the old PC port and probably never will, there is not really a reason to play the old port these days.

Hunter Stanton 14 Nov 21, 2022
Lisp-in-life - A Lisp interpreter implemented in Conway's Game of Life

Lisp in Conway's Game of Life Lisp in Life is a Lisp interpreter implemented in Conway's Game of Life. The entire pattern is viewable on the browser h

Hikaru Ikuta 399 Dec 17, 2022
Reimplementation of the Diablo2 game coupled with patching facilities for modders.

D2MOO - Diablo II Method and Ordinal Overhaul This project is a re-implementation of the Diablo2 game coupled with patching facilities for modders.

The Phrozen Keep 40 Dec 29, 2022
Open-source flog (Nintendo Switch's Golf NES easter egg) reimplementation

This repository is dedicated to flog, an easter egg present on Nintendo Switch consoles, containing various tools and information, which are the result of progressive reverse-engineering of the easter egg.

XorTroll 8 Sep 29, 2022
Free in the Dark, a Alone in the Dark engine reimplementation.

FITD Free in the Dark, a Alone in the Dark engine reimplementation. Long overdue source code update from the version that was released on source forge

null 47 Dec 20, 2022
Humongous Yaga engine reimplementation

linyaga Wrapper for Humongous Entertainment games based on the Yaga engine. Pajama Sam: Life is Rough When You Lose Your Stuff Putt-Putt: Pep's Birthd

Gregory 10 Dec 31, 2022
yuzu is an experimental open-source emulator for the Nintendo Switch from the creators of Citra.

yuzu (Nintendo Switch Emulator) yuzu is an experimental open-source emulator for the Nintendo Switch from the creators of Citra. It is written in C++

null 537 Dec 29, 2022
Experimental Nintendo 64 emulator in C11

shibumi | 渋味 "Shibui (adjective), shibumi (noun) or shibusa (noun) are Japanese words that refer to a particular aesthetic or beauty that is simple, s

Simone Coco 10 Dec 5, 2022
A simple and highly performant Game of Life playground written in C++

Game of Life A simple Game of Life playground written in C++ and OpenFrameworks. Uses hardware-accelerated Compute Shaders on GPU to be highly perform

KineticTactic 6 Nov 15, 2021
conway's game of life algorithm with visualization

This is a visualization program of John Conway's game of life algorithm. It's one of my favorite algorthms and it's super cool to watch it in action. I chose to do do mine recursively.

Taylor Gamache 15 Oct 18, 2022
Conway's Game of Life implemented in C++

Conway's Game of Life A brute force implementation in C++ What's this? Conway's Game of Life is a zero-player game defined by a state of cells either

Ishan Dubey 4 Dec 27, 2021
Data Structures concepts being implemented to build the Game of Life

The Game of Life Data Structures concepts being implemented to build the Game of Life which is a cellular automation devised by the mathematician Jame

Aleezeh Usman 3 Sep 5, 2021
Quality of Life Psych Engine Fork.

ProjectFNF Quality of Life Psych Engine Fork "I Live My Life a Quarter Mile at a Time" - EastDeveloper WARNING: This engine is still very early in dev

null 5 Oct 26, 2021
Game Of Life Implementation in C using Raylib

Game of life Rules The game evolution is determined by simple rules applied on each cells. Any live cell with fewer than 2 live Neighbors dies. Underp

Jonas STIRNEMANN 2 Oct 28, 2021
Game of life, with c code.

Game of Life With C The Game of Life, also known simply as Life, is a cellular automaton. It is a zero-player game, meaning that its evolution is dete

Mohammad Dori 3 Jul 15, 2022
A Conway's game of life program

ConwaysGameOfLife Just Conway's Game of Life. Build $ make clean all Run $ ./main.exe Runtime keyboard function Show mode (default): r : restart the g

LO 2 Nov 13, 2021
Conway's Game of Life art project

Conway's Game of Life art project Arduino TODO documentation Find Optimal Conway's Game of Life is a simulation that follows some simple rules to mani

Andrew Harbick 1 Jan 9, 2022