GithubHelp home page GithubHelp logo

enriquesomolinos / dreerally Goto Github PK

View Code? Open in Web Editor NEW
81.0 11.0 12.0 44.55 MB

Death Rally engine reimplementation

Home Page: http://www.dreerally.com

C 93.05% C++ 6.54% Python 0.42%
death-rally reimplementation racing racing-games dreerally

dreerally's Introduction

Gitter GitHub Actions build status (0.3.x) AppVeyor build status (master) AppVeyor build status (0.3.x)

PRs Welcome Download count GitHub commit activity GitHub contributors GitHub release Dev phase

Dreerally

Death Rally engine reimplementation. To run this game you need the original Death Rally files!.

See details and status in www.dreerally.com and in our wiki https://github.com/enriquesomolinos/DreeRally/wiki

Note, Dreerally requires an original copy of Death Rally for Windows. None of the Death Rally game assets are provided by this project. To get a legitimate copy of the game assets, please refer to the Windows release of Death Rally.

Purpose

The main objetive is to recreate the windows version of Death Rally. Then we will implement multiplayer, mods, port to Linux....

Follow us on Dreerally

Media

DreeRally alt tag alt tag alt tag alt tag

Building with Visual Studio 2010-2017

  • Open the project solution DreeRally.sln, choose Debug or Release, and then Build Solution.

Building under Linux

  • Run make -f Makefile.linux

Installing

Once compiled, the DreeRally binary will serve as a replacement for DeathRally.exe. The following files from the original game need to be present: ENDANI.haf, ENGINE.BPA, fmod.dll, IBFILES.BPA, MENU.BPA, msvcr71.dll, MUSICS.BPA, SANIM.haf, SDL.dll, and TRX.BPA.

In this version you can add a few parameters when you launch dreerally:

  • -nosound: run with no music
  • -noeffect: run with no sound effects
  • -gl: run with opengl render.
  • -smooth
  • -lang=lang(locale): run with a specific locale
  • -mod={modName: run with a specific mod.
  • -window: run in window mode

Multiplayer

At this moment multiplayer is not implemented.

Contributing

Guidelines

Translations

Here is the way to add a new language:

-Create a new file under lang directory, for example langBr.txt. Please, follow this name lang%locale%.txt -Add your entries to this file. You can copy from langEs.txt -Launch dreerally.exe with the parameter -lang=langBr to use your translation. -If everything goes well, please, do a merge request to the project

Modding

Now, you can create mods. Mods are very simple and you need to follow this instructions

  • Create a folder called mods
  • Inside this directory create another one with the name of your mod. I uploaded a mod called 'sample'
  • Create inside 'your mod name' folder a file called config.txt. THe config.txt file contains all thing that can be modded. You need to write the key-value pair that you want.
  • Create a folder files inside 'your mod name' folder.
  • Put your customized Death Rally files in uppercase. Simply name this files equals than the name of the file in Death Rally (for example FACE01.bpk or TR0-ima.bpk).
  • Launch dreerally with -mod='your mod name' parameter.
  • Enjoy dreerally with your custom options and files!

At this moment you can only put your custom files in the root directory of the game. For example if you put MENU.PAL in the root directory, the game will use your custom file and not the original file!.

Credits

  • Reverse engineered by esomolinos in 2016

And a special thanks to all the support and people who work on this project to make it possible! <3

Changelog

From the beginning until release

Tools

  • tools/Bpadecryptor.py: allows to extract the contents of BPA files
  • tools/Music.py: once music.bpk file is extracted, with this script you can decrypt the music files and play with VLC.
  • tools/SavegameDecrypt.py: takes a savegame and decrypts its contents. A tthis moment it's very easy to modify your savegame :)
  • tools/SavegameCrypt.py: takes a decrypted savegame and returns it to the original format. The original death rally must open this file :)
  • tools/Bpkdecryptor.py: takes a BPK file and his Pal file to generate a gif file.

Legal

DreeRally is released to the Public Domain. The documentation and function provided by DreeRally may only be utilized with assets provided by ownership of Death Rally.

DreeRally and any of its' maintainers are in no way associated with or endorsed by Remedy Entertainment(R).

dreerally's People

Contributors

1simo1 avatar enriquesomolinos avatar literalmente-game avatar margen67 avatar neuromancer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dreerally's Issues

Modding

I open this feature request to discuss about modding in dreerally.
i think that modding will be one of the more interesting features of drerally, so its important to know how we are going to do that and what can be do.

Firstable we need to know what can be modified.

For example, in a first phase we can change literals like:

  • number of laps, driver names, car names, car/upgrades/black market things costs
  • money income, rivals upgrades.
  • circuits shown by difficulty
  • drivers that can enter in a race (duke nukem cant enter in the medium race)
  • reuse circuit assets in order to create a new ones based on palettes...
  • Modify race points
  • modify initial driver points
  • modify % of events

Then we can have a new phase to do these things:

  • add more circuits
  • add more difficulty levels
  • add more car types
  • add more drivers
  • add more race types
  • add more drivers to each race
  • add gifts for some new tasks like kill all race pedestrians.
  • modify the driver hability in race (this can be done with the .dat files)
  • add more weapons in the black market

if you have more ideas, please write it here.

Bpkdecryptor

First I would like to say, great work so far.

I have however problems using the bpkdecryptor. It seems that the gif files it generates cannot be opened by any image processor. They are corrupt. Is there a specific reason for this?

Question about procedure to try DreeRally

Hi to all!

I would like to ask if the procedure I followed to recompile and run DreeRally is correct. If so, I will open the issues I found. Thank you very much in advance, Enrique @enriquesomolinos ๐Ÿ˜„

Followed procedure, step by step

  • Downloaded and opened code from branch 0.3.X, in Visual Studio 2019
  • Upgraded Project SDKs and other proprieties from SDK 8.1 to 10 and to new framework
  • Compiled code
  • Copied assets and dlls to exe debug folder
  • (all these step also for release version, which only starts, then quits)

Nintendo Switch

What is required to convert this to NSP install for Switch? the system should be a perfect fit for portable version of Death Rally.

Shop

Colors are wrong
Prices are not displayed
Continue animation is wrong
Text are wrong

Add license file

Is your feature request related to a problem? Please describe.
Please add a license file to this project.

  • Make it easy to identify the license for this project - e.g. GitHub can scan a LICENSE file and include it in the header
  • Better legal protection when a proper license is used (some jurisdictions do not recognise public domain)

Describe the solution you'd like
I suggest Unlicense (https://choosealicense.com/licenses/unlicense/) or CC0 (https://creativecommons.org/share-your-work/public-domain/cc0/)

Copy the license text into a file at the project root like LICENSE, LICENSE.md, COPYING, or COPYING.md

Describe alternatives you've considered
See above

Additional context
See https://help.github.com/en/articles/licensing-a-repository for more info

General:

Separator of characters in all screens are bad!

CarFrame:

The name is shown bad.
THe car color it not shown

Portability

Is your feature request related to a problem? Please describe.
According to the website, one of the stated goals of the project is the possibilty to port Death Rally to other platforms. However, current codebase is strongly coupled with Windows/Visual Studio/MSVC environment.

Describe the solution you'd like
There are several issues which prevent us from being able to compile DreeRally for e.g. Linux. The most obvious one is Windows-specific C functions and headers. They should be identified and replaced with SDL equivalents (if graphics/windowing/GUI related) or with ISO C equivalents (if related to things like e.g. file access). If all else fails, we can use #ifdef macros.

Less obvious issues are non-standard language elements (e.g. I'm pretty sure that some of the #pragmas are MSVC specific and won't work with gcc or clang) and build process. I think that pragmas are mostly used to suppress warnings, which I think is something we could live without. As for build process, it seems simple enough - shouldn't be too hard to make an equivalent Makefile.

Describe alternatives you've considered
Running in Wine, I guess? But I think source portability would be preferable.

Additional context
N/A

Race results:

Colors are bad
Point are not displayed in the correct position
Drivers position is wrong.
User driver name and color are not displayed
User stadistics are not displayed

Linux support?

Hi,

Any plans for linux support of this neat reimplementation?

Thanks!

License screen

The colors are shown bad.
Can't push Esc to return to previous screen
Characters are shown bad
You can erase more characters than you write.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.