Eat The Dungeon General Discussion

One way I can think of that may be a tad bit time consuming, is to give each character a KO portrait. That alone would help to notice at a quick glance which character is KO’d. Plus I’m sure there’d be some fun designs and poses each character can have for a KO

4 Likes

Would you mind making the canvas have a fixed size and instead use css to scale the canvas? I find it leads to better visuals, especially on mobile (compressed image previews don’t show the issue too well, try to view fullscreen):


Possible Fix

I implemented the fix above by making the input system work with any canvas size, patching:

// onmousemove
INPUT.mouse_screen.x = mouse.clientX - canvas.getBoundingClientRect().left;
INPUT.mouse_screen.y = mouse.clientY - canvas.getBoundingClientRect().top;

// ontouchstart
INPUT.mouse_screen.x = event.changedTouches[0].pageX - canvas.getBoundingClientRect().left;
INPUT.mouse_screen.y = event.changedTouches[0].pageY - canvas.getBoundingClientRect().top;

// ontouchmove
INPUT.mouse_screen.x = event.changedTouches[0].pageX - canvas.getBoundingClientRect().left;
INPUT.mouse_screen.y = event.changedTouches[0].pageY - canvas.getBoundingClientRect().top;

to

// onmousemove
INPUT.mouse_screen.x = ((mouse.clientX - canvas.getBoundingClientRect().left) / canvas.getBoundingClientRect().width) * canvas.width;
INPUT.mouse_screen.y = ((mouse.clientY - canvas.getBoundingClientRect().top) / canvas.getBoundingClientRect().height) * canvas.height;

// ontouchstart
INPUT.mouse_screen.x = ((event.changedTouches[0].pageX - canvas.getBoundingClientRect().left) / canvas.getBoundingClientRect().width) * canvas.width;
INPUT.mouse_screen.y = ((event.changedTouches[0].pageY - canvas.getBoundingClientRect().top) / canvas.getBoundingClientRect().height) * canvas.height;

// ontouchmove
INPUT.mouse_screen.x = ((event.changedTouches[0].pageX - canvas.getBoundingClientRect().left) / canvas.getBoundingClientRect().width) * canvas.width;
INPUT.mouse_screen.y = ((event.changedTouches[0].pageY - canvas.getBoundingClientRect().top) / canvas.getBoundingClientRect().height) * canvas.height;

I then removed the canvas resize logic:

var w = Math.min(document.documentElement.clientWidth, window.innerWidth || 0);
var h = Math.min(document.documentElement.clientHeight, window.innerHeight || 0);

// If statement
canvas.height > h -  25

// Border resizing
canvas.width = (w - 25);
canvas.height = (w - 25) *  600 / 1080;

to

var w = 1080;
var h = 600;

// If statement
false

// Border resizing
canvas.width = w;
canvas.height = w *  600 / 1080;

Then just slapped some css to the canvas:

window.canvas.style["max-width"] = "100%";
window.canvas.style["max-height"] = "100%";
window.canvas.style.margin = "auto";
window.canvas.style.border = "unset";
2 Likes

when looking at the Characters, i notice that we have 5 Fruit, Veggie and Candy Heroes but only 3 Meat and Milk Heroes and under the 3 Heroes is a big blank space Maybe for new heroes or a great spot to put a Gallery Button At?

2 Likes

Honestly, those quality of life proposals look really bloody useful. Sometimes I just wish to extract the girls to have a snake team that can attack once per minute, which does admittedly get a bit tricky when it goes from Trapped! to the city that inexplicably reminds me of Anor Londo after every round.

Honestly curious, what NPCs were people’s favourites in the new update? Was personally quite fond of the Gnome (Regret putting her in Trickster rather than Alchemist), Cryomancer, Lich and feel genuinely sorry for the Eldritch girl who just wanted a hug.

3 Likes

Hi! been following the game since around 2019 and finally got to play the newest update! games looking great! is there anywhere where i could find the image assets for the game? (like the weight gain/ stuffing levels) and would i be allowed to use them as reference for a personal thing im working on?

1 Like

if your curious im semi-new to blender and have been wanting to practice making character models that have different instances (i.e. gaining weight) and id love to maybe practice using characters from the game.
but gnabbing a shot of every possible weight gain level and stuffed belly level is… tedious to say the best
ill gladly share here when i get to it :stuck_out_tongue:

2 Likes

In order to make this work, I’d probably have to make KO sprites for multiple different weight levels for each character. Its a cool idea but I don’t think I’ll be able to make this kind of time investment anytime soon.

I’ll look into this

There are three more adventurers planned for the game: The Spy, The Raider, and The Beastkin. I haven’t picked favorite food types for them yet, I’ll take this into consideration when I do.

By the time the game is done you’ll be able to unlock the ability to extract 4 times per level.

The isn’t an in-game gallery yet but if you’re clever you can look through the website’s directory and find the files.

https://www.bewilderedgames.com/img/adventurer/

4 Likes

Im sure not clever, but youtube guides are :open_mouth: thenkss

2 Likes

I am noticing significant slowdown with some of the new-ish effects, is there any way those could be toggled?

2 Likes

I just wanted to say that I’m really impressed by this. It’s really fun to play and pretty well made. I’m excited for the next update, especially if it lets you zoom out on the map. That would make navigating it a lot easier. Also, I started playing this in incognito mode; is there any way to close down the window and still keep my save progress?

Incognito mode doesn’t allow websites to store persistent data to your device to reduce tracking. This includes game saves. You’ll want to switch to the normal browsing mode if you want to have persistent saves.

If you are comfortable with the dev tools, you can use the console tab to save and restore the saves at will, even in incognito mode. I wrote a small script that did something to that effect a while ago:

Script
function saveLocalStorage() {
    let object = {};
    for(let i = 0; i < window.localStorage.length; i++) {
        let key = window.localStorage.key(i);
        let value = window.localStorage.getItem(key);
        
        object[key] = value;
    }
    
    let json = JSON.stringify(object);
    let file = new Blob([json], {type: 'application/json'});
    
    let a = document.createElement('a');
    a.href = URL.createObjectURL(file);
    a.download = 'localStorage.json';
    a.click();
}

async function loadLocalStorage() {
    let openFileDialog = new Promise((resolve, reject) => {
        let input = document.createElement('input');
        input.type = 'file';
        
        input.addEventListener('change', (e) => {
            resolve(input.files);
        });
        input.click();
        setTimeout(() => {
            reject("timeout");
        }, 30 * 1000);
    });
    
    let list = await openFileDialog;
    
    let fileString = new Promise((resolve, reject) => {
        if(list.length != 1) 
            throw "invalid length";
        
        let reader = new FileReader();
        reader.addEventListener('load', (e) => {
            resolve(reader.result);
        });
        reader.addEventListener('error', (e) => {
            reject(e);
        });
        reader.readAsText(list[0]);
    });
    
    let dataString = await fileString;
    let json = JSON.parse(dataString);
    
    let jsonKeys = Object.keys(json);
    for(let i = 0; i < jsonKeys.length; i++) {
        let key = jsonKeys[i];
        localStorage.setItem(key, json[key]);
    }
    
    return json;
}

By pasting this into the console, hitting enter, then running saveLocalStorage(), you’d get a save file saved to your downloads. To load it, open the game to the title screen, paste run run the script, run loadLocalStorage(), load your save file, then refresh the page. Going past the title from there should use the new save data.

Thank you so much. This is super helpful.

I have just about every character unlocked in the new update, but cannot for the life of me find the Druid or Alchemist. Can anyone help me with that?

1 Like

The meat gym south of where you got the Psychic. If you have the Magus, you should already have the stages unlocked for Druid and Alchemist.

1 Like

I appreciate it! I didn’t have Magus or the others in that area either, as a matter of fact I didn’t even realize that was an area lmao!