[Release] BoulderCaves+, a Krissz Engine compatible remake

Everything about the modern clones and remakes.

Moderator: Admin

zsom
Member
Posts: 84
Joined: Sat Apr 10, 2010 5:46 am

Post by zsom »

Thank you for your answer.
I am most pleased that Bouldercaves + will work under Windows 10.
Will it be possible to create entire games in the editor?
or will it only be possible to play single caves, like on the Krissz website?
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

zsom wrote:Thank you for your answer.
I am most pleased that Bouldercaves + will work under Windows 10.
Will it be possible to create entire games in the editor?
or will it only be possible to play single caves, like on the Krissz website?
It should be possible to play a complete cave set, though there's currently no provision to make one in the bundled editor (I may try to figure out a way to do that later). Still, if you make a BDCFF compilation of several caves in a set, BoulderCaves+ will be able to play those sequentially like a full game :)

- Agetian
altermaven
Member
Posts: 53
Joined: Sat Apr 24, 2021 6:26 pm
Location: Pennsylvania, USA
Contact:

Post by altermaven »

Chris Neilson wrote:What happened with Krissz website?
It is still available, however, the author only desires to express compatibility with the typical Krissz engine, especially when it comes to handling objects through borders, and potentially allowing for wrapping scrolling (??) through these. Nonstandard cave dimensions have been used in a few projects already (GDash is one of these).
Creativity is chemistry. Alchemystics Design.
User avatar
Chris Neilson
Member
Posts: 33
Joined: Wed Aug 29, 2007 2:53 am

Post by Chris Neilson »

Yeah

Krissz engine when release?
Boulder Dash Construction Kit
Crazy Light Construction Kit
GDash <> XDC-engine
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Chris Neilson wrote:Yeah
Krissz engine when release?
My compatible clone (BoulderCaves+), which should be able to play many, and hopefully (eventually, at least) most, caves made for Krissz Engine, should be released at the end of the year :) I'll try to make it ready for the Christmas season. If I somehow end up missing this deadline, I'll make the release in early 2022 (January) at most.

By the way, speaking of this release... I would like to ask if any of you guys are OK with me bundling some of your converted caves with BoulderCaves+. I converted a few dozen caves by now, most of them by Arno, Dustin, and Altermaven, and a few of them are currently a part of the bundle. Of course, I take absolutely no credit for the caves, and each cave has a correct author affiliation listed in the BDCFF file (and displayed in game when the cave is loaded). However, if any of you are critically against your caves being distributed with BoulderCaves+, please let it be known to me, and I will avoid including any caves you don't want to see released publicly in BDCFF format with BoulderCaves+.

Also, conversely, if any of you would *like* to see a specific cave you made as a part of BoulderCaves+ release, please also let me know. I take requests for conversion and inclusion with BoulderCaves+ (with full credit for the cave given to the author, of course). However, since I no longer have access to Krissz Engine website (as explained above), you would most likely need to provide me with a cave image and parameters so that I can properly convert it and include it with the game, unless I happen to have a cave snapshot or image already from Arno's set or from the semi-cloned cave images I made.
altermaven wrote:Nonstandard cave dimensions have been used in a few projects already (GDash is one of these).
Yes, very true - I actually explored the question of compatibility of Krissz Engine caves with GDash at length by now, and surprisingly, many of the things are either supported or can sort of work with a workaround in the form of a compatible parameter set (e.g. border wraparound + no line shift in GDash more or less equals open vertical border in Krissz Engine). All the elements except for the Light Boulder are in GDash (of course, Light Boulder is very popular with Krissz Engine cave authors, so GDash is, therefore, not very compatible with that absolute majority of caves that use this boulder). When it comes to cave sizes, GDash supports a wider array of caves when it comes to nonstandard sizes than e.g. the C64 engines can support, but ironically, it shows problems when working with small caves, such as Dustin's CSO series. In GDash, at least in my experience, these caves are "clipped" at the bottom (or sometimes at the top), making it impossible to navigate the areas closer to the border reliably. Not sure if maybe I'm missing some kind of a toggle or a parameter, but so far, smaller caves seemed quite incompatible with GDash.

- Agetian
User avatar
Chris Neilson
Member
Posts: 33
Joined: Wed Aug 29, 2007 2:53 am

Post by Chris Neilson »

Agetian wrote:Alright, today's report is going to be a rather interesting one. Unfortunately, as of yesterday, I lost access to the Krissz Engine website, and I know I did because of my own silly actions - while experimenting with my cave converter, I tried to automate the download of some of the cave images from Krissz's website, and not only I actually failed in doing so (and, quite obviously, I shouldn't have attempted it in the first place), I also accidentally left the downloader going, which probably caused lots of automated requests to the server which grabbed a lot of index pages. I admit this was stupid of me, and I got carried away in my experimentation. I already apologized to Krissz privately, but I have no idea if my apology will be accepted or if I will ever regain my access to the website. Thus, on top of that, I would like to also apologize publicly here, and I would like to assure Krissz and the community that I did not have any malicious intentions in doing what I was trying to do. I hope that I can be pardoned for it eventually, but if not, I'll just have to accept being banned.

- Agetian
What happened with krissz website? image or cave?
Boulder Dash Construction Kit
Crazy Light Construction Kit
GDash <> XDC-engine
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Chris Neilson wrote:
Agetian wrote:Alright, today's report is going to be a rather interesting one. Unfortunately, as of yesterday, I lost access to the Krissz Engine website, and I know I did because of my own silly actions - while experimenting with my cave converter, I tried to automate the download of some of the cave images from Krissz's website, and not only I actually failed in doing so (and, quite obviously, I shouldn't have attempted it in the first place), I also accidentally left the downloader going, which probably caused lots of automated requests to the server which grabbed a lot of index pages. I admit this was stupid of me, and I got carried away in my experimentation. I already apologized to Krissz privately, but I have no idea if my apology will be accepted or if I will ever regain my access to the website. Thus, on top of that, I would like to also apologize publicly here, and I would like to assure Krissz and the community that I did not have any malicious intentions in doing what I was trying to do. I hope that I can be pardoned for it eventually, but if not, I'll just have to accept being banned.

- Agetian
What happened with krissz website? image or cave?
I don't think that anything happened with the website itself, at least I sincerely hope that nothing did, it's just that I stupidly tried to automate downloading of cave images from the website for my conversion experiments, and that resulted in many unnecessary download requests to the server. I failed to download any cave images (which is something that I think I had coming, anyway), and I got banned for what I believe would be considered the potential abuse of the website, even though I did not intend to abuse it. Sigh. I wish I could undo my experiments from yesterday and erase it all from the history, but sadly, I can't. What's done is done, and I'm rightly penalized for it.

As to why exactly I needed the cave images in the first place (not the snapshots, but the cave editor cave image exports) - it's the only feasible way to export a cave from Krissz Engine that I'm aware of which would require minimal manual intervention to produce a full cave description. Basically, you run a script that would process the cave image in an OCR-ish way and produce a text description of the cave of BDCFF format, a format that can later be used in a compatible clone or for preservation purposes. You can check out KrisszConvert in the "Tools" forum to learn more - it's already released to the public.

As they say, "the road to hell is paved with good intentions" ^^; My case exactly, I guess.

- Agetian
User avatar
Chris Neilson
Member
Posts: 33
Joined: Wed Aug 29, 2007 2:53 am

Post by Chris Neilson »

Agetian is not list on Krissz Boulder Dash. its gone. another boulder cave still there.
I was video on test caves on Krissz Boulder Dash.
https://ibb.co/47PmFg3
21-12-09 14:25 KRISSZ
THANKS DARKSTOORM FOR THE WARNNG! ONE OF OUR MEMBER STARTED TO HACK THE SITE AND DOWNLOAD ALL OF THE CAVES. I BANNED HIM.
Agetian has been banned by Krissz.

check out full of firefly cave.
https://ibb.co/hFL25y9
You can check out KrisszConvert in the "Tools" forum to learn more - it's already released to the public.
Yeah. i allready it.
Boulder Dash Construction Kit
Crazy Light Construction Kit
GDash <> XDC-engine
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Well, to be clear, I never hacked the website or attempted to hack it, but I did try to automate the download of cave images - that much is true. I did not gain or try to gain any access beyond what was already granted to me - something that would constitute "hacking". But yes, I did attempt to download the cave images, and I also stupidly left the automated downloader going and it did download a whole lot of index pages - something I neither intended to download nor needed. I did not get any cave images either, and in retrospect, I don't think they can even be downloaded from the website in an automated way.

So - yes, as I explained above, I am indeed banned from the website, and yep, it's my own fault.

The video you're referring to is a video of me testing infinite cave scrolling in Krissz Engine and Boulder Caves+, as I intended to determine the behavior of the fly formations and see if my engine replicates the reference one, which, actually, I believe it does.

- Agetian
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Today is the "compatibility/performance testing day" for BoulderCaves+, I aim to test the game in a variety of operating systems and on a variety of PCs. So far, since Zsom expressed interest in knowing how the game works and performs on Windows 10, I can gladly say that the game works and performs well on this operating system on two test PCs that I had an opportunity to test it on.

Launching the game also wasn't difficult, I had to install Python 3 from the official website (I grabbed the latest version, 3.10.1) and then install the required packages using Pip, which is bundled with Python on Windows. A single terminal command installed all of the required packages at once, after which the launcher started and I was able to play the game and to also use the bundled Construction Kit. Here's a screenshot of the launcher side by side with one of the converted caves running in BoulderCaves+ on Windows 10:

Image

I also tested the Full Screen mode and I can report that there is no issue with the game launching in Full Screen on the test machines. The sound also works perfectly fine (with the miniaudio library installed from pip, which is needed to decode the sound files in the .ogg format, which BoulderCaves and BoulderCaves+ use).

Unfortunately, I may not be able to test BoulderCaves+ on MacOS, as neither I nor anyone I know have access to a Mac-based machine. However, I don't expect any incompatibilities, since even the original BoulderCaves instructions mention a particular set of actions that make the game function on a Mac.

As always, more progress will follow later :)

- Agetian
User avatar
Chris Neilson
Member
Posts: 33
Joined: Wed Aug 29, 2007 2:53 am

Post by Chris Neilson »

Agetion lost your krissz boulderdash website but you need one take image cave. and convert to bd cave and editor it.

Here example cave
Image

I pick up one image cave
And editor cave
Image

Test Cave
Image
Boulder Dash Construction Kit
Crazy Light Construction Kit
GDash <> XDC-engine
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Yes, this cave converts perfectly fine, Chris. And interesting - it actually also works in the original BoulderCaves because it doesn't use any Krissz Engine-specific elements :) Because the original image is a cave snapshot (as opposed to a cave image taken from the construction kit), the firefly directions can't be properly determined and will be set to defaults, but possibly with a bit of work, this cave can work very close or the same as it does at Krissz's. If it's your cave and if you know the proper cave properties and can tell me what they should be (required diamonds, cave time etc.), I can convert this cave accurately and show you the converted variant. I can also include it with the game if you would like that and if you give me permission :)

And haha, that "firefly cave" you posted above is probably one of Rockford's worst nightmares. Amusingly, as much as it is an unplayable cave, it's actually a very good case demonstrating a cave that can't be auto-converted with KrisszConvert. I believe the reason it doesn't convert is because it uses a palette with either two or three tones where certain elements are difficult to discern, but actually, I need to look into it - it's an interesting conversion corner case! Thanks for showing it to me, I'll look into what exactly prevents it from being converted.

- Agetian
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

The FAQ is now moved to the second post of this thread. An additional question was added to it at the same time, based on Zsom's feedback.

- Agetian
Last edited by Agetian on Tue Dec 14, 2021 7:27 am, edited 1 time in total.
Agetian
Member
Posts: 78
Joined: Sun Sep 19, 2021 10:14 am

Post by Agetian »

Today I had a bit of a breakthrough regarding game optimization. I noticed before that the slowest algorithms of the game in Boulder Caves that usually caused bottlenecks and slowdowns on weaker hardware were related to processing amoeba and moving creatures (butterflies and fireflies). After some testing and profiling I learned that these algorithms make a lot of "cell.get" calls while checking for presence of various objects in the four cardinal directions, and the original algorithms were implemented in such a way that "cell.get" was called multiple times for the same direction but while checking for different objects. Unfortunately, "cell.get" is a little bit of a "heavy" method in Boulder Caves+, because it has to account for the possible wraparounds, open borders and filler borders in smaller caves, so it actually does quite a lot of math to figure out the exact cell ID for the given coordinates and direction. Therefore, I optimized that by making the game only determine the object in each direction once and then use the result when comparing against various objects, effectively reducing the number of "heavy" calls by at least 30% and by as much as 70% in some scenarios. As such, processing amoeba and flies is now 2-3 times faster (on average) at every cave scan, which should bring performance benefits noticeable on legacy hardware. I'll run some tests on my Raspberry Pi 4 later and I'll report how things stand at the moment.

As always, stay tuned for further progress :)

- Agetian
zsom
Member
Posts: 84
Joined: Sat Apr 10, 2010 5:46 am

Post by zsom »

Hi.
In anticipation of bouldercaves +,
I decided to install Python 3.10.1 under Windows 10 Home 21H1.
Then Bouldercaves 5.7.2
Everything went well.
However, I did not like the game itself.
I tried both versions of the game, full screen and c64 versions.
I had feelings of slowing down at certain points in the game.
Although I have an i5-8300H processor and 8 Gb RAM and a GTX1050 graphics card.

Also, I couldn't exit the cave by stopping the flashing exit and pressing SHIFT, this doesn't work with Bouldercaves.

Also, I don't know how to run the game with a different set of caves than the standard BD1.

greetings
Post Reply