#Don't Starve
1039 messages · Page 2 of 2 (latest)
Long term i still want to use the new gptkeyb2 version that's in the Portmaster beta release, since that solves the issue with incorrectly mapped controllers.
I can push that to stable if you'd like.
Seems to work well enough.
Sure! I think that solves like half of the issues with this port. The remaining ones are performance and RAM issues
- LuaJIT hacks
- GLES hacks (there's some unnecessary buffer uploads each frame that can be cached)
- Audio recompression
- Texture recompression (probably gonna hack ASTC support into the existing texture format with a small binary patch)
Done. 🙂
I deleted the link. Later, I'll make a patch for the binary so as not to violate the DCMA. I've almost finished the version with icons. Next, I think I'll work on compressing the sounds, because right now the game works fine even without zram, and it starts to lag noticeably mainly when some sound effect is turned on.
I've looked into audio compression. Not sure how feasible it is. It uses a propriatary FMOD format for storing sound files. These have solid extraction tools, but no great tools to rebuild the files. I'm currently working on texture compression.
The issue with zram is that it's not available everywhere, and while the game runs as is on muOS, it does not on Knulli (and probably ArkOS) because the OS has too much RAM overhead.
Also, while i apprechiate you trying to help, please don't just start working on stuff on my todo list unprompted without asking. The list above was not an invitation.
I do this because I enjoy doing it more than playing the game itself. Your approach to fixing the gamepad is correct because it provides a universal solution for any device, while mine makes a jmp in the function for the PS Vita remote and forcing it to draw Xbox icons, which is not very stable for a large variety of devices.
After practicing with your port, I think I'll make my own for another game.
Whether you use my solutions or not is up to you, I don't care either way.
Hey guys, I saw this Don't Starve chat, how's porting it going? Does it run on R36s?
Yes, but with lags for now
Whether you use my solutions or not is up to you, I don't care either way.
I think it's more a matter of pointless duplicated efforts. If somebody's already working on something, it makes sense to coordinate the work. 🙂
I found a way to compress and repackage audio files, but I don't quite understand how the rules work:
[you're including the full patched binary in the game files. We cannot distribute propriatry game code.](#1288511120059007069 message)
But there are modified shaders [here](#1288511120059007069 message), and although this is also proprietary code, it's okay.
May I add already compressed audio files and simply replace them, or does the device have to do transcoding during installation?
Results for the base game's audio files (without DLC):
-
Original size: 157.1 MB
-
Repacked and compressed: 56.4 MB
-
Noticeable on a laptop but not on the R36S speaker lossy compression: 39.8 MB
Both repacked versions significantly reduce the CPU load, and the game becomes practically playable. I played for about 10 minutes and didn’t notice a single lag, unlike before.
Hence the question above: if compression must be on device, only a result of 56 MB seems possible, but even that will likely take quite a bit of time to transcode and repack. And if we try to squeeze out the maximum, we’ll have to add ffmpeg to the pipeline as well
Quite tricky
Good job.
Small purely mechanical snippets of code like shaders are generally okay, the entirety of the game binary and the entirety of the game's audio assets is not okay.
Transcoding has to happen on device.
Also, you have access to the dev channels now. If you really want to duplicate the work that I'm doing for learning purposes, please do not use the testing thread for this.
I know you mean well, but this isn't helping me or the users waiting for this port.
any updates?
why not open source this on github so people can contribute?
All our ports are open source after theyre released. Are you interested in contributing to any of them? I would start first with answering help questions in https://discord.com/channels/1122861252088172575/1390128580998201394
Why aren't you contributing?
Chasm for example needs to be upgraded to SDL3 can you start working on that?
not the point. Open sourcing it can help find issues in the code itself and open the port to PRs. If the owner of the port doesn't want it is ok, I just don't see why
I don't think you understand how this works. Don't Starve isn't open source. The tools to manipulate it already are available. There is no code to share with the community. Its like hacking. If you want to contribute, post information about useful gains in memory or gpu usage when hacking the game.
Like bmd says, there's nothing to open source right now. The game is closed source and all custom tooling is the result of pretty in-depth research and reverse engineering that would take you longer to get into than it will take me to finish this port. All tools will be open source after the fact, most importantly the fmod/OpenAL bridge. That's the way we usually operate.
You're just complaining at grandma that she's not cooking you dinner faster. You're not offering to do the dishes.
The Video alone shows how much of an endeavor this is.
While the video is obviously a joke (someone was asking for a "how to port" video tutorial and I obliged), the things I show in it are actually part of the port, and you're more or less just seeing the result, not the hours of staring at ghidra to figure this shit out
Your voice makes me happy
#🤝|contribution message
My test of the game 🙂
seems to work pretty flawless, didn't test it further than that yet
But I had no issues with gamepad, fps or loading
The game works well, but there are some issues with the controls.
I cannot select a tool.
Oh sorry, I forgot to mention I'm using my own implementation of the port, seems to work here
I do select tools on the video
It moves well in r36s, but tools cannot be used.
These are all issues that are being worked on. Give Binary Counter the time he needs. Geeeez