GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - codenamecpp/carnage3d: Reimplementation of Grand Theft Auto 1 [GTA1]

BranchesTags
Open more actions menu

Latest commit

 

History

616 Commits
616 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
cmake
cmake
 
 
docs
docs
 
 
gamedata
gamedata
 
 
screenshots
screenshots
 
 
src
src
 
 
third_party
third_party
 
 
wasm
wasm
 
 
web
web
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
.travis.yml
.travis.yml
 
 
CMakeLists.txt
CMakeLists.txt
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
TODO.md
TODO.md
 
 
_config.yml
_config.yml
 
 
carnage3d_logo.png
carnage3d_logo.png
 
 
premake5.lua
premake5.lua
 
 

Repository files navigation

Carnage3D

Carnage3D Logo

This is open source Grand Theft Auto 1 remake project.

Build Status Github Stars Platforms License: MIT

Status

Currently it is in very early stage, a progress so far: https://youtu.be/KnqaO0YZzZY

Thanks to modern technologies, it is now possible to play directly in web browser! Try it https://codenamecpp.github.io/carnage3d/web/carnage3D_wasm.html (tested in Chrome v85 64 bits and Firefox v81.0.1 64 bits, will not work in Edge).

Tools and technologies used

  • Box2D
  • cJSON
  • Dear ImGui
  • STB
  • GLM
  • GLFW
  • GLEW
  • OpenAL-Soft

Compiling on Linux

At the moment, makefile configured so project will build with clang compiler.

Before build project make sure to install dependencies:

  • apt install libglew-dev libglm-dev libgl1-mesa-dev xorg-dev clang
  • apt-get install libopenal-dev

Run these commands in terminal:

  • git clone --recurse-submodules https://github.com/codenamecpp/carnage3d
  • cd carnage3d
  • make

Compiling on Windows

You will need Visual Studio 2015 to build the project. Before compile, add system environment variable SDKDIR with path where all the dependencies lives. These dependencies are:

  • GLEW
  • GLM
  • OpenAL-Soft

Configure

Game needs to be configured before launch, there is example config document in gamedata/config/sys_config.json.default - it must be copy-pasted to same directory but withoud ".default" suffix: gamedata/config/sys_config.json .

Most important param there is gta_gamedata_location - it is location of GTA1 gamedata resources.

How To Run

Original GTA1 game resources required in order to play (Full or DEMO). Demo version still available for download https://www.rockstargames.com/gta/extras/demos.html .

It is possible to download and play demo version of the game easily just typing a few commands in console:

  • make get_demoversion
  • make run_demoversion

Note that game must be compiled and configured before this step as described above.

Tested on Ubuntu Linux, Windows 7, Windows 10.

Command Line Params

  • To select specific level to play you can add command line argument -mapname, for example: -mapname SANB.CMP
  • To specify the game data location add argument -gtadata followed by path
  • To enable split screen mode add -numplayers, for example -numplayers 2, max 4 players is supported

Controls

It is similar to original:

  • Arrow keys to walk/drive in directions
  • Space to slide on car
  • Enter to enter or exit car
  • Tab to enable or disable car emergency lights (if it present)
  • Z, X to change current weapon and Ctrl to shoot

When in "Free Look" camera mode, moving with W, S, A, D keys.

In addition there is support of xbox-compatible gamepads. To enable it or change default key bindings create config file gamedata/config/inputs.json (copy-paste template inputs.json.default) and modify it as you wish.

Other GTA 1/2 re-implementations

  • WebGL-GTA
  • OpenGTA
  • GTA2NET
  • WebGL-GTA2
  • GTA2 level viewer
  • gta2.js
  • GTAViewer
  • rust-theft-auto

Screenshots

First test launch on Linux ScreenShot

Split screen test on Windows ScreenShot

About

Reimplementation of Grand Theft Auto 1 [GTA1]

Topics

c-plus-plusgtagta1reimplementationvideo-game

Resources

Readme
MIT license
Activity

Stars

576 stars

Watchers

27 watching

Forks

57 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.