1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-11-12 23:43:24 -05:00
A mirror of the OpenDiablo2 project
Go to file
2019-10-31 13:39:05 -04:00
.github/ISSUE_TEMPLATE Update issue templates 2018-11-22 10:55:19 -05:00
Common Added logic in preparation for tile rendering 2019-10-31 13:39:05 -04:00
Compression Added text dictionary. Continued hero select screen work. 2019-10-27 17:24:21 -04:00
Core Automatically use wine prefix base path with default config on linux 2019-10-30 01:09:39 -04:00
docs Simple website stuff. 2019-10-26 16:25:26 -04:00
MapEngine Added logic in preparation for tile rendering 2019-10-31 13:39:05 -04:00
MPQ Added DT1 and LevelTypes. LevelPreset and DS1 still not done. 2019-10-28 17:51:17 -04:00
Palettes Code cleanup. Added basic UI interface types. 2019-10-25 18:40:27 -04:00
ResourcePaths Added DT1 and LevelTypes. LevelPreset and DS1 still not done. 2019-10-28 17:51:17 -04:00
Scenes Added logic in preparation for tile rendering 2019-10-31 13:39:05 -04:00
Sound Added DS1 loading capabilities. Added ability to stop BGM. 2019-10-27 21:35:16 -04:00
UI UI manager fixes. Added map engine test scene. 2019-10-27 19:00:38 -04:00
.gitignore Moved files around to allow running from root path 2019-10-26 17:30:00 -04:00
.travis.yml Added character selection screen. Fixed bugs. 2019-10-26 23:59:27 -04:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-11-22 10:54:08 -05:00
config.json Added volume settings and sfx support 2019-10-26 20:09:33 -04:00
go.mod Automatically use wine prefix base path with default config on linux 2019-10-30 01:09:39 -04:00
go.sum Automatically use wine prefix base path with default config on linux 2019-10-30 01:09:39 -04:00
LICENSE Create LICENSE 2019-10-25 18:47:19 -04:00
main.go Added text dictionary. Continued hero select screen work. 2019-10-27 17:24:21 -04:00
README.md Moved files around to allow running from root path 2019-10-26 17:30:00 -04:00

OpenDiablo2 Build Status

Join us on Discord!
Development Live stream

Main Menu

About this project

OpenDiablo2 is an ARPG game engine in the same vein of the 2000's games, and supports playing Diablo 2. The engine is written in golang and is cross platform. However, please note that this project does not ship with the assets or content required to play Diablo 2. You must have a legally purchased copy of Diablo 2 and its expansion Lord of Destruction installed on your computer in order to run that game on this engine. If you have an original copy of the disks, those files should work fine as well.

Currently we are working on features necessary to play Diablo 2 in its entireity, but will then expand with tools and plugin support to allow modding, as well as writing completely new games with the engine.

We are in the process of moving to a go based engine. We are taking good bits from the original C# base and migrating it over to the new engine code.

Please note that this game is neither developed by, nor endorsed by Blizzard or its parent company Activision.

Diablo 2 and its content is ©2000 Blizzard Entertainment, Inc. All rights reserved. Diablo and Blizzard Entertainment are trademarks or registered trademarks of Blizzard Entertainment, Inc. in the U.S. and/or other countries.

ALL OTHER TRADEMARKS ARE THE PROPERTY OF THEIR RESPECTIVE OWNERS.

Building

To pull the project down, run go get https://github.com/essial/OpenDiablo2

On windows this folder will most likely be in C:\\users\\(you)\\go\\src\\github.com\\essial\\OpenDiablo2

In the root folder, run go get -d to pull down all dependencies.

To run the project, run go run . from the root folder.

You can also open the root folder in VSCode. Make sure you have the ms-vscode.go plugin installed.

VS Code Extensions

The following extensions are recommended for working with this project:

  • ms-vscode.go
  • defaltd.go-coverage-viewer

You can get to it by going to settings Ctrl+,, expanding Extensions and selecting Go configuration, then clicking on Edit in settings.json. Just paste that section where appropriate.

Configuration

The engine is configured via the config.json file. By default, the configuration assumes that you have installed Diablo 2 and the expansion via the official Blizzard Diablo2 installers using the default file paths. If you are not on Windows, or have installed the game in a different location, the base path may have to be adjusted.

Contributing

If you find something you'd like to fix thats obviously broken, create a branch, commit your code, and submit a pull request. If it's a new or missing feature you'd like to see, add an issue, and be descriptive! If you'd like to help out and are not quite sure how, you can look through any open issues and tasks.