PDA

View Full Version : [DK2] Map Editor Size Limit



Nocalora
May 5th, 2017, 17:34
As I just recently explored the Map Editors Assembly-space with a Debugger, I easily turned up the 128x128 limit to a whopping 800x800 and I could go even further if I wanted to.

Thing is, did anyone else already release a tool with this kind of upped size-limit or am I missing something here?.
Why has such a Tool not been released publicy already?

[EDIT]: Just hit a rock while having the map size set to 2048x2048, 1024x1024 works out, but for 2048x2048 I have to do some more "special" adjustments for it to work, I might not even be correct on this and it will fail eitherway, gotta try to do the experiment later.

[EDIT2]:
Heres the edited Map Editor: https://openload.co/f/oJzjGulOi_M/DK2-Editor-Pro-SiLENTGATE.7z
(Mirror): http://www45.zippyshare.com/v/ouyBUbCD/file.html
VirusTotal Result: https://www.virustotal.com/en/file/288e814d8b4fc99d81410b712edcf9fed2b493fcefec76ebd1 d336a5e7a604cd/analysis/

all it is is a modified Map Editor executable designed for use to a max of 2048x2048 Maps.
DO NOT USE LARGER MAPS THAN 1024x1024 For this I have also to edit the main game executable, I will do that sometime later if things go well.

Consider this as an Alpha version, as I still did not have an oppurtunity to test it out with many players at once, if you hit any performance hits let me know.


Technical Info:
Map Editor: DK2 Editor pro
Debugger: OllyDebugger
Create New Level mapsize comparisons Somewhere near Address: 004582D6
Resize Level mapsize comparisons Somewhere near Address: 0046502E

damedog
May 5th, 2017, 18:22
As long as yuuge dungeons don't kill the A.I I would love to see this implemented. More community content!

Nocalora
May 5th, 2017, 18:45
Im gonna Release this when I get to playtest it a little bit more tonight with some friends of mine.

I don't want any unwanted side-effects of course.

impboy4
May 5th, 2017, 19:15
The hard limit on map size is 999x999.

Also, the bigger the map; the more memory your computer needs to run the map.

Nocalora
May 5th, 2017, 19:22
The hard limit (without modification) is 128x128, you cannot go further than that in the Map Editor.
WITH modification you can achieve atleast 1024x1024 Maps, and probably a little bit more than that.

And I think in the year 2k17 computers wont have much of a problem handling an old game like DK2

EDIT: I just checked out how much RAM was needed to run a 1024x1024 Map, the results were fancy if you ask me
139,704MB of RAM to run the Process, which is acceptable I think.

impboy4
May 5th, 2017, 19:34
I wouldn't say so sure; not everyone has lots of ram in their hard drive. Besides that, we need more keepers to accommodate the larger maps (five keepers isn't enough)

YourMaster
May 5th, 2017, 19:39
Isn't the problem with DK2 that keeper AI doesn't function well because they need too much space? Sounds like having bigger maps would solve this.

Nocalora
May 5th, 2017, 19:49
I wouldn't say so sure; not everyone has lots of ram in their hard drive. Besides that, we need more keepers to accommodate the larger maps (five keepers isn't enough)

Im quite sure everyone got atleast 2GB of Ram nowadays, and if not, their computer is definitely not a computer suited for normal use. Even Office computers have atleast 2GB just to run MS Word and Apache OpenOffice.

I hate to break it down to you, but sadly Its almost impossible to add another Keeper, I would have to edit INSANE amounts of Addresses and do all kinds of crazy hacks just for simple things working out, Im sorry to say that but it would be better to just re-make the game on a newer Engine than trying to implement advanced features such as a fifth keeper.

Nocalora
May 5th, 2017, 19:50
Heres the edited Map Editor: https://openload.co/f/oJzjGulOi_M/DK2-Editor-Pro-SiLENTGATE.7z
(Mirror): http://www45.zippyshare.com/v/ouyBUbCD/file.html
VirusTotal Result: https://www.virustotal.com/en/file/288e814d8b4fc99d81410b712edcf9fed2b493fcefec76ebd1 d336a5e7a604cd/analysis/

all it is is a modified Map Editor executable designed for use to a max of 2048x2048 Maps.
DO NOT USE LARGER MAPS THAN 1024x1024 For this I have also to edit the main game executable, I will do that sometime later if things go well.

Consider this as an Alpha version, as I still did not have an oppurtunity to test it out with many players at once, if you hit any performance hits let me know.

impboy4
May 5th, 2017, 19:58
Isn't the problem with DK2 that keeper AI doesn't function well because they need too much space? Sounds like having bigger maps would solve this.

Well it depends; remember you can customize the ai to ignore rooms that need expansion.

Nocalora
May 5th, 2017, 20:17
Makes me think, there was an Entities limit in the game, right?

Do anyone of you know the exact limit of Entities/things? I want to try to raise it also.
Theres actually alot of values I'd like to extend, such as creature limits for example.

Metal Gear Rex
May 5th, 2017, 20:18
Neat. I remember finding an old map editor, I think it was just called DK2mapper or something, that allowed for up to 500x500 tiles. I'm not sure why you would need a map of that size though, that's the main thing. The game has problems with too many creatures / traps I guess, I know one of my levels used to crash at the start because there were too many Heroes. It did have 5 Keepers though but they didn't start with anything. That map's size was 90x120. I guess I could have spaced it out more but, yeah at some point it's just unnecessary to make maps that big imo.

Btw, would you be able to change availability of certain configurations in the editor? An example would be how there's two Impenetrable Rock tiles, one of them is normal Impenetrable Rock, the other is a special "Edge of Map" Impenetrable rock that is by default placed around the edges. You can't access it in the editor, which means if you do changes to normal Impenetrable Rock, you can't change the special Edge of Map Impenetrable Rock to match it.

Is this the normal Editor or the Editor Pro that you modified?

Metal Gear Rex
May 5th, 2017, 20:19
Makes me think, there was an Entities limit in the game, right?

Do anyone of you know the exact limit of Entities/things? I want to try to raise it also.
Theres actually alot of values I'd like to extend, such as creature limits for example.

Not off the top of my head. I can try and test it.

impboy4
May 5th, 2017, 20:23
Im quite sure everyone got atleast 2GB of Ram nowadays, and if not, their computer is definitely not a computer suited for normal use. Even Office computers have atleast 2GB just to run MS Word and Apache OpenOffice.

I hate to break it down to you, but sadly Its almost impossible to add another Keeper, I would have to edit INSANE amounts of Addresses and do all kinds of crazy hacks just for simple things working out, Im sorry to say that but it would be better to just re-make the game on a newer Engine than trying to implement advanced features such as a fith keeper.

Well, OpenKeeper is running in a Java engine (I hate Java) and it's really far from complete. Almost impossible is a good thing; it sets up a nice obstacle for programmers to crack their knuckles and defy the odds. It took the first Dungeon Keeper a decade without knowing how to crack it open before Mefistotelis came and made KeeperFX.

Nocalora
May 5th, 2017, 20:35
Neat. I remember finding an old map editor, I think it was just called DK2mapper or something, that allowed for up to 500x500 tiles. I'm not sure why you would need a map of that size though, that's the main thing. The game has problems with too many creatures / traps I guess, I know one of my levels used to crash at the start because there were too many Heroes. It did have 5 Keepers though but they didn't start with anything. That map's size was 90x120. I guess I could have spaced it out more but, yeah at some point it's just unnecessary to make maps that big imo.

First of all: I Know that its certainly not needed to have such huge maps, but who says you need to use it only for 1024x1024 sized maps? There were probably alot of people who got a little bit frustrated when they saw that their favourite map design idea has been flushed down the drain because the map limits too tight, myself included once.


Btw, would you be able to change availability of certain configurations in the editor? An example would be how there's two Impenetrable Rock tiles, one of them is normal Impenetrable Rock, the other is a special "Edge of Map" Impenetrable rock that is by default placed around the edges. You can't access it in the editor, which means if you do changes to normal Impenetrable Rock, you can't change the special Edge of Map Impenetrable Rock to match it.

If I do understand this correctly, you are suggesting that I should try to add the special "edge" variant of the Impenetrable Rock?, Im gonna give it a try, it hugely depends on how the game handles "tiles", it could take some time though, as I firstly need to find the correct Addresses.


Is this the normal Editor or the Editor Pro that you modified?
I used this Map Editor as the main Editor which I then edited with the Debugger: http://keeper.lubiki.pl/html/dk2_tools_mapedit.php


Not off the top of my head. I can try and test it.
I appreciate the help, thanks.

Metal Gear Rex
May 5th, 2017, 20:40
I made a BUNCH of Goblins, surprisingly didn't crash. In total, there were 580 + 4 Imps and a Dungeon Heart on a 128x128 map with nothing but earth, 4 tiles of water to put the Imps in, and the rest is Red Land. The display count was 444 Goblins for some reason. Even when I remove 80 Goblins, there's still 444 Goblins. Oh and the Dungeon Heart is gone, and I can't dispose of Imps by sacking them into the Heart as there is no Heart.

I removed 60 Goblins after that and it displayed 440 Goblins, Dungeon Heart is back. Added 1, 441 Goblins, Dungeon Heart still okay. If I add 4 more Goblins so that there's 445 Goblins, it displays 444 Goblins, and the Dungeon Heart disappears again. If I take a Goblin away and it's at exactly 444 Goblins, it displays 444 and Dungeon Heart is back. If I add a Warlock with exactly 444 Goblins, Dungeon Heart disappears again, and so does the Warlock. If I add a Hero Warlock, and then more Goblins, yeah basically anything past that just fades away. However I tried removing the Imps and that caused the new minions to spawn, but then the game crashed, either because the Goblins fought the Hero Warlock, or the DH tried to spawn Imps.

tl;dr: Seems the limit is 448 Creatures, or 449 or something like that. If there's 449 creatures, including Imps, the Dungeon Heart won't spawn. But if there's 448, the Dungeon Heart will spawn.

Nocalora
May 5th, 2017, 20:42
Well, OpenKeeper is running in a Java engine (I hate Java) and it's really far from complete. Almost impossible is a good thing; it sets up a nice obstacle for programmers to crack their knuckles and defy the odds. It took the first Dungeon Keeper a decade without knowing how to crack it open before Mefistotelis came and made KeeperFX.

You have to understand that you only require one person with atleast Mediocre understanding of Archive Structures (Programming wise) in order to reverse engineer and open up every compressed or uncompressed archive there is in the world.
I think its the fact that theres just alot of people who like to work on bigger projects, like your usual AAA Title, or maybe because the people who actually know how to do this kind of stuff just didn't bother or knew this game at all.
Im very sure if you would supply some samples from the custom archives and file to lets say, sites like ZenHax or Xentax they get (if the people are interested) reverse engineered in a very short time.

But thats that, Its one thing programming stuff in an actual language, its another task to do it in Assembly.

Nocalora
May 5th, 2017, 20:46
I made a BUNCH of Goblins, surprisingly didn't crash. In total, there were 580 + 4 Imps and a Dungeon Heart on a 128x128 map with nothing but earth, 4 tiles of water to put the Imps in, and the rest is Red Land. The display count was 444 Goblins for some reason. Even when I remove 80 Goblins, there's still 444 Goblins. Oh and the Dungeon Heart is gone, and I can't dispose of Imps by sacking them into the Heart as there is no Heart.

I removed 60 Goblins after that and it displayed 440 Goblins, Dungeon Heart is back. Added 1, 441 Goblins, Dungeon Heart still okay. If I add 4 more Goblins so that there's 445 Goblins, it displays 444 Goblins, and the Dungeon Heart disappears again. If I take a Goblin away and it's at exactly 444 Goblins, it displays 444 and Dungeon Heart is back. If I add a Warlock with exactly 444 Goblins, Dungeon Heart disappears again, and so does the Warlock. If I add a Hero Warlock, and then more Goblins, yeah basically anything past that just fades away. However I tried removing the Imps and that caused the new minions to spawn, but then the game crashed, either because the Goblins fought the Hero Warlock, or the DH tried to spawn Imps.

tl;dr: Seems the limit is 448 Creatures, or 449 or something like that. If there's 449 creatures, including Imps, the Dungeon Heart won't spawn. But if there's 448, the Dungeon Heart will spawn.

Thats actually very interesting, seems to me one or more functions of the game just aren't capable of handling that many entities at once.
But I was actually referencing the limit which enables or disables "incoming" new creatures to your dungeon, I know from experience that if you have a certain amount of NPCs on the map, there will be no more new creatures until the amount is reduced.

Metal Gear Rex
May 5th, 2017, 20:47
If I do understand this correctly, you are suggesting that I should try to add the special "edge" variant of the Impenetrable Rock?, Im gonna give it a try, it hugely depends on how the game handles "tiles", it could take some time though, as I firstly need to find the correct Addresses.

No, not add a new tile. The tile already exists. It's an alternative variant of Impenetrable Rock, but it exists as a separate tile. The Editor just made it so it's hidden, I'm wondering if there's any way you can make it visible, allowing for someone to modify it via editor. Adding new tiles would be great too though, lol.

I ask specifically because for my patch, I modified impenetrable rocks for a number of reasons. Mainly, I took away its ability to produce torches and made it so they couldn't support room furniture, in order to add more planning elements to dungeon building and produce dark tunnel potential. However, I noticed that I would run into issues because of that edge of map tile, as it retains the vanilla settings, and I have no way of modifying it from within the editor. My solution was to just wrap another layer of impenetrable rock around the edge of map, which works just fine. But I thought I'd ask because it would add a slight bit of extra flexibility.

Then again, the ability to make bigger maps means that I don't really lose much flexibility with the workaround, so it's not a big deal either way.

Nocalora
May 5th, 2017, 20:51
No, not add a new tile. The tile already exists. It's an alternative variant of Impenetrable Rock, but it exists as a separate tile. The Editor just made it so it's hidden, I'm wondering if there's any way you can make it visible, allowing for someone to modify it via editor. Adding new tiles would be great too though, lol.

I ask specifically because for my patch, I modified impenetrable rocks for a number of reasons. Mainly, I took away its ability to produce torches and made it so they couldn't support room furniture, in order to add more planning elements to dungeon building and produce dark tunnel potential. However, I noticed that I would run into issues because of that edge of map tile, as it retains the vanilla settings, and I have no way of modifying it from within the editor. My solution was to just wrap another layer of impenetrable rock around the edge of map, which works just fine. But I thought I'd ask because it would add a slight bit of extra flexibility.

Then again, the ability to make bigger maps means that I don't really lose much flexibility with the workaround, so it's not a big deal either way.
Oh right, well then it should be even less of an Problem, I'll let you know when I figure out what address to change to unhide it.

Metal Gear Rex
May 5th, 2017, 21:00
Thats actually very interesting, seems to me one or more functions of the game just aren't capable of handling that many entities at once.
But I was actually referencing the limit which enables or disables "incoming" new creatures to your dungeon, I know from experience that if you have a certain amount of NPCs on the map, there will be no more new creatures until the amount is reduced.

It appears to be the very same limit. I added a portal and no creatures would come through. I even made a force generation command and it didn't work. Interestingly, when I tossed a Goblin away, the Forced Generated creature came up instantly, so it looks like it was saved in some sort of que.

I sacked a couple more Goblins and got the portal to summon Goblins normally (since creatures that started on the map don't count against the portal limit) after I built a Lair that had like 450+ tiles. Interesting that the Goblins could still make beds without it crashing, yet the dungeon heart wouldn't spawn if I had too many creatures. Still though, once I hit that limit again, Goblins stopped coming. Didn't even get that little smoke effect that happens just before a creature spawns. I tried Create Imp spell, nope, couldn't generate a minion.

Nocalora
May 5th, 2017, 21:01
Well turns out the actual tiles are not stored in the map editor itself, and theres nothing I can possibly do map editor-wise exclusively, as the tiles most likely also have their properties stored within the same file they get loaded from, that would be "Terrain.kwd" Have to fiddle around with that a bit

impboy4
May 5th, 2017, 21:02
Well if adding new keepers is out of the question; maybe at least find out what makes up the AI both for heroes and keepers.

Nocalora
May 7th, 2017, 17:53
@impboy4
Thats way too time consuming, I'd just recommend people who want to study this games code more to learn some basic things about x86 Assembly and do it themselves, I wouldn't even know where to start to get an idea of how exactly the AI works, I just know simple things.

@Rex: I have found a way to unhide these edge tiles and alot of other hidden tiles by modifying the Terrain.kwd file, they even show up in the config settings, but as soon you "touch" the actual edge walls on the map editor the game will crash (the edge walls which are automatically placed on the map), even when I have found a way to not touch them the game will crash when I want to save it.

The only remaining option for me would be to find the code in the map editor which hides the edge walls in the config selection and "patch" the code out that hides it, gonna let you know when I get some actual progress done though.

impboy4
May 7th, 2017, 19:09
But what's more important; the editor or the game? As MGR repeated to everyone countless times; the game is very unstable and dirty. Improving the editor may be all well and good; but it doesn't change the fact that it won't fix the game itself.

Nocalora
May 7th, 2017, 19:21
Right now im trying to do as much Magic as possible with my skills on the Map Editor but also on the Game itself, like trying to increase the creature limit to 64 and several other limits from 32 to 64 aswell.
The game is a bit unstable, I give you that, but I've seen worse. Aslong you know what to avoid: like tabbing out in-game or clicking on the objectives button in-game in MP it usually goes fine for everyone involved.

Metal Gear Rex
May 7th, 2017, 20:39
@Rex: I have found a way to unhide these edge tiles and alot of other hidden tiles by modifying the Terrain.kwd file, they even show up in the config settings, but as soon you "touch" the actual edge walls on the map editor the game will crash (the edge walls which are automatically placed on the map), even when I have found a way to not touch them the game will crash when I want to save it.

The only remaining option for me would be to find the code in the map editor which hides the edge walls in the config selection and "patch" the code out that hides it, gonna let you know when I get some actual progress done though.

There's more hidden tiles? That's super interesting to me, what did you find?

This is getting more into unknown territory for me but I can say what I do know.

There's another crash that might be similar. For that patch I made, I tried to add new Traps / Doors by modifying the Hero Sentry Trap / Barricade / Steel Door. However, the only way to make those buildable ingame or allow me to place them down in the editor, I had to remove the "Good" label on them, which apparently causes an editor crash under certain circumstances. If I have the Good Player selected and try to select the Sentry Trap / Barricade / Steel Door, it will crash. So it's safe to assume that there's something in the editor trying to find something with the Good label and crashing when it can't. It's possible that changing the hidden flag on that terrain is also messing something up in a similar way, as it's also crashing when highlighting the terrain as you say. It might sound silly but I'm pretty sure the editor was rushed and I know for sure it's unfinished (as amazing as it sounds given its power and flexibility).

I also know that it isn't necessarily obvious what kind of data is in each of those map files. For example, despite there being a Players.kld file, the information on various Keeper settings like what rooms, creatures, etc are available is actually stored in Variables, along with the actual Level Variables data. However, it seems certain data, such as Starting Gold, is not stored within Variables, despite it being tweakable within the same window even. It's possible that something exists in a different file, if you can't find the solution within the editor itself.

I appreciate your effort looking into this.


But what's more important; the editor or the game? As MGR repeated to everyone countless times; the game is very unstable and dirty. Improving the editor may be all well and good; but it doesn't change the fact that it won't fix the game itself.

I have no idea what you're expecting to come out of this, outside of some sort of magical solution to just make DK2 better somehow, which is certainly much easier said than done especially when you're the one saying and not doing. 'Fixing DKII' is actually a huge task. Modifying core aspects of the game like that, especially one like DKII, would produce a lot of side bugs and whatnot that then need fixing. Look at KeeperFX's history for example.

It's much easier and more realistic to just apply small fixes like this here and there to improve the overall experience, rather than taking on the colossal task of 'fixing DKII'. I believe it was Hapuga who said it would be better to just remake DKII from the ground up.

Nocalora
May 7th, 2017, 21:21
There's more hidden tiles? That's super interesting to me, what did you find?
Nothing ground breaking to be honest, its just the tiles you know allready exist in-game.
Heres a list of the things I have been able to un-hide in the kwd:

*RST: Room Specific Tile : Used as tile in a room
*OST: Object Specific Tile : Used as tile in an Object like a Dungeon Heart
*S: Special: Is a tile, that has special properties

RST: Lair
OST: Portal
RST: Hatchery
OST: Dungeon Heart
RST: Library
RST: Training Room
OST:Wooden Bridge
RST:Guard Room
RST:Workshop
RST:Prison
RST:Torture Chamber
RST:Temple
RST:Crypt
RST: Graveyard
RST: Casino
RST: Combat Pit
OST: Stone Bridge

Heres the stuff thats a bit more interesting in my opinion:
OST: Hero Gate [Final]
OST: Hero Gate [Tile] [<Not Used>]
S: Edge of Map
OST: Claimed Vault
OST: Hero Gate [FrontEnd]
OST: Hero Lair
OST: Hero Stone Bridge
OST: Hero Portal

Heres the Picture of them in the editor: http://i67.tinypic.com/2ewh94y.png
*Note: They have all the Water icon because I didn't know what kind of icon to assign them, but its easily doable.

TBH I would love myself some Hero stone bridges xD, although I got the results from the corrupt kwd file I modified, Its highly likely I can un-hide SOME of these tiles and even assign them an proper Icon without them crashing the editor, its just that only some of them have hte potential to crash the editor, a theory of mine is that the editor has some special properties assigned to edge of the map tiles and doesnt see them as normal tiles, so it thinks: WTF? WHAT IS THAT?, but that theory still has to get confirmed.

Metal Gear Rex
May 7th, 2017, 22:46
RST:Crypt

This one interests me a fair bit. I've seen the name Crypt come up in the text strings, and I may have even heard a few mentor voice lines on it, but I always assumed it was an old name for the Graveyard. Seeing it as a separate room has me curious but it could just be an older Graveyard that they didn't want to change for whatever reason and instead created a new ID for the Graveyard remodel. Not gonna set my hopes too high there.


Heres the stuff thats a bit more interesting in my opinion:
OST: Hero Gate [Final]
OST: Hero Gate [Tile] [<Not Used>]
S: Edge of Map
OST: Claimed Vault
OST: Hero Gate [FrontEnd]
OST: Hero Lair
OST: Hero Stone Bridge
OST: Hero Portal

Aren't most of these normal tiles already accessible? There's a map called "FrontEnd3DLevel", this is actually the map for the main menu when you start up the game. I'm sure the tiles are just designed for that, similar to how the Hero Gate [Final] is designed. Hero Stone Bridge is actually just what you get when you select the Stone Bridge while you have Good Player selected, it's another room with the Good flag assigned to it, like the Hero Traps/Doors.

The unused Hero Gate tile also has me curious, I wonder what that looks like ingame and if it's usable.

tonihele
May 8th, 2017, 15:45
Graphically the amount of Keepers is fixed. The keeper colors are fixed in to the textures. There is actually all the meshes for the different players individually. Although these are just simple quads.

We also have hax for the editor:
https://github.com/tonihele/OpenKeeper/issues/272

And also a tool to see any map stuff rendered, no matter if it is really used in-game. Though, results may vary.

Nocalora
May 8th, 2017, 19:08
Graphically the amount of Keepers is fixed. he keeper colors are fixed in to the textures. There is actually all the meshes for the different players individually Seriously?, SERIOUSLY?
Wow, thats a whole new level of lazy.

@Rex:

Hero Stone Bridge is actually just what you get when you select the Stone Bridge while you have Good Player selected, it's another room with the Good flag assigned to it, like the Hero Traps/Doors.
Oh well, Didn't know that. I did never play DK really extensively, just some times when me and my friends wanted to play some good ol games from back then.

tonihele
May 8th, 2017, 20:03
Seriously?, SERIOUSLY?
Wow, thats a whole new level of lazy.


Maybe they didn't have color maps back then. Or they had more ambitious plans to make the 4 keepers a bit unique. Who knows.

impboy4
May 8th, 2017, 21:23
When I opened the Frontend wad; there is an unused Mapcolours.png in the Thumbnails folder which had potential colors for keepers 6 7 and 8 being white, cyan, and orange. War for the Overworld eventually added these colors when it was released.

If you say that the colors are fixed to the textures themselves; would adding a new set recognize the game to use it if a new keeper above 5 was added to a level?

Nocalora
May 8th, 2017, 23:07
As I get to explore more and more, are all possible CMD Arguments for the main exe already known?

Here are they eitherway:

-LEVEL
-Q
-PD
-DDD
-ENGINE
-SOFTWARE
-CHOOSECARD
-PLOAD
-PSAVE
-PQUIT
-PNUMBER
-PNOCAMERA
-PLOADEMOKEY
-NOSOUND
-SOUND
-FPS
-NOFPS
-SPEC
-NOERRORS
-NOMUSIC
-NOSPEECH
-NOINTMOUSE
-32BITDISPLAY
-32BITZBUFFER
-32BITTEXTURES
-32BITEVERYTHING
-SOFTWAREFILTER
-FE3D
-NOFILECHECKSUM
-EHEAP
-DISABLEGAMMA
-HIGHRESTEXTURES
-CHEAPLIGHTNING
-ENABLEBUMPMAPPING
-ENABLEBUMPLUMINANCE
-TEXTUREREDUCTIONLEVEL
-ENABLEARTPATCHING
-LANGUAGE
-CDPATH
-NOSHADOWS
-SHADOWS
-NOMOVIES
-PRELOADRESOURCES
-CHEAT
-NOCHECKSUM
-PMESH
-LOGOOS
-ENABLEFILEPATCHING

YourMaster
May 8th, 2017, 23:32
Yes: https://keeperklan.com/threads/681-Command-Lines-List

Nocalora
May 9th, 2017, 00:08
Sweet

tonihele
May 9th, 2017, 19:09
When I opened the Frontend wad; there is an unused Mapcolours.png in the Thumbnails folder which had potential colors for keepers 6 7 and 8 being white, cyan, and orange. War for the Overworld eventually added these colors when it was released.

If you say that the colors are fixed to the textures themselves; would adding a new set recognize the game to use it if a new keeper above 5 was added to a level?

Probably not. If you manage to find the "switch" from the EXE that turns the limit off. The additional meshes would probably allow it to work then. If we are correct, it is just file naming (player index on the file name). You could just even copy the other meshes and just change the number in the file name to see if you get it working. But who knows, we have our own implementation of the map loading that has nothing to do with the original game.

impboy4
May 9th, 2017, 20:16
Well this just goes to show that cracking and patching the original game is better than remaking it from scratch...saves time that way.

Nocalora
May 10th, 2017, 06:18
I have come to some very nasty and unfortunate problems while testing the DK2 engine with the 1K Maps.

It seems the Game will crash after trying to Spawn "Dungeon Hearts" outside of the original 128x128 Area. I have absolutely no idea why the game would check something as specific as that.
Does anyone have any Idea on what the game tries to accomplish here?

I can imagine that there might be some Constants which would be connected to the 128x128 Limit.
Although I have no idea what those constants are initially set to, it would be a pain to find them.
Means Im required to edit the main exe of the game.

In the meanwhile, could someone try to find out at which exact X or Y coordinate the game won't load a map anymore when the heart is outside of that area?
You would just have to push the dungeon heart of a keeper in a direction until the game nope's out, and you'd have to tell me the direction you choosed and the involved coordinate. (X OR Y, pick your poison)

impboy4
May 10th, 2017, 07:06
Have you tried testing maps below the 1K limit as well? Hearts seem to spawn just fine under the 1K limit.

Nocalora
May 10th, 2017, 19:39
Well yeah, placing the heart at anywhere above 128X or Y is gonna crash the game.

Thing is im having trouble properly debugging the game, does anyone know why exactly the game crashes when you attach a Debugger to it and run it to the MP Creation menu and then create a session?
Im having a hard time to believe the game has any other safety mechanisms other than SafeDisc(which is cracked on my end)

EDIT: So, some progress now due to the debugger now working mostly (I Just switched to standard skirmish Mode to test the maps) and have found out the Game crashes right after it encounters Address 004DA261

My best guess its the value it tries to get a number from "6EE540" is somehow incorrect due to the map size being a different max value than expected, gotta see how "6EE540" much is involved in the game overall and see what it actually does, or have.

tonihele
May 10th, 2017, 20:55
If it is not checking anything... It could be that the location is just an signed byte :)

Nocalora
May 11th, 2017, 13:53
Yeah, I guess its one of the possibilities.

Nocalora
May 11th, 2017, 19:46
Alright, I give up with the Dungeon heart thing. I have spent 3 days now trying to get the game to understand on how to spawn a dungeon heart out of the usual 128x128 tiles, but I just can't get it work, lets say I was desperate enought to change Register types and use loads of code caves in order for that to happen, but it still did not work out.

A Theory which I had just before was that maybe its the NPC's fault, I thought the game just couldnt handle npc's above the 128x128 limit, but that theory got busted pretty quick. The game has NO problem running and spawning anything above the 128x128 blocks, but if you tell it to spawn the dungeon heart the game will nope out.

I tried my best, but hey. This just means map makers have to somehow squeeze the hearts somewhere in the 128x128 blocks and creatively block them fairly out from each other using maybe impenetrable walls or something, idk. Surely enough im creating a 1K Map and it might get released too if I don't encounter new problems.

It might be that I find some solution in the future, but im certainly not confident enough to say that for certain. Atleast I have some other projects that I still want to try to work out in DKII's exe.

EDIT: The best I got working was a Dungeon Heart where itself and the area it takes up was completely BLACK, and if another keeper had one heart also out of the 128x128 blocks area, it would show up as Fog of War regardless if you stand right infront of it or not.

The Imps also do not recognize the heart as an object, so they wont bring gold to it.

impboy4
May 11th, 2017, 20:39
If the hearts always have to be within 128x128 limits; then how come a 256x256 map runs fine with hearts at the corners of the map?

Nocalora
May 11th, 2017, 20:54
How- the... wat. I may have to re-check something

tonihele
May 12th, 2017, 17:37
And share the maps please :) I can benchmark OpenKeeper. We have no limits.