Giter Club home page Giter Club logo

Comments (11)

 avatar commented on April 27, 2024 6

That can be seen as a mid-long term goal, however:

(...) to reverse the user interface (DiabloUI) to help make Diablo cross-platform.

The title-screen/UI code has not yet been reversed, but even then it's probably useless. It uses a dialog system which is specific to Windows and causes the black screen issues under Wine. That code will have to be decompiled and re-written (as with the PS1/MAC port). The Hell 2 looks like it accomplished this, but it's unlikely the author would share the source.

Other than that and network code, @mewmew has a Smack32 video decoder written in Go, and StormLib will replace the storm.dll. So it's just a matter of replacing the DirectX calls with OpenGL ones.

(Personally I think Diablo looks better under Wine, OGL shaders are much smoother 😛 )

from devilution.

 avatar commented on April 27, 2024 1

I think this is possible I did some work with this back in 2004..... I will cross my fingers and see if I can find any sources lying around.

from devilution.

mewmew avatar mewmew commented on April 27, 2024

@mewmew has a Smack32 video decoder written in Go

The Smacker video decoder is very much in the early works. With a Hackathon or two it may be done, but for now it is not usable.

from devilution.

baszczewski avatar baszczewski commented on April 27, 2024

There is few D1 open source variants. For example on early stage is Freeablo:
https://github.com/wheybags/freeablo
Maybe you can use something for new UI from this project?

from devilution.

 avatar commented on April 27, 2024

@baszczewski Freeablo is indeed a very impressive project. However, as it's a rewrite, the code would need an overhaul to work with the original game. Last I heard the UI was actually still unfinished, and Wheybags had planned on implementing it later on. That was circa-2015, though...

from devilution.

pengyz avatar pengyz commented on April 27, 2024

Freeablo now use nuklear as it's ui library.
It's a simple and header-only imgui library written in ANSI C and rendering with OpenGL backend.
@galaxyhaxz I don't if it helpful for this project.

from devilution.

 avatar commented on April 27, 2024

@mewmew Looks like we won't need a video decoder: Rad Video Tools

I think once we get Diablo running on linux, we could make a script which will convert all assets in the MPQ to open source formats. The script could use the Rad tools to convert the .smk to an open source format. Then repack everything back up into a .zip format, so we don't need the MPQ library at all!

from devilution.

mewmew avatar mewmew commented on April 27, 2024

@mewmew Looks like we won't need a video decoder: Rad Video Tools

That's great! Just have to find a suitable format to convert it to.

The requirements for a video format, as I see it is:

  • Open source decoders
  • Open (and royalty free) specification
  • Lossless (both audio and video)

I think once we get Diablo running on linux, we could make a script which will convert all assets in the MPQ to open source formats. The script could use the Rad tools to convert the .smk to an open source format. Then repack everything back up into a .zip format, so we don't need the MPQ library at all!

Definitely! This is something @7i and I have discussed for a long time, that any remake of Diablo should have a pre-process step that converts all of the original game assets to modern file formats with open specifications.

This is the approach taken by spark to add Diablo 1 game assets to the FLARE game engine. For reference, see the opensourceami scripts.

This is also one of the objectives of Djavul:
2. Convert the original game assets to file formats with open specifications (subproject formats).

More specifically tracked by the formats subproject.

from devilution.

sskras avatar sskras commented on April 27, 2024

As read in the comment in MyAbandonware, I feel it would be nice to have the mobile (Android) version of it too=)

LIL LORRIR 2018-06-26 0 point Windows version

I loved the original Diablo game on Sony Play station then later on my computer. I would love to be able to play it on my phone also.

Though I do not play games on Android + have no idea whether a phone is suitable for an ARPG.

from devilution.

sskras avatar sskras commented on April 27, 2024

@galaxyhaxz,

(...) to reverse the user interface (DiabloUI) to help make Diablo cross-platform.

(...) That code will have to be decompiled and re-written (as with the PS1/MAC port). The Hell 2 looks like it accomplished this, but it's unlikely the author would share the source.

why would TH2 have to reverse this dll? I haven't been using TH2 (or any mod at all), hence my curiosity.

The author seems to be friendly, BTW:

Contact me regarding the mod via email: [email protected]
Please don't be shy or afraid to write me. If you have any questions or want to tell me something,
go ahead and do that right away. It's OK really. I always answer emails.

Some people could become even his Patreon supporters (eg. me) if that would help sharing the source (given it exists).

from devilution.

 avatar commented on April 27, 2024

This will be handled via https://github.com/diasurgical/devilutionX

from devilution.

Related Issues (20)

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.