1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-12-25 11:36:26 -05:00
A mirror of the OpenDiablo2 project
Go to file
2018-12-10 00:24:25 -05:00
.github/ISSUE_TEMPLATE Update issue templates 2018-11-22 10:55:19 -05:00
docs Configured CI 2018-11-26 22:42:22 -05:00
OpenDiablo2 More refactoring 2018-12-08 13:31:50 -05:00
OpenDiablo2.Common Forced 'north' map generation. Blood moore boundaries generated. 2018-12-10 00:24:25 -05:00
OpenDiablo2.Common.UT HeroTypeConfig Data Loaded from MPQs (#35) 2018-12-05 22:28:09 -05:00
OpenDiablo2.Core Forced 'north' map generation. Blood moore boundaries generated. 2018-12-10 00:24:25 -05:00
OpenDiablo2.Core.UT Fixed more rule violations 2018-12-08 13:11:52 -05:00
OpenDiablo2.GameServer More refactoring 2018-12-08 13:31:50 -05:00
OpenDiablo2.Scenes Music now loads based on selected level. More map engine changes. 2018-12-09 20:50:52 -05:00
OpenDiablo2.SDL2 Map engine improvements 2018-12-09 18:38:54 -05:00
OpenDiablo2.ServiceBus More refactoring 2018-12-08 13:31:50 -05:00
OpenDiablo2.TestConsole Replaced all system exceptions with OpenDiablo2Exception 2018-12-08 12:08:01 -05:00
.gitignore Initial commit 2018-11-22 00:18:42 -05:00
appveyor.yml Stop adding tags for no reason. 2018-11-26 22:50:51 -05:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-11-22 10:54:08 -05:00
LICENSE Create LICENSE 2018-11-22 00:22:09 -05:00
OpenDiablo2.sln Fleshed out mob management on server. Added player location message frame. 2018-12-01 02:44:40 -05:00
README.md Added client/server architecture support. 2018-11-30 23:37:08 -05:00
Screenshot2.png Updated screenshot 2018-12-08 18:32:14 -05:00
Screenshot.png Added all the characters to the character selection menu 2018-11-23 00:41:39 -05:00

OpenDiablo2 Build status

An open source re-implementation of Diablo 2 in C#

Join us on Discord!
Development Live stream

About this project

This is an attempt to re-create Diablo 2's game engine in C#, and make it cross platform as well. This project does not ship with the assets or content required to work. You must have a legally purchased copy of Diablo 2 and its expansion Lord of Destruction installed on your computer in order to run this engine. If you have an original copy of the disks, those files should work fine as well.

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

This game is a clean-room implementation based on observations of how the original game works. Aside from the data file formats themselves, we have not and will not reverse engineer the original binaries of the game in an attempt to copy or duplicate intellectual property.

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 On Windows

To build this engine, you simply need to have Microsoft Visual Studio 2017 installed with C#/Windows support. Also make sure that only the x64 architecture is selected as we are not shipping 32-bit versions of SDL currently.

Building On Linux

You need to have MonoDevelop installed, as well as any depenencies for that. You also need LibSDL2 installed (installing via your favorite package manager should be fine).

Command Line Parameters

Long Name Description
--datapath (-p) Defines the path where the data files can be found
--hwmouse Use the hardware mouse instead of software
--mousescale When hardware mouse is enabled, this defines the pixel scale of the mouse. No effect for software mode
--fullscreen (-f) When set, the game launches in full screen mode at 800x600.

By default OpenDiablo2 assumes the media files are in the same folder as itself. At minimum you'll most likely want to specify this option:

-p "C:\Program Files (x86)\Diablo II"

Substitute the path with wherever you have installed Diablo 2 and its expansions.

When running via VisualStudio, go to the debug section of the OpenDiablo2 project and specify the command line options there. At minimum you'll want to specify the path to the data files.

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.