Carnage3D - [yet another] GTA1 remake project

Talk about top down games, GTA V and other crime games here.
Post Reply
User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Carnage3D - [yet another] GTA1 remake project

Post by jericho » 13 Sep 2019, 18:48

Hi!

I've started this project some time ago from scratch, just for fun, and working on it now in my spare time.
Here first progress, nothing special - walking (no physics now), simple collisions with map, debug ui:
https://www.youtube.com/watch?v=91L_CJ0teEA

My goal is to mimic original game (to some degree), single-player only. No multiplayer is planned for now - its too complicated.

Tools and technologies used - C++11, Visual Studio 2015, GLFW, OpenGL3.2, Dear ImGUI and some other helper librarires.

Current task - adding physics and collision detections. I think Box2D physics library will fit perfectly.
Source code is closed for now, but I hope it will be released some day :)

User avatar
Sektor
Boss
Boss
Posts: 1369
Joined: 04 Mar 2008, 06:51
GH nick: Sektor
Location: GTAMP.com
Contact:

Re: Carnage3D - [yet another] GTA1 remake project

Post by Sektor » 14 Sep 2019, 13:50

Good luck with your project. I hope it gets passed the alpha/beta stage!

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 14 Sep 2019, 21:36

Thanks!
Here little demonstration of how the box2d collision works, exe:
carnage3d_test01.zip
carnage3d test01
(482.88 KiB) Downloaded 17 times
To run this you will need:
1) Microsoft Visual C++ 2015 Redistributable, https://www.microsoft.com/en-us/downloa ... x?id=52685
2) Full version of GTA1 game for windows
3) Hardware that support opengl 3.2
4) Windows 7 preferred

Before launch, edit settings file in gamedata/config/sys_config.json and specify gta1 data location (gta_gamedata_location) and screen params.

I cannot guarantee that this demo will work, but if it does, please let me know.

Btw, press 'C' key for debug panel :)

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 29 Sep 2019, 16:47

Now it open source on github: https://github.com/codenamecpp/carnage3d

User avatar
JernejL
Psycho
Psycho
Posts: 93
Joined: 21 Feb 2010, 22:03
GH nick: RedShirt

Re: Carnage3D - [yet another] GTA1 remake project

Post by JernejL » 01 Oct 2019, 06:36

I checked the code and had good nostalgia moment of my gta1 and gta2 reverse engineering, the code looks good, you did your homework with the file formats, i congratulate you that! Let me know if you have any questions regarding the rest of gta1 file formats (fonts, cmp, g24..) i had my own set of errata on dma documents, so i might be able to help :) Overall this looks like a good start.

As for opengta2 project, you could load gta2 data and gta1 data into a "similar engine", gta1 file formats except for palette weirdness fit into gta2 format well (including car deltas). Even the map slope blocks are identical, just file structure is changed (to clumps).

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 01 Oct 2019, 08:20

Thanks, JernejL!
It would be really great if you share that info! I would add it to project repository if you don't mind :)

I'm afraid that GTA2 is too much for me to handle - even both GTA1 and GTA2 has similarities - but it much more complex task to mix them into one. Maybe some day I'll get to this too :)

User avatar
JernejL
Psycho
Psycho
Posts: 93
Joined: 21 Feb 2010, 22:03
GH nick: RedShirt

Re: Carnage3D - [yet another] GTA1 remake project

Post by JernejL » 01 Oct 2019, 09:39

Actually i'll say that gta2 is easier - the sty files are nearly identical to g24 (same layout of sprites and tiles, better animation support) and file format is better documented - i built a sty tool and it's source code is availible (even tho it's written in pascal - https://gtamp.com/GTA2/gta1-gta2-tool-source-code.7z ).

Map format for gta2 is nearly same as gta1 except better organized into chunks (and files can contain compressed and uncompressed map, compressed map is identical to gta1 ( map grid, columns, blocks pointers ) and uncompressed is 3d array of blocks only ) - i've made converters to convert cmp files to gta2 gmp maps - see https://gtamp.com/GTA2/cmp2gmp.zip

gta2 has same block styles as gta1 with same indexes, plus additional diagonals and partial blocks with highier IDs.

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 01 Oct 2019, 09:51

Formats that's one thing, but I mean that gta2 game is more complex in implementation and requires far more time and effort then I can put into...

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 07 Nov 2019, 06:28


User avatar
JernejL
Psycho
Psycho
Posts: 93
Joined: 21 Feb 2010, 22:03
GH nick: RedShirt

Re: Carnage3D - [yet another] GTA1 remake project

Post by JernejL » 11 Nov 2019, 13:00

Like i wrote on youtube, you are doing good progress :) maybe next step is to add some pedestrians? :)

User avatar
jericho
Mugger
Mugger
Posts: 12
Joined: 09 Sep 2019, 20:03

Re: Carnage3D - [yet another] GTA1 remake project

Post by jericho » 11 Nov 2019, 17:29

Thanks, JernejL !
Pedestrians and cars traffic are on todo list of current milestone (Tier1). It is one of many thing to implement for the next test build.

Post Reply