PDA

View Full Version : Dungeon Keeper: Remake (By Me!)



Themperror
November 14th, 2018, 15:57
Hello,

I'm currently recreating Dungeon Keeper from scratch ( https://github.com/Themperror/Dungeon-Keeper-Remake ) , I had a thread starting this here: https://keeperklan.com/threads/7003-LDATA-DKWNDXX-DAT-files but that was actually intended to gain some info on a certain file structure.
So I'm formally making my announcement here.

As the title indicates I'm just flat out calling it "Dungeon Keeper: Remake".

It's all done in C++, DirectX11 and XAudio, I'm not doing a conversion step on any files and am reading them as they come with the original game, which meant reverse engineering some files, in which http://www.yoda.arachsys.com/dk/ was a great help, sadly not everything was explained as clearly as I wanted to be, including the now-outdated 16-bit tool programs that were made and therefore don't run anymore, Also did not help that the primitive data sizes weren't mentioned (an int can be 2 or 4 bytes! What is it!?).

Progress is going relatively smooth now, I'm mostly done with the engine stuff itself and have started on some gameplay already (which means imps running around!)

Basically everything up to the menu's is a 1:1 copy of the original game, so everything runs and plays, splash screen, intro video, loading screen and menu!

The levels itself are all being loaded though I haven't configured all the tiles yet (THERE'S SO MANY OF EM), as they nearly all have random texture layouts and situations in which they can differ and I sadly have to manually do each of em. So any black walls just mean it's not implemented yet (but it's there to prevent crashes :P)

Some actual game shots:
https://gyazo.com/fc612558c39289f01447079401983a7f
https://gyazo.com/6d6866421e96f2922c8f306313b4a866
https://gyazo.com/aefebbb79d6613a9e9c2be67f5a84ade

As you can see, at the time of this post I haven't done any in-game entities yet (such as the dungeon heart or torches or the like), but they'll come!

Everything at the moment is obviously still a Work In Progress, so any stuff that's wrong will be fixed and everything that's missing is yet to be added.
This is a pure solo project at the moment so don't expect the entire game to be done soon though I hope to have a majority of the game playable in the coming months.

I'd like to mention that even if you're a programmer that thinks to be a great help, I am not sure I can actually accept it until somewhere after January as this is my bachelor's graduation project, After the "project' has ended though I'll accept any help that comes my way :P.

AdamP
November 14th, 2018, 23:39
I'd love it if you can get this (https://keeperklan.com/threads/5168-Can-this-feature-be-revived) working too? :)

tonihele
November 15th, 2018, 17:19
Great job!

I'm going to be the party pooper here and give you some advice. Well, I got the same advice when I started with OpenKeeper :)

1) Naming... I'm not sure that is it a smart idea to use the term "Dungeon Keeper" in your project name. As EA might be a bit trigger happy with their ip. Cease and desist letters aren't nice to read.
2) "This will NOT be a commercial project, I will not sell it or make money out of it in any form or shape. And in all honesty I haven't even looked at the licenses of the code I have used from the projects I mentioned above, but know that I mean no harm.", no :) Don't be so brutally honest that you haven't looked at the licenses. If somebody is interested in looking these up, this is an invitation for them. And if indeed you managed to violate some, well, not good

I'm saying this with all good intentions, sorry if I sound harsh. That being said... Good luck and it is very nice to have these projects coming up.

Themperror
November 15th, 2018, 18:57
Yeah I've gotten the same advice from other peeps, I'll look into changing a few things.
Thanks though!

Themperror
November 21st, 2018, 17:03
Latest update!
https://gyazo.com/c174a92354f763ca70126251ffe65245

Got the treasury in, the imp tasks for delivering gold and a basic room system. Also first iteration for entities (such as the gold piles)!

dkdd
November 21st, 2018, 21:26
Wow, it's impressive how fast you roll out updates. Will you use all the creature's variables for behavior?

Themperror
November 22nd, 2018, 13:34
When I get to that point yes, I'm intending to use all that creature.txt data

Themperror
December 11th, 2018, 17:05
Have been working on redo-ing the room system, I can now create rooms and remove them, as well on actually implementing textures for them.
So that's all done now.

Current task is implementing the level script files, as they drive a level to actually work, done the basics of it so far. Currently working on getting the first level to completely work!

dkdd
December 13th, 2018, 14:17
Great! Any videos or screens?

Themperror
December 20th, 2018, 11:48
I'll probably make something in the upcoming week if I remember to do so, I'm currently trying to get the basic creature behaviour to work properly, I can already attract creatures from the portal and the level scripts are function for most part, currently still just missing UI for the messages though.
I also decided to take a moment to implement the fog of war that the game starts with.

Currently it looks like this:
https://imgur.com/a/pYVi4JX

Themperror
December 23rd, 2018, 12:48
Creatures are being worked on.. Meanwhile with the fog of war thing going on, I implemented discovering of tiles as well: https://gyazo.com/6c81b6b10aa685fea007c2b39fdb77b9

Themperror
December 26th, 2018, 22:55
Now with more creatures!
https://gyazo.com/ef35551f7f6be89531ba6b0861d306cc

segadorastado
December 30th, 2018, 11:34
What will be the diferene between the remake and the original?

Themperror
January 2nd, 2019, 13:35
Goal of it is to be as close to the original as I can, obviously there'll be minor differences due to undocumented things, but I try to keep those at minimum.

YourMaster
January 2nd, 2019, 14:37
Will you try to emulate/recreate the bugs?

Themperror
January 2nd, 2019, 14:41
I had also been thinking about that, but I'm not sure yet about my answer, I think I would make it an option in a menu to enable/disable original bugs if its feasible to do so.

impboy4
January 2nd, 2019, 19:24
Will this remake be more mod friendly? Not that the original DK1 already is easy to mod for, but I'm talking about more extensive modding.

Themperror
January 8th, 2019, 14:19
I'm keeping mods in mind as in, whatever the original game allowed I -should- as well. Since I only supply a single executable and the rest relies on original game data I don't think I can do much else in terms of supporting mods, perhaps I could check if a certain file exists and use that as additional data but that's all wayy out in the future. I'll see about adding special things after I'm done with the base game :P

Trass3r
January 9th, 2019, 08:10
Impressive development pace.
Alas I've seen plenty of such projects making nice progress and being eventually abandoned over the years. Hope you can keep it up!

Edit: I think NBK was even open source and still died. The entry barrier for contributing is probably too high. I remember CorsixTH succeeding because all the game logic was written in Lua, very easy to tinker with.

Themperror
January 15th, 2019, 19:46
And today marks a major milestone, The first level is completely playable, the script works, very basic combat is in, as is picking up creatures and dropping them, Also spent quite some time on getting the UI in..

It's been a lot of work guys...

kix
January 15th, 2019, 20:00
And today marks a major milestone, The first level is completely playable, the script works, very basic combat is in, as is picking up creatures and dropping them, Also spent quite some time on getting the UI in..

It's been a lot of work guys...

quite impressive

dkdd
January 16th, 2019, 13:02
Any demo or video?

Themperror
January 16th, 2019, 16:08
I'll post a build once I've cleaned up a few things next week. Which should provide some inside in the current state of the project.

segadorastado
January 17th, 2019, 03:40
Post something to see

Themperror
January 25th, 2019, 13:58
https://drive.google.com/file/d/18SQBSiMic773_efGKi3eD7kBEsnKV7zf/view?usp=sharing

This is the latest version so far, dynamic pathfinding (used in combat) is still a bit icky, but in the end it all works for the first level..
Lots of tweaking and fixes to be done to make it feel like the real deal but its all on its way..


Anyhow in other news, I've graduated, the project was a success and I can now accept more developers to help create this DK:Remake, Meanwhile I'm gonna take a short break, set up a proper portfolio and find me a job.

Trass3r
January 29th, 2019, 03:12
Does it work with the GOG version and/or keeperfx on top?

Themperror
January 30th, 2019, 14:05
It works with either the original game or the GOG version, it doesn't modify anything, so as long as you paste it in the game folder you're set.

rainlizard
January 30th, 2019, 20:16
error "XAudio2_9.dll is missing from your computer".
I'm guessing it's Windows 10 only? That's disappointing for those of us sticking to older windows.

Themperror
January 31st, 2019, 15:14
error "XAudio2_9.dll is missing from your computer".
I'm guessing it's Windows 10 only? That's disappointing for those of us sticking to older windows.

It should work for older versions as well as I'm not using anything specific (Win 7 min) , it sounds like you're missing some DirectX Stuff, since DirectX includes XAudio2_9.dll. So try updating that.

rainlizard
January 31st, 2019, 15:40
Direct X 12 is exclusive to Windows 10 so it cannot be updated.
https://docs.microsoft.com/en-us/windows/desktop/xaudio2/xaudio2-versions
"XAudio2 version 2.9 ships as part of Windows 10".
the XAudio2_9.dll file is version 2.9

So I think you need to use XAudio 2.7 in your game instead.

Themperror
January 31st, 2019, 18:11
Ah, good link, So I was using the DirectX SDK that comes with the Windows SDK, though I use D3D11 I didn't think XAudio would also be a problem. However nothing should be stopping you from getting the DLL's separately and trying it out, since XAudio isn't hardware bound or really integrated like DirectX12 is into DWM or drivers.

rainlizard
January 31st, 2019, 18:59
Downloading individual files that are meant for Windows 10 and expecting it to work seems crazy to me, but okay.

Error changes after I place in the relevant dll files:

1884

https://www.dllme.com/dll/files/xaudio2_9_dll.html

1885

https://www.dllme.com/dll/files/api-ms-win-core-synch-l1-2-1_dll.html

1886

now what

Themperror
February 2nd, 2019, 12:26
Heh it was worth a shot, seems XAudio is a bit more tightly integrated than I thought, Lemme see if I can compile a win7 version

-edit

Without making the build process more tedious and me having to fix countless of compile errors that somehow a lower win SDK version gives me I can't seem to compile for win8 (win 7 would require a older Dx SDK installed)..

So for now, I'll keep it at win 10 only then I guess, Wasn't my initial intention but then again win 7 is pretty old and support is ending. No real reason to not switch to Windows 10 for anyone, it behaves the same as win 7 in terms of UI and has more functionality and safety in general.

impboy4
February 2nd, 2019, 19:49
Heh it was worth a shot, seems XAudio is a bit more tightly integrated than I thought, Lemme see if I can compile a win7 version

-edit

Without making the build process more tedious and me having to fix countless of compile errors that somehow a lower win SDK version gives me I can't seem to compile for win8 (win 7 would require a older Dx SDK installed)..

So for now, I'll keep it at win 10 only then I guess, Wasn't my initial intention but then again win 7 is pretty old and support is ending. No real reason to not switch to Windows 10 for anyone, it behaves the same as win 7 in terms of UI and has more functionality and safety in general.

What about 8.1 users? I own a windows 8.1 laptop.

YourMaster
February 2nd, 2019, 22:50
While even though I've updated to win10 myself, I do in fact believe there are many advantages to win7 over win10 as well. However in this case I have to say you're just crazy. I can't think of any advantages of win8, so just do the free update to windows 10.

impboy4
February 3rd, 2019, 02:37
While even though I've updated to win10 myself, I do in fact believe there are many advantages to win7 over win10 as well. However in this case I have to say you're just crazy. I can't think of any advantages of win8, so just do the free update to windows 10.

I disliked how Microsoft forced people to upgrade when it was released in the first place so I do not want any part of it.

Themperror
February 3rd, 2019, 11:19
So yeah with that I'm sorry to announce it'll be win 10 unless someone joins me and will work on getting it compiling for win 7, tbh its not too hard but its just work I'm not willing to do at the moment..

Sarevok
February 21st, 2020, 01:28
Any news on this?

YourMaster
February 21st, 2020, 12:06
He hasn't been on Keeperklan for months. And if you look on the project page, you see he did not work on it for even longer.
Basically, it seems as though when he turned in the initial bit for his school project, he stopped working on it.

Sarevok
February 22nd, 2020, 01:27
He hasn't been on Keeperklan for months. And if you look on the project page, you see he did not work on it for even longer.
Basically, it seems as though when he turned in the initial bit for his school project, he stopped working on it.

Ah, okay. Good thing we have you and keeperfx :_D

Themperror
August 7th, 2021, 09:02
Hey all,

So YourMaster is half right here, after I turned it in I passed my final semester and graduated, however shortly after that I found myself a job porting games and have been pretty much too busy ever since, I haven't done much hobby programming at all since then, even though I'd still like to continue this (and other projects) at some time, last change I did in DK:R was adding support for lights but that was half-finished. Regardless.. due to the rush DK:R was made in (and the shitload of work I had to do in 6 months) the code sadly didn't really reach a good quality level so if anything I'd probably rewrite it from scratch (better).

Dungeon Keeper remains one of my all time favorite games so I'm partly saddened I can't currently continue working on this but besides a full day job and me still wanting to relax it's just not getting done for now..
Maybe at some point in the future.. but I won't promise anything..